[package]
name = "vstorage"
version = "0.2.0"
authors = ["Hugo Osvaldo Barrera <hugo@whynothugo.nl>"]
edition = "2021"
description = "Common API for various icalendar/vcard storages."
readme = "README.md"
homepage = "https://sr.ht/~whynothugo/pimsync/"
repository = "https://git.sr.ht/~whynothugo/vstorage"
keywords = ["vdir", "filesystem", "icalendar", "caldav"]
license = "EUPL-1.2"
[features]
jmap = ["dep:calcard", "dep:libjmap", "dep:serde_json"]
jmap_test = ["jmap"]
webcal_test = []
[dependencies]
async-trait = "0.1.64"
calcard = { version = "0.2.0", features = ["jmap"], optional = true }
camino = { version = "1.1.6" }
futures-util = "0.3.28"
http = "1"
http-body-util = "0.1.0"
hyper = { version = "1", features = ["http1", "client"] }
hyper-rustls = { version = "0.27.0", default-features = false, features = ["ring", "http1", "native-tokio", "tls12", "rustls-native-certs"] }
hyper-util = { version = "0.1.1", features = ["client", "client-legacy", "http1"] }
libdav = { version = "0.9.5", path = "../libdav" }
libjmap = { version = "0.1.0", path = "../libjmap", optional = true }
log = "0.4.17"
rand = "0.8.5"
rustix = { version = "0.38.10", features = ["fs"] }
serde_json = { version = "1.0", optional = true }
sha2 = "0.10.2"
sqlite = "0.32.0"
thiserror = "1.0.37"
tokio = { version = "1.21.2", features = ["io-util", "fs"] }
tower = "0.4.13"
vparser = "1.0.1"
[target.'cfg(target_os = "linux")'.dependencies]
inotify = "0.11.0"
[dev-dependencies]
anyhow = "1.0.71"
tempfile = "3.3.0"
tokio = { version = "1.21.2", features = ["full"] }
tower-http = { version = "0.6.2", features = ["auth"] }