compression-codecs 0.4.28

Adaptors for various compression algorithms.
docs.rs failed to build compression-codecs-0.4.28
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: compression-codecs-0.4.27

async-compression

crates.io version build status downloads docs.rs docs MIT or Apache 2.0 licensed dependency status

This crate provides adaptors between compression crates and Rust's modern asynchronous IO types.

Development

When developing you will need to enable appropriate features for the different test cases to run, the simplest is cargo test --all-features, but you can enable different subsets of features as appropriate for the code you are testing to avoid compiling all dependencies, e.g. cargo test --features tokio,gzip.

To prepare for a pull request, you can run several other checks:

  1. fmt

    cargo fmt --all
    cargo clippy --no-deps
    
  2. build

    cargo build --lib --all-features
    
  3. nextest

    cargo --locked nextest run --workspace --all-features
    
  4. hack check

    cargo hack check --workspace --feature-powerset --all-targets --skip 'all,all-algorithms,all-implementations'
    
  5. wasm32 - Linux only

    gh release download --repo WebAssembly/wasi-sdk --pattern 'wasi-sysroot-*.tar.gz'
    mkdir -p wasi-sysroot
    tar xf wasi-sysroot-*.tar.gz --strip-components=1 -C wasi-sysroot
    
    rustup target add wasm32-wasip1-threads
    
    export "CFLAGS_wasm32_wasip1_threads=--sysroot=\"${PWD}/wasi-sysroot\" -I\"${PWD}/wasi-sysroot/include/wasm32-wasip1-threads\" -L-I\"${PWD}/wasi-sysroot/lib/wasm32-wasip1-threads\""
    cargo build --lib --features all-implementations,brotli,bzip2,deflate,gzip,lz4,lzma,xz,zlib,zstd,deflate64 --target wasm32-wasip1-threads
    

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you shall be dual licensed as above, without any additional terms or conditions.