Crate async_compression[][src]

Adaptors between compression crates and Rust’s modern asynchronous IO types.

Feature Organization

This crate is divided up along two axes, which can each be individually selected via Cargo features.

All features are disabled by default, you should enable just the ones you need from the lists below.

If you want to pull in everything there are three group features defined:

allActivates all implementations and algorithms.
all-implementationsActivates all implementations, needs to be paired with a selection of algorithms
all-algorithmsActivates all algorithms, needs to be paired with a selection of implementations

IO implementation

The first division is which underlying asynchronous IO trait will be wrapped, these are available as separate features that have corresponding top-level modules:

futures-iofutures::io::AsyncBufRead, futures::io::AsyncWrite
futures-bufread(deprecated, use futures-io)
futures-write(deprecated, use futures-io)
stream(deprecated, see async-compression:stream docs for migration)
tokio-02tokio::io::AsyncBufRead, tokio::io::AsyncWrite
tokio-03tokio::io::AsyncBufRead, tokio::io::AsyncWrite
tokiotokio::io::AsyncBufRead, tokio::io::AsyncWrite

Compression algorithm

The second division is which compression schemes to support, there are currently a few available choices, these determine which types will be available inside the above modules:

brotliBrotliEncoder, BrotliDecoder
bzip2BzEncoder, BzDecoder
deflateDeflateEncoder, DeflateDecoder
gzipGzipEncoder, GzipDecoder
lzmaLzmaEncoder, LzmaDecoder
xzXzEncoder, XzDecoder
zlibZlibEncoder, ZlibDecoder
zstdZstdEncoder, ZstdDecoder



Implementations for IO traits exported by futures.


Types which operate over Stream<Item = io::Result<Bytes>> streams, both encoders and decoders for various formats.


Implementations for IO traits exported by tokio v1.0.


Implementations for IO traits exported by tokio v0.2.


Implementations for IO traits exported by tokio v0.3.



Level of compression data should be compressed with.