[package] name = "async-compression" version = "0.4.42" description = """ Adaptors between compression crates and Rust's modern asynchronous IO types. """ authors.workspace = true categories.workspace = true edition.workspace = true license.workspace = true repository.workspace = true rust-version.workspace = true [package.metadata.docs.rs] all-features = true [features] # groups all = ["all-implementations", "all-algorithms"] all-implementations = ["futures-io", "tokio"] all-algorithms = [ "brotli", "bzip2", "deflate", "deflate64", "gzip", "lz4", "lzma", "xz", "xz-parallel", "zlib", "zstd", ] # algorithms brotli = ["compression-codecs/brotli"] bzip2 = ["compression-codecs/bzip2"] deflate = ["compression-codecs/deflate"] deflate64 = ["compression-codecs/deflate64"] gzip = ["compression-codecs/gzip"] lz4 = ["compression-codecs/lz4"] lzma = ["compression-codecs/lzma"] xz = ["compression-codecs/xz", "lzma"] xz-parallel = ["compression-codecs/xz-parallel", "xz"] xz2 = ["compression-codecs/xz2", "xz"] zlib = ["compression-codecs/zlib"] zstd = ["compression-codecs/zstd"] zstdmt = ["compression-codecs/zstdmt", "zstd"] [dependencies] # core dependencies pin-project-lite.workspace = true compression-codecs.workspace = true compression-core.workspace = true # optional dependencies futures-io = { version = "0.3", default-features = false, features = [ "std", ], optional = true } tokio = { version = "1.24.2", optional = true, default-features = false } [dev-dependencies] bytes = "1" futures = "0.3.5" futures-test = "0.3.5" ntest = "0.9" proptest = "1" proptest-derive = "0.8" rand = "0.10" tokio = { version = "1.38.2", default-features = false, features = [ "io-util", "macros", "rt-multi-thread", "io-std", ] } tokio-util = { version = "0.7", default-features = false, features = ["io"] } brotli = "8" bzip2 = "0.6" flate2 = "1.0.13" libzstd = { package = "zstd", version = "0.13.1", default-features = false } lz4 = "1.28.1" liblzma = "0.4.2" zstd-safe = { version = "7", default-features = false } deflate64 = "0.1.5" [lints] workspace = true [[test]] name = "brotli" required-features = ["brotli"] [[test]] name = "bzip2" required-features = ["bzip2"] [[test]] name = "deflate" required-features = ["deflate"] [[test]] name = "gzip" required-features = ["gzip"] [[test]] name = "lz4" required-features = ["lz4"] [[test]] name = "lzma" required-features = ["lzma"] [[test]] name = "xz" required-features = ["xz"] [[test]] name = "zlib" required-features = ["zlib"] [[test]] name = "zstd" required-features = ["zstd"] [[test]] name = "zstd-dict" required-features = ["zstd", "tokio"] [[test]] name = "zstd-window-size" required-features = ["zstd", "tokio"] [[example]] name = "zlib_tokio_write" required-features = ["zlib", "tokio"] [[example]] name = "zstd_gzip" required-features = ["zstd", "gzip", "tokio"] [[example]] name = "lzma_filters" required-features = ["xz", "tokio"]