#deflate #zlib #format #data #compressing #compressor #decompressing

gdeflate

A library for compressing and decompressing the GDeflate format

6 releases (3 breaking)

0.4.0 Mar 27, 2024
0.3.1 Mar 21, 2024
0.2.0 Mar 10, 2024
0.1.3 Aug 10, 2023

#399 in Compression

Download history 1/week @ 2024-02-18 28/week @ 2024-02-25 2/week @ 2024-03-03 294/week @ 2024-03-10 141/week @ 2024-03-17 90/week @ 2024-03-24 62/week @ 2024-03-31 2/week @ 2024-04-07

321 downloads per month

MIT/Apache

215KB
3.5K SLoC

C 3K SLoC // 0.4% comments Rust 229 SLoC

🗜️ gdeflate-rs

A library for compressing and decompressing the GDeflate format 🦀

crates license dependency-status

[dependencies]
gdeflate = "0.3.0"

Use the compress and decompress functions to compress and decompress data.

use gdeflate::{CompressionLevel, Compressor, Decompressor};

let uncompressed_data = vec![0, 1, 2]; // your input data

let mut compressor = Compressor::new(CompressionLevel::Level12).unwrap();
let result = compressor.compress(&uncompressed_data, 65536).unwrap();

let mut decompressor = Decompressor::new().unwrap();
let reconstructed_data = decompressor.decompress(&result).unwrap();

assert_eq!(&uncompressed_data, &reconstructed_data);

🚨 Warning 🚨

This library is still experimental and only supports single-threaded compression and decompression at the moment.

Dependencies

~0.3–2.8MB
~58K SLoC