Extremely Fast Compression algorithm
lz4hc : new high compression mode, by @inikep : levels 10-12 compress more (and slower), 12 is highest level
lz4cat : fix : works with relative path (#284) and stdin (#285) (reported by @beiDei8z)
cli : fix minor notification when using -r
recursive mode
API : lz4frame : LZ4F_compressBound(0)
provides upper bound of *flush() and *End() (#290, #280)
doc : markdown version of man page, by @t-mat (#279)
build : Makefile : fix make -jX
lib+exe concurrency (#277)
build : cmake : improvements by @mgorny (#296)
Update : earlier versions of pre-compiled Windows binaries had a bug which made them unable to decode files > 2 GB. The new binaries available below fix this issue.
fix : Makefile
: release build compatible with PIE
and customized compilation directives provided through environment variables (#274, reported by @totaam)
note : source code is unchanged, therefore library version is unchanged (v1.7.4
)
cli : fix : Large file support in 32-bits mode on Mac OS-X
compiler : fix : compilation on gcc 4.4 ( #272 ), reported by @totaam
Improved : much better speed in -mx32
mode
Changed : moved to versioning : package, cli and library have same version number
Improved: Small decompression speed boost
Improved: Small compression speed improvement on 64-bits systems
Improved: Small compression ratio and speed improvement on small files
Improved: Significant speed boost on ARMv6 and ARMv7
Fix : better ratio on 64-bits big-endian targets
Improved cmake build script, by @nemequ
New liblz4-dll project, by @inikep
Makefile: Generates object files (*.o) for faster (re)compilation on low power systems
cli : new : --rm and --help commands
cli : new : preserved file attributes, by @inikep
cli : fix : crash on some invalid inputs
cli : fix : -t correctly validates lz4-compressed files, by @terrelln
cli : fix : detects and reports fread()
errors, thanks to @iyokan report #243
cli : bench : new : -r recursive mode
lz4cat : can cat multiple files in a single command line (#184)
Added : doc/lz4_manual.html, by @inikep
Added : dictionary compression and frame decompression examples, by @terrelln
Added : Debianization, by @bioothod
New : Dos/DJGPP target, thanks to Louis Santillan (#114) Added : Example using lz4frame library, by Zbigniew Jędrzejewski-Szmek (#118) Changed: liblz4 : xxhash symbols are dynamically changed (namespace emulation) to avoid symbol conflict Changed: liblz4.a (static library) no longer compiled with -fPIC by default
Hotfix, solving issues with lz4cat.
In detail : Fixed : incompatibility sparse mode vs console, reported by Yongwoon Cho (#105) Fixed : LZ4IO exits too early when frame crc not present, reported by Yongwoon Cho (#106) Fixed : incompatibility sparse mode vs append mode, reported by Takayuki Matsuoka (#110) Performance fix : big compression speed boost for clang (+30%) New : cross-version test, by Takayuki Matsuoka
New : LZ4_compress_fast() Changed: New lz4 and lz4hc compression API. Previous function prototypes still supported. Changed: Sparse file support enabled by default New : LZ4 CLI improved performance compressing/decompressing multiple files (#86, kind contribution from Kyle J. Harper & Takayuki Matsuoka) Added : LZ4_compress_destSize() Fixed : GCC 4.9+ vector optimization - Reported by Markus Trippelsdorf, Greg Slazinski & Evan Nemerson Changed: Enums converted to LZ4F_ namespace convention - by Takayuki Matsuoka Added : AppVeyor CI environment, for Visual tests - Suggested by Takayuki Matsuoka Modified:Obsolete functions generate warnings - Suggested by Evan Nemerson, contributed by Takayuki Matsuoka Fixed : Bug #75 (unfinished stream), reported by Yongwoon Cho Updated: Documentation converted to MarkDown format
New : lz4cli sparse file support (Requested by Neil Wilson, and contributed by Takayuki Matsuoka) New : command -m, to compress multiple files in a single command (suggested by Kyle J. Harper) Fixed : Restored lz4hc compression ratio (slightly lower since r124) New : lz4 cli supports long commands (suggested by Takayuki Matsuoka) New : lz4frame & lz4cli frame content size support New : lz4frame supports skippable frames, as requested by Sergey Cherepanov Changed: Default "make install" directory is /usr/local, as notified by Ron Johnson New : lz4 cli supports "pass-through" mode, requested by Neil Wilson New : datagen can generate sparse files New : scan-build tests, thanks to kind help by Takayuki Matsuoka New : g++ compatibility tests New : arm cross-compilation test, thanks to kind help by Takayuki Matsuoka Fixed : Fuzzer + frametest compatibility with NetBSD (issue #48, reported by Thomas Klausner) Added : Visual project directory Updated: Man page & Specification
Duplicate of r126 see https://github.com/lz4/lz4/issues/365#issuecomment-308256479 for details
New : lz4frame API is now integrated into liblz4 Fixed : GCC 4.9 bug on highest performance settings, reported by Greg Slazinski Fixed : bug within LZ4 HC streaming mode, reported by James Boyle Fixed : older compiler don't like nameless unions, reported by Cheyi Lin Changed : lz4 is C90 compatible Changed : added -pedantic option, fixed a few minor warnings