syncstream 0.1.0

Simple yet capable content-addressed storage, designed for package managers and immutable distros.
Documentation
[package]
name = "syncstream"
version = "0.1.0"
edition = "2024"
authors = ["Taxrosdev"]
rust-version = "1.85"
description = "Simple yet capable content-addressed storage, designed for package managers and immutable distros."
readme = "README.md"
repository = "https://github.com/Taxrosdev/SyncStream"
license = "MIT OR Apache-2.0"

[dependencies]
async-compression = { version = "0.4.36", features = ["futures-io", "lz4", "xz", "zstd"] }
blake3 = "1.8.2"
futures-core = "0.3.31"
futures-util = { version = "0.3.31", features = ["io"] }
reqwest = { version = "0.13.1", features = ["stream"], optional = true }
thiserror = "2.0.17"
tokio = { version = "1.48.0", features = ["fs", "macros", "rt"], optional = true }
tokio-stream = { version = "0.1.17", optional = true }
tokio-util = { version = "0.7.17", optional = true }

[target.'cfg(unix)'.dependencies]
nix = { version = "0.30.1", features = ["fs"] }

[features]
default = ["reqwest"]
reqwest = ["dep:reqwest"]
tokio = ["dep:tokio", "dep:tokio-stream", "dep:tokio-util", "async-compression/tokio"]

[dev-dependencies]
httpmock = "0.8.2"
temp-dir = "0.1.16"
temp-file = "0.1.9"
tokio = { version = "1.48.0", features = ["fs", "macros", "rt-multi-thread"] }

[lints.rust]
unsafe_code = "forbid"

[lints.clippy]
pedantic = "warn"