extzstd 0.3.1 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +28 -14
  3. data/contrib/zstd/CHANGELOG +301 -56
  4. data/contrib/zstd/CONTRIBUTING.md +169 -72
  5. data/contrib/zstd/LICENSE +4 -4
  6. data/contrib/zstd/Makefile +116 -87
  7. data/contrib/zstd/Package.swift +36 -0
  8. data/contrib/zstd/README.md +62 -32
  9. data/contrib/zstd/TESTING.md +2 -3
  10. data/contrib/zstd/appveyor.yml +52 -136
  11. data/contrib/zstd/lib/BUCK +5 -7
  12. data/contrib/zstd/lib/Makefile +225 -222
  13. data/contrib/zstd/lib/README.md +51 -6
  14. data/contrib/zstd/lib/common/allocations.h +55 -0
  15. data/contrib/zstd/lib/common/bits.h +200 -0
  16. data/contrib/zstd/lib/common/bitstream.h +45 -62
  17. data/contrib/zstd/lib/common/compiler.h +205 -22
  18. data/contrib/zstd/lib/common/cpu.h +1 -3
  19. data/contrib/zstd/lib/common/debug.c +1 -1
  20. data/contrib/zstd/lib/common/debug.h +12 -19
  21. data/contrib/zstd/lib/common/entropy_common.c +172 -48
  22. data/contrib/zstd/lib/common/error_private.c +10 -2
  23. data/contrib/zstd/lib/common/error_private.h +82 -3
  24. data/contrib/zstd/lib/common/fse.h +37 -86
  25. data/contrib/zstd/lib/common/fse_decompress.c +117 -92
  26. data/contrib/zstd/lib/common/huf.h +99 -166
  27. data/contrib/zstd/lib/common/mem.h +124 -142
  28. data/contrib/zstd/lib/common/pool.c +54 -27
  29. data/contrib/zstd/lib/common/pool.h +10 -4
  30. data/contrib/zstd/lib/common/portability_macros.h +156 -0
  31. data/contrib/zstd/lib/common/threading.c +74 -19
  32. data/contrib/zstd/lib/common/threading.h +5 -10
  33. data/contrib/zstd/lib/common/xxhash.c +7 -847
  34. data/contrib/zstd/lib/common/xxhash.h +5568 -167
  35. data/contrib/zstd/lib/common/zstd_common.c +2 -37
  36. data/contrib/zstd/lib/common/zstd_deps.h +111 -0
  37. data/contrib/zstd/lib/common/zstd_internal.h +132 -187
  38. data/contrib/zstd/lib/common/zstd_trace.h +163 -0
  39. data/contrib/zstd/lib/compress/clevels.h +134 -0
  40. data/contrib/zstd/lib/compress/fse_compress.c +83 -157
  41. data/contrib/zstd/lib/compress/hist.c +27 -29
  42. data/contrib/zstd/lib/compress/hist.h +2 -2
  43. data/contrib/zstd/lib/compress/huf_compress.c +916 -279
  44. data/contrib/zstd/lib/compress/zstd_compress.c +3773 -1019
  45. data/contrib/zstd/lib/compress/zstd_compress_internal.h +610 -203
  46. data/contrib/zstd/lib/compress/zstd_compress_literals.c +119 -42
  47. data/contrib/zstd/lib/compress/zstd_compress_literals.h +16 -6
  48. data/contrib/zstd/lib/compress/zstd_compress_sequences.c +42 -19
  49. data/contrib/zstd/lib/compress/zstd_compress_sequences.h +1 -1
  50. data/contrib/zstd/lib/compress/zstd_compress_superblock.c +49 -317
  51. data/contrib/zstd/lib/compress/zstd_compress_superblock.h +1 -1
  52. data/contrib/zstd/lib/compress/zstd_cwksp.h +320 -103
  53. data/contrib/zstd/lib/compress/zstd_double_fast.c +388 -151
  54. data/contrib/zstd/lib/compress/zstd_double_fast.h +3 -2
  55. data/contrib/zstd/lib/compress/zstd_fast.c +729 -265
  56. data/contrib/zstd/lib/compress/zstd_fast.h +3 -2
  57. data/contrib/zstd/lib/compress/zstd_lazy.c +1270 -251
  58. data/contrib/zstd/lib/compress/zstd_lazy.h +61 -1
  59. data/contrib/zstd/lib/compress/zstd_ldm.c +324 -219
  60. data/contrib/zstd/lib/compress/zstd_ldm.h +9 -2
  61. data/contrib/zstd/lib/compress/zstd_ldm_geartab.h +106 -0
  62. data/contrib/zstd/lib/compress/zstd_opt.c +481 -209
  63. data/contrib/zstd/lib/compress/zstd_opt.h +1 -1
  64. data/contrib/zstd/lib/compress/zstdmt_compress.c +181 -457
  65. data/contrib/zstd/lib/compress/zstdmt_compress.h +34 -113
  66. data/contrib/zstd/lib/decompress/huf_decompress.c +1199 -565
  67. data/contrib/zstd/lib/decompress/huf_decompress_amd64.S +576 -0
  68. data/contrib/zstd/lib/decompress/zstd_ddict.c +12 -12
  69. data/contrib/zstd/lib/decompress/zstd_ddict.h +2 -2
  70. data/contrib/zstd/lib/decompress/zstd_decompress.c +627 -157
  71. data/contrib/zstd/lib/decompress/zstd_decompress_block.c +1086 -326
  72. data/contrib/zstd/lib/decompress/zstd_decompress_block.h +19 -5
  73. data/contrib/zstd/lib/decompress/zstd_decompress_internal.h +62 -13
  74. data/contrib/zstd/lib/deprecated/zbuff.h +1 -1
  75. data/contrib/zstd/lib/deprecated/zbuff_common.c +1 -1
  76. data/contrib/zstd/lib/deprecated/zbuff_compress.c +24 -4
  77. data/contrib/zstd/lib/deprecated/zbuff_decompress.c +3 -1
  78. data/contrib/zstd/lib/dictBuilder/cover.c +73 -52
  79. data/contrib/zstd/lib/dictBuilder/cover.h +7 -6
  80. data/contrib/zstd/lib/dictBuilder/divsufsort.c +1 -1
  81. data/contrib/zstd/lib/dictBuilder/fastcover.c +44 -35
  82. data/contrib/zstd/lib/dictBuilder/zdict.c +103 -111
  83. data/contrib/zstd/lib/legacy/zstd_legacy.h +8 -1
  84. data/contrib/zstd/lib/legacy/zstd_v01.c +21 -54
  85. data/contrib/zstd/lib/legacy/zstd_v01.h +1 -1
  86. data/contrib/zstd/lib/legacy/zstd_v02.c +29 -70
  87. data/contrib/zstd/lib/legacy/zstd_v02.h +1 -1
  88. data/contrib/zstd/lib/legacy/zstd_v03.c +30 -73
  89. data/contrib/zstd/lib/legacy/zstd_v03.h +1 -1
  90. data/contrib/zstd/lib/legacy/zstd_v04.c +29 -71
  91. data/contrib/zstd/lib/legacy/zstd_v04.h +1 -1
  92. data/contrib/zstd/lib/legacy/zstd_v05.c +40 -86
  93. data/contrib/zstd/lib/legacy/zstd_v05.h +1 -1
  94. data/contrib/zstd/lib/legacy/zstd_v06.c +47 -88
  95. data/contrib/zstd/lib/legacy/zstd_v06.h +1 -1
  96. data/contrib/zstd/lib/legacy/zstd_v07.c +40 -83
  97. data/contrib/zstd/lib/legacy/zstd_v07.h +1 -1
  98. data/contrib/zstd/lib/libzstd.mk +214 -0
  99. data/contrib/zstd/lib/libzstd.pc.in +7 -6
  100. data/contrib/zstd/lib/module.modulemap +35 -0
  101. data/contrib/zstd/lib/{dictBuilder/zdict.h → zdict.h} +203 -34
  102. data/contrib/zstd/lib/zstd.h +1217 -287
  103. data/contrib/zstd/lib/{common/zstd_errors.h → zstd_errors.h} +28 -8
  104. data/ext/extconf.rb +7 -6
  105. data/ext/extzstd.c +19 -10
  106. data/ext/extzstd.h +6 -0
  107. data/ext/libzstd_conf.h +0 -1
  108. data/ext/zstd_decompress_asm.S +1 -0
  109. data/gemstub.rb +3 -21
  110. data/lib/extzstd/version.rb +6 -1
  111. data/lib/extzstd.rb +0 -2
  112. data/test/test_basic.rb +0 -5
  113. metadata +18 -6
