[package]
name = "cloud_sync_lib"
version = "0.1.0"
edition = "2021"
description = "Cloud storage provider synchronization library"
license = "MIT"
repository = "https://github.com/clockworkengineer/cloud_sync_lib"
[dependencies]
async-trait = { workspace = true }
cloud_sync_core = { path = "../cloud_sync_core", version = "0.1.0", default-features = false, features = ["std"] }
cloud_sync_std = { path = "../cloud_sync_std", version = "0.1.0" }
tokio = { workspace = true, features = ["fs", "rt", "io-util"] }
thiserror = "1.0"
tracing = { workspace = true }
reqwest = { version = "0.11", default-features = false, features = ["rustls-tls-webpki-roots", "json", "multipart", "stream"] }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
xmlparser = { version = "0.13", optional = true }
rust-s3 = { version = "0.33", default-features = false, features = ["tokio-rustls-tls"], optional = true }
ssh2 = { version = "0.9", optional = true }
bytes = "1"
mega = { version = "0.4", optional = true }
tokio-util = { version = "0.7", features = ["compat"] }
futures-util = { workspace = true }
base64 = { version = "0.21", optional = true }
ring = "0.17"
httpdate = { version = "1.0", optional = true }
yup-oauth2 = { version = "8.3", optional = true }
time = { version = "0.3", features = ["parsing", "formatting", "macros"] }
filetime = "0.2"
aes-gcm = "0.10"
rand = "0.8"
ignore = { workspace = true }
zeroize = { version = "1.7", features = ["derive"] }
md5 = "0.7.0"
sha1 = "0.10.6"
keyring = { workspace = true }
[features]
default = []
google_drive = []
dropbox = []
onedrive = []
webdav = ["dep:xmlparser"]
s3 = ["dep:rust-s3"]
sftp = ["dep:ssh2"]
nextcloud = ["dep:xmlparser"]
box = []
mega = ["dep:mega"]
azure_blob = ["dep:base64", "dep:httpdate", "dep:xmlparser"]
gcs = ["dep:yup-oauth2"]
b2 = []
pcloud = []
ipfs = []
[dev-dependencies]
tempfile = { workspace = true }
toml = { workspace = true }
wiremock = "0.6"
http = "0.2"