1 unstable release

0.1.0 Jan 7, 2023

#535 in Compression

MIT/Apache

6.5MB
157K SLoC

C 152K SLoC // 0.2% comments Automake 1.5K SLoC // 0.0% comments M4 1.5K SLoC // 0.3% comments Shell 1K SLoC // 0.2% comments AWK 769 SLoC // 0.1% comments Rust 555 SLoC // 0.0% comments RPM Specfile 292 SLoC // 0.0% comments Batch 262 SLoC // 0.0% comments C++ 40 SLoC JavaScript 22 SLoC

Contains (Zip file, 1KB) tests/nested.zip, (Zip file, 1KB) tests/simple.zip

akv

Safe bindings for libarchive with minimum overhead

Example

use akv::reader::ArchiveReader;

let io_reader = std::fs::File::open("tests/simple.zip")?;
let mut archive_reader = ArchiveReader::open_io(io_reader)?;

while let Some(entry) = archive_reader.next_entry()? {
    println!("Entry name: {}", entry.pathname_utf8()?);
    let entry_reader = entry.into_reader();
    println!(
        "Entry content: {}",
        std::io::read_to_string(entry_reader)?
    );
}
std::io::Result::Ok(())

Dependencies

~6.5–9.5MB
~179K SLoC