Tags: zlib-ng/zlib-ng
Tags
2.1.1-Beta2 Changes since 2.1.0-Beta1: - Fix missing exported z_size_t type in zlib.h (zlib-compat mode). - Fix two Coverity warnings - Fix CMake GNUInstallDirs usage - Configure/CMake improvements for compilers with early AVX512-VNNI support (GCC8.0 etc) - Microptimalization for AVX512 implementation of CRC32 - Optimized deflate_rle compression, also added related test and benchmark. - Add testing of file_compress/file_uncompress in minigzip/minideflate - Add emulated RISC-V to CI test workflow - Add deflate_fast to switchlevels test - Fix abicheck CI test was not ignoring version string - Fix MinGW CI test, broken by Github Actions VM image updates
2.1.0 Beta1 release This release contains two years of development and improvements to zlib-ng, as well as fixes and changes inherited from zlib. The 2.1.x version series has new targeted minumum buildsystem versions, as detailed on the Wiki https://github.com/zlib-ng/zlib-ng/wiki Buildsystem: - Many improvements to the CMake scripts. - Improved support for detecting memory alignment functions. - Improved support for unaligned access by letting the compiler promote code to unaligned if supported by the CPU. - Remove x86 cpu feature detection for TZCNT, safely fallback to BSF. - Enable using AVX512 intrinsics with GCC <9. Optimizations and Enhancements: - Decompression is a lot faster (56% faster measured on AVX2-capable x86-64) - Compresson is improved for Level 9, at the cost of a little performance. - Compression is improved for Level 3, by switching from deflate_fast to deflate_medium. - Levels 3 and 4 have been reconfigured to provide a better gradual tradeoff for speed/compression between levels 2 and 5. - Deflate_quick (Level 1) has been improved to default to a bigger windowsize and support changing the window size like the other levels. New instruction set optimizations: - Adler32 implementation using AVX512, AVX512-VNNI, VMX. - CRC32-B implementation using VPCLMULQDQ & IBM-Z. - Slide hash implementation using VMX. - Compare256 implementations using SSE2, Neon, & POWER9. - Inflate chunk copying using SSSE3 & VSX. Compatibility and Porting: - CRC-32 computation changes from madler/zlib. zlib-ng/zlib-ng#a6155234 - Compatible and up-to-date with zlib 1.2.13. - Removed the usage of macros in zlib-ng.h, making life easier for languages that want to call the C functions without having the C preprocessor (Python, etc). Improved support more environments: - Apple M1 - vcpkg - Emscripten Testing: - Tests have been converted to use GTest. Many new tests have also been added. - Gbench support has been added to easily benchmark changes to performance-critical functions. Misc: - Several pieces of core code has been restructured or rewritten. - Too many changes to list here, see the git commit log for the full list of changes. Deprecations: - Configure no longer has the full range of tests. - NMake is no longer actively supported and tested, it is now community supported. - See the wiki for minimum build system versions and deprecations https://github.com/zlib-ng/zlib-ng/wiki
Version 2.0.7 Changes since 2.0.6: - Fix CVE-2022-37434 #1328 - Fix chunkmemset #1196 - Fix deflateBound too small #1236 - Fix Z_SOLO #1263 - Fix ACLE variant of crc32 #1274 - Fix inflateBack #1311 - Fix deflate_quick windowsize #1431 - Fix DFLTCC bugs related to adler32 #1349 and #1390 - Fix warnings #1194 #1312 #1362 - MacOS build fix #1198 - Add invalid windowBits handling #1293 - Support for Force TZCNT #1186 - Support for aligned_alloc() #1360 - Minideflate improvements #1175 #1238 - Dont use unaligned access for memcpy #1309 - Build system #1209 #1233 #1267 #1273 #1278 #1292 #1316 #1318 #1365 - Test improvements #1208 #1227 #1241 #1353 - Cleanup #1266 - Documentation #1205 #1359 - Misc improvements #1294 #1297 #1306 #1344 #1348 - Backported zlib fixes - Backported CI workflows from Develop branch
Version 2.0.6 - Fix hangs on macOS #1031 - Fix minideflate write buffers being overwritten #1060 - Fix deflateBound and compressBound returning too small size estimates #1049 #1071 - Fix incorrect function declaration warning #1080 - Fix build problems when building outside of source dir #1049 - Fix build problems on arm2-7 #1030 - Fixed some compile warnings #1020 #1036 #1037 #1048 - Improved posix memalign support #888 - Improvements to testing #637 #1026 #1032 #1035 #1049 #1051 #1056 #1063 #1067 #1079 - Improvements for integration into other projects #1022 #1042 - Code style fixes #637 #1040 #1050 #1075