vstorage 0.4.0

Common API for various icalendar/vcard storages.
Documentation
[dependencies.async-trait]
version = "0.1.64"

[dependencies.calcard]
features = ["jmap"]
optional = true
version = "0.2.0"

[dependencies.camino]
version = "1.1.6"

[dependencies.futures-util]
version = "0.3.28"

[dependencies.http]
version = "1"

[dependencies.http-body-util]
version = "0.1.0"

[dependencies.hyper]
features = ["http1", "client"]
version = "1"

[dependencies.hyper-rustls]
default-features = false
features = ["ring", "http1", "native-tokio", "tls12", "rustls-native-certs"]
version = "0.27.0"

[dependencies.hyper-util]
features = ["client", "client-legacy", "http1"]
version = "0.1.1"

[dependencies.libdav]
version = "0.10.0"

[dependencies.libjmap]
optional = true
version = "0.1.0"

[dependencies.log]
version = "0.4.17"

[dependencies.rand]
version = "0.9"

[dependencies.rustix]
features = ["fs"]
version = "1"

[dependencies.serde_json]
optional = true
version = "1.0"

[dependencies.sha2]
version = "0.10.2"

[dependencies.sqlite]
version = "0.37.0"

[dependencies.thiserror]
version = "2"

[dependencies.tokio]
features = ["io-util", "fs"]
version = "1.21.2"

[dependencies.tower]
version = "0.5"

[dependencies.vparser]
version = "1.1.0"

[dev-dependencies.anyhow]
version = "1.0.71"

[dev-dependencies.tempfile]
version = "3.3.0"

[dev-dependencies.tokio]
features = ["full"]
version = "1.21.2"

[dev-dependencies.tower-http]
features = ["auth"]
version = "0.6.2"

[[example]]
name = "dump_caldav_storage"
path = "examples/dump_caldav_storage.rs"

[[example]]
name = "webcal_to_vdir"
path = "examples/webcal_to_vdir.rs"

[features]
default = ["jmap"]
jmap = ["dep:calcard", "dep:libjmap", "dep:serde_json"]
jmap_test = ["jmap"]
webcal_test = []

[lib]
name = "vstorage"
path = "src/lib.rs"

[package]
authors = ["Hugo Osvaldo Barrera <hugo@whynothugo.nl>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
description = "Common API for various icalendar/vcard storages."
edition = "2024"
homepage = "https://sr.ht/~whynothugo/pimsync/"
keywords = ["vdir", "filesystem", "icalendar", "caldav"]
license = "EUPL-1.2"
name = "vstorage"
readme = "README.md"
repository = "https://git.sr.ht/~whynothugo/vstorage"
rust-version = "1.86.0"
version = "0.4.0"

[target.'cfg(target_os = "linux")'.dependencies.inotify]
version = "0.11.0"

[[test]]
name = "test_jmap"
path = "tests/test_jmap.rs"

[[test]]
name = "test_sync"
path = "tests/test_sync.rs"