blob: 9b0001636dfef40a8da683f5431e37986aa96848 [file] [log] [blame]
Yann Collet0018ca22016-11-07 14:41:21 -08001v1.1.2
Yann Colletb23420f2016-12-13 19:47:17 +01002API : streaming : decompression : changed : automatic implicit reset when chain-decoding new frames without init
3API : experimental : added : dictID retrieval functions, and ZSTD_initCStream_srcSize()
Yann Collet08698532016-12-13 11:45:19 +01004API : zbuff : changed : prototypes now generate deprecation warnings
5lib : improved : faster decompression speed at ultra compression settings and 32-bits mode
6lib : changed : only public ZSTD_ symbols are now exposed
7lib : changed : reduced usage of stack memory
8lib : fixed : several corner case bugs, by Nick Terrell
Yann Collet743b33f2016-12-02 15:18:57 -08009cli : new : gzstd, experimental version able to decode .gz files, by Przemyslaw Skibinski
10cli : new : preserve file attributes
Yann Collet9ffbeea2016-12-02 18:37:38 -080011cli : new : added zstdless and zstdgrep tools
Yann Collet22383122016-12-02 11:36:11 -080012cli : fixed : status displays total amount decoded, even for file consisting of multiple frames (like pzstd)
Yann Collet743b33f2016-12-02 15:18:57 -080013cli : fixed : zstdcat
Yann Collete7a41a52016-12-05 16:21:06 -080014zlib_wrapper : added support for gz* functions, by Przemyslaw Skibinski
Yann Collet08698532016-12-13 11:45:19 +010015install : better compatibility with FreeBSD, by Dimitry Andric
16source tree : changed : zbuff source files moved to lib/deprecated
Yann Collet0018ca22016-11-07 14:41:21 -080017
Yann Collete405c7a2016-10-12 15:29:22 -070018v1.1.1
Yann Collet2b361cf2016-10-14 16:03:34 -070019New : command -M#, --memory=, --memlimit=, --memlimit-decompress= to limit allowed memory consumption
Yann Collet37d13002016-10-24 17:22:12 -070020New : doc/zstd_manual.html, by Przemyslaw Skibinski
Yann Collet95162342016-10-25 16:19:52 -070021Improved : slightly better compression ratio at --ultra levels (>= 20)
Yann Collet4c0b44f2016-11-01 11:13:22 -070022Improved : better memory usage when using streaming compression API, thanks to @Rogier-5 report
23Added : API : ZSTD_initCStream_usingCDict(), ZSTD_initDStream_usingDDict() (experimental section)
24Added : example/multiple_streaming_compression.c
25Changed : zstd_errors.h is now installed within /include (and replaces errors_public.h)
Yann Collet22de81e2016-10-28 13:58:31 -070026Updated man page
Yann Collet37d13002016-10-24 17:22:12 -070027Fixed : zstd-small, zstd-compress and zstd-decompress compilation targets
Yann Collete405c7a2016-10-12 15:29:22 -070028
Yann Collet1eb2fdc2016-09-18 12:21:47 +020029v1.1.0
Yann Collet1563bfe2016-09-02 11:44:21 -070030New : contrib/pzstd, parallel version of zstd, by Nick Terrell
Yann Colleta4c212c2016-09-05 08:06:33 -070031added : NetBSD install target (#338)
Yann Collet83543a72016-09-28 00:15:03 +020032Improved : speed for batches of small files
33Improved : speed of zlib wrapper, by Przemyslaw Skibinski
34Changed : libzstd on Windows supports legacy formats, by Christophe Chevalier
Yann Collet7304eb72016-09-01 15:47:33 -070035Fixed : CLI -d output to stdout by default when input is stdin (#322)
Yann Collet60181e32016-09-01 17:12:26 -070036Fixed : CLI correctly detects console on Mac OS-X
Yann Collet220c5672016-09-13 19:40:50 +020037Fixed : CLI supports recursive mode `-r` on Mac OS-X
38Fixed : Legacy decoders use unified error codes, reported by benrg (#341), fixed by Przemyslaw Skibinski
Yann Collet855766d2016-09-02 17:04:49 -070039Fixed : compatibility with OpenBSD, reported by Juan Francisco Cantero Hurtado (#319)
Yann Collet30d30562016-09-13 17:23:31 +020040Fixed : compatibility with Hurd, by Przemyslaw Skibinski (#365)
Yann Collet1563bfe2016-09-02 11:44:21 -070041Fixed : zstd-pgo, reported by octoploid (#329)
Yann Collet7304eb72016-09-01 15:47:33 -070042
Yann Collet0588ee62016-08-31 09:05:22 -070043v1.0.0
44Change Licensing, all project is now BSD, Copyright Facebook
Yann Collet8baf78a2016-08-20 03:47:49 +020045Small decompression speed improvement
Yann Collet0588ee62016-08-31 09:05:22 -070046API : Streaming API supports legacy format
47API : ZDICT_getDictID(), ZSTD_sizeof_{CCtx, DCtx, CStream, DStream}(), ZSTD_setDStreamParamter()
48CLI supports legacy formats v0.4+
49Fixed : compression fails on certain huge files, reported by Jesse McGrew
Yann Collet94376ac2016-08-25 19:09:21 +020050Enhanced documentation, by Przemyslaw Skibinski
Yann Collet8baf78a2016-08-20 03:47:49 +020051
Yann Collet346efcc2016-08-02 14:26:00 +020052v0.8.1
Yann Collet655393c2016-08-14 00:16:20 +020053New streaming API
Yann Colletfe0590f2016-08-12 18:04:15 +020054Changed : --ultra now enables levels beyond 19
Yann Collet346efcc2016-08-02 14:26:00 +020055Changed : -i# now selects benchmark time in second
56Fixed : ZSTD_compress* can now compress > 4 GB in a single pass, reported by Nick Terrell
Yann Colletfe0590f2016-08-12 18:04:15 +020057Fixed : speed regression on specific patterns (#272)
Yann Colletb3950ee2016-08-16 15:10:30 +020058Fixed : support for Z_SYNC_FLUSH, by Dmitry Krot (#291)
Yann Collet79d9cdd2016-08-18 11:50:37 +020059Fixed : ICC compilation, by Przemyslaw Skibinski
Yann Collet346efcc2016-08-02 14:26:00 +020060
Yann Collet6fa05a22016-07-20 14:58:49 +020061v0.8.0
Yann Colletdd25a272016-07-27 12:35:29 +020062Improved : better speed on clang and gcc -O2, thanks to Eric Biggers
Yann Collet8f29e8e2016-07-31 02:43:17 +020063New : Build on FreeBSD and DragonFly, thanks to JrMarino
Yann Collet62470b42016-07-28 15:29:08 +020064Changed : modified API : ZSTD_compressEnd()
Yann Colletd5c5a772016-07-19 15:06:55 +020065Fixed : legacy mode with ZSTD_HEAPMODE=0, by Christopher Bergqvist
Yann Collet24a3d902016-07-26 01:26:56 +020066Fixed : premature end of frame when zero-sized raw block, reported by Eric Biggers
Yann Collet3ca75032016-08-01 02:26:20 +020067Fixed : large dictionaries (> 384 KB), reported by Ilona Papava
Yann Collet6fa05a22016-07-20 14:58:49 +020068Fixed : checksum correctly checked in single-pass mode
Yann Collet24a3d902016-07-26 01:26:56 +020069Fixed : combined --test amd --rm, reported by Andreas M. Nilsson
Yann Collet85f39192016-07-17 20:42:21 +020070Modified : minor compression level adaptations
Yann Collet6fa05a22016-07-20 14:58:49 +020071Updated : compression format specification to v0.2.0
Yann Collet356e5e22016-07-18 03:14:58 +020072changed : zstd.h moved to /lib directory
Yann Colletd54b2d22016-07-17 15:53:18 +020073
Yann Colletef9999f2016-09-01 16:44:48 -070074v0.7.5
75Transition version, supporting decoding of v0.8.x
76
Yann Collet5e80dd32016-07-13 17:38:39 +020077v0.7.4
Yann Colletd5c5a772016-07-19 15:06:55 +020078Added : homebrew for Mac, by Daniel Cade
Yann Collet3b8b5752016-07-16 20:04:47 +020079Added : more examples
Yann Collet227cc392016-07-15 11:27:09 +020080Fixed : segfault when using small dictionaries, reported by Felix Handte
Yann Collet3b8b5752016-07-16 20:04:47 +020081Modified : default compression level for CLI is now 3
82Updated : specification, to v0.1.1
Yann Colletea2ecdc2016-07-14 22:43:12 +020083
Yann Colletd916c902016-07-04 00:42:58 +020084v0.7.3
Yann Colletd4e103a2016-07-08 19:18:30 +020085New : compression format specification
Yann Collet19c27d22016-07-07 14:40:13 +020086New : `--` separator, stating that all following arguments are file names. Suggested by Chip Turner.
87New : `ZSTD_getDecompressedSize()`
88New : OpenBSD target, by Juan Francisco Cantero Hurtado
89New : `examples` directory
Yann Colleta295b312016-07-06 13:13:12 +020090fixed : dictBuilder using HC levels, reported by Bartosz Taudul
Yann Colletf246cf52016-07-06 20:30:52 +020091fixed : legacy support from ZSTD_decompress_usingDDict(), reported by Felix Handte
Yann Colletd4e103a2016-07-08 19:18:30 +020092fixed : multi-blocks decoding with intermediate uncompressed blocks, reported by Greg Slazinski
Yann Collet19c27d22016-07-07 14:40:13 +020093modified : removed "mem.h" and "error_public.h" dependencies from "zstd.h" (experimental section)
94modified : legacy functions no longer need magic number
Yann Colletd916c902016-07-04 00:42:58 +020095
Yann Collet529d9c72016-06-27 10:03:10 +020096v0.7.2
Yann Collet00d44ab2016-07-04 01:29:47 +020097fixed : ZSTD_decompressBlock() using multiple consecutive blocks. Reported by Greg Slazinski.
Yann Colletd96e8f22016-07-02 22:03:08 +020098fixed : potential segfault on very large files (many gigabytes). Reported by Chip Turner.
99fixed : CLI displays system error message when destination file cannot be created (#231). Reported by Chip Turner.
Yann Collet529d9c72016-06-27 10:03:10 +0200100
Yann Colletc98f8e72016-06-20 16:31:24 +0200101v0.7.1
Yann Colletaa292262016-06-21 14:04:57 +0200102fixed : ZBUFF_compressEnd() called multiple times with too small `dst` buffer, reported by Christophe Chevalier
Yann Collet3755eb82016-06-22 13:15:53 +0200103fixed : dictBuilder fails if first sample is too small, reported by ะ ัƒัะปะฐะฝ ะšะพะฒะฐะปั‘ะฒ
Yann Colleta436a522016-06-20 23:34:04 +0200104fixed : corruption issue, reported by cj
105modified : checksum enabled by default in command line mode
Yann Colletc98f8e72016-06-20 16:31:24 +0200106
Yann Collete3f4e6c2016-05-31 10:12:04 +0200107v0.7.0
Yann Colletdd97e242016-05-30 14:05:44 +0200108New : Support for directory compression, using `-r`, thanks to Przemyslaw Skibinski
Yann Colletb09b12c2016-06-09 22:59:51 +0200109New : Command `--rm`, to remove source file after successful de/compression
Yann Collet662a5412016-06-08 11:11:02 +0200110New : Visual build scripts, by Christophe Chevalier
Yann Colletde95f962016-05-23 19:46:47 +0200111New : Support for Sparse File-systems (do not use space for zero-filled sectors)
Yann Collet0d311602016-06-04 00:09:02 +0200112New : Frame checksum support
Yann Collete3f4e6c2016-05-31 10:12:04 +0200113New : Support pass-through mode (when using `-df`)
Yann Collet4948f272016-06-16 15:38:51 +0200114API : more efficient Dictionary API : `ZSTD_compress_usingCDict()`, `ZSTD_decompress_usingDDict()`
115API : create dictionary files from custom content, by Giuseppe Ottaviano
116API : support for custom malloc/free functions
Yann Collete3f4e6c2016-05-31 10:12:04 +0200117New : controllable Dictionary ID
Yann Collet0d311602016-06-04 00:09:02 +0200118New : Support for skippable frames
Yann Colletde95f962016-05-23 19:46:47 +0200119
Yann Colletf6ca09b2016-05-09 04:44:45 +0200120v0.6.1
Yann Collete6aa23b2016-05-13 11:29:38 +0200121New : zlib wrapper API, thanks to Przemyslaw Skibinski
Yann Colletd9b3cca2016-05-13 12:43:36 +0200122New : Ability to compile compressor / decompressor separately
123Changed : new lib directory structure
Yann Colletf6ca09b2016-05-09 04:44:45 +0200124Fixed : Legacy codec v0.5 compatible with dictionary decompression
125Fixed : Decoder corruption error (#173)
Yann Collet918b9342016-05-10 07:00:07 +0200126Fixed : null-string roundtrip (#176)
Yann Collete6aa23b2016-05-13 11:29:38 +0200127New : benchmark mode can select directory as input
Yann Colletd9b3cca2016-05-13 12:43:36 +0200128Experimental : midipix support, VMS support
Yann Colletf6ca09b2016-05-09 04:44:45 +0200129
Yann Collet6cb41352016-03-15 15:47:38 +0100130v0.6.0
131Stronger high compression modes, thanks to Przemyslaw Skibinski
132API : ZSTD_getFrameParams() provides size of decompressed content
Yann Collet34b20ec2016-03-15 20:47:23 +0100133New : highest compression modes require `--ultra` command to fully unleash their capacity
Yann Colletfbc40b82016-03-16 16:53:47 +0100134Fixed : zstd cli return error code > 0 and removes dst file artifact when decompression fails, thanks to Chip Turner
Yann Collet6cb41352016-03-15 15:47:38 +0100135
Yann Collet0db41152016-02-10 14:50:22 +0100136v0.5.1
137New : Optimal parsing => Very high compression modes, thanks to Przemyslaw Skibinski
Yann Collet459a6b72016-02-15 20:37:23 +0100138Changed : Dictionary builder integrated into libzstd and zstd cli
Yann Collet4c64d512016-02-18 01:01:42 +0100139Changed (!) : zstd cli now uses "multiple input files" as default mode. See `zstd -h`.
Yann Collet459a6b72016-02-15 20:37:23 +0100140Fix : high compression modes for big-endian platforms
Yann Collet2d08b092016-02-16 14:42:08 +0100141New : zstd cli : `-t` | `--test` command
Yann Collet0db41152016-02-10 14:50:22 +0100142
Yann Colletfb810d62016-01-28 00:18:06 +0100143v0.5.0
Yann Collete618f8e2016-01-28 00:29:58 +0100144New : dictionary builder utility
Yann Colletfd416f12016-01-30 03:14:15 +0100145Changed : streaming & dictionary API
Yann Collet45ff4302016-02-05 15:24:57 +0100146Improved : better compression of small data
Yann Colletfb810d62016-01-28 00:18:06 +0100147
Yann Collet223f6332016-01-21 13:33:05 +0100148v0.4.7
149Improved : small compression speed improvement in HC mode
150Changed : `zstd_decompress.c` has ZSTD_LEGACY_SUPPORT to 0 by default
151fix : bt search bug
152
Yann Collet5f9f9872015-12-30 19:52:08 +0100153v0.4.6
154fix : fast compression mode on Windows
Yann Collet3e5b73b2016-01-10 20:46:20 +0100155New : cmake configuration file, thanks to Artyom Dymchenko
Yann Collet5f9f9872015-12-30 19:52:08 +0100156Improved : high compression mode on repetitive data
Yann Colletbf42c8e2016-01-09 01:08:23 +0100157New : block-level API
158New : ZSTD_duplicateCCtx()
Yann Collet5f9f9872015-12-30 19:52:08 +0100159
Yann Colletdeb078b2015-12-17 20:30:14 +0100160v0.4.5
161new : -m/--multiple : compress/decompress multiple files
162
Yann Collet7b7027f2015-12-10 23:53:21 +0100163v0.4.4
Yann Collet6c3e2e72015-12-11 10:44:07 +0100164Fixed : high compression modes for Windows 32 bits
Yann Colletf6f3d752015-12-13 13:35:21 +0100165new : external dictionary API extended to buffered mode and accessible through command line
Yann Collet7b7027f2015-12-10 23:53:21 +0100166new : windows DLL project, thanks to Christophe Chevalier
167
Yann Collet28e7cef2015-12-03 12:11:30 +0100168v0.4.3 :
Yann Collet417890c2015-12-04 17:16:37 +0100169new : external dictionary API
Yann Collet56005e72015-12-07 10:44:25 +0100170new : zstd-frugal
Yann Collet28e7cef2015-12-03 12:11:30 +0100171
Yann Colletaaf6f202015-12-02 15:03:11 +0100172v0.4.2 :
173Generic minor improvements for small blocks
174Fixed : big-endian compatibility, by Peter Harris (#85)
175
Yann Colleta85a8dd2015-11-30 11:53:11 +0100176v0.4.1
Yann Collet44287a32015-11-30 23:13:56 +0100177Fixed : ZSTD_LEGACY_SUPPORT=0 build mode (reported by Luben)
Yann Colletdaa1c652015-11-30 12:25:48 +0100178removed `zstd.c`
Yann Colleta85a8dd2015-11-30 11:53:11 +0100179
Yann Collet7f6e91f2015-11-11 14:39:50 +0100180v0.4.0
Yann Colletdd97e242016-05-30 14:05:44 +0200181Command line utility compatible with high compression levels
Yann Collet7f6e91f2015-11-11 14:39:50 +0100182Removed zstdhc => merged into zstd
Yann Collet88fcd292015-11-25 14:42:45 +0100183Added : ZBUFF API (see zstd_buffered.h)
Yann Collet5b78d2f2015-11-12 15:36:05 +0100184Rolling buffer support
Yann Collet7f6e91f2015-11-11 14:39:50 +0100185
Yann Collet43e0cd52015-11-09 16:38:17 +0100186v0.3.6
187small blocks params
188
Yann Colletf48e35c2015-11-07 01:13:31 +0100189v0.3.5
190minor generic compression improvements
191
Yann Colletf12c1302015-11-05 18:16:59 +0100192v0.3.4
Yann Colletacd222c2015-11-06 12:39:39 +0100193Faster fast cLevels
Yann Colletf12c1302015-11-05 18:16:59 +0100194
Yann Collet35644872015-11-02 16:14:46 +0100195v0.3.3
196Small compression ratio improvement
197
Yann Collet7671f392015-11-02 12:17:39 +0100198v0.3.2
199Fixed Visual Studio
200
Yann Collet66d22b82015-11-02 02:36:10 +0100201v0.3.1 :
202Small compression ratio improvement
203
Yann Colletc776c462015-10-29 19:10:54 +0100204v0.3
205HC mode : compression levels 2-26
206
Yann Collet1077bb82015-10-28 12:32:25 +0100207v0.2.2
208Fix : Visual Studio 2013 & 2015 release compilation, by Christophe Chevalier
209
Yann Collet81e49e62015-10-28 15:56:48 +0100210v0.2.1
Yann Colletdd97e242016-05-30 14:05:44 +0200211Fix : Read errors, advanced fuzzer tests, by Hanno Bรถck
Yann Collet1077bb82015-10-28 12:32:25 +0100212
Yann Colleta3befd32015-10-21 11:13:31 +0100213v0.2.0
214**Breaking format change**
215Faster decompression speed
216Can still decode v0.1 format
217
218v0.1.3
219fix uninitialization warning, reported by Evan Nemerson
220
Yann Collet5abd8202015-08-27 03:16:04 +0100221v0.1.2
Yann Colleta3befd32015-10-21 11:13:31 +0100222frame concatenation support
Yann Collet5abd8202015-08-27 03:16:04 +0100223
224v0.1.1
225fix compression bug
226detects write-flush errors
Yann Collet33a04652016-09-02 22:11:49 -0700227
Yann Collet5abd8202015-08-27 03:16:04 +0100228v0.1.0
229first release