Deflate 0.7.7 - a deflate encoder written in rust, now with gzip support!


#1

I’ve updated deflate to 0.7.7, and this version finally adds support for the gzip format, in addition to improving the compression behaviour. Hopefully this will be of use to someone.


#2

AFAIK flate2 is still looking to replace its miniz bindings with a pure Rust implementation, perhaps this would be of interest to them?


#3

The readme still says no gzip support.
How does is compare to others performance-wise?


#4

I’ve fixed the readme. Thanks!

As for speed: From my testing it’s between 10% and twice as slow as flate2(with the default back-end) with similar settings for most files, for large incompressible files it can be slower as that’s not very optimised at the moment. miniz has a special different algorhitm for the fast setting so the performance difference there might be a bit higher. Flate2 also has an advantage speed-wise for very small files at the moment, as miniz can allocate all the data structures it uses in one go, while that is a bit complicated with rust at the moment without getting stack overflows in debug mode.
I have a github repo with code I use for testing speed and compression ratio allthough it’s a bit of a mess.