[package]
authors = ["Databend Authors <opensource@datafuselabs.com>"]
categories = ["filesystem"]
description = "OpenDAL: Access data freely, painless, and efficiently."
edition = "2021"
exclude = ["docs/"]
homepage = "https://opendal.databend.rs/"
keywords = ["storage", "data", "s3", "azblob", "gcs"]
license = "Apache-2.0"
name = "opendal"
repository = "https://github.com/datafuselabs/opendal"
version = "0.13.1"
[package.metadata.docs.rs]
all-features = true
[features]
compress = ["async-compression"]
rustls = ["isahc/rustls-tls", "isahc/rustls-tls-native-certs"]
serde = ["time/serde"]
layers-all = ["layers-metrics", "layers-retry", "layers-tracing"]
layers-metrics = ["metrics"]
layers-retry = ["backon"]
layers-tracing = ["tracing"]
retry = ["layers-retry"]
services-hdfs = ["hdrs"]
services-http = ["radix_trie"]
[lib]
bench = false
[[bench]]
harness = false
name = "ops"
[[bench]]
harness = false
name = "io"
[[example]]
name = "hdfs"
required-features = ["services-hdfs"]
[dependencies]
anyhow = "1.0"
async-compat = "0.2"
async-compression = { package = "async-compression-issue-150-workaround", version = "0.3.15-issue-150", features = [
"futures-io",
"all-algorithms",
], optional = true }
async-trait = "0.1"
backon = { version = "0.0.2", optional = true }
base64 = "0.13"
bytes = "1.1"
dotenv = { version = "0.15", optional = true }
flagset = "0.4"
futures = { version = "0.3", features = ["alloc"] }
hdrs = { version = "0.1", optional = true, features = ["futures-io"] }
http = "0.2"
isahc = { package = "isahc-opendal-workaround", version = "2.0.0-opendal.1" }
log = "0.4"
md5 = "0.7"
metrics = { version = "0.20", optional = true }
once_cell = "1.10"
parking_lot = "0.12"
percent-encoding = "2.1"
pin-project = "1.0"
quick-xml = { version = "0.23", features = ["serialize"] }
radix_trie = { version = "0.2", optional = true }
reqsign = "0.4"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
thiserror = "1.0"
time = "0.3"
tokio = { version = "1.20", features = ["fs"] }
tracing = { version = "0.1", optional = true }
[dev-dependencies]
cfg-if = "1.0"
criterion = { version = "0.3", features = [
"async",
"async_tokio",
"html_reports",
] }
dotenv = "0.15"
env_logger = "0.9"
itertools = "0.10"
num-traits = "0.2"
paste = "1.0"
rand = "0.8"
serde_json = "1.0"
sha2 = "0.10"
size = "0.4"
tokio = { version = "1.20", features = ["fs", "macros", "rt-multi-thread"] }
uuid = { version = "1.0", features = ["serde", "v4"] }
wiremock = "0.5"