@@ -1,4 +1,249 @@
1
- v1.4.5
1
+ v1.5.5 (Apr 2023)
2
+ fix: fix rare corruption bug affecting the high compression mode, reported by @danlark1 (#3517, @terrelln)
3
+ perf: improve mid-level compression speed (#3529, #3533, #3543, @yoniko and #3552, @terrelln)
4
+ lib: deprecated bufferless block-level API (#3534) by @terrelln
5
+ cli: mmap large dictionaries to save memory, by @daniellerozenblit
6
+ cli: improve speed of --patch-from mode (~+50%) (#3545) by @daniellerozenblit
7
+ cli: improve i/o speed (~+10%) when processing lots of small files (#3479) by @felixhandte
8
+ cli: zstd no longer crashes when requested to write into write-protected directory (#3541) by @felixhandte
9
+ cli: fix decompression into block device using -o, reported by @georgmu (#3583)
10
+ build: fix zstd CLI compiled with lzma support but not zlib support (#3494) by @Hello71
11
+ build: fix cmake does no longer require 3.18 as minimum version (#3510) by @kou
12
+ build: fix MSVC+ClangCL linking issue (#3569) by @tru
13
+ build: fix zstd-dll, version of zstd CLI that links to the dynamic library (#3496) by @yoniko
14
+ build: fix MSVC warnings (#3495) by @embg
15
+ doc: updated zstd specification to clarify corner cases, by @Cyan4973
16
+ doc: document how to create fat binaries for macos (#3568) by @rickmark
17
+ misc: improve seekable format ingestion speed (~+100%) for very small chunk sizes (#3544) by @Cyan4973
18
+ misc: tests/fullbench can benchmark multiple files (#3516) by @dloidolt
19
+
20
+ v1.5.4 (Feb 2023)
21
+ perf: +20% faster huffman decompression for targets that can't compile x64 assembly (#3449, @terrelln)
22
+ perf: up to +10% faster streaming compression at levels 1-2 (#3114, @embg)
23
+ perf: +4-13% for levels 5-12 by optimizing function generation (#3295, @terrelln)
24
+ pref: +3-11% compression speed for `arm` target (#3199, #3164, #3145, #3141, #3138, @JunHe77 and #3139, #3160, @danlark1)
25
+ perf: +5-30% faster dictionary compression at levels 1-4 (#3086, #3114, #3152, @embg)
26
+ perf: +10-20% cold dict compression speed by prefetching CDict tables (#3177, @embg)
27
+ perf: +1% faster compression by removing a branch in ZSTD_fast_noDict (#3129, @felixhandte)
28
+ perf: Small compression ratio improvements in high compression mode (#2983, #3391, @Cyan4973 and #3285, #3302, @daniellerozenblit)
29
+ perf: small speed improvement by better detecting `STATIC_BMI2` for `clang` (#3080, @TocarIP)
30
+ perf: Improved streaming performance when `ZSTD_c_stableInBuffer` is set (#2974, @Cyan4973)
31
+ cli: Asynchronous I/O for improved cli speed (#2975, #2985, #3021, #3022, @yoniko)
32
+ cli: Change `zstdless` behavior to align with `zless` (#2909, @binhdvo)
33
+ cli: Keep original file if `-c` or `--stdout` is given (#3052, @dirkmueller)
34
+ cli: Keep original files when result is concatenated into a single output with `-o` (#3450, @Cyan4973)
35
+ cli: Preserve Permissions and Ownership of regular files (#3432, @felixhandte)
36
+ cli: Print zlib/lz4/lzma library versions with `-vv` (#3030, @terrelln)
37
+ cli: Print checksum value for single frame files with `-lv` (#3332, @Cyan4973)
38
+ cli: Print `dictID` when present with `-lv` (#3184, @htnhan)
39
+ cli: when `stderr` is *not* the console, disable status updates, but preserve final summary (#3458, @Cyan4973)
40
+ cli: support `--best` and `--no-name` in `gzip` compatibility mode (#3059, @dirkmueller)
41
+ cli: support for `posix` high resolution timer `clock_gettime()`, for improved benchmark accuracy (#3423, @Cyan4973)
42
+ cli: improved help/usage (`-h`, `-H`) formatting (#3094, @dirkmueller and #3385, @jonpalmisc)
43
+ cli: Fix better handling of bogus numeric values (#3268, @ctkhanhly)
44
+ cli: Fix input consists of multiple files _and_ `stdin` (#3222, @yoniko)
45
+ cli: Fix tiny files passthrough (#3215, @cgbur)
46
+ cli: Fix for `-r` on empty directory (#3027, @brailovich)
47
+ cli: Fix empty string as argument for `--output-dir-*` (#3220, @embg)
48
+ cli: Fix decompression memory usage reported by `-vv --long` (#3042, @u1f35c, and #3232, @zengyijing)
49
+ cli: Fix infinite loop when empty input is passed to trainer (#3081, @terrelln)
50
+ cli: Fix `--adapt` doesn't work when `--no-progress` is also set (#3354, @terrelln)
51
+ api: Support for Block-Level Sequence Producer (#3333, @embg)
52
+ api: Support for in-place decompression (#3432, @terrelln)
53
+ api: New `ZSTD_CCtx_setCParams()` function, set all parameters defined in a `ZSTD_compressionParameters` structure (#3403, @Cyan4973)
54
+ api: Streaming decompression detects incorrect header ID sooner (#3175, @Cyan4973)
55
+ api: Window size resizing optimization for edge case (#3345, @daniellerozenblit)
56
+ api: More accurate error codes for busy-loop scenarios (#3413, #3455, @Cyan4973)
57
+ api: Fix limit overflow in `compressBound` and `decompressBound` (#3362, #3373, Cyan4973) reported by @nigeltao
58
+ api: Deprecate several advanced experimental functions: streaming (#3408, @embg), copy (#3196, @mileshu)
59
+ bug: Fix corruption that rarely occurs in 32-bit mode with wlog=25 (#3361, @terrelln)
60
+ bug: Fix for block-splitter (#3033, @Cyan4973)
61
+ bug: Fixes for Sequence Compression API (#3023, #3040, @Cyan4973)
62
+ bug: Fix leaking thread handles on Windows (#3147, @animalize)
63
+ bug: Fix timing issues with cmake/meson builds (#3166, #3167, #3170, @Cyan4973)
64
+ build: Allow user to select legacy level for cmake (#3050, @shadchin)
65
+ build: Enable legacy support by default in cmake (#3079, @niamster)
66
+ build: Meson build script improvements (#3039, #3120, #3122, #3327, #3357, @eli-schwartz and #3276, @neheb)
67
+ build: Add aarch64 to supported architectures for zstd_trace (#3054, @ooosssososos)
68
+ build: support AIX architecture (#3219, @qiongsiwu)
69
+ build: Fix `ZSTD_LIB_MINIFY` build macro, which now reduces static library size by half (#3366, @terrelln)
70
+ build: Fix Windows issues with Multithreading translation layer (#3364, #3380, @yoniko) and ARM64 target (#3320, @cwoffenden)
71
+ build: Fix `cmake` script (#3382, #3392, @terrelln and #3252 @Tachi107 and #3167 @Cyan4973)
72
+ doc: Updated man page, providing more details for `--train` mode (#3112, @Cyan4973)
73
+ doc: Add decompressor errata document (#3092, @terrelln)
74
+ misc: Enable Intel CET (#2992, #2994, @hjl-tools)
75
+ misc: Fix `contrib/` seekable format (#3058, @yhoogstrate and #3346, @daniellerozenblit)
76
+ misc: Improve speed of the one-file library generator (#3241, @wahern and #3005, @cwoffenden)
77
+
78
+ v1.5.3 (dev version, unpublished)
79
+
80
+ v1.5.2 (Jan, 2022)
81
+ perf: Regain Minimal memset()-ing During Reuse of Compression Contexts (@Cyan4973, #2969)
82
+ build: Build Zstd with `noexecstack` on All Architectures (@felixhandte, #2964)
83
+ doc: Clarify Licensing (@terrelln, #2981)
84
+
85
+ v1.5.1 (Dec, 2021)
86
+ perf: rebalanced compression levels, to better match the intended speed/level curve, by @senhuang42
87
+ perf: faster huffman decoder, using x64 assembly, by @terrelln
88
+ perf: slightly faster high speed modes (strategies fast & dfast), by @felixhandte
89
+ perf: improved binary size and faster compilation times, by @terrelln
90
+ perf: new row64 mode, used notably in level 12, by @senhuang42
91
+ perf: faster mid-level compression speed in presence of highly repetitive patterns, by @senhuang42
92
+ perf: minor compression ratio improvements for small data at high levels, by @cyan4973
93
+ perf: reduced stack usage (mostly useful for Linux Kernel), by @terrelln
94
+ perf: faster compression speed on incompressible data, by @bindhvo
95
+ perf: on-demand reduced ZSTD_DCtx state size, using build macro ZSTD_DECODER_INTERNAL_BUFFER, at a small cost of performance, by @bindhvo
96
+ build: allows hiding static symbols in the dynamic library, using build macro, by @skitt
97
+ build: support for m68k (Motorola 68000's), by @cyan4973
98
+ build: improved AIX support, by @Helflym
99
+ build: improved meson unofficial build, by @eli-schwartz
100
+ cli : custom memory limit when training dictionary (#2925), by @embg
101
+ cli : report advanced parameters information when compressing in very verbose mode (``-vv`), by @Svetlitski-FB
102
+
103
+ v1.5.0 (May 11, 2021)
104
+ api: Various functions promoted from experimental to stable API: (#2579-2581, @senhuang42)
105
+ `ZSTD_defaultCLevel()`
106
+ `ZSTD_getDictID_fromCDict()`
107
+ api: Several experimental functions have been deprecated and will emit a compiler warning (#2582, @senhuang42)
108
+ `ZSTD_compress_advanced()`
109
+ `ZSTD_compress_usingCDict_advanced()`
110
+ `ZSTD_compressBegin_advanced()`
111
+ `ZSTD_compressBegin_usingCDict_advanced()`
112
+ `ZSTD_initCStream_srcSize()`
113
+ `ZSTD_initCStream_usingDict()`
114
+ `ZSTD_initCStream_usingCDict()`
115
+ `ZSTD_initCStream_advanced()`
116
+ `ZSTD_initCStream_usingCDict_advanced()`
117
+ `ZSTD_resetCStream()`
118
+ api: ZSTDMT_NBWORKERS_MAX reduced to 64 for 32-bit environments (@Cyan4973)
119
+ perf: Significant speed improvements for middle compression levels (#2494, @senhuang42 @terrelln)
120
+ perf: Block splitter to improve compression ratio, enabled by default for high compression levels (#2447, @senhuang42)
121
+ perf: Decompression loop refactor, speed improvements on `clang` and for `--long` modes (#2614 #2630, @Cyan4973)
122
+ perf: Reduced stack usage during compression and decompression entropy stage (#2522 #2524, @terrelln)
123
+ bug: Improve setting permissions of created files (#2525, @felixhandte)
124
+ bug: Fix large dictionary non-determinism (#2607, @terrelln)
125
+ bug: Fix non-determinism test failures on Linux i686 (#2606, @terrelln)
126
+ bug: Fix various dedicated dictionary search bugs (#2540 #2586, @senhuang42 @felixhandte)
127
+ bug: Ensure `ZSTD_estimateCCtxSize*() `monotonically increases with compression level (#2538, @senhuang42)
128
+ bug: Fix --patch-from mode parameter bound bug with small files (#2637, @occivink)
129
+ bug: Fix UBSAN error in decompression (#2625, @terrelln)
130
+ bug: Fix superblock compression divide by zero bug (#2592, @senhuang42)
131
+ bug: Make the number of physical CPU cores detection more robust (#2517, @PaulBone)
132
+ doc: Improve `zdict.h` dictionary training API documentation (#2622, @terrelln)
133
+ doc: Note that public `ZSTD_free*()` functions accept NULL pointers (#2521, @animalize)
134
+ doc: Add style guide docs for open source contributors (#2626, @Cyan4973)
135
+ tests: Better regression test coverage for different dictionary modes (#2559, @senhuang42)
136
+ tests: Better test coverage of index reduction (#2603, @terrelln)
137
+ tests: OSS-Fuzz coverage for seekable format (#2617, @senhuang42)
138
+ tests: Test coverage for ZSTD threadpool API (#2604, @senhuang42)
139
+ build: Dynamic library built multithreaded by default (#2584, @senhuang42)
140
+ build: Move `zstd_errors.h` and `zdict.h` to `lib/` root (#2597, @terrelln)
141
+ build: Allow `ZSTDMT_JOBSIZE_MIN` to be configured at compile-time, reduce default to 512KB (#2611, @Cyan4973)
142
+ build: Single file library build script moved to `build/` directory (#2618, @felixhandte)
143
+ build: `ZBUFF_*()` is no longer built by default (#2583, @senhuang42)
144
+ build: Fixed Meson build (#2548, @SupervisedThinking @kloczek)
145
+ build: Fix excessive compiler warnings with clang-cl and CMake (#2600, @nickhutchinson)
146
+ build: Detect presence of `md5` on Darwin (#2609, @felixhandte)
147
+ build: Avoid SIGBUS on armv6 (#2633, @bmwiedmann)
148
+ cli: `--progress` flag added to always display progress bar (#2595, @senhuang42)
149
+ cli: Allow reading from block devices with `--force` (#2613, @felixhandte)
150
+ cli: Fix CLI filesize display bug (#2550, @Cyan4973)
151
+ cli: Fix windows CLI `--filelist` end-of-line bug (#2620, @Cyan4973)
152
+ contrib: Various fixes for linux kernel patch (#2539, @terrelln)
153
+ contrib: Seekable format - Decompression hanging edge case fix (#2516, @senhuang42)
154
+ contrib: Seekable format - New seek table-only API (#2113 #2518, @mdittmer @Cyan4973)
155
+ contrib: Seekable format - Fix seek table descriptor check when loading (#2534, @foxeng)
156
+ contrib: Seekable format - Decompression fix for large offsets, (#2594, @azat)
157
+ misc: Automatically published release tarballs available on Github (#2535, @felixhandte)
158
+
159
+ v1.4.9 (Mar 1, 2021)
160
+ bug: Use `umask()` to Constrain Created File Permissions (#2495, @felixhandte)
161
+ bug: Make Simple Single-Pass Functions Ignore Advanced Parameters (#2498, @terrelln)
162
+ api: Add (De)Compression Tracing Functionality (#2482, @terrelln)
163
+ api: Support References to Multiple DDicts (#2446, @senhuang42)
164
+ api: Add Function to Generate Skippable Frame (#2439, @senhuang42)
165
+ perf: New Algorithms for the Long Distance Matcher (#2483, @mpu)
166
+ perf: Performance Improvements for Long Distance Matcher (#2464, @mpu)
167
+ perf: Don't Shrink Window Log when Streaming with a Dictionary (#2451, @terrelln)
168
+ cli: Fix `--output-dir-mirror`'s Rejection of `..`-Containing Paths (#2512, @felixhandte)
169
+ cli: Allow Input From Console When `-f`/`--force` is Passed (#2466, @felixhandte)
170
+ cli: Improve Help Message (#2500, @senhuang42)
171
+ tests: Remove Flaky Tests (#2455, #2486, #2445, @Cyan4973)
172
+ tests: Correctly Invoke md5 Utility on NetBSD (#2492, @niacat)
173
+ tests: Avoid Using `stat -c` on NetBSD (#2513, @felixhandte)
174
+ build: Zstd CLI Can Now be Linked to Dynamic `libzstd` (#2457, #2454 @Cyan4973)
175
+ build: Hide and Avoid Using Static-Only Symbols (#2501, #2504, @skitt)
176
+ build: CMake: Enable Only C for lib/ and programs/ Projects (#2498, @concatime)
177
+ build: CMake: Use `configure_file()` to Create the `.pc` File (#2462, @lazka)
178
+ build: Fix Fuzzer Compiler Detection & Update UBSAN Flags (#2503, @terrelln)
179
+ build: Add Guards for `_LARGEFILE_SOURCE` and `_LARGEFILE64_SOURCE` (#2444, @indygreg)
180
+ build: Improve `zlibwrapper` Makefile (#2437, @Cyan4973)
181
+ contrib: Add `recover_directory` Program (#2473, @terrelln)
182
+ doc: Change License Year to 2021 (#2452 & #2465, @terrelln & @senhuang42)
183
+ doc: Fix Typos (#2459, @ThomasWaldmann)
184
+
185
+ v1.4.8 (Dec 18, 2020)
186
+ hotfix: wrong alignment of an internal buffer
187
+
188
+ v1.4.7 (Dec 16, 2020)
189
+ perf: stronger --long mode at high compression levels, by @senhuang42
190
+ perf: stronger --patch-from at high compression levels, thanks to --long improvements
191
+ perf: faster dictionary compression at medium compression levels, by @felixhandte
192
+ perf: small speed & memory usage improvements for ZSTD_compress2(), by @terrelln
193
+ perf: improved fast compression speeds with Visual Studio, by @animalize
194
+ cli : Set nb of threads with environment variable ZSTD_NBTHREADS, by @senhuang42
195
+ cli : accept decompressing files with *.zstd suffix
196
+ cli : provide a condensed summary by default when processing multiple files
197
+ cli : fix : stdin input no longer confused as user prompt
198
+ cli : improve accuracy of several error messages
199
+ api : new sequence ingestion API, by @senhuang42
200
+ api : shared thread pool: control total nb of threads used by multiple compression jobs, by @marxin
201
+ api : new ZSTD_getDictID_fromCDict(), by @LuAPi
202
+ api : zlibWrapper only uses public API, and is compatible with dynamic library, by @terrelln
203
+ api : fix : multithreaded compression has predictable output even in special cases (see #2327) (issue not accessible from cli)
204
+ api : fix : dictionary compression correctly respects dictionary compression level (see #2303) (issue not accessible from cli)
205
+ build: fix cmake script when using path with spaces, by @terrelln
206
+ build: improved compile-time detection of aarch64/neon platforms, by @bsdimp
207
+ build: Fix building on AIX 5.1, by @likema
208
+ build: compile paramgrill with cmake on Windows, requested by @mirh
209
+ doc : clarify repcode updates in format specification, by @felixhandte
210
+
211
+ v1.4.6
212
+ fix : Always return dstSize_tooSmall when that is the case
213
+ fix : Fix ZSTD_initCStream_advanced() with static allocation and no dictionary
214
+ perf: Improve small block decompression speed by 20%+, by @terrelln
215
+ perf: Reduce compression stack usage by 1 KB, by @terrelln
216
+ perf: Improve decompression speed by improving ZSTD_wildcopy, by @helloguo (#2252, #2256)
217
+ perf: Improve histogram construction, by @cyan4973 (#2253)
218
+ cli : Add --output-dir-mirror option, by @xxie24 (#2219)
219
+ cli : Warn when (de)compressing multiple files into a single output, by @senhuang42 (#2279)
220
+ cli : Improved progress bar and status summary when (de)compressing multiple files, by @senhuang42 (#2283)
221
+ cli : Call stat less often, by @felixhandte (#2262)
222
+ cli : Allow --patch-from XXX and --filelist XXX in addition to --patch-from=XXX and --filelist=XXX, by @cyan4973 (#2250)
223
+ cli : Allow --patch-from to compress stdin with --stream-size, by @bimbashrestha (#2206)
224
+ api : Do not install zbuff.h, since it has long been deprecated, by @cyan4973 (#2166).
225
+ api : Fix ZSTD_CCtx_setParameter() with ZSTD_c_compressionLevel to make 0 mean default level, by @i-do-cpp (#2291)
226
+ api : Rename ZSTDMT_NBTHREADS_MAX to ZSTDMT_NBWORKERS_MAX, by @marxin (#2228).
227
+ build: Install pkg-config file with CMake and MinGW, by @tonytheodore (#2183)
228
+ build: Install DLL with CMake on Windows, by @BioDataAnalysis (#2221)
229
+ build: Fix DLL install location with CMake, by @xantares and @bimbashrestha (#2186)
230
+ build: Add ZSTD_NO_UNUSED_FUNCTIONS macro to hide unused functions
231
+ build: Add ZSTD_NO_INTRINSICS macro to avoid explicit intrinsics
232
+ build: Add STATIC_BMI2 macro for compile time detection of BMI2 on MSVC, by @Niadb (#2258)
233
+ build: Fix -Wcomma warnings, by @cwoffenden
234
+ build: Remove distutils requirement for meson build, by @neheb (#2197)
235
+ build: Fix cli compilation with uclibc
236
+ build: Fix cli compilation without st_mtime, by @ffontaine (#2246)
237
+ build: Fix shadowing warnings in library
238
+ build: Fix single file library compilation with Enscripten, by @yoshihitoh (#2227)
239
+ misc: Improve single file library and include dictBuilder, by @cwoffenden
240
+ misc: Allow compression dictionaries with missing symbols
241
+ misc: Add freestanding translation script in contrib/freestanding_lib
242
+ misc: Collect all of zstd's libc dependencies into zstd_deps.h
243
+ doc : Add ZSTD_versionString() to manual, by @animalize
244
+ doc : Fix documentation for ZSTD_CCtxParams_setParameter(), by @felixhandte (#2270)
245
+
246
+ v1.4.5 (May 22, 2020)
2
247
  fix : Compression ratio regression on huge files (> 3 GB) using high levels (--ultra) and multithreading, by @terrelln
3
248
  perf: Improved decompression speed: x64 : +10% (clang) / +5% (gcc); ARM : from +15% to +50%, depending on SoC, by @terrelln
4
249
  perf: Automatically downsizes ZSTD_DCtx when too large for too long (#2069, by @bimbashreshta)
@@ -24,7 +269,7 @@ misc: Edit-distance match finder in contrib/
24
269
  doc : Improved beginner CONTRIBUTING.md docs
25
270
  doc : New issue templates for zstd
26
271
 
27
- v1.4.4
272
+ v1.4.4 (Nov 6, 2019)
28
273
  perf: Improved decompression speed, by > 10%, by @terrelln
29
274
  perf: Better compression speed when re-using a context, by @felixhandte
30
275
  perf: Fix compression ratio when compressing large files with small dictionary, by @senhuang42
@@ -51,18 +296,18 @@ pack: modified pkgconfig, for better integration into openwrt, requested by @neh
51
296
  misc: Improved documentation : ZSTD_CLEVEL, DYNAMIC_BMI2, ZSTD_CDict, function deprecation, zstd format
52
297
  misc: fixed educational decoder : accept larger literals section, and removed UNALIGNED() macro
53
298
 
54
- v1.4.3
299
+ v1.4.3 (Aug 20, 2019)
55
300
  bug: Fix Dictionary Compression Ratio Regression by @cyan4973 (#1709)
56
301
  bug: Fix Buffer Overflow in legacy v0.3 decompression by @felixhandte (#1722)
57
302
  build: Add support for IAR C/C++ Compiler for Arm by @joseph0918 (#1705)
58
303
 
59
- v1.4.2
304
+ v1.4.2 (Jul 26, 2019)
60
305
  bug: Fix bug in zstd-0.5 decoder by @terrelln (#1696)
61
306
  bug: Fix seekable decompression in-memory API by @iburinoc (#1695)
62
307
  misc: Validate blocks are smaller than size limit by @vivekmg (#1685)
63
308
  misc: Restructure source files by @ephiepark (#1679)
64
309
 
65
- v1.4.1
310
+ v1.4.1 (Jul 20, 2019)
66
311
  bug: Fix data corruption in niche use cases by @terrelln (#1659)
67
312
  bug: Fuzz legacy modes, fix uncovered bugs by @terrelln (#1593, #1594, #1595)
68
313
  bug: Fix out of bounds read by @terrelln (#1590)
@@ -92,7 +337,7 @@ build: Visual Studio: fix linking by @absotively (#1639)
92
337
  build: Fix MinGW-W64 build by @myzhang1029 (#1600)
93
338
  misc: Expand decodecorpus coverage by @ephiepark (#1664)
94
339
 
95
- v1.4.0
340
+ v1.4.0 (Apr 17, 2019)
96
341
  perf: Improve level 1 compression speed in most scenarios by 6% by @gbtucker and @terrelln
97
342
  api: Move the advanced API, including all functions in the staging section, to the stable section
98
343
  api: Make ZSTD_e_flush and ZSTD_e_end block for maximum forward progress
@@ -129,7 +374,7 @@ misc: Optimize dictionary memory usage in corner cases
129
374
  misc: Improve the dictionary builder on small or homogeneous data
130
375
  misc: Fix spelling across the repo by @jsoref
131
376
 
132
- v1.3.8
377
+ v1.3.8 (Dec 28, 2018)
133
378
  perf: better decompression speed on large files (+7%) and cold dictionaries (+15%)
134
379
  perf: slightly better compression ratio at high compression modes
135
380
  api : finalized advanced API, last stage before "stable" status
@@ -151,14 +396,14 @@ doc : clarified zstd_compression_format.md, by @ulikunitz
151
396
  misc: fixed zstdgrep, returns 1 on failure, by @lzutao
152
397
  misc: NEWS renamed as CHANGELOG, in accordance with fboss
153
398
 
154
- v1.3.7
399
+ v1.3.7 (Oct 20, 2018)
155
400
  perf: slightly better decompression speed on clang (depending on hardware target)
156
401
  fix : performance of dictionary compression for small input < 4 KB at levels 9 and 10
157
402
  build: no longer build backtrace by default in release mode; restrict further automatic mode
158
403
  build: control backtrace support through build macro BACKTRACE
159
404
  misc: added man pages for zstdless and zstdgrep, by @samrussell
160
405
 
161
- v1.3.6
406
+ v1.3.6 (Oct 6, 2018)
162
407
  perf: much faster dictionary builder, by @jenniferliu
163
408
  perf: faster dictionary compression on small data when using multiple contexts, by @felixhandte
164
409
  perf: faster dictionary decompression when using a very large number of dictionaries simultaneously
@@ -172,7 +417,7 @@ build: Read Legacy format is limited to v0.5+ by default. Can be changed at comp
172
417
  doc : zstd_compression_format.md updated to match wording in IETF RFC 8478
173
418
  misc: tests/paramgrill, a parameter optimizer, by @GeorgeLu97
174
419
 
175
- v1.3.5
420
+ v1.3.5 (Jun 29, 2018)
176
421
  perf: much faster dictionary compression, by @felixhandte
177
422
  perf: small quality improvement for dictionary generation, by @terrelln
178
423
  perf: slightly improved high compression levels (notably level 19)
@@ -187,7 +432,7 @@ build: make and make all are compatible with -j
187
432
  doc : clarify zstd_compression_format.md, updated for IETF RFC process
188
433
  misc: pzstd compatible with reproducible compilation, by @lamby
189
434
 
190
- v1.3.4
435
+ v1.3.4 (Mar 27, 2018)
191
436
  perf: faster speed (especially decoding speed) on recent cpus (haswell+)
192
437
  perf: much better performance associating --long with multi-threading, by @terrelln
193
438
  perf: better compression at levels 13-15
@@ -205,7 +450,7 @@ build: VS2017 scripts, by @HaydnTrigg
205
450
  misc: all /contrib projects fixed
206
451
  misc: added /contrib/docker script by @gyscos
207
452
 
208
- v1.3.3
453
+ v1.3.3 (Dec 21, 2017)
209
454
  perf: faster zstd_opt strategy (levels 16-19)
210
455
  fix : bug #944 : multithreading with shared ditionary and large data, reported by @gsliepen
211
456
  cli : fix : content size written in header by default
@@ -217,7 +462,7 @@ api : change : when setting `pledgedSrcSize`, use `ZSTD_CONTENTSIZE_UNKNOWN` mac
217
462
  build: fix : compilation under rhel6 and centos6, reported by @pixelb
218
463
  build: added `check` target
219
464
 
220
- v1.3.2
465
+ v1.3.2 (Oct 10, 2017)
221
466
  new : long range mode, using --long command, by Stella Lau (@stellamplau)
222
467
  new : ability to generate and decode magicless frames (#591)
223
468
  changed : maximum nb of threads reduced to 200, to avoid address space exhaustion in 32-bits mode
@@ -240,7 +485,7 @@ example : added streaming_memory_usage
240
485
  license : changed /examples license to BSD + GPLv2
241
486
  license : fix a few header files to reflect new license (#825)
242
487
 
243
- v1.3.1
488
+ v1.3.1 (Aug 21, 2017)
244
489
  New license : BSD + GPLv2
245
490
  perf: substantially decreased memory usage in Multi-threading mode, thanks to reports by Tino Reichardt (@mcmilk)
246
491
  perf: Multi-threading supports up to 256 threads. Cap at 256 when more are requested (#760)
@@ -255,7 +500,7 @@ new : contrib/adaptive-compression, I/O driven compression strength, by Paul Cru
255
500
  new : contrib/long_distance_matching, statistics by Stella Lau (@stellamplau)
256
501
  updated : contrib/linux-kernel, by Nick Terrell (@terrelln)
257
502
 
258
- v1.3.0
503
+ v1.3.0 (Jul 6, 2017)
259
504
  cli : new : `--list` command, by Paul Cruz
260
505
  cli : changed : xz/lzma support enabled by default
261
506
  cli : changed : `-t *` continue processing list after a decompression error
@@ -270,7 +515,7 @@ tools : decodecorpus can generate random dictionary-compressed samples, by Paul
270
515
  new : contrib/seekable_format, demo and API, by Sean Purcell
271
516
  changed : contrib/linux-kernel, updated version and license, by Nick Terrell
272
517
 
273
- v1.2.0
518
+ v1.2.0 (May 5, 2017)
274
519
  cli : changed : Multithreading enabled by default (use target zstd-nomt or HAVE_THREAD=0 to disable)
275
520
  cli : new : command -T0 means "detect and use nb of cores", by Sean Purcell
276
521
  cli : new : zstdmt symlink hardwired to `zstd -T0`
@@ -292,7 +537,7 @@ build: enabled Multi-threading support for *BSD, by Baptiste Daroussin
292
537
  tools: updated Paramgrill. Command -O# provides best parameters for sample and speed target.
293
538
  new : contrib/linux-kernel version, by Nick Terrell
294
539
 
295
- v1.1.4
540
+ v1.1.4 (Mar 18, 2017)
296
541
  cli : new : can compress in *.gz format, using --format=gzip command, by Przemyslaw Skibinski
297
542
  cli : new : advanced benchmark command --priority=rt
298
543
  cli : fix : write on sparse-enabled file systems in 32-bits mode, by @ds77
@@ -308,7 +553,7 @@ build : improved cmake script, by @Majlen
308
553
  build : added -Wformat-security flag, as recommended by Padraig Brady
309
554
  doc : new : educational decoder, by Sean Purcell
310
555
 
311
- v1.1.3
556
+ v1.1.3 (Feb 7, 2017)
312
557
  cli : zstd can decompress .gz files (can be disabled with `make zstd-nogz` or `make HAVE_ZLIB=0`)
313
558
  cli : new : experimental target `make zstdmt`, with multi-threading support
314
559
  cli : new : improved dictionary builder "cover" (experimental), by Nick Terrell, based on prior work by Giuseppe Ottaviano.
@@ -324,7 +569,7 @@ API : fix : all symbols properly exposed in libzstd, by Nick Terrell
324
569
  build : support for Solaris target, by Przemyslaw Skibinski
325
570
  doc : clarified specification, by Sean Purcell
326
571
 
327
- v1.1.2
572
+ v1.1.2 (Dec 15, 2016)
328
573
  API : streaming : decompression : changed : automatic implicit reset when chain-decoding new frames without init
329
574
  API : experimental : added : dictID retrieval functions, and ZSTD_initCStream_srcSize()
330
575
  API : zbuff : changed : prototypes now generate deprecation warnings
@@ -341,7 +586,7 @@ zlib_wrapper : added support for gz* functions, by Przemyslaw Skibinski
341
586
  install : better compatibility with FreeBSD, by Dimitry Andric
342
587
  source tree : changed : zbuff source files moved to lib/deprecated
343
588
 
344
- v1.1.1
589
+ v1.1.1 (Nov 2, 2016)
345
590
  New : command -M#, --memory=, --memlimit=, --memlimit-decompress= to limit allowed memory consumption
346
591
  New : doc/zstd_manual.html, by Przemyslaw Skibinski
347
592
  Improved : slightly better compression ratio at --ultra levels (>= 20)
@@ -352,7 +597,7 @@ Changed : zstd_errors.h is now installed within /include (and replaces errors_pu
352
597
  Updated man page
353
598
  Fixed : zstd-small, zstd-compress and zstd-decompress compilation targets
354
599
 
355
- v1.1.0
600
+ v1.1.0 (Sep 28, 2016)
356
601
  New : contrib/pzstd, parallel version of zstd, by Nick Terrell
357
602
  added : NetBSD install target (#338)
358
603
  Improved : speed for batches of small files
@@ -366,7 +611,7 @@ Fixed : compatibility with OpenBSD, reported by Juan Francisco Cantero Hurtado (
366
611
  Fixed : compatibility with Hurd, by Przemyslaw Skibinski (#365)
367
612
  Fixed : zstd-pgo, reported by octoploid (#329)
368
613
 
369
- v1.0.0
614
+ v1.0.0 (Sep 1, 2016)
370
615
  Change Licensing, all project is now BSD, Copyright Facebook
371
616
  Small decompression speed improvement
372
617
  API : Streaming API supports legacy format
@@ -375,7 +620,7 @@ CLI supports legacy formats v0.4+
375
620
  Fixed : compression fails on certain huge files, reported by Jesse McGrew
376
621
  Enhanced documentation, by Przemyslaw Skibinski
377
622
 
378
- v0.8.1
623
+ v0.8.1 (Aug 18, 2016)
379
624
  New streaming API
380
625
  Changed : --ultra now enables levels beyond 19
381
626
  Changed : -i# now selects benchmark time in second
@@ -384,7 +629,7 @@ Fixed : speed regression on specific patterns (#272)
384
629
  Fixed : support for Z_SYNC_FLUSH, by Dmitry Krot (#291)
385
630
  Fixed : ICC compilation, by Przemyslaw Skibinski
386
631
 
387
- v0.8.0
632
+ v0.8.0 (Aug 2, 2016)
388
633
  Improved : better speed on clang and gcc -O2, thanks to Eric Biggers
389
634
  New : Build on FreeBSD and DragonFly, thanks to JrMarino
390
635
  Changed : modified API : ZSTD_compressEnd()
@@ -397,17 +642,17 @@ Modified : minor compression level adaptations
397
642
  Updated : compression format specification to v0.2.0
398
643
  changed : zstd.h moved to /lib directory
399
644
 
400
- v0.7.5
645
+ v0.7.5 (Aug 1, 2016)
401
646
  Transition version, supporting decoding of v0.8.x
402
647
 
403
- v0.7.4
648
+ v0.7.4 (Jul 17, 2016)
404
649
  Added : homebrew for Mac, by Daniel Cade
405
650
  Added : more examples
406
651
  Fixed : segfault when using small dictionaries, reported by Felix Handte
407
652
  Modified : default compression level for CLI is now 3
408
653
  Updated : specification, to v0.1.1
409
654
 
410
- v0.7.3
655
+ v0.7.3 (Jul 9, 2016)
411
656
  New : compression format specification
412
657
  New : `--` separator, stating that all following arguments are file names. Suggested by Chip Turner.
413
658
  New : `ZSTD_getDecompressedSize()`
@@ -419,18 +664,18 @@ fixed : multi-blocks decoding with intermediate uncompressed blocks, reported by
419
664
  modified : removed "mem.h" and "error_public.h" dependencies from "zstd.h" (experimental section)
420
665
  modified : legacy functions no longer need magic number
421
666
 
422
- v0.7.2
667
+ v0.7.2 (Jul 4, 2016)
423
668
  fixed : ZSTD_decompressBlock() using multiple consecutive blocks. Reported by Greg Slazinski.
424
669
  fixed : potential segfault on very large files (many gigabytes). Reported by Chip Turner.
425
670
  fixed : CLI displays system error message when destination file cannot be created (#231). Reported by Chip Turner.
426
671
 
427
- v0.7.1
672
+ v0.7.1 (Jun 23, 2016)
428
673
  fixed : ZBUFF_compressEnd() called multiple times with too small `dst` buffer, reported by Christophe Chevalier
429
674
  fixed : dictBuilder fails if first sample is too small, reported by Руслан Ковалёв
430
675
  fixed : corruption issue, reported by cj
431
676
  modified : checksum enabled by default in command line mode
432
677
 
433
- v0.7.0
678
+ v0.7.0 (Jun 17, 2016)
434
679
  New : Support for directory compression, using `-r`, thanks to Przemyslaw Skibinski
435
680
  New : Command `--rm`, to remove source file after successful de/compression
436
681
  New : Visual build scripts, by Christophe Chevalier
@@ -443,7 +688,7 @@ API : support for custom malloc/free functions
443
688
  New : controllable Dictionary ID
444
689
  New : Support for skippable frames
445
690
 
446
- v0.6.1
691
+ v0.6.1 (May 13, 2016)
447
692
  New : zlib wrapper API, thanks to Przemyslaw Skibinski
448
693
  New : Ability to compile compressor / decompressor separately
449
694
  Changed : new lib directory structure
@@ -453,103 +698,103 @@ Fixed : null-string roundtrip (#176)
453
698
  New : benchmark mode can select directory as input
454
699
  Experimental : midipix support, VMS support
455
700
 
456
- v0.6.0
701
+ v0.6.0 (Apr 13, 2016)
457
702
  Stronger high compression modes, thanks to Przemyslaw Skibinski
458
703
  API : ZSTD_getFrameParams() provides size of decompressed content
459
704
  New : highest compression modes require `--ultra` command to fully unleash their capacity
460
705
  Fixed : zstd cli return error code > 0 and removes dst file artifact when decompression fails, thanks to Chip Turner
461
706
 
462
- v0.5.1
707
+ v0.5.1 (Feb 18, 2016)
463
708
  New : Optimal parsing => Very high compression modes, thanks to Przemyslaw Skibinski
464
709
  Changed : Dictionary builder integrated into libzstd and zstd cli
465
710
  Changed (!) : zstd cli now uses "multiple input files" as default mode. See `zstd -h`.
466
711
  Fix : high compression modes for big-endian platforms
467
712
  New : zstd cli : `-t` | `--test` command
468
713
 
469
- v0.5.0
714
+ v0.5.0 (Feb 5, 2016)
470
715
  New : dictionary builder utility
471
716
  Changed : streaming & dictionary API
472
717
  Improved : better compression of small data
473
718
 
474
- v0.4.7
719
+ v0.4.7 (Jan 22, 2016)
475
720
  Improved : small compression speed improvement in HC mode
476
721
  Changed : `zstd_decompress.c` has ZSTD_LEGACY_SUPPORT to 0 by default
477
722
  fix : bt search bug
478
723
 
479
- v0.4.6
724
+ v0.4.6 (Jan 13, 2016)
480
725
  fix : fast compression mode on Windows
481
726
  New : cmake configuration file, thanks to Artyom Dymchenko
482
727
  Improved : high compression mode on repetitive data
483
728
  New : block-level API
484
729
  New : ZSTD_duplicateCCtx()
485
730
 
486
- v0.4.5
731
+ v0.4.5 (Dec 18, 2015)
487
732
  new : -m/--multiple : compress/decompress multiple files
488
733
 
489
- v0.4.4
734
+ v0.4.4 (Dec 14, 2015)
490
735
  Fixed : high compression modes for Windows 32 bits
491
736
  new : external dictionary API extended to buffered mode and accessible through command line
492
737
  new : windows DLL project, thanks to Christophe Chevalier
493
738
 
494
- v0.4.3 :
739
+ v0.4.3 (Dec 7, 2015)
495
740
  new : external dictionary API
496
741
  new : zstd-frugal
497
742
 
498
- v0.4.2 :
743
+ v0.4.2 (Dec 2, 2015)
499
744
  Generic minor improvements for small blocks
500
745
  Fixed : big-endian compatibility, by Peter Harris (#85)
501
746
 
502
- v0.4.1
747
+ v0.4.1 (Dec 1, 2015)
503
748
  Fixed : ZSTD_LEGACY_SUPPORT=0 build mode (reported by Luben)
504
749
  removed `zstd.c`
505
750
 
506
- v0.4.0
751
+ v0.4.0 (Nov 29, 2015)
507
752
  Command line utility compatible with high compression levels
508
753
  Removed zstdhc => merged into zstd
509
754
  Added : ZBUFF API (see zstd_buffered.h)
510
755
  Rolling buffer support
511
756
 
512
- v0.3.6
757
+ v0.3.6 (Nov 10, 2015)
513
758
  small blocks params
514
759
 
515
- v0.3.5
760
+ v0.3.5 (Nov 9, 2015)
516
761
  minor generic compression improvements
517
762
 
518
- v0.3.4
763
+ v0.3.4 (Nov 6, 2015)
519
764
  Faster fast cLevels
520
765
 
521
- v0.3.3
766
+ v0.3.3 (Nov 5, 2015)
522
767
  Small compression ratio improvement
523
768
 
524
- v0.3.2
769
+ v0.3.2 (Nov 2, 2015)
525
770
  Fixed Visual Studio
526
771
 
527
- v0.3.1 :
772
+ v0.3.1 (Nov 2, 2015)
528
773
  Small compression ratio improvement
529
774
 
530
- v0.3
775
+ v0.3 (Oct 30, 2015)
531
776
  HC mode : compression levels 2-26
532
777
 
533
- v0.2.2
778
+ v0.2.2 (Oct 28, 2015)
534
779
  Fix : Visual Studio 2013 & 2015 release compilation, by Christophe Chevalier
535
780
 
536
- v0.2.1
781
+ v0.2.1 (Oct 24, 2015)
537
782
  Fix : Read errors, advanced fuzzer tests, by Hanno Böck
538
783
 
539
- v0.2.0
784
+ v0.2.0 (Oct 22, 2015)
540
785
  **Breaking format change**
541
786
  Faster decompression speed
542
787
  Can still decode v0.1 format
543
788
 
544
- v0.1.3
789
+ v0.1.3 (Oct 15, 2015)
545
790
  fix uninitialization warning, reported by Evan Nemerson
546
791
 
547
- v0.1.2
792
+ v0.1.2 (Sep 11, 2015)
548
793
  frame concatenation support
549
794
 
550
- v0.1.1
795
+ v0.1.1 (Aug 27, 2015)
551
796
  fix compression bug
552
797
  detects write-flush errors
553
798
 
554
- v0.1.0
799
+ v0.1.0 (Aug 25, 2015)
555
800
  first release