Yann Collet | 2431997 | 2018-06-06 15:51:55 -0700 | [diff] [blame] | 1 | v1.3.5 |
| 2 | perf: much faster dictionary compression, by @felixhandte |
| 3 | perf: small quality improvement for dictionary generation, by @terrelln |
| 4 | perf: slightly improved high compression levels (notably level 19) |
| 5 | mem : automatic memory release for long duration contexts |
| 6 | cli : fix : overlapLog can be manually set |
| 7 | cli : fix : decoding invalid lz4 frames |
| 8 | api : fix : performance degradation for dictionary compression when using advanced API, by @terrelln |
| 9 | api : change : clarify ZSTD_CCtx_reset() vs ZSTD_CCtx_resetParameters(), by @terrelln |
| 10 | build: select custom libzstd scope through control macros, by @GeorgeLu97 |
| 11 | build: OpenBSD patch, by @bket |
| 12 | build: make and make all are compatible with -j |
| 13 | doc : clarify zstd_compression_format.md, updated for IETF RFC process |
| 14 | misc: pzstd compatible with reproducible compilation, by @lamby |
| 15 | |
Yann Collet | 8c6dbf4 | 2018-03-09 16:22:34 -0800 | [diff] [blame] | 16 | v1.3.4 |
Yann Collet | eba13db | 2018-03-26 10:21:49 -0700 | [diff] [blame] | 17 | perf: faster speed (especially decoding speed) on recent cpus (haswell+) |
| 18 | perf: much better performance associating --long with multi-threading, by @terrelln |
| 19 | perf: better compression at levels 13-15 |
| 20 | cli : asynchronous compression by default, for faster experience (use --single-thread for former behavior) |
| 21 | cli : smoother status report in multi-threading mode |
| 22 | cli : added command --fast=#, for faster compression modes |
Yann Collet | 8c6dbf4 | 2018-03-09 16:22:34 -0800 | [diff] [blame] | 23 | cli : fix crash when not overwriting existing files, by Pádraig Brady (@pixelb) |
| 24 | api : `nbThreads` becomes `nbWorkers` : 1 triggers asynchronous mode |
Yann Collet | eba13db | 2018-03-26 10:21:49 -0700 | [diff] [blame] | 25 | api : compression levels can be negative, for even more speed |
Yann Collet | 8c6dbf4 | 2018-03-09 16:22:34 -0800 | [diff] [blame] | 26 | api : ZSTD_getFrameProgression() : get precise progress status of ZSTDMT anytime |
| 27 | api : ZSTDMT can accept new compression parameters during compression |
Yann Collet | eba13db | 2018-03-26 10:21:49 -0700 | [diff] [blame] | 28 | api : implemented all advanced dictionary decompression prototypes |
Yann Collet | 8c6dbf4 | 2018-03-09 16:22:34 -0800 | [diff] [blame] | 29 | build: improved meson recipe, by Shawn Landden (@shawnl) |
Yann Collet | eba13db | 2018-03-26 10:21:49 -0700 | [diff] [blame] | 30 | build: VS2017 scripts, by @HaydnTrigg |
| 31 | misc: all /contrib projects fixed |
| 32 | misc: added /contrib/docker script by @gyscos |
Yann Collet | 8c6dbf4 | 2018-03-09 16:22:34 -0800 | [diff] [blame] | 33 | |
Yann Collet | 2cff66b | 2017-12-14 16:11:20 -0800 | [diff] [blame] | 34 | v1.3.3 |
Yann Collet | 8c6dbf4 | 2018-03-09 16:22:34 -0800 | [diff] [blame] | 35 | perf: faster zstd_opt strategy (levels 16-19) |
Yann Collet | 2cff66b | 2017-12-14 16:11:20 -0800 | [diff] [blame] | 36 | fix : bug #944 : multithreading with shared ditionary and large data, reported by @gsliepen |
| 37 | cli : fix : content size written in header by default |
| 38 | cli : fix : improved LZ4 format support, by @felixhandte |
| 39 | cli : new : hidden command `-S`, to benchmark multiple files while generating one result per file |
| 40 | api : fix : support large skippable frames, by @terrelln |
| 41 | api : fix : streaming interface was adding a useless 3-bytes null block to small frames |
| 42 | api : change : when setting `pledgedSrcSize`, use `ZSTD_CONTENTSIZE_UNKNOWN` macro value to mean "unknown" |
| 43 | build: fix : compilation under rhel6 and centos6, reported by @pixelb |
| 44 | build: added `check` target |
| 45 | |
Yann Collet | 9023898 | 2017-08-30 17:44:12 -0700 | [diff] [blame] | 46 | v1.3.2 |
Yann Collet | 9288970 | 2017-09-18 13:41:54 -0700 | [diff] [blame] | 47 | new : long range mode, using --long command, by Stella Lau (@stellamplau) |
Yann Collet | 7e00df4 | 2017-10-02 16:27:25 -0700 | [diff] [blame] | 48 | new : ability to generate and decode magicless frames (#591) |
| 49 | changed : maximum nb of threads reduced to 200, to avoid address space exhaustion in 32-bits mode |
Yann Collet | 9288970 | 2017-09-18 13:41:54 -0700 | [diff] [blame] | 50 | fix : multi-threading compression works with custom allocators |
Yann Collet | f97c2db | 2017-09-21 16:07:29 -0700 | [diff] [blame] | 51 | fix : ZSTD_sizeof_CStream() was over-evaluating memory usage |
| 52 | fix : a rare compression bug when compression generates very large distances and bunch of other conditions (only possible at --ultra -22) |
Yann Collet | 9288970 | 2017-09-18 13:41:54 -0700 | [diff] [blame] | 53 | fix : 32-bits build can now decode large offsets (levels 21+) |
Yann Collet | 7e00df4 | 2017-10-02 16:27:25 -0700 | [diff] [blame] | 54 | cli : added LZ4 frame support by default, by Felix Handte (@felixhandte) |
| 55 | cli : improved --list output |
Yann Collet | 9288970 | 2017-09-18 13:41:54 -0700 | [diff] [blame] | 56 | cli : new : can split input file for dictionary training, using command -B# |
Yann Collet | 7e00df4 | 2017-10-02 16:27:25 -0700 | [diff] [blame] | 57 | cli : new : clean operation artefact on Ctrl-C interruption |
Yann Collet | 9288970 | 2017-09-18 13:41:54 -0700 | [diff] [blame] | 58 | cli : fix : do not change /dev/null permissions when using command -t with root access, reported by @mike155 (#851) |
Yann Collet | 7e00df4 | 2017-10-02 16:27:25 -0700 | [diff] [blame] | 59 | cli : fix : write file size in header in multiple-files mode |
| 60 | api : added macro ZSTD_COMPRESSBOUND() for static allocation |
| 61 | api : experimental : new advanced decompression API |
| 62 | api : fix : sizeof_CCtx() used to over-estimate |
Yann Collet | 0d6ecc7 | 2017-09-11 14:09:34 -0700 | [diff] [blame] | 63 | build: fix : no-multithread variant compiles without pool.c dependency, reported by Mitchell Blank Jr (@mitchblank) (#819) |
Yann Collet | 9023898 | 2017-08-30 17:44:12 -0700 | [diff] [blame] | 64 | build: better compatibility with reproducible builds, by Bernhard M. Wiedemann (@bmwiedemann) (#818) |
Yann Collet | 7e00df4 | 2017-10-02 16:27:25 -0700 | [diff] [blame] | 65 | example : added streaming_memory_usage |
| 66 | license : changed /examples license to BSD + GPLv2 |
| 67 | license : fix a few header files to reflect new license (#825) |
Yann Collet | 9023898 | 2017-08-30 17:44:12 -0700 | [diff] [blame] | 68 | |
Yann Collet | 40156a4 | 2017-07-08 04:55:09 -0700 | [diff] [blame] | 69 | v1.3.1 |
Yann Collet | 4912fc2 | 2017-08-20 11:45:58 -0700 | [diff] [blame] | 70 | New license : BSD + GPLv2 |
| 71 | perf: substantially decreased memory usage in Multi-threading mode, thanks to reports by Tino Reichardt (@mcmilk) |
Yann Collet | 6733c07 | 2017-07-13 15:34:44 -0700 | [diff] [blame] | 72 | perf: Multi-threading supports up to 256 threads. Cap at 256 when more are requested (#760) |
Yann Collet | c523c93 | 2017-08-18 15:57:53 -0700 | [diff] [blame] | 73 | cli : improved and fixed --list command, by @ib (#772) |
Yann Collet | 4912fc2 | 2017-08-20 11:45:58 -0700 | [diff] [blame] | 74 | cli : command -vV to list supported formats, by @ib (#771) |
| 75 | build : fixed binary variants, reported by @svenha (#788) |
| 76 | build : fix Visual compilation for non x86/x64 targets, reported by Greg Slazinski (@GregSlazinski) (#718) |
Yann Collet | 8ef666c | 2017-07-12 14:23:34 -0700 | [diff] [blame] | 77 | API exp : breaking change : ZSTD_getframeHeader() provides more information |
Yann Collet | 2bd6440 | 2017-07-13 17:12:16 -0700 | [diff] [blame] | 78 | API exp : breaking change : pinned down values of error codes |
Yann Collet | 4912fc2 | 2017-08-20 11:45:58 -0700 | [diff] [blame] | 79 | doc : fixed huffman example, by Ulrich Kunitz (@ulikunitz) |
| 80 | new : contrib/adaptive-compression, I/O driven compression strength, by Paul Cruz (@paulcruz74) |
| 81 | new : contrib/long_distance_matching, statistics by Stella Lau (@stellamplau) |
| 82 | updated : contrib/linux-kernel, by Nick Terrell (@terrelln) |
Yann Collet | 40156a4 | 2017-07-08 04:55:09 -0700 | [diff] [blame] | 83 | |
Yann Collet | 257a722 | 2017-06-02 17:35:11 -0700 | [diff] [blame] | 84 | v1.3.0 |
Yann Collet | 224e7a1 | 2017-06-21 15:58:36 -0700 | [diff] [blame] | 85 | cli : new : `--list` command, by Paul Cruz |
Yann Collet | acbef3d | 2017-06-29 05:18:09 -0700 | [diff] [blame] | 86 | cli : changed : xz/lzma support enabled by default |
Yann Collet | 224e7a1 | 2017-06-21 15:58:36 -0700 | [diff] [blame] | 87 | cli : changed : `-t *` continue processing list after a decompression error |
Yann Collet | 01743a3 | 2017-06-16 17:56:41 -0700 | [diff] [blame] | 88 | API : added : ZSTD_versionString() |
Yann Collet | acbef3d | 2017-06-29 05:18:09 -0700 | [diff] [blame] | 89 | API : promoted to stable status : ZSTD_getFrameContentSize(), by Sean Purcell |
Yann Collet | 86bd83e | 2017-06-02 17:43:55 -0700 | [diff] [blame] | 90 | API exp : new advanced API : ZSTD_compress_generic(), ZSTD_CCtx_setParameter() |
| 91 | API exp : new : API for static or external allocation : ZSTD_initStatic?Ctx() |
| 92 | API exp : added : ZSTD_decompressBegin_usingDDict(), requested by Guy Riddle (#700) |
Yann Collet | acbef3d | 2017-06-29 05:18:09 -0700 | [diff] [blame] | 93 | API exp : clarified memory estimation / measurement functions. |
Yann Collet | 224e7a1 | 2017-06-21 15:58:36 -0700 | [diff] [blame] | 94 | API exp : changed : strongest strategy renamed ZSTD_btultra, fastest strategy ZSTD_fast set to 1 |
Yann Collet | acbef3d | 2017-06-29 05:18:09 -0700 | [diff] [blame] | 95 | tools : decodecorpus can generate random dictionary-compressed samples, by Paul Cruz |
Yann Collet | 257a722 | 2017-06-02 17:35:11 -0700 | [diff] [blame] | 96 | new : contrib/seekable_format, demo and API, by Sean Purcell |
| 97 | changed : contrib/linux-kernel, updated version and license, by Nick Terrell |
| 98 | |
Yann Collet | 8b66953 | 2017-04-27 12:50:20 -0700 | [diff] [blame] | 99 | v1.2.0 |
Yann Collet | 5a80445 | 2017-04-27 12:49:22 -0700 | [diff] [blame] | 100 | cli : changed : Multithreading enabled by default (use target zstd-nomt or HAVE_THREAD=0 to disable) |
| 101 | cli : new : command -T0 means "detect and use nb of cores", by Sean Purcell |
| 102 | cli : new : zstdmt symlink hardwired to `zstd -T0` |
Yann Collet | 7bd68e1 | 2017-04-28 08:54:13 -0700 | [diff] [blame] | 103 | cli : new : command --threads=# (#671) |
Yann Collet | 7aada3c | 2017-05-02 12:14:12 -0700 | [diff] [blame] | 104 | cli : changed : cover dictionary builder by default, for improved quality, by Nick Terrell |
| 105 | cli : new : commands --train-cover and --train-legacy, to select dictionary algorithm and parameters |
Yann Collet | c08e568 | 2017-05-03 14:32:33 -0700 | [diff] [blame] | 106 | cli : experimental targets `zstd4` and `xzstd4`, with support for lz4 format, by Sean Purcell |
Yann Collet | 5a80445 | 2017-04-27 12:49:22 -0700 | [diff] [blame] | 107 | cli : fix : does not output compressed data on console |
| 108 | cli : fix : ignore symbolic links unless --force specified, |
| 109 | API : breaking change : ZSTD_createCDict_advanced(), only use compressionParameters as argument |
Yann Collet | 68a7d3d | 2017-04-28 12:46:48 -0700 | [diff] [blame] | 110 | API : added : prototypes ZSTD_*_usingCDict_advanced(), for direct control over frameParameters. |
Yann Collet | 5a80445 | 2017-04-27 12:49:22 -0700 | [diff] [blame] | 111 | API : improved: ZSTDMT_compressCCtx() reduced memory usage |
| 112 | API : fix : ZSTDMT_compressCCtx() now provides srcSize in header (#634) |
| 113 | API : fix : src size stored in frame header is controlled at end of frame |
Yann Collet | 7aada3c | 2017-05-02 12:14:12 -0700 | [diff] [blame] | 114 | API : fix : enforced consistent rules for pledgedSrcSize==0 (#641) |
| 115 | API : fix : error code "GENERIC" replaced by "dstSizeTooSmall" when appropriate |
Yann Collet | f3dfcdc | 2017-03-21 12:18:28 -0700 | [diff] [blame] | 116 | build: improved cmake script, by @Majlen |
Yann Collet | 5a80445 | 2017-04-27 12:49:22 -0700 | [diff] [blame] | 117 | build: enabled Multi-threading support for *BSD, by Baptiste Daroussin |
| 118 | tools: updated Paramgrill. Command -O# provides best parameters for sample and speed target. |
| 119 | new : contrib/linux-kernel version, by Nick Terrell |
Yann Collet | f3dfcdc | 2017-03-21 12:18:28 -0700 | [diff] [blame] | 120 | |
Yann Collet | 58af614 | 2017-02-13 18:32:12 -0800 | [diff] [blame] | 121 | v1.1.4 |
Yann Collet | c09d16b | 2017-02-14 10:45:19 -0800 | [diff] [blame] | 122 | cli : new : can compress in *.gz format, using --format=gzip command, by Przemyslaw Skibinski |
| 123 | cli : new : advanced benchmark command --priority=rt |
Yann Collet | 58af614 | 2017-02-13 18:32:12 -0800 | [diff] [blame] | 124 | cli : fix : write on sparse-enabled file systems in 32-bits mode, by @ds77 |
Yann Collet | dccd6b6 | 2017-02-27 15:57:50 -0800 | [diff] [blame] | 125 | cli : fix : --rm remains silent when input is stdin |
Yann Collet | 7ae3039 | 2017-03-14 04:19:51 -0700 | [diff] [blame] | 126 | cli : experimental : xzstd, with support for xz/lzma decoding, by Przemyslaw Skibinski |
Yann Collet | 43764cd | 2017-02-28 17:44:17 -0800 | [diff] [blame] | 127 | speed : improved decompression speed in streaming mode for single shot scenarios (+5%) |
Yann Collet | 5a80445 | 2017-04-27 12:49:22 -0700 | [diff] [blame] | 128 | memory: DDict (decompression dictionary) memory usage down from 150 KB to 20 KB |
| 129 | arch: 32-bits variant able to generate and decode very long matches (>32 MB), by Sean Purcell |
Yann Collet | e02409f | 2017-03-02 17:14:57 -0800 | [diff] [blame] | 130 | API : new : ZSTD_findFrameCompressedSize(), ZSTD_getFrameContentSize(), ZSTD_findDecompressedSize() |
Yann Collet | 7ae3039 | 2017-03-14 04:19:51 -0700 | [diff] [blame] | 131 | API : changed : dropped support of legacy versions <= v0.3 (can be changed by modifying ZSTD_LEGACY_SUPPORT value) |
Yann Collet | 5a80445 | 2017-04-27 12:49:22 -0700 | [diff] [blame] | 132 | build : new: meson build system in contrib/meson, by Dima Krasner |
| 133 | build : improved cmake script, by @Majlen |
| 134 | build : added -Wformat-security flag, as recommended by Padraig Brady |
Yann Collet | 58af614 | 2017-02-13 18:32:12 -0800 | [diff] [blame] | 135 | doc : new : educational decoder, by Sean Purcell |
| 136 | |
Yann Collet | d46ecb5 | 2016-12-17 16:28:12 +0100 | [diff] [blame] | 137 | v1.1.3 |
Yann Collet | 5962e58 | 2017-02-05 18:09:35 -0800 | [diff] [blame] | 138 | cli : zstd can decompress .gz files (can be disabled with `make zstd-nogz` or `make HAVE_ZLIB=0`) |
Yann Collet | 122b6aa | 2017-01-27 03:22:37 -0800 | [diff] [blame] | 139 | cli : new : experimental target `make zstdmt`, with multi-threading support |
Yann Collet | 00ea51f | 2017-02-07 12:05:28 -0800 | [diff] [blame] | 140 | cli : new : improved dictionary builder "cover" (experimental), by Nick Terrell, based on prior work by Giuseppe Ottaviano. |
Yann Collet | d76d1a9 | 2016-12-22 20:18:43 +0100 | [diff] [blame] | 141 | cli : new : advanced commands for detailed parameters, by Przemyslaw Skibinski |
Yann Collet | aca113f | 2016-12-23 22:25:03 +0100 | [diff] [blame] | 142 | cli : fix zstdless on Mac OS-X, by Andrew Janke |
Yann Collet | 122b6aa | 2017-01-27 03:22:37 -0800 | [diff] [blame] | 143 | cli : fix #232 "compress non-files" |
Yann Collet | 8e44bd8 | 2017-01-17 13:15:25 -0800 | [diff] [blame] | 144 | dictBuilder : improved dictionary generation quality, thanks to Nick Terrell |
Yann Collet | 122b6aa | 2017-01-27 03:22:37 -0800 | [diff] [blame] | 145 | API : new : lib/compress/ZSTDMT_compress.h multithreading API (experimental) |
Yann Collet | 4e5eea6 | 2016-12-21 16:44:35 +0100 | [diff] [blame] | 146 | API : new : ZSTD_create?Dict_byReference(), requested by Bartosz Taudul |
Yann Collet | d76d1a9 | 2016-12-22 20:18:43 +0100 | [diff] [blame] | 147 | API : new : ZDICT_finalizeDictionary() |
Yann Collet | 122b6aa | 2017-01-27 03:22:37 -0800 | [diff] [blame] | 148 | API : fix : ZSTD_initCStream_usingCDict() properly writes dictID into frame header, by Gregory Szorc (#511) |
| 149 | API : fix : all symbols properly exposed in libzstd, by Nick Terrell |
| 150 | build : support for Solaris target, by Przemyslaw Skibinski |
Yann Collet | 816edeb | 2017-02-06 17:39:54 -0800 | [diff] [blame] | 151 | doc : clarified specification, by Sean Purcell |
Yann Collet | d46ecb5 | 2016-12-17 16:28:12 +0100 | [diff] [blame] | 152 | |
Yann Collet | 0018ca2 | 2016-11-07 14:41:21 -0800 | [diff] [blame] | 153 | v1.1.2 |
Yann Collet | b23420f | 2016-12-13 19:47:17 +0100 | [diff] [blame] | 154 | API : streaming : decompression : changed : automatic implicit reset when chain-decoding new frames without init |
| 155 | API : experimental : added : dictID retrieval functions, and ZSTD_initCStream_srcSize() |
Yann Collet | 0869853 | 2016-12-13 11:45:19 +0100 | [diff] [blame] | 156 | API : zbuff : changed : prototypes now generate deprecation warnings |
| 157 | lib : improved : faster decompression speed at ultra compression settings and 32-bits mode |
| 158 | lib : changed : only public ZSTD_ symbols are now exposed |
| 159 | lib : changed : reduced usage of stack memory |
| 160 | lib : fixed : several corner case bugs, by Nick Terrell |
Yann Collet | 743b33f | 2016-12-02 15:18:57 -0800 | [diff] [blame] | 161 | cli : new : gzstd, experimental version able to decode .gz files, by Przemyslaw Skibinski |
| 162 | cli : new : preserve file attributes |
Yann Collet | 9ffbeea | 2016-12-02 18:37:38 -0800 | [diff] [blame] | 163 | cli : new : added zstdless and zstdgrep tools |
Yann Collet | 2238312 | 2016-12-02 11:36:11 -0800 | [diff] [blame] | 164 | cli : fixed : status displays total amount decoded, even for file consisting of multiple frames (like pzstd) |
Yann Collet | 743b33f | 2016-12-02 15:18:57 -0800 | [diff] [blame] | 165 | cli : fixed : zstdcat |
Yann Collet | e7a41a5 | 2016-12-05 16:21:06 -0800 | [diff] [blame] | 166 | zlib_wrapper : added support for gz* functions, by Przemyslaw Skibinski |
Yann Collet | 0869853 | 2016-12-13 11:45:19 +0100 | [diff] [blame] | 167 | install : better compatibility with FreeBSD, by Dimitry Andric |
| 168 | source tree : changed : zbuff source files moved to lib/deprecated |
Yann Collet | 0018ca2 | 2016-11-07 14:41:21 -0800 | [diff] [blame] | 169 | |
Yann Collet | e405c7a | 2016-10-12 15:29:22 -0700 | [diff] [blame] | 170 | v1.1.1 |
Yann Collet | 2b361cf | 2016-10-14 16:03:34 -0700 | [diff] [blame] | 171 | New : command -M#, --memory=, --memlimit=, --memlimit-decompress= to limit allowed memory consumption |
Yann Collet | 37d1300 | 2016-10-24 17:22:12 -0700 | [diff] [blame] | 172 | New : doc/zstd_manual.html, by Przemyslaw Skibinski |
Yann Collet | 9516234 | 2016-10-25 16:19:52 -0700 | [diff] [blame] | 173 | Improved : slightly better compression ratio at --ultra levels (>= 20) |
Yann Collet | 4c0b44f | 2016-11-01 11:13:22 -0700 | [diff] [blame] | 174 | Improved : better memory usage when using streaming compression API, thanks to @Rogier-5 report |
| 175 | Added : API : ZSTD_initCStream_usingCDict(), ZSTD_initDStream_usingDDict() (experimental section) |
| 176 | Added : example/multiple_streaming_compression.c |
| 177 | Changed : zstd_errors.h is now installed within /include (and replaces errors_public.h) |
Yann Collet | 22de81e | 2016-10-28 13:58:31 -0700 | [diff] [blame] | 178 | Updated man page |
Yann Collet | 37d1300 | 2016-10-24 17:22:12 -0700 | [diff] [blame] | 179 | Fixed : zstd-small, zstd-compress and zstd-decompress compilation targets |
Yann Collet | e405c7a | 2016-10-12 15:29:22 -0700 | [diff] [blame] | 180 | |
Yann Collet | 1eb2fdc | 2016-09-18 12:21:47 +0200 | [diff] [blame] | 181 | v1.1.0 |
Yann Collet | 1563bfe | 2016-09-02 11:44:21 -0700 | [diff] [blame] | 182 | New : contrib/pzstd, parallel version of zstd, by Nick Terrell |
Yann Collet | a4c212c | 2016-09-05 08:06:33 -0700 | [diff] [blame] | 183 | added : NetBSD install target (#338) |
Yann Collet | 83543a7 | 2016-09-28 00:15:03 +0200 | [diff] [blame] | 184 | Improved : speed for batches of small files |
| 185 | Improved : speed of zlib wrapper, by Przemyslaw Skibinski |
| 186 | Changed : libzstd on Windows supports legacy formats, by Christophe Chevalier |
Yann Collet | 7304eb7 | 2016-09-01 15:47:33 -0700 | [diff] [blame] | 187 | Fixed : CLI -d output to stdout by default when input is stdin (#322) |
Yann Collet | 60181e3 | 2016-09-01 17:12:26 -0700 | [diff] [blame] | 188 | Fixed : CLI correctly detects console on Mac OS-X |
Yann Collet | 220c567 | 2016-09-13 19:40:50 +0200 | [diff] [blame] | 189 | Fixed : CLI supports recursive mode `-r` on Mac OS-X |
| 190 | Fixed : Legacy decoders use unified error codes, reported by benrg (#341), fixed by Przemyslaw Skibinski |
Yann Collet | 855766d | 2016-09-02 17:04:49 -0700 | [diff] [blame] | 191 | Fixed : compatibility with OpenBSD, reported by Juan Francisco Cantero Hurtado (#319) |
Yann Collet | 30d3056 | 2016-09-13 17:23:31 +0200 | [diff] [blame] | 192 | Fixed : compatibility with Hurd, by Przemyslaw Skibinski (#365) |
Yann Collet | 1563bfe | 2016-09-02 11:44:21 -0700 | [diff] [blame] | 193 | Fixed : zstd-pgo, reported by octoploid (#329) |
Yann Collet | 7304eb7 | 2016-09-01 15:47:33 -0700 | [diff] [blame] | 194 | |
Yann Collet | 0588ee6 | 2016-08-31 09:05:22 -0700 | [diff] [blame] | 195 | v1.0.0 |
| 196 | Change Licensing, all project is now BSD, Copyright Facebook |
Yann Collet | 8baf78a | 2016-08-20 03:47:49 +0200 | [diff] [blame] | 197 | Small decompression speed improvement |
Yann Collet | 0588ee6 | 2016-08-31 09:05:22 -0700 | [diff] [blame] | 198 | API : Streaming API supports legacy format |
| 199 | API : ZDICT_getDictID(), ZSTD_sizeof_{CCtx, DCtx, CStream, DStream}(), ZSTD_setDStreamParamter() |
| 200 | CLI supports legacy formats v0.4+ |
| 201 | Fixed : compression fails on certain huge files, reported by Jesse McGrew |
Yann Collet | 94376ac | 2016-08-25 19:09:21 +0200 | [diff] [blame] | 202 | Enhanced documentation, by Przemyslaw Skibinski |
Yann Collet | 8baf78a | 2016-08-20 03:47:49 +0200 | [diff] [blame] | 203 | |
Yann Collet | 346efcc | 2016-08-02 14:26:00 +0200 | [diff] [blame] | 204 | v0.8.1 |
Yann Collet | 655393c | 2016-08-14 00:16:20 +0200 | [diff] [blame] | 205 | New streaming API |
Yann Collet | fe0590f | 2016-08-12 18:04:15 +0200 | [diff] [blame] | 206 | Changed : --ultra now enables levels beyond 19 |
Yann Collet | 346efcc | 2016-08-02 14:26:00 +0200 | [diff] [blame] | 207 | Changed : -i# now selects benchmark time in second |
| 208 | Fixed : ZSTD_compress* can now compress > 4 GB in a single pass, reported by Nick Terrell |
Yann Collet | fe0590f | 2016-08-12 18:04:15 +0200 | [diff] [blame] | 209 | Fixed : speed regression on specific patterns (#272) |
Yann Collet | b3950ee | 2016-08-16 15:10:30 +0200 | [diff] [blame] | 210 | Fixed : support for Z_SYNC_FLUSH, by Dmitry Krot (#291) |
Yann Collet | 79d9cdd | 2016-08-18 11:50:37 +0200 | [diff] [blame] | 211 | Fixed : ICC compilation, by Przemyslaw Skibinski |
Yann Collet | 346efcc | 2016-08-02 14:26:00 +0200 | [diff] [blame] | 212 | |
Yann Collet | 6fa05a2 | 2016-07-20 14:58:49 +0200 | [diff] [blame] | 213 | v0.8.0 |
Yann Collet | dd25a27 | 2016-07-27 12:35:29 +0200 | [diff] [blame] | 214 | Improved : better speed on clang and gcc -O2, thanks to Eric Biggers |
Yann Collet | 8f29e8e | 2016-07-31 02:43:17 +0200 | [diff] [blame] | 215 | New : Build on FreeBSD and DragonFly, thanks to JrMarino |
Yann Collet | 62470b4 | 2016-07-28 15:29:08 +0200 | [diff] [blame] | 216 | Changed : modified API : ZSTD_compressEnd() |
Yann Collet | d5c5a77 | 2016-07-19 15:06:55 +0200 | [diff] [blame] | 217 | Fixed : legacy mode with ZSTD_HEAPMODE=0, by Christopher Bergqvist |
Yann Collet | 24a3d90 | 2016-07-26 01:26:56 +0200 | [diff] [blame] | 218 | Fixed : premature end of frame when zero-sized raw block, reported by Eric Biggers |
Yann Collet | 3ca7503 | 2016-08-01 02:26:20 +0200 | [diff] [blame] | 219 | Fixed : large dictionaries (> 384 KB), reported by Ilona Papava |
Yann Collet | 6fa05a2 | 2016-07-20 14:58:49 +0200 | [diff] [blame] | 220 | Fixed : checksum correctly checked in single-pass mode |
Yann Collet | 24a3d90 | 2016-07-26 01:26:56 +0200 | [diff] [blame] | 221 | Fixed : combined --test amd --rm, reported by Andreas M. Nilsson |
Yann Collet | 85f3919 | 2016-07-17 20:42:21 +0200 | [diff] [blame] | 222 | Modified : minor compression level adaptations |
Yann Collet | 6fa05a2 | 2016-07-20 14:58:49 +0200 | [diff] [blame] | 223 | Updated : compression format specification to v0.2.0 |
Yann Collet | 356e5e2 | 2016-07-18 03:14:58 +0200 | [diff] [blame] | 224 | changed : zstd.h moved to /lib directory |
Yann Collet | d54b2d2 | 2016-07-17 15:53:18 +0200 | [diff] [blame] | 225 | |
Yann Collet | ef9999f | 2016-09-01 16:44:48 -0700 | [diff] [blame] | 226 | v0.7.5 |
| 227 | Transition version, supporting decoding of v0.8.x |
| 228 | |
Yann Collet | 5e80dd3 | 2016-07-13 17:38:39 +0200 | [diff] [blame] | 229 | v0.7.4 |
Yann Collet | d5c5a77 | 2016-07-19 15:06:55 +0200 | [diff] [blame] | 230 | Added : homebrew for Mac, by Daniel Cade |
Yann Collet | 3b8b575 | 2016-07-16 20:04:47 +0200 | [diff] [blame] | 231 | Added : more examples |
Yann Collet | 227cc39 | 2016-07-15 11:27:09 +0200 | [diff] [blame] | 232 | Fixed : segfault when using small dictionaries, reported by Felix Handte |
Yann Collet | 3b8b575 | 2016-07-16 20:04:47 +0200 | [diff] [blame] | 233 | Modified : default compression level for CLI is now 3 |
| 234 | Updated : specification, to v0.1.1 |
Yann Collet | ea2ecdc | 2016-07-14 22:43:12 +0200 | [diff] [blame] | 235 | |
Yann Collet | d916c90 | 2016-07-04 00:42:58 +0200 | [diff] [blame] | 236 | v0.7.3 |
Yann Collet | d4e103a | 2016-07-08 19:18:30 +0200 | [diff] [blame] | 237 | New : compression format specification |
Yann Collet | 19c27d2 | 2016-07-07 14:40:13 +0200 | [diff] [blame] | 238 | New : `--` separator, stating that all following arguments are file names. Suggested by Chip Turner. |
| 239 | New : `ZSTD_getDecompressedSize()` |
| 240 | New : OpenBSD target, by Juan Francisco Cantero Hurtado |
| 241 | New : `examples` directory |
Yann Collet | a295b31 | 2016-07-06 13:13:12 +0200 | [diff] [blame] | 242 | fixed : dictBuilder using HC levels, reported by Bartosz Taudul |
Yann Collet | f246cf5 | 2016-07-06 20:30:52 +0200 | [diff] [blame] | 243 | fixed : legacy support from ZSTD_decompress_usingDDict(), reported by Felix Handte |
Yann Collet | d4e103a | 2016-07-08 19:18:30 +0200 | [diff] [blame] | 244 | fixed : multi-blocks decoding with intermediate uncompressed blocks, reported by Greg Slazinski |
Yann Collet | 19c27d2 | 2016-07-07 14:40:13 +0200 | [diff] [blame] | 245 | modified : removed "mem.h" and "error_public.h" dependencies from "zstd.h" (experimental section) |
| 246 | modified : legacy functions no longer need magic number |
Yann Collet | d916c90 | 2016-07-04 00:42:58 +0200 | [diff] [blame] | 247 | |
Yann Collet | 529d9c7 | 2016-06-27 10:03:10 +0200 | [diff] [blame] | 248 | v0.7.2 |
Yann Collet | 00d44ab | 2016-07-04 01:29:47 +0200 | [diff] [blame] | 249 | fixed : ZSTD_decompressBlock() using multiple consecutive blocks. Reported by Greg Slazinski. |
Yann Collet | d96e8f2 | 2016-07-02 22:03:08 +0200 | [diff] [blame] | 250 | fixed : potential segfault on very large files (many gigabytes). Reported by Chip Turner. |
| 251 | fixed : CLI displays system error message when destination file cannot be created (#231). Reported by Chip Turner. |
Yann Collet | 529d9c7 | 2016-06-27 10:03:10 +0200 | [diff] [blame] | 252 | |
Yann Collet | c98f8e7 | 2016-06-20 16:31:24 +0200 | [diff] [blame] | 253 | v0.7.1 |
Yann Collet | aa29226 | 2016-06-21 14:04:57 +0200 | [diff] [blame] | 254 | fixed : ZBUFF_compressEnd() called multiple times with too small `dst` buffer, reported by Christophe Chevalier |
Yann Collet | 3755eb8 | 2016-06-22 13:15:53 +0200 | [diff] [blame] | 255 | fixed : dictBuilder fails if first sample is too small, reported by Руслан Ковалёв |
Yann Collet | a436a52 | 2016-06-20 23:34:04 +0200 | [diff] [blame] | 256 | fixed : corruption issue, reported by cj |
| 257 | modified : checksum enabled by default in command line mode |
Yann Collet | c98f8e7 | 2016-06-20 16:31:24 +0200 | [diff] [blame] | 258 | |
Yann Collet | e3f4e6c | 2016-05-31 10:12:04 +0200 | [diff] [blame] | 259 | v0.7.0 |
Yann Collet | dd97e24 | 2016-05-30 14:05:44 +0200 | [diff] [blame] | 260 | New : Support for directory compression, using `-r`, thanks to Przemyslaw Skibinski |
Yann Collet | b09b12c | 2016-06-09 22:59:51 +0200 | [diff] [blame] | 261 | New : Command `--rm`, to remove source file after successful de/compression |
Yann Collet | 662a541 | 2016-06-08 11:11:02 +0200 | [diff] [blame] | 262 | New : Visual build scripts, by Christophe Chevalier |
Yann Collet | de95f96 | 2016-05-23 19:46:47 +0200 | [diff] [blame] | 263 | New : Support for Sparse File-systems (do not use space for zero-filled sectors) |
Yann Collet | 0d31160 | 2016-06-04 00:09:02 +0200 | [diff] [blame] | 264 | New : Frame checksum support |
Yann Collet | e3f4e6c | 2016-05-31 10:12:04 +0200 | [diff] [blame] | 265 | New : Support pass-through mode (when using `-df`) |
Yann Collet | 4948f27 | 2016-06-16 15:38:51 +0200 | [diff] [blame] | 266 | API : more efficient Dictionary API : `ZSTD_compress_usingCDict()`, `ZSTD_decompress_usingDDict()` |
| 267 | API : create dictionary files from custom content, by Giuseppe Ottaviano |
| 268 | API : support for custom malloc/free functions |
Yann Collet | e3f4e6c | 2016-05-31 10:12:04 +0200 | [diff] [blame] | 269 | New : controllable Dictionary ID |
Yann Collet | 0d31160 | 2016-06-04 00:09:02 +0200 | [diff] [blame] | 270 | New : Support for skippable frames |
Yann Collet | de95f96 | 2016-05-23 19:46:47 +0200 | [diff] [blame] | 271 | |
Yann Collet | f6ca09b | 2016-05-09 04:44:45 +0200 | [diff] [blame] | 272 | v0.6.1 |
Yann Collet | e6aa23b | 2016-05-13 11:29:38 +0200 | [diff] [blame] | 273 | New : zlib wrapper API, thanks to Przemyslaw Skibinski |
Yann Collet | d9b3cca | 2016-05-13 12:43:36 +0200 | [diff] [blame] | 274 | New : Ability to compile compressor / decompressor separately |
| 275 | Changed : new lib directory structure |
Yann Collet | f6ca09b | 2016-05-09 04:44:45 +0200 | [diff] [blame] | 276 | Fixed : Legacy codec v0.5 compatible with dictionary decompression |
| 277 | Fixed : Decoder corruption error (#173) |
Yann Collet | 918b934 | 2016-05-10 07:00:07 +0200 | [diff] [blame] | 278 | Fixed : null-string roundtrip (#176) |
Yann Collet | e6aa23b | 2016-05-13 11:29:38 +0200 | [diff] [blame] | 279 | New : benchmark mode can select directory as input |
Yann Collet | d9b3cca | 2016-05-13 12:43:36 +0200 | [diff] [blame] | 280 | Experimental : midipix support, VMS support |
Yann Collet | f6ca09b | 2016-05-09 04:44:45 +0200 | [diff] [blame] | 281 | |
Yann Collet | 6cb4135 | 2016-03-15 15:47:38 +0100 | [diff] [blame] | 282 | v0.6.0 |
| 283 | Stronger high compression modes, thanks to Przemyslaw Skibinski |
| 284 | API : ZSTD_getFrameParams() provides size of decompressed content |
Yann Collet | 34b20ec | 2016-03-15 20:47:23 +0100 | [diff] [blame] | 285 | New : highest compression modes require `--ultra` command to fully unleash their capacity |
Yann Collet | fbc40b8 | 2016-03-16 16:53:47 +0100 | [diff] [blame] | 286 | Fixed : zstd cli return error code > 0 and removes dst file artifact when decompression fails, thanks to Chip Turner |
Yann Collet | 6cb4135 | 2016-03-15 15:47:38 +0100 | [diff] [blame] | 287 | |
Yann Collet | 0db4115 | 2016-02-10 14:50:22 +0100 | [diff] [blame] | 288 | v0.5.1 |
| 289 | New : Optimal parsing => Very high compression modes, thanks to Przemyslaw Skibinski |
Yann Collet | 459a6b7 | 2016-02-15 20:37:23 +0100 | [diff] [blame] | 290 | Changed : Dictionary builder integrated into libzstd and zstd cli |
Yann Collet | 4c64d51 | 2016-02-18 01:01:42 +0100 | [diff] [blame] | 291 | Changed (!) : zstd cli now uses "multiple input files" as default mode. See `zstd -h`. |
Yann Collet | 459a6b7 | 2016-02-15 20:37:23 +0100 | [diff] [blame] | 292 | Fix : high compression modes for big-endian platforms |
Yann Collet | 2d08b09 | 2016-02-16 14:42:08 +0100 | [diff] [blame] | 293 | New : zstd cli : `-t` | `--test` command |
Yann Collet | 0db4115 | 2016-02-10 14:50:22 +0100 | [diff] [blame] | 294 | |
Yann Collet | fb810d6 | 2016-01-28 00:18:06 +0100 | [diff] [blame] | 295 | v0.5.0 |
Yann Collet | e618f8e | 2016-01-28 00:29:58 +0100 | [diff] [blame] | 296 | New : dictionary builder utility |
Yann Collet | fd416f1 | 2016-01-30 03:14:15 +0100 | [diff] [blame] | 297 | Changed : streaming & dictionary API |
Yann Collet | 45ff430 | 2016-02-05 15:24:57 +0100 | [diff] [blame] | 298 | Improved : better compression of small data |
Yann Collet | fb810d6 | 2016-01-28 00:18:06 +0100 | [diff] [blame] | 299 | |
Yann Collet | 223f633 | 2016-01-21 13:33:05 +0100 | [diff] [blame] | 300 | v0.4.7 |
| 301 | Improved : small compression speed improvement in HC mode |
| 302 | Changed : `zstd_decompress.c` has ZSTD_LEGACY_SUPPORT to 0 by default |
| 303 | fix : bt search bug |
| 304 | |
Yann Collet | 5f9f987 | 2015-12-30 19:52:08 +0100 | [diff] [blame] | 305 | v0.4.6 |
| 306 | fix : fast compression mode on Windows |
Yann Collet | 3e5b73b | 2016-01-10 20:46:20 +0100 | [diff] [blame] | 307 | New : cmake configuration file, thanks to Artyom Dymchenko |
Yann Collet | 5f9f987 | 2015-12-30 19:52:08 +0100 | [diff] [blame] | 308 | Improved : high compression mode on repetitive data |
Yann Collet | bf42c8e | 2016-01-09 01:08:23 +0100 | [diff] [blame] | 309 | New : block-level API |
| 310 | New : ZSTD_duplicateCCtx() |
Yann Collet | 5f9f987 | 2015-12-30 19:52:08 +0100 | [diff] [blame] | 311 | |
Yann Collet | deb078b | 2015-12-17 20:30:14 +0100 | [diff] [blame] | 312 | v0.4.5 |
| 313 | new : -m/--multiple : compress/decompress multiple files |
| 314 | |
Yann Collet | 7b7027f | 2015-12-10 23:53:21 +0100 | [diff] [blame] | 315 | v0.4.4 |
Yann Collet | 6c3e2e7 | 2015-12-11 10:44:07 +0100 | [diff] [blame] | 316 | Fixed : high compression modes for Windows 32 bits |
Yann Collet | f6f3d75 | 2015-12-13 13:35:21 +0100 | [diff] [blame] | 317 | new : external dictionary API extended to buffered mode and accessible through command line |
Yann Collet | 7b7027f | 2015-12-10 23:53:21 +0100 | [diff] [blame] | 318 | new : windows DLL project, thanks to Christophe Chevalier |
| 319 | |
Yann Collet | 28e7cef | 2015-12-03 12:11:30 +0100 | [diff] [blame] | 320 | v0.4.3 : |
Yann Collet | 417890c | 2015-12-04 17:16:37 +0100 | [diff] [blame] | 321 | new : external dictionary API |
Yann Collet | 56005e7 | 2015-12-07 10:44:25 +0100 | [diff] [blame] | 322 | new : zstd-frugal |
Yann Collet | 28e7cef | 2015-12-03 12:11:30 +0100 | [diff] [blame] | 323 | |
Yann Collet | aaf6f20 | 2015-12-02 15:03:11 +0100 | [diff] [blame] | 324 | v0.4.2 : |
| 325 | Generic minor improvements for small blocks |
| 326 | Fixed : big-endian compatibility, by Peter Harris (#85) |
| 327 | |
Yann Collet | a85a8dd | 2015-11-30 11:53:11 +0100 | [diff] [blame] | 328 | v0.4.1 |
Yann Collet | 44287a3 | 2015-11-30 23:13:56 +0100 | [diff] [blame] | 329 | Fixed : ZSTD_LEGACY_SUPPORT=0 build mode (reported by Luben) |
Yann Collet | daa1c65 | 2015-11-30 12:25:48 +0100 | [diff] [blame] | 330 | removed `zstd.c` |
Yann Collet | a85a8dd | 2015-11-30 11:53:11 +0100 | [diff] [blame] | 331 | |
Yann Collet | 7f6e91f | 2015-11-11 14:39:50 +0100 | [diff] [blame] | 332 | v0.4.0 |
Yann Collet | dd97e24 | 2016-05-30 14:05:44 +0200 | [diff] [blame] | 333 | Command line utility compatible with high compression levels |
Yann Collet | 7f6e91f | 2015-11-11 14:39:50 +0100 | [diff] [blame] | 334 | Removed zstdhc => merged into zstd |
Yann Collet | 88fcd29 | 2015-11-25 14:42:45 +0100 | [diff] [blame] | 335 | Added : ZBUFF API (see zstd_buffered.h) |
Yann Collet | 5b78d2f | 2015-11-12 15:36:05 +0100 | [diff] [blame] | 336 | Rolling buffer support |
Yann Collet | 7f6e91f | 2015-11-11 14:39:50 +0100 | [diff] [blame] | 337 | |
Yann Collet | 43e0cd5 | 2015-11-09 16:38:17 +0100 | [diff] [blame] | 338 | v0.3.6 |
| 339 | small blocks params |
| 340 | |
Yann Collet | f48e35c | 2015-11-07 01:13:31 +0100 | [diff] [blame] | 341 | v0.3.5 |
| 342 | minor generic compression improvements |
| 343 | |
Yann Collet | f12c130 | 2015-11-05 18:16:59 +0100 | [diff] [blame] | 344 | v0.3.4 |
Yann Collet | acd222c | 2015-11-06 12:39:39 +0100 | [diff] [blame] | 345 | Faster fast cLevels |
Yann Collet | f12c130 | 2015-11-05 18:16:59 +0100 | [diff] [blame] | 346 | |
Yann Collet | 3564487 | 2015-11-02 16:14:46 +0100 | [diff] [blame] | 347 | v0.3.3 |
| 348 | Small compression ratio improvement |
| 349 | |
Yann Collet | 7671f39 | 2015-11-02 12:17:39 +0100 | [diff] [blame] | 350 | v0.3.2 |
| 351 | Fixed Visual Studio |
| 352 | |
Yann Collet | 66d22b8 | 2015-11-02 02:36:10 +0100 | [diff] [blame] | 353 | v0.3.1 : |
| 354 | Small compression ratio improvement |
| 355 | |
Yann Collet | c776c46 | 2015-10-29 19:10:54 +0100 | [diff] [blame] | 356 | v0.3 |
| 357 | HC mode : compression levels 2-26 |
| 358 | |
Yann Collet | 1077bb8 | 2015-10-28 12:32:25 +0100 | [diff] [blame] | 359 | v0.2.2 |
| 360 | Fix : Visual Studio 2013 & 2015 release compilation, by Christophe Chevalier |
| 361 | |
Yann Collet | 81e49e6 | 2015-10-28 15:56:48 +0100 | [diff] [blame] | 362 | v0.2.1 |
Yann Collet | dd97e24 | 2016-05-30 14:05:44 +0200 | [diff] [blame] | 363 | Fix : Read errors, advanced fuzzer tests, by Hanno Böck |
Yann Collet | 1077bb8 | 2015-10-28 12:32:25 +0100 | [diff] [blame] | 364 | |
Yann Collet | a3befd3 | 2015-10-21 11:13:31 +0100 | [diff] [blame] | 365 | v0.2.0 |
| 366 | **Breaking format change** |
| 367 | Faster decompression speed |
| 368 | Can still decode v0.1 format |
| 369 | |
| 370 | v0.1.3 |
| 371 | fix uninitialization warning, reported by Evan Nemerson |
| 372 | |
Yann Collet | 5abd820 | 2015-08-27 03:16:04 +0100 | [diff] [blame] | 373 | v0.1.2 |
Yann Collet | a3befd3 | 2015-10-21 11:13:31 +0100 | [diff] [blame] | 374 | frame concatenation support |
Yann Collet | 5abd820 | 2015-08-27 03:16:04 +0100 | [diff] [blame] | 375 | |
| 376 | v0.1.1 |
| 377 | fix compression bug |
| 378 | detects write-flush errors |
Yann Collet | 33a0465 | 2016-09-02 22:11:49 -0700 | [diff] [blame] | 379 | |
Yann Collet | 5abd820 | 2015-08-27 03:16:04 +0100 | [diff] [blame] | 380 | v0.1.0 |
| 381 | first release |