MyGit

v1.5.6

facebook/zstd

版本发布时间: 2024-03-31 02:57:28

facebook/zstd最新发布版本:v1.5.6(2024-03-31 02:57:28)

This release highlights the deployment of Google Chrome 123, introducing zstd-encoding for Web traffic, introduced as a preferable option for compression of dynamic contents. With limited web server support for zstd-encoding due to its novelty, we are launching an updated Zstandard version to facilitate broader adoption.

New stable parameter ZSTD_c_targetCBlockSize

Using zstd compression for large documents over the Internet, data is segmented into smaller blocks of up to 128 KB, for incremental updates. This is crucial for applications like Chrome that process parts of documents as they arrive. However, on slow or congested networks, there can be some brief unresponsiveness in the middle of a block transmission, delaying update. To mitigate such scenarios, libzstd introduces the new parameter ZSTD_c_targetCBlockSize, enabling the division of blocks into even smaller segments to enhance initial byte delivery speed. Activating this feature incurs a cost, both runtime (equivalent to -2% speed at level 8) and a slight compression efficiency decrease (<0.1%), but offers some interesting latency reduction, notably beneficial in areas with less powerful network infrastructure.

Granular binary size selection

libzstd provides build customization, including options to compile only the compression or decompression modules, minimizing binary size. Enhanced in v1.5.6 (source), it now allows for even finer control by enabling selective inclusion or exclusion of specific components within these modules. This advancement aids applications needing precise binary size management.

Miscellaneous Enhancements

This release includes various minor enhancements and bug fixes to enhance user experience. Key updates include an expanded list of recognized compressed file suffixes for the --exclude-compressed flag, improving efficiency by skipping presumed incompressible content. Furthermore, compatibility has been broadened to include additional chipsets (sparc64, ARM64EC, risc-v) and operating systems (QNX, AIX, Solaris, HP-UX).

Change Log

api: Promote ZSTD_c_targetCBlockSize to Stable API by @felixhandte api: new experimental ZSTD_d_maxBlockSize parameter, to reduce streaming decompression memory, by @terrelln perf: improve performance of param ZSTD_c_targetCBlockSize, by @Cyan4973 perf: improved compression of arrays of integers at high compression, by @Cyan4973 lib: reduce binary size with selective built-time exclusion, by @felixhandte lib: improved huffman speed on small data and linux kernel, by @terrelln lib: accept dictionaries with partial literal tables, by @terrelln lib: fix CCtx size estimation with external sequence producer, by @embg lib: fix corner case decoder behaviors, by @Cyan4973 and @aimuz lib: fix zdict prototype mismatch in static_only mode, by @ldv-alt lib: fix several bugs in magicless-format decoding, by @embg cli: add common compressed file types to --exclude-compressed by @daniellerozenblit (requested by @dcog989) cli: fix mixing -c and -o commands with --rm, by @Cyan4973 cli: fix erroneous exclusion of hidden files with --output-dir-mirror by @felixhandte cli: improved time accuracy on BSD, by @felixhandte cli: better errors on argument parsing, by @KapJI tests: better compatibility with older versions of grep, by @Cyan4973 tests: lorem ipsum generator as default content generator, by @Cyan4973 build: cmake improvements by @terrelln, @sighingnow, @gjasny, @JohanMabille, @Saverio976, @gruenich, @teo-tsirpanis build: bazel support, by @jondo2010 build: fix cross-compiling for AArch64 with lld by @jcelerier build: fix Apple platform compatibility, by @nidhijaju build: fix Visual 2012 and lower compatibility, by @Cyan4973 build: improve win32 support, by @DimitriPapadopoulos build: better C90 compliance for zlibWrapper, by @emaste port: make: fat binaries on macos, by @mredig port: ARM64EC compatibility for Windows, by @dunhor port: QNX support by @klausholstjacobsen port: MSYS2 and Cygwin makefile installation and test support, by @QBos07 port: risc-v support validation in CI, by @Cyan4973 port: sparc64 support validation in CI, by @Cyan4973 port: AIX compatibility, by @likema port: HP-UX compatibility, by @likema doc: Improved specification accuracy, by @elasota bug: Fix and deprecate ZSTD_generateSequences (#3981), by @terrelln

Full change list (auto-generated)

New Contributors

Full Changelog: https://github.com/facebook/zstd/compare/v1.5.5...v1.5.6

相关地址:原始地址 下载(tar) 下载(zip)

1、 zstd-1.5.6.tar.gz 2.3MB

2、 zstd-1.5.6.tar.gz.sha256 84B

3、 zstd-1.5.6.tar.gz.sig 858B

4、 zstd-1.5.6.tar.zst 1.76MB

5、 zstd-1.5.6.tar.zst.sha256 85B

6、 zstd-1.5.6.tar.zst.sig 858B

7、 zstd-v1.5.6-win32.zip 1.59MB

8、 zstd-v1.5.6-win64.zip 1.63MB

查看:2024-03-31发行的版本