asynczipfutures

Crates.io Crates.io docs.rs GitHub Workflow Status (branch) GitHub

An asynchronous ZIP archive reading/writing crate powered by futures-rs.

Forked from rs-async-zip. tokio was replaced with futures-rs.

Features

Installation & Basic Usage

toml [dependencies] async_zip_futures = { version = "0.0.12", features = ["full"] }

A (soon to be) extensive list of examples can be found under the /examples directory.

Feature Flags

Writing

```rust use asynczipfutures::{Compression, ZipEntryBuilder, write::ZipFileWriter, error::ZipError}; use futures::AsyncWriteExt; use tokio::fs::File; use tokio_util::compat::TokioAsyncReadCompatExt; ...

let mut file = File::create("foo.zip").await.unwrap().compat(); let mut writer = ZipFileWriter::new(&mut file);

let data = b"This is an example file."; let builder = ZipEntryBuilder::new(String::from("bar.txt"), Compression::Stored);

let mut entrywriter = writer.writeentrystream(builder).await.unwrap(); entrywriter.writeall(data).await.unwrap(); entrywriter.close().await.unwrap(); writer.close().await.unwrap(); ```