Radically unbloated DEFLATE/zlib/gzip compression/decompression library. Can decompress any gzip/zlib data, and offers simplified compressor which produces gzip-compatible output, while requiring much less resources (and providing less compression ratio of course).
Public API structures and their fields are renamed to follow standard_c_naming_convention. However, compatibility defines are provided to lessen immediate impact on 3rd-party applications. The defines are guaranteed to be available at least for half a year, but may be removed in uzlib releases beyond that. The applications are recommended to update soon. The list of renames can be seen here: https://github.com/pfalcon/uzlib/blob/master/src/tinf_compat.h
Required changes:
destSize is replaced with dest_limit (#18)
All of 3 fields in struct uzlib_uncomp must be explicitly set by user: source, source_limit, source_read_cb.
dest_start must be set in addition to dest too for in-memory decompression mode.
Ok, my idea was to batch any backward-incompatible API changes before 3.0, but that takes longer than expected, so let there be 2.9.x series with API in flux. Hope to cut a release soon.
Soft backward-incompatibility:
standard_c_naming_convention
. However, compatibility defines are provided to lessen immediate impact on 3rd-party applications. The defines are guaranteed to be available at least for half a year, but may be removed in uzlib releases beyond that. The applications are recommended to update soon. The list of renames can be seen here: https://github.com/pfalcon/uzlib/blob/master/src/tinf_compat.hRequired changes:
destSize
is replaced withdest_limit
(#18)struct uzlib_uncomp
must be explicitly set by user:source
,source_limit
,source_read_cb
.dest_start
must be set in addition todest
too for in-memory decompression mode.uzlib_compress()
API changes: https://github.com/pfalcon/uzlib/commit/d1bd481d03268671d6b1796a4177b9723cc349c3, https://github.com/pfalcon/uzlib/commit/36d0a27d37e59267789b4dec1a3ed58d2c16849a