async-deflate-zip
Streaming async ZIP archive writer with per-file deflate compression.
Usage
[]
= "0.1.0"
use ZipWriter;
use File;
use AsyncWriteExt;
let file = create.await?;
let mut zip = new;
let mut entry = zip.append_file.await?;
entry.write_all.await?;
entry.close.await?;
zip.finalize.await?;
Why Deflate Only?
Performance balance. Deflate offers the best trade-off between compression ratio and CPU cost for async streaming. Heavier algorithms like LZMA or BZip2 create backpressure that degrades I/O throughput, while Deflate keeps the pipeline responsive with sufficient compression for most real-world data.
Universal compatibility. Deflate (method 8) is the universal baseline — every ZIP reader on every platform supports it. Non-Deflate methods (LZMA, BZip2, PPMd) have fragmented tool and OS support. By committing to Deflate-only, this library guarantees every archive it produces is readable anywhere.
License
Licensed under either of