Takayuki MATSUOKA [Thu, 12 Feb 2015 11:18:16 +0000 (20:18 +0900)]
Add Neil's method to isSparse()
Takayuki MATSUOKA [Thu, 12 Feb 2015 10:58:49 +0000 (19:58 +0900)]
Improve isSparse()
Takayuki MATSUOKA [Thu, 12 Feb 2015 07:13:23 +0000 (16:13 +0900)]
Adjust coding style
Takayuki MATSUOKA [Thu, 12 Feb 2015 06:46:02 +0000 (15:46 +0900)]
Google Code Issue 155: lz4 cli should support sparse file
https://code.google.com/p/lz4/issues/detail?id=155
This is experimental implementation. Just a proof of concept.
It works Linux and Windows.
# Build
To build experimental version, define 'LZ4IO_ENABLE_SPARSE_FILE' like the following command :
make lz4programs 'CFLAGS=-O3 -DLZ4IO_ENABLE_SPARSE_FILE=1'
./programs/lz4 -h
You will see "EXPERIMENTAL_SPARSE_FILE" as lz4 revision :
"*** LZ4 command line interface 64-bits EXPERIMENTAL_SPARSE_FILE, by Yann Collet (...) ***"
# Experiment
This experimental version adds option "-x" for sparse file for decompression.
You can use this option like this :
./programs/lz4 -9 -f my-file
./programs/lz4 -d -f -x my-file.lz4 my-file.lz4.out
cmp my-file my-file.lz4.out
Yann Collet [Sun, 1 Mar 2015 23:41:38 +0000 (00:41 +0100)]
Merge pull request #49 from t-mat/msvc-fseeki64
Avoid MSVC fseek()'s 2GiB barrier
Yann Collet [Sun, 1 Mar 2015 23:11:34 +0000 (00:11 +0100)]
restored lz4 hc compression ratio
Takayuki MATSUOKA [Sat, 14 Feb 2015 03:48:11 +0000 (12:48 +0900)]
Replace fseek with _fseeki64 to avoid MSVC's 2GiB barrier
Since MSVC fseek()'s SEEK_CUR mode has 2GiB barrier, our fseek() calling in program/lz4io.c/selectDecoder() will fail for large (>2GiB) .lz4 file.
This commit just replace fseek with _fseeki64 by macro. Second argument is automatically casted to __int64 (signed 64bit integer). Other things are completely same.
Yann Collet [Wed, 21 Jan 2015 17:03:17 +0000 (18:03 +0100)]
Fix : lz4frame.h within uninstaller
Yann Collet [Tue, 13 Jan 2015 04:36:58 +0000 (05:36 +0100)]
Added : Visual project directory
Yann Collet [Wed, 17 Dec 2014 11:32:49 +0000 (12:32 +0100)]
Added : -pedantic compilation option
Yann Collet [Wed, 17 Dec 2014 11:20:17 +0000 (12:20 +0100)]
C90 compatibility
Yann Collet [Tue, 16 Dec 2014 21:03:16 +0000 (22:03 +0100)]
Fixed : older compiler don't like nameless unions, reported by Cheyi Lin
Yann Collet [Tue, 16 Dec 2014 01:13:19 +0000 (02:13 +0100)]
Fixed : bug within LZ4 HC streaming mode, reported by James Boyle
Yann Collet [Sun, 14 Dec 2014 13:29:15 +0000 (14:29 +0100)]
Fixed : GCC 4.9 bug on highest performance settings, reported by Greg Slazinski
Yann Collet [Sat, 13 Dec 2014 16:08:51 +0000 (17:08 +0100)]
Updated comments
Yann Collet [Sat, 13 Dec 2014 15:41:05 +0000 (16:41 +0100)]
fixed travis tests
Yann Collet [Sat, 13 Dec 2014 14:38:15 +0000 (15:38 +0100)]
Fixed : install test on travis
Yann Collet [Sat, 13 Dec 2014 14:05:46 +0000 (15:05 +0100)]
New : lz4frame integrated into liblz4 (v1.5.0)
Yann Collet [Sat, 13 Dec 2014 10:49:55 +0000 (11:49 +0100)]
Fixed : minor warnings under Visual
Yann Collet [Wed, 10 Dec 2014 22:00:50 +0000 (23:00 +0100)]
minor memtest correction
Yann Collet [Wed, 10 Dec 2014 17:02:40 +0000 (18:02 +0100)]
updated NEWS
Yann Collet [Wed, 10 Dec 2014 16:58:15 +0000 (17:58 +0100)]
Fixed : LZ4_compress_limitedOutput() bug, as reported by Christopher Speller
Yann Collet [Wed, 10 Dec 2014 08:05:44 +0000 (09:05 +0100)]
stronger tests for LZ4_compress_limitedOutput()
Yann Collet [Tue, 9 Dec 2014 08:47:54 +0000 (09:47 +0100)]
fixed : pkg version
Yann Collet [Sat, 6 Dec 2014 16:10:54 +0000 (17:10 +0100)]
minor refactoring
Yann Collet [Wed, 3 Dec 2014 22:19:11 +0000 (23:19 +0100)]
Clarified a few comments
Yann Collet [Wed, 3 Dec 2014 18:40:23 +0000 (19:40 +0100)]
Merge pull request #38 from Cyan4973/newDir
New dir
Yann Collet [Wed, 3 Dec 2014 18:17:10 +0000 (19:17 +0100)]
Fixed : deprecated function LZ4_slideInputBufferHC()
Yann Collet [Tue, 2 Dec 2014 22:57:15 +0000 (23:57 +0100)]
variable ref renamed
Yann Collet [Mon, 1 Dec 2014 21:00:07 +0000 (22:00 +0100)]
lz4frame.h : clarified a few comments
Yann Collet [Mon, 1 Dec 2014 13:06:30 +0000 (14:06 +0100)]
Merge pull request #37 from Cyan4973/newDir
New dir
Yann Collet [Mon, 1 Dec 2014 00:25:18 +0000 (01:25 +0100)]
lz4cli : legacy arguments are now disabled by default
Yann Collet [Mon, 1 Dec 2014 00:20:42 +0000 (01:20 +0100)]
Fixed : make dist
Yann Collet [Sun, 30 Nov 2014 23:53:20 +0000 (00:53 +0100)]
Clarified some file names
Yann Collet [Sun, 30 Nov 2014 22:37:55 +0000 (23:37 +0100)]
fix : sudo for make install
Yann Collet [Sun, 30 Nov 2014 22:34:29 +0000 (23:34 +0100)]
Yann Collet [Sun, 30 Nov 2014 22:32:12 +0000 (23:32 +0100)]
New directory structure : library source files into /lib directory
Yann Collet [Sun, 30 Nov 2014 17:04:32 +0000 (18:04 +0100)]
Update cmakelist to support new lz4io version
Yann Collet [Sun, 30 Nov 2014 16:59:31 +0000 (17:59 +0100)]
LZ4IO : modified to use lz4frame instead
Yann Collet [Sun, 30 Nov 2014 12:54:04 +0000 (13:54 +0100)]
Merge pull request #36 from Cyan4973/AlignEndian
Align endian
Yann Collet [Sun, 30 Nov 2014 11:58:00 +0000 (12:58 +0100)]
Fixed : some minor Visual warnings
Yann Collet [Sat, 29 Nov 2014 19:19:39 +0000 (20:19 +0100)]
Updated lz4hc : re-use most shared elements from lz4 (endianess / align / bus detection routines)
Yann Collet [Sat, 29 Nov 2014 16:44:33 +0000 (17:44 +0100)]
Improved compression speed on big endian CPU
Yann Collet [Sat, 29 Nov 2014 16:12:26 +0000 (17:12 +0100)]
minor : fixed warning under clang
Yann Collet [Sat, 29 Nov 2014 15:41:28 +0000 (16:41 +0100)]
Fixed : decompression issue on 32-bits CPU without unaligned memory access
Yann Collet [Fri, 28 Nov 2014 01:48:21 +0000 (02:48 +0100)]
Fixed decompression bug
Yann Collet [Thu, 27 Nov 2014 21:44:36 +0000 (22:44 +0100)]
Improved decoding speed
Yann Collet [Sun, 23 Nov 2014 17:36:04 +0000 (18:36 +0100)]
Added : $(EXT) within install for cross-compilation support
Yann Collet [Sun, 23 Nov 2014 00:14:04 +0000 (01:14 +0100)]
Corrected lz4io
Yann Collet [Sat, 22 Nov 2014 23:46:15 +0000 (00:46 +0100)]
New endian & alignment code
Yann Collet [Tue, 4 Nov 2014 19:56:38 +0000 (20:56 +0100)]
Makefile : refactored Travis CI tests
Yann Collet [Tue, 4 Nov 2014 19:04:43 +0000 (20:04 +0100)]
lz4.h : updated library version number to 1.4.0
Yann Collet [Tue, 4 Nov 2014 11:11:14 +0000 (12:11 +0100)]
Fixed issue 44 : stopped concatenated stream on null size frame (thanks to Brendan O'Connor)
Yann Collet [Tue, 4 Nov 2014 10:07:04 +0000 (11:07 +0100)]
Fixed issue #31 : lz4.c warning under visual
Yann Collet [Tue, 4 Nov 2014 09:50:17 +0000 (10:50 +0100)]
Added : cmake test
cmake : corrected xxhash path (thanks to j.magnuson)
Yann Collet [Tue, 4 Nov 2014 09:32:50 +0000 (10:32 +0100)]
Makefile : added -Wcast-align compilation warning
Yann Collet [Tue, 4 Nov 2014 09:04:37 +0000 (10:04 +0100)]
Updated unsynchronized buffers tests
Yann Collet [Mon, 3 Nov 2014 08:29:45 +0000 (09:29 +0100)]
Updated ring buffer examples
Yann Collet [Mon, 3 Nov 2014 08:18:15 +0000 (09:18 +0100)]
fullbench : display Algorithm Nb
Yann Collet [Sun, 2 Nov 2014 21:32:12 +0000 (22:32 +0100)]
Optimized LZ4_saveDictHC()
Yann Collet [Sat, 1 Nov 2014 20:58:31 +0000 (21:58 +0100)]
Updated xxHash to r38
Yann Collet [Wed, 29 Oct 2014 00:47:43 +0000 (01:47 +0100)]
Added : valgrind test for fuzzer
Yann Collet [Wed, 29 Oct 2014 00:39:47 +0000 (01:39 +0100)]
minor fuzzer test correction
Yann Collet [Tue, 28 Oct 2014 22:12:04 +0000 (23:12 +0100)]
Merge pull request #33 from Cyan4973/streamHC
Stream hc
Yann Collet [Tue, 28 Oct 2014 14:58:25 +0000 (15:58 +0100)]
Fixed : frametest for Travis CI build matrix
Yann Collet [Tue, 28 Oct 2014 14:35:43 +0000 (15:35 +0100)]
new Travis CI build matrix
Yann Collet [Tue, 28 Oct 2014 10:32:42 +0000 (11:32 +0100)]
Added : frametest32
Yann Collet [Mon, 27 Oct 2014 23:39:06 +0000 (00:39 +0100)]
LZ4 HC streaming integrated within lz4frame
Yann Collet [Sun, 26 Oct 2014 10:22:15 +0000 (11:22 +0100)]
HC streaming : support for very long streaming (> 4 GB) scenarios
Yann Collet [Sat, 25 Oct 2014 19:52:10 +0000 (20:52 +0100)]
HC streaming : support small ringbuffer scenarios
Yann Collet [Wed, 22 Oct 2014 07:07:56 +0000 (08:07 +0100)]
Added : HC streaming ring buffer example
Yann Collet [Tue, 21 Oct 2014 23:36:32 +0000 (00:36 +0100)]
fixed LZ4F_compressFrameBound (dynamic block resize)
Yann Collet [Mon, 20 Oct 2014 23:12:55 +0000 (00:12 +0100)]
LZ4 HC : fixed small dictionary streaming compression
Yann Collet [Mon, 20 Oct 2014 00:08:21 +0000 (01:08 +0100)]
LZ4 HC : External Dictionary compression : First implementation
Yann Collet [Sun, 19 Oct 2014 16:41:42 +0000 (17:41 +0100)]
minor refactoring of LZ4 HC, to prepare for external dictionaries
Yann Collet [Sun, 19 Oct 2014 15:06:33 +0000 (16:06 +0100)]
fuzzer : easier random replay
Yann Collet [Sun, 19 Oct 2014 14:25:35 +0000 (15:25 +0100)]
fuzzer : fixed test 21
Yann Collet [Sun, 19 Oct 2014 12:47:22 +0000 (13:47 +0100)]
fuzzer : faster jump to testNb
Yann Collet [Sat, 18 Oct 2014 12:27:32 +0000 (13:27 +0100)]
fuzzer : fixed minor command lines issues
Yann Collet [Sat, 18 Oct 2014 10:18:14 +0000 (11:18 +0100)]
updated LZ4HC API
Yann Collet [Fri, 17 Oct 2014 08:00:55 +0000 (10:00 +0200)]
Merge branch 'dev' of https://github.com/Cyan4973/lz4 into dev
Yann Collet [Fri, 10 Oct 2014 19:58:42 +0000 (20:58 +0100)]
fuzzer : pause at the end is disabled by default
Yann Collet [Thu, 9 Oct 2014 21:15:57 +0000 (22:15 +0100)]
modified : fuzzer automatically selects seed
Yann Collet [Mon, 6 Oct 2014 10:13:56 +0000 (11:13 +0100)]
Updated : xxHash to r37
Yann Collet [Mon, 6 Oct 2014 00:10:29 +0000 (01:10 +0100)]
update distribution builder "make dist"
update test, to also verify "make dist"
Yann Collet [Sun, 5 Oct 2014 23:48:45 +0000 (00:48 +0100)]
Fixed : LZ4F_compressBound() using null preferencesPtr
Updated : frametest, to check LZ4F_compressBound() using null preferencesPtr
Yann Collet [Thu, 25 Sep 2014 12:03:36 +0000 (14:03 +0200)]
Merge pull request #28 from Cyan4973/dev
updated comment on compressionLevel field
Yann Collet [Wed, 24 Sep 2014 12:48:03 +0000 (13:48 +0100)]
updated comment on compressionLevel field
Yann Collet [Tue, 23 Sep 2014 09:00:55 +0000 (11:00 +0200)]
Merge pull request #27 from Cyan4973/dev
lz4frame
Yann Collet [Mon, 22 Sep 2014 17:42:00 +0000 (18:42 +0100)]
fixed : clang warnings
Yann Collet [Mon, 22 Sep 2014 16:38:17 +0000 (17:38 +0100)]
Added : suooirt for s390x, thanks to Nobuhiro Iwamatsu
Multiple warning fixes for Visual Studio 2012
Yann Collet [Mon, 22 Sep 2014 01:59:42 +0000 (02:59 +0100)]
LZ4F_compressFrame : fix potential crash on selecting custom preferences
frame fuzzer tests : new random tests using LZ4F_compressFrame
Yann Collet [Mon, 22 Sep 2014 01:36:20 +0000 (02:36 +0100)]
LZ4F_compressFrame() : auto-resize block size when unnecessarily large
Yann Collet [Mon, 22 Sep 2014 01:02:40 +0000 (02:02 +0100)]
Slightly improved decompression speed (linkedBlockMode, small frames primarily)
Yann Collet [Mon, 22 Sep 2014 00:32:55 +0000 (01:32 +0100)]
LZ4F_getFrameInfo() No longer requires to continue decoding at address after header
Slightly improved LZ4F_decompress() speed (less dictionary copy)
Yann Collet [Sun, 21 Sep 2014 08:56:21 +0000 (09:56 +0100)]
lz4frame : support stableDst option
Multiple bugfixes within lz4frame decompression
Small decompression speed improvements
Improved fuzzer test, with more thorough and complex tests
Yann Collet [Sun, 14 Sep 2014 23:59:30 +0000 (00:59 +0100)]
small improvements to lz4frame compression
Yann Collet [Sat, 13 Sep 2014 22:49:45 +0000 (23:49 +0100)]
changed : lz4 test mode (-t) to no longer ask for confirmation, as suggested by Nguyen Thary
Yann Collet [Sat, 13 Sep 2014 22:44:07 +0000 (23:44 +0100)]
changed xxhash directory
changed makefile
Yann Collet [Sat, 13 Sep 2014 22:30:01 +0000 (00:30 +0200)]
Merge pull request #26 from Cyan4973/frame
Frame