Skip to content

Releases: trifectatechfoundation/zlib-rs

v0.5.0

01 Apr 12:20
v0.5.0
Compare
Choose a tag to compare

This is technically a breaking change, but unless you rely on rust exporting C symbols, you should not run into any issues when upgrading.

highlights

  • the export-symbols feature now controls whether C symbols are exported. This feature is off by default (that is why this is a breaking change; the behavior of earlier versions was to export those symbols). For rust users that is almost certainly the correct default, because it means zlib-rs can be used together with stock zlib or zlib-ng in the same project. This should fix some issues with symbol clashes between libz-sys (used e.g. by openssl) and zlib-rs.
  • the cdylib crate now uses panic=abort. For C users, that is the only safe way to panic, because unwinding to C is unsound.
  • Some simplifications to simd code: in a number of cases, LLVM optimizes safe rust code to the equivalent assembly that we achieved with explicit simd before.

What's Changed

Full Changelog: v0.4.2...v0.5.0

v0.4.2

20 Feb 13:19
v0.4.2
24622ed
Compare
Choose a tag to compare

Lots of performance improvements. We're now substantially faster than other implementations for inflate (decompression), and faster in the most important cases for compression.

What's Changed

Full Changelog: v0.4.1...v0.4.2

Version 0.4.1

16 Dec 12:04
v0.4.1
Compare
Choose a tag to compare

A minor release, but with some nice goodies.

We now support building C-compatible dynamic libraries with cargo c. The readme of the libz-rs-sys-cdylib crate has all the details.

Additionally, performance has improved drastically. We fixed an incorrect loop bound and started using the enable-dfa-jump-thread llvm flag in our benchmarks, which give inflate performance that is consistently better than zlib-ng. Meanwhile @brian-pane has been making some smaller improvements to deflate performance, where we already beat zlib-ng in some, but not yet in all cases.

What's Changed

New Contributors

Full Changelog: v0.4.0...v0.4.1

v0.4.0

14 Nov 11:24
v0.4.0
6ffe012
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.3.0...v0.4.0

v0.3.1

04 Oct 13:32
v0.3.1
e58916c
Compare
Choose a tag to compare

Version 0.3.0

05 Sep 14:56
v0.3.0
1f8ad1b
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.2.1...v0.3.0

Version 0.2.1

08 Jul 09:07
v0.2.1
98dfc3b
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.2.0...v0.2.1

Version 0.2.0

12 Jun 12:16
v0.2.0
939f52c
Compare
Choose a tag to compare
  • Fix bug with window padding
  • Add no_std support