[dependencies.async-stream]
optional = true
version = "0.3"
[dependencies.base64]
optional = true
version = "0.22"
[dependencies.bytes]
optional = true
version = "1.7"
[dependencies.cfg-if]
version = "1.0.0"
[dependencies.chrono]
default-features = false
features = ["now", "std", "wasmbind"]
optional = true
version = "0.4"
[dependencies.fusio-core]
version = "0.3.8"
[dependencies.futures-core]
version = "0.3"
[dependencies.futures-util]
version = "0.3"
[dependencies.http]
default-features = false
optional = true
version = "1"
[dependencies.http-body]
optional = true
version = "1"
[dependencies.http-body-util]
default-features = false
optional = true
version = "0.1"
[dependencies.itertools]
version = "0.13"
[dependencies.monoio]
features = ["sync"]
optional = true
version = "0.2"
[dependencies.monoio-http]
optional = true
version = "0.3"
[dependencies.monoio-http-client]
optional = true
version = "0.3.3"
[dependencies.object_store]
features = ["aws"]
optional = true
version = "0.11"
[dependencies.percent-encoding]
default-features = false
version = "2"
[dependencies.quick-xml]
features = ["overlapped-lists", "serialize"]
optional = true
version = "0.36"
[dependencies.reqwest]
optional = true
version = "0.12.8"
[dependencies.ring]
default-features = false
features = ["std"]
optional = true
version = "0.17"
[dependencies.serde]
features = ["derive"]
optional = true
version = "1"
[dependencies.serde_json]
optional = true
version = "1"
[dependencies.serde_urlencoded]
optional = true
version = "0.7"
[dependencies.thiserror]
version = "2.0.12"
[dependencies.tokio]
default-features = false
features = ["io-util", "rt-multi-thread"]
optional = true
version = "1"
[dependencies.url]
default-features = false
features = ["std"]
version = "2.5.3"
[dev-dependencies.rand]
version = "0.8"
[dev-dependencies.tempfile]
version = "3"
[features]
aws = ["base64", "bytes", "chrono", "chrono?/serde", "fs", "http", "quick-xml", "ring", "serde", "serde_json", "serde_urlencoded"]
bytes = ["dep:bytes", "fusio-core/bytes"]
completion-based = ["fusio-core/completion-based"]
default = ["dyn", "fs"]
dyn = ["fusio-core/alloc"]
fs = ["tokio?/fs", "tokio?/rt"]
http = ["async-stream", "bytes", "dep:http", "http-body", "http-body-util", "monoio?/poll-io", "tokio?/net", "tokio?/rt"]
monoio = ["async-stream", "completion-based", "dep:monoio", "no-send"]
monoio-http = ["http", "dep:monoio-http-client", "dep:monoio-http"]
no-send = ["fusio-core/no-send"]
opfs = ["async-stream", "dep:js-sys", "dep:wasm-bindgen-futures", "dep:web-sys", "no-send"]
sync = ["opfs"]
tokio = ["async-stream", "dep:tokio"]
tokio-http = ["dep:reqwest", "http"]
tokio-uring = ["async-stream", "completion-based", "dep:tokio-uring", "no-send"]
wasm-http = ["dep:reqwest", "http"]
[lib]
name = "fusio"
path = "src/lib.rs"
[package]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
description = "Fusio provides lean, minimal cost abstraction and extensible Read / Write trait to multiple storage on multiple poll-based / completion-based async runtime."
edition = "2021"
license = "Apache-2.0"
name = "fusio"
readme = "README.md"
repository = "https://github.com/tonbo-io/fusio"
version = "0.3.8"
[package.metadata.docs.rs]
all-features = true
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.criterion]
features = ["async_tokio", "html_reports"]
version = "0.5"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.futures-util]
version = "0.3"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.hyper]
features = ["full"]
version = "1"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.hyper-util]
features = ["full"]
version = "0.1"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.monoio]
version = "0.2"
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.tokio]
features = ["full"]
version = "1"
[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom]
features = ["js"]
version = "0.2"
[target.'cfg(target_arch = "wasm32")'.dependencies.js-sys]
optional = true
version = "0.3.72"
[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen-futures]
features = ["futures-core-03-stream"]
optional = true
version = "0.4.45"
[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys]
features = ["Blob", "File", "FileSystemCreateWritableOptions", "FileSystemDirectoryHandle", "FileSystemFileHandle", "FileSystemGetDirectoryOptions", "FileSystemGetFileOptions", "FileSystemReadWriteOptions", "FileSystemRemoveOptions", "FileSystemSyncAccessHandle", "FileSystemWritableFileStream", "Navigator", "ReadableStream", "ReadableStreamDefaultReader", "ReadableStreamReadResult", "Storage", "StorageManager", "Window", "WorkerGlobalScope", "WorkerNavigator"]
optional = true
version = "0.3"
[target.'cfg(target_arch = "wasm32")'.dev-dependencies.wasm-bindgen]
version = "0.2.95"
[target.'cfg(target_arch = "wasm32")'.dev-dependencies.wasm-bindgen-test]
version = "0.3.9"
[target.'cfg(target_os = "linux")'.dependencies.tokio-uring]
default-features = false
optional = true
version = "0.5"
[target.'cfg(target_os = "linux")'.dev-dependencies.tokio-uring]
version = "0.5"
[[test]]
name = "opfs"
path = "tests/opfs.rs"
[[test]]
name = "wasm_http"
path = "tests/wasm_http.rs"