2bd6440be0
Note : all error codes are changed by this new version, but it's expected to be the last change for existing codes. Codes are now grouped by category, and receive a manually attributed value. The objective is to guarantee that error code values will not change in the future when introducing new codes. Intentionnal empty spaces and ranges are defined in order to keep room for potential new codes.
306 lines
14 KiB
Plaintext
306 lines
14 KiB
Plaintext
v1.3.1
|
|
perf: substantially decreased memory usage in Multi-threading mode, thanks to reports by Tino Reichardt
|
|
perf: Multi-threading supports up to 256 threads. Cap at 256 when more are requested (#760)
|
|
build: fix Visual compilation for non x86/x64 targets, reported by Greg Slazinski (#718)
|
|
API exp : breaking change : ZSTD_getframeHeader() provides more information
|
|
API exp : breaking change : pinned down values of error codes
|
|
|
|
v1.3.0
|
|
cli : new : `--list` command, by Paul Cruz
|
|
cli : changed : xz/lzma support enabled by default
|
|
cli : changed : `-t *` continue processing list after a decompression error
|
|
API : added : ZSTD_versionString()
|
|
API : promoted to stable status : ZSTD_getFrameContentSize(), by Sean Purcell
|
|
API exp : new advanced API : ZSTD_compress_generic(), ZSTD_CCtx_setParameter()
|
|
API exp : new : API for static or external allocation : ZSTD_initStatic?Ctx()
|
|
API exp : added : ZSTD_decompressBegin_usingDDict(), requested by Guy Riddle (#700)
|
|
API exp : clarified memory estimation / measurement functions.
|
|
API exp : changed : strongest strategy renamed ZSTD_btultra, fastest strategy ZSTD_fast set to 1
|
|
tools : decodecorpus can generate random dictionary-compressed samples, by Paul Cruz
|
|
new : contrib/seekable_format, demo and API, by Sean Purcell
|
|
changed : contrib/linux-kernel, updated version and license, by Nick Terrell
|
|
|
|
v1.2.0
|
|
cli : changed : Multithreading enabled by default (use target zstd-nomt or HAVE_THREAD=0 to disable)
|
|
cli : new : command -T0 means "detect and use nb of cores", by Sean Purcell
|
|
cli : new : zstdmt symlink hardwired to `zstd -T0`
|
|
cli : new : command --threads=# (#671)
|
|
cli : changed : cover dictionary builder by default, for improved quality, by Nick Terrell
|
|
cli : new : commands --train-cover and --train-legacy, to select dictionary algorithm and parameters
|
|
cli : experimental targets `zstd4` and `xzstd4`, with support for lz4 format, by Sean Purcell
|
|
cli : fix : does not output compressed data on console
|
|
cli : fix : ignore symbolic links unless --force specified,
|
|
API : breaking change : ZSTD_createCDict_advanced(), only use compressionParameters as argument
|
|
API : added : prototypes ZSTD_*_usingCDict_advanced(), for direct control over frameParameters.
|
|
API : improved: ZSTDMT_compressCCtx() reduced memory usage
|
|
API : fix : ZSTDMT_compressCCtx() now provides srcSize in header (#634)
|
|
API : fix : src size stored in frame header is controlled at end of frame
|
|
API : fix : enforced consistent rules for pledgedSrcSize==0 (#641)
|
|
API : fix : error code "GENERIC" replaced by "dstSizeTooSmall" when appropriate
|
|
build: improved cmake script, by @Majlen
|
|
build: enabled Multi-threading support for *BSD, by Baptiste Daroussin
|
|
tools: updated Paramgrill. Command -O# provides best parameters for sample and speed target.
|
|
new : contrib/linux-kernel version, by Nick Terrell
|
|
|
|
v1.1.4
|
|
cli : new : can compress in *.gz format, using --format=gzip command, by Przemyslaw Skibinski
|
|
cli : new : advanced benchmark command --priority=rt
|
|
cli : fix : write on sparse-enabled file systems in 32-bits mode, by @ds77
|
|
cli : fix : --rm remains silent when input is stdin
|
|
cli : experimental : xzstd, with support for xz/lzma decoding, by Przemyslaw Skibinski
|
|
speed : improved decompression speed in streaming mode for single shot scenarios (+5%)
|
|
memory: DDict (decompression dictionary) memory usage down from 150 KB to 20 KB
|
|
arch: 32-bits variant able to generate and decode very long matches (>32 MB), by Sean Purcell
|
|
API : new : ZSTD_findFrameCompressedSize(), ZSTD_getFrameContentSize(), ZSTD_findDecompressedSize()
|
|
API : changed : dropped support of legacy versions <= v0.3 (can be changed by modifying ZSTD_LEGACY_SUPPORT value)
|
|
build : new: meson build system in contrib/meson, by Dima Krasner
|
|
build : improved cmake script, by @Majlen
|
|
build : added -Wformat-security flag, as recommended by Padraig Brady
|
|
doc : new : educational decoder, by Sean Purcell
|
|
|
|
v1.1.3
|
|
cli : zstd can decompress .gz files (can be disabled with `make zstd-nogz` or `make HAVE_ZLIB=0`)
|
|
cli : new : experimental target `make zstdmt`, with multi-threading support
|
|
cli : new : improved dictionary builder "cover" (experimental), by Nick Terrell, based on prior work by Giuseppe Ottaviano.
|
|
cli : new : advanced commands for detailed parameters, by Przemyslaw Skibinski
|
|
cli : fix zstdless on Mac OS-X, by Andrew Janke
|
|
cli : fix #232 "compress non-files"
|
|
dictBuilder : improved dictionary generation quality, thanks to Nick Terrell
|
|
API : new : lib/compress/ZSTDMT_compress.h multithreading API (experimental)
|
|
API : new : ZSTD_create?Dict_byReference(), requested by Bartosz Taudul
|
|
API : new : ZDICT_finalizeDictionary()
|
|
API : fix : ZSTD_initCStream_usingCDict() properly writes dictID into frame header, by Gregory Szorc (#511)
|
|
API : fix : all symbols properly exposed in libzstd, by Nick Terrell
|
|
build : support for Solaris target, by Przemyslaw Skibinski
|
|
doc : clarified specification, by Sean Purcell
|
|
|
|
v1.1.2
|
|
API : streaming : decompression : changed : automatic implicit reset when chain-decoding new frames without init
|
|
API : experimental : added : dictID retrieval functions, and ZSTD_initCStream_srcSize()
|
|
API : zbuff : changed : prototypes now generate deprecation warnings
|
|
lib : improved : faster decompression speed at ultra compression settings and 32-bits mode
|
|
lib : changed : only public ZSTD_ symbols are now exposed
|
|
lib : changed : reduced usage of stack memory
|
|
lib : fixed : several corner case bugs, by Nick Terrell
|
|
cli : new : gzstd, experimental version able to decode .gz files, by Przemyslaw Skibinski
|
|
cli : new : preserve file attributes
|
|
cli : new : added zstdless and zstdgrep tools
|
|
cli : fixed : status displays total amount decoded, even for file consisting of multiple frames (like pzstd)
|
|
cli : fixed : zstdcat
|
|
zlib_wrapper : added support for gz* functions, by Przemyslaw Skibinski
|
|
install : better compatibility with FreeBSD, by Dimitry Andric
|
|
source tree : changed : zbuff source files moved to lib/deprecated
|
|
|
|
v1.1.1
|
|
New : command -M#, --memory=, --memlimit=, --memlimit-decompress= to limit allowed memory consumption
|
|
New : doc/zstd_manual.html, by Przemyslaw Skibinski
|
|
Improved : slightly better compression ratio at --ultra levels (>= 20)
|
|
Improved : better memory usage when using streaming compression API, thanks to @Rogier-5 report
|
|
Added : API : ZSTD_initCStream_usingCDict(), ZSTD_initDStream_usingDDict() (experimental section)
|
|
Added : example/multiple_streaming_compression.c
|
|
Changed : zstd_errors.h is now installed within /include (and replaces errors_public.h)
|
|
Updated man page
|
|
Fixed : zstd-small, zstd-compress and zstd-decompress compilation targets
|
|
|
|
v1.1.0
|
|
New : contrib/pzstd, parallel version of zstd, by Nick Terrell
|
|
added : NetBSD install target (#338)
|
|
Improved : speed for batches of small files
|
|
Improved : speed of zlib wrapper, by Przemyslaw Skibinski
|
|
Changed : libzstd on Windows supports legacy formats, by Christophe Chevalier
|
|
Fixed : CLI -d output to stdout by default when input is stdin (#322)
|
|
Fixed : CLI correctly detects console on Mac OS-X
|
|
Fixed : CLI supports recursive mode `-r` on Mac OS-X
|
|
Fixed : Legacy decoders use unified error codes, reported by benrg (#341), fixed by Przemyslaw Skibinski
|
|
Fixed : compatibility with OpenBSD, reported by Juan Francisco Cantero Hurtado (#319)
|
|
Fixed : compatibility with Hurd, by Przemyslaw Skibinski (#365)
|
|
Fixed : zstd-pgo, reported by octoploid (#329)
|
|
|
|
v1.0.0
|
|
Change Licensing, all project is now BSD, Copyright Facebook
|
|
Small decompression speed improvement
|
|
API : Streaming API supports legacy format
|
|
API : ZDICT_getDictID(), ZSTD_sizeof_{CCtx, DCtx, CStream, DStream}(), ZSTD_setDStreamParamter()
|
|
CLI supports legacy formats v0.4+
|
|
Fixed : compression fails on certain huge files, reported by Jesse McGrew
|
|
Enhanced documentation, by Przemyslaw Skibinski
|
|
|
|
v0.8.1
|
|
New streaming API
|
|
Changed : --ultra now enables levels beyond 19
|
|
Changed : -i# now selects benchmark time in second
|
|
Fixed : ZSTD_compress* can now compress > 4 GB in a single pass, reported by Nick Terrell
|
|
Fixed : speed regression on specific patterns (#272)
|
|
Fixed : support for Z_SYNC_FLUSH, by Dmitry Krot (#291)
|
|
Fixed : ICC compilation, by Przemyslaw Skibinski
|
|
|
|
v0.8.0
|
|
Improved : better speed on clang and gcc -O2, thanks to Eric Biggers
|
|
New : Build on FreeBSD and DragonFly, thanks to JrMarino
|
|
Changed : modified API : ZSTD_compressEnd()
|
|
Fixed : legacy mode with ZSTD_HEAPMODE=0, by Christopher Bergqvist
|
|
Fixed : premature end of frame when zero-sized raw block, reported by Eric Biggers
|
|
Fixed : large dictionaries (> 384 KB), reported by Ilona Papava
|
|
Fixed : checksum correctly checked in single-pass mode
|
|
Fixed : combined --test amd --rm, reported by Andreas M. Nilsson
|
|
Modified : minor compression level adaptations
|
|
Updated : compression format specification to v0.2.0
|
|
changed : zstd.h moved to /lib directory
|
|
|
|
v0.7.5
|
|
Transition version, supporting decoding of v0.8.x
|
|
|
|
v0.7.4
|
|
Added : homebrew for Mac, by Daniel Cade
|
|
Added : more examples
|
|
Fixed : segfault when using small dictionaries, reported by Felix Handte
|
|
Modified : default compression level for CLI is now 3
|
|
Updated : specification, to v0.1.1
|
|
|
|
v0.7.3
|
|
New : compression format specification
|
|
New : `--` separator, stating that all following arguments are file names. Suggested by Chip Turner.
|
|
New : `ZSTD_getDecompressedSize()`
|
|
New : OpenBSD target, by Juan Francisco Cantero Hurtado
|
|
New : `examples` directory
|
|
fixed : dictBuilder using HC levels, reported by Bartosz Taudul
|
|
fixed : legacy support from ZSTD_decompress_usingDDict(), reported by Felix Handte
|
|
fixed : multi-blocks decoding with intermediate uncompressed blocks, reported by Greg Slazinski
|
|
modified : removed "mem.h" and "error_public.h" dependencies from "zstd.h" (experimental section)
|
|
modified : legacy functions no longer need magic number
|
|
|
|
v0.7.2
|
|
fixed : ZSTD_decompressBlock() using multiple consecutive blocks. Reported by Greg Slazinski.
|
|
fixed : potential segfault on very large files (many gigabytes). Reported by Chip Turner.
|
|
fixed : CLI displays system error message when destination file cannot be created (#231). Reported by Chip Turner.
|
|
|
|
v0.7.1
|
|
fixed : ZBUFF_compressEnd() called multiple times with too small `dst` buffer, reported by Christophe Chevalier
|
|
fixed : dictBuilder fails if first sample is too small, reported by Руслан Ковалёв
|
|
fixed : corruption issue, reported by cj
|
|
modified : checksum enabled by default in command line mode
|
|
|
|
v0.7.0
|
|
New : Support for directory compression, using `-r`, thanks to Przemyslaw Skibinski
|
|
New : Command `--rm`, to remove source file after successful de/compression
|
|
New : Visual build scripts, by Christophe Chevalier
|
|
New : Support for Sparse File-systems (do not use space for zero-filled sectors)
|
|
New : Frame checksum support
|
|
New : Support pass-through mode (when using `-df`)
|
|
API : more efficient Dictionary API : `ZSTD_compress_usingCDict()`, `ZSTD_decompress_usingDDict()`
|
|
API : create dictionary files from custom content, by Giuseppe Ottaviano
|
|
API : support for custom malloc/free functions
|
|
New : controllable Dictionary ID
|
|
New : Support for skippable frames
|
|
|
|
v0.6.1
|
|
New : zlib wrapper API, thanks to Przemyslaw Skibinski
|
|
New : Ability to compile compressor / decompressor separately
|
|
Changed : new lib directory structure
|
|
Fixed : Legacy codec v0.5 compatible with dictionary decompression
|
|
Fixed : Decoder corruption error (#173)
|
|
Fixed : null-string roundtrip (#176)
|
|
New : benchmark mode can select directory as input
|
|
Experimental : midipix support, VMS support
|
|
|
|
v0.6.0
|
|
Stronger high compression modes, thanks to Przemyslaw Skibinski
|
|
API : ZSTD_getFrameParams() provides size of decompressed content
|
|
New : highest compression modes require `--ultra` command to fully unleash their capacity
|
|
Fixed : zstd cli return error code > 0 and removes dst file artifact when decompression fails, thanks to Chip Turner
|
|
|
|
v0.5.1
|
|
New : Optimal parsing => Very high compression modes, thanks to Przemyslaw Skibinski
|
|
Changed : Dictionary builder integrated into libzstd and zstd cli
|
|
Changed (!) : zstd cli now uses "multiple input files" as default mode. See `zstd -h`.
|
|
Fix : high compression modes for big-endian platforms
|
|
New : zstd cli : `-t` | `--test` command
|
|
|
|
v0.5.0
|
|
New : dictionary builder utility
|
|
Changed : streaming & dictionary API
|
|
Improved : better compression of small data
|
|
|
|
v0.4.7
|
|
Improved : small compression speed improvement in HC mode
|
|
Changed : `zstd_decompress.c` has ZSTD_LEGACY_SUPPORT to 0 by default
|
|
fix : bt search bug
|
|
|
|
v0.4.6
|
|
fix : fast compression mode on Windows
|
|
New : cmake configuration file, thanks to Artyom Dymchenko
|
|
Improved : high compression mode on repetitive data
|
|
New : block-level API
|
|
New : ZSTD_duplicateCCtx()
|
|
|
|
v0.4.5
|
|
new : -m/--multiple : compress/decompress multiple files
|
|
|
|
v0.4.4
|
|
Fixed : high compression modes for Windows 32 bits
|
|
new : external dictionary API extended to buffered mode and accessible through command line
|
|
new : windows DLL project, thanks to Christophe Chevalier
|
|
|
|
v0.4.3 :
|
|
new : external dictionary API
|
|
new : zstd-frugal
|
|
|
|
v0.4.2 :
|
|
Generic minor improvements for small blocks
|
|
Fixed : big-endian compatibility, by Peter Harris (#85)
|
|
|
|
v0.4.1
|
|
Fixed : ZSTD_LEGACY_SUPPORT=0 build mode (reported by Luben)
|
|
removed `zstd.c`
|
|
|
|
v0.4.0
|
|
Command line utility compatible with high compression levels
|
|
Removed zstdhc => merged into zstd
|
|
Added : ZBUFF API (see zstd_buffered.h)
|
|
Rolling buffer support
|
|
|
|
v0.3.6
|
|
small blocks params
|
|
|
|
v0.3.5
|
|
minor generic compression improvements
|
|
|
|
v0.3.4
|
|
Faster fast cLevels
|
|
|
|
v0.3.3
|
|
Small compression ratio improvement
|
|
|
|
v0.3.2
|
|
Fixed Visual Studio
|
|
|
|
v0.3.1 :
|
|
Small compression ratio improvement
|
|
|
|
v0.3
|
|
HC mode : compression levels 2-26
|
|
|
|
v0.2.2
|
|
Fix : Visual Studio 2013 & 2015 release compilation, by Christophe Chevalier
|
|
|
|
v0.2.1
|
|
Fix : Read errors, advanced fuzzer tests, by Hanno Böck
|
|
|
|
v0.2.0
|
|
**Breaking format change**
|
|
Faster decompression speed
|
|
Can still decode v0.1 format
|
|
|
|
v0.1.3
|
|
fix uninitialization warning, reported by Evan Nemerson
|
|
|
|
v0.1.2
|
|
frame concatenation support
|
|
|
|
v0.1.1
|
|
fix compression bug
|
|
detects write-flush errors
|
|
|
|
v0.1.0
|
|
first release
|