]>
git.ipfire.org Git - thirdparty/zstd.git/log
Bimba Shrestha [Thu, 27 Feb 2020 21:56:56 +0000 (13:56 -0800)]
Adding hashLog to --show-default-cparams
Yann Collet [Thu, 27 Feb 2020 20:36:39 +0000 (12:36 -0800)]
Merge pull request #2017 from facebook/verbose
man page : added `--verbose` long command
Yann Collet [Wed, 26 Feb 2020 22:29:30 +0000 (14:29 -0800)]
man page : added `--verbose` long command
also updated `zstd.1`
stacking prior updates completed on `zstd.1.md`.
Felix Handte [Wed, 26 Feb 2020 18:52:49 +0000 (10:52 -0800)]
Revert "Fix pkg-config File Generation Again" (#2016)
Felix Handte [Tue, 25 Feb 2020 18:22:29 +0000 (10:22 -0800)]
Merge pull request #2001 from felixhandte/pkg-config-fix-again
Fix pkg-config File Generation Again
Nick Terrell [Mon, 24 Feb 2020 21:53:45 +0000 (13:53 -0800)]
Merge pull request #2013 from terrelln/oss-fuzz
Update CIFuzz file and turn off dry-run mode
Nick Terrell [Mon, 24 Feb 2020 20:36:19 +0000 (12:36 -0800)]
Update CIFuzz file and turn off dry-run mode
Felix Handte [Fri, 21 Feb 2020 16:51:37 +0000 (08:51 -0800)]
Merge pull request #2007 from lgarrison/cli-allow-sizet
Allow some CLI options to accept numeric values up to size_t
Lehman Garrison [Thu, 20 Feb 2020 19:29:58 +0000 (14:29 -0500)]
Allow some cli options to accept numeric values up to size_t instead of unsigned int
Bimba Shrestha [Thu, 20 Feb 2020 18:55:28 +0000 (10:55 -0800)]
Merge pull request #1999 from bket/fix_have_lz4
Fix forgotten portable header prefix
Bimba Shrestha [Thu, 20 Feb 2020 18:54:04 +0000 (10:54 -0800)]
Merge pull request #2002 from bimbashrestha/docs
[doc] Adding notes about CI and an outline of collaboration workflow
Philip Jones [Tue, 18 Feb 2020 23:30:59 +0000 (15:30 -0800)]
Fix integer parsing in cli (#2003)
Bimba Shrestha [Tue, 18 Feb 2020 22:21:19 +0000 (14:21 -0800)]
Remove redundant section and typo
Bimba Shrestha [Tue, 18 Feb 2020 21:03:52 +0000 (13:03 -0800)]
Outlining our current workflow
W. Felix Handte [Tue, 18 Feb 2020 18:40:58 +0000 (13:40 -0500)]
Fix Variable Capitalization
W. Felix Handte [Tue, 18 Feb 2020 18:17:17 +0000 (13:17 -0500)]
Allow Manual Overriding of pkg-config Lib and Include Dirs
When the `PCLIBDIR` or `PCINCDIR` is non-empty (either because we succeeded
in removing the prefix, or because it was manually set), we don't need to
perform the check. This lets us trust users who go to the trouble of setting
a manual override, rather than still blindly failing the make.
They'll still be prefixed with `${prefix}/` / `${exec_prefix}/` in the
pkg-config file though.
W. Felix Handte [Tue, 18 Feb 2020 15:50:38 +0000 (10:50 -0500)]
Fix pkg-config File Generation Again
Revises #1851. Fixes #1900. Replaces #1930.
Thanks to @orbea, @neheb, @Polynomial-C, and particularly @eli-schwartz for
pointing out the problem and suggesting solutions.
Tested with
```
make -C lib clean libzstd.pc
cat lib/libzstd.pc
# should fail
make -C lib clean libzstd.pc LIBDIR=/foo
make -C lib clean libzstd.pc INCLUDEDIR=/foo
make -C lib clean libzstd.pc LIBDIR=/usr/localfoo
make -C lib clean libzstd.pc INCLUDEDIR=/usr/localfoo
make -C lib clean libzstd.pc LIBDIR=/usr/local/lib prefix=/foo
make -C lib clean libzstd.pc INCLUDEDIR=/usr/local/include prefix=/foo
# should succeed
make -C lib clean libzstd.pc LIBDIR=/usr/local/foo
make -C lib clean libzstd.pc INCLUDEDIR=/usr/local/foo
make -C lib clean libzstd.pc LIBDIR=/usr/local/
make -C lib clean libzstd.pc INCLUDEDIR=/usr/local/
make -C lib clean libzstd.pc LIBDIR=/usr/local
make -C lib clean libzstd.pc INCLUDEDIR=/usr/local
make -C lib clean libzstd.pc LIBDIR=/tmp/foo prefix=/tmp
make -C lib clean libzstd.pc INCLUDEDIR=/tmp/foo prefix=/tmp
make -C lib clean libzstd.pc LIBDIR=/tmp/foo prefix=/tmp/foo
make -C lib clean libzstd.pc INCLUDEDIR=/tmp/foo prefix=/tmp/foo
# should also succeed
make -C lib clean libzstd.pc prefix=/foo LIBDIR=/foo/bar INCLUDEDIR=/foo/
cat lib/libzstd.pc
mkdir out
cd out
cmake ../build/cmake
make
cat lib/libzstd.pc
```
Bimba Shrestha [Sun, 16 Feb 2020 16:31:17 +0000 (11:31 -0500)]
Adding steps for setting up travis and appveyor (and some general notes)
Björn Ketelaars [Sat, 15 Feb 2020 11:42:00 +0000 (12:42 +0100)]
Fix forgotten portable header prefix
PR #1987 forgot to prefix another include causing lz4 detection to fail.
Nick Terrell [Tue, 11 Feb 2020 20:03:43 +0000 (12:03 -0800)]
Merge pull request #1996 from terrelln/cifuzz-dogfood
[CIFuzz] Rename output path to artifacts
Nick Terrell [Tue, 11 Feb 2020 18:43:15 +0000 (10:43 -0800)]
[CIFuzz] Rename output path to artifacts
Nick Terrell [Mon, 10 Feb 2020 20:55:58 +0000 (12:55 -0800)]
Merge pull request #1993 from terrelln/cifuzz-dogfood
Enable oss-fuzz CIFuzz dogfood
Nick Terrell [Mon, 10 Feb 2020 20:36:56 +0000 (12:36 -0800)]
Enable oss-fuzz CIFuzz dogfood
Bimba Shrestha [Thu, 6 Feb 2020 22:10:51 +0000 (14:10 -0800)]
[build-issue] More portable header prefix usage (#) (#1987)
* make 4.3 build issue fix
* Changing header name and adding comment
Bimba Shrestha [Thu, 6 Feb 2020 21:51:43 +0000 (13:51 -0800)]
Displaying level in --show-default-cparams (#1991)
* Displaying level in --show-default-cparams
* Displaying actual enum value instead of level
Bimba Shrestha [Thu, 6 Feb 2020 00:55:00 +0000 (16:55 -0800)]
Removing symbols already in unit tests and adding some new unit tests for missing symbols (#1985)
* Removing symbols that are not being tested
* Removing symbols used in zstdcli, fileio, dibio and benchzstd
* Removing symbols used in zbuff and add test-zbuff to travis
* Removing remaining symbols and adding unit tests instead
* Removing symbols test entirely
Bimba Shrestha [Tue, 4 Feb 2020 00:48:21 +0000 (16:48 -0800)]
Merge pull request #1982 from bimbashrestha/quick
Using appliedParams instead of "supplied" params in compressBegin()
Bimba Shrestha [Mon, 3 Feb 2020 22:43:55 +0000 (14:43 -0800)]
Merge pull request #1980 from bimbashrestha/params
Adding --show-default-cparams to cli
Bimba Shrestha [Mon, 3 Feb 2020 22:40:26 +0000 (14:40 -0800)]
Merge pull request #1981 from bimbashrestha/bug-fix
Benchzstd multiple file decompression enable
Bimba Shrestha [Mon, 3 Feb 2020 17:52:39 +0000 (09:52 -0800)]
Adding assert(NB_STRATEGIES == upperLimit)
Bimba Shrestha [Mon, 3 Feb 2020 17:38:16 +0000 (09:38 -0800)]
Line-wrapping
Bimba Shrestha [Fri, 31 Jan 2020 23:49:07 +0000 (15:49 -0800)]
Using appliedParams instead of supplied params
Bimba Shrestha [Fri, 31 Jan 2020 19:54:14 +0000 (11:54 -0800)]
Removing assert and changing ratio cSize
Bimba Shrestha [Fri, 31 Jan 2020 18:54:02 +0000 (10:54 -0800)]
Adding (void)ZSTD_strategyMap
Bimba Shrestha [Fri, 31 Jan 2020 18:47:17 +0000 (10:47 -0800)]
Adding static assert and using it in cli
Bimba Shrestha [Fri, 31 Jan 2020 18:38:19 +0000 (10:38 -0800)]
Moving to same category as -v
Bimba Shrestha [Fri, 31 Jan 2020 01:54:42 +0000 (17:54 -0800)]
Moving documentation and elaborating
Bimba Shrestha [Fri, 31 Jan 2020 01:54:01 +0000 (17:54 -0800)]
Adding assert and using ZSTD_STRATEGY_MAX as ZSTD_NB_STRATEGIES
Bimba Shrestha [Fri, 31 Jan 2020 01:16:02 +0000 (17:16 -0800)]
Adding back one cast and using UTIL_FILESIZE_UNKNOWN to check unknown file size
Bimba Shrestha [Fri, 31 Jan 2020 01:11:38 +0000 (17:11 -0800)]
Documenting in the man file
Bimba Shrestha [Fri, 31 Jan 2020 01:07:22 +0000 (17:07 -0800)]
Removing more casts
Bimba Shrestha [Fri, 31 Jan 2020 01:05:33 +0000 (17:05 -0800)]
Removing unnecessary cast
Bimba Shrestha [Fri, 31 Jan 2020 00:52:07 +0000 (16:52 -0800)]
Moving default cparams back, checking for unknown file size, using getCParams()
Bimba Shrestha [Thu, 30 Jan 2020 22:29:04 +0000 (14:29 -0800)]
Convertion nit U32 -> size_t
Bimba Shrestha [Thu, 30 Jan 2020 22:14:27 +0000 (14:14 -0800)]
Update comment
Bimba Shrestha [Thu, 30 Jan 2020 22:12:03 +0000 (14:12 -0800)]
Adding --show-default-cparams (show cparams before compressing
Nick Terrell [Wed, 29 Jan 2020 23:32:19 +0000 (15:32 -0800)]
Merge pull request #1977 from terrelln/copyless
Improve wildcopy performance across the board
Bimba Shrestha [Wed, 29 Jan 2020 06:11:51 +0000 (22:11 -0800)]
Merge pull request #1978 from bimbashrestha/quick
[Typo][fix] make benchmarking typo fix
Bimba Shrestha [Wed, 29 Jan 2020 05:39:20 +0000 (21:39 -0800)]
Typo baseline_build -> baseline_label
Nick Terrell [Wed, 29 Jan 2020 04:37:04 +0000 (20:37 -0800)]
Improve wildcopy performance across the board
Bimba Shrestha [Tue, 28 Jan 2020 19:29:43 +0000 (11:29 -0800)]
[automated_benchmarking] Make arguments optional and add --dict argument (#1968)
* Make arugments optional and add --dict argument
* Removing accidental print statement
* Change to more likely scenario for dictionary compression benchmark
Yann Collet [Mon, 27 Jan 2020 19:39:29 +0000 (11:39 -0800)]
added ability to remove error messages and dictionary support (#1975)
for the benefit of smaller binary.
Yann Collet [Sat, 25 Jan 2020 04:16:28 +0000 (20:16 -0800)]
refactor of harness, for clarity (#1974)
following #1953 (false positive, due to heuristic confusion)
Yann Collet [Fri, 24 Jan 2020 23:04:02 +0000 (15:04 -0800)]
Merge branch 'dev' of github.com:facebook/zstd into dev
Yann Collet [Fri, 24 Jan 2020 22:12:25 +0000 (14:12 -0800)]
updated CHANGELOG
Nick Terrell [Fri, 24 Jan 2020 06:02:50 +0000 (22:02 -0800)]
Merge pull request #1972 from terrelln/check-cont
Move ZSTD_checkContinuity() to zstd_decompress_block.c
Nick Terrell [Fri, 24 Jan 2020 06:02:32 +0000 (22:02 -0800)]
Merge pull request #1973 from terrelln/mobile-perf
Fix performance regression on aarch64 with clang
Nick Terrell [Fri, 24 Jan 2020 01:54:48 +0000 (17:54 -0800)]
Initialize dctx->bType to silence valgrind false positive
Nick Terrell [Fri, 24 Jan 2020 00:18:52 +0000 (16:18 -0800)]
Fix performance regression on aarch64 with clang
Nick Terrell [Thu, 23 Jan 2020 20:27:39 +0000 (12:27 -0800)]
Move ZSTD_checkContinuity() to zstd_decompress_block.c
Nick Terrell [Wed, 22 Jan 2020 23:42:50 +0000 (15:42 -0800)]
Merge pull request #1965 from terrelln/android-fix
Fix timefn on android
Nick Terrell [Wed, 22 Jan 2020 19:17:30 +0000 (11:17 -0800)]
Update comment in timefn
Nick Terrell [Wed, 22 Jan 2020 02:57:16 +0000 (18:57 -0800)]
Fix timefn on android
Felix Handte [Tue, 21 Jan 2020 16:54:00 +0000 (11:54 -0500)]
Merge pull request #1956 from PhoebeHui/dev
Add vcpkg installation instructions
PhoebeHui [Mon, 20 Jan 2020 07:51:40 +0000 (23:51 -0800)]
Update comments
Nick Terrell [Sat, 18 Jan 2020 02:01:35 +0000 (18:01 -0800)]
Merge pull request #1957 from terrelln/fix-ultra
Fix lowLimit underflow in overflow correction
Nick Terrell [Fri, 17 Jan 2020 22:46:00 +0000 (14:46 -0800)]
Merge pull request #1958 from terrelln/docs
Add --single-thread to zstd --help
Nick Terrell [Fri, 17 Jan 2020 22:20:44 +0000 (14:20 -0800)]
Fix playTests.sh for 32-bit mode
Nick Terrell [Fri, 17 Jan 2020 20:22:29 +0000 (12:22 -0800)]
Add --single-thread to zstd --help
Nick Terrell [Fri, 17 Jan 2020 20:05:53 +0000 (12:05 -0800)]
Fix lowLimit underflow in overflow correction
PhoebeHui [Fri, 17 Jan 2020 11:31:08 +0000 (03:31 -0800)]
Add vcpkg installation instructions
Nick Terrell [Tue, 14 Jan 2020 00:16:25 +0000 (16:16 -0800)]
Merge pull request #1950 from terrelln/ctest
[cmake] Add playTests.sh as a test
Nick Terrell [Mon, 13 Jan 2020 22:22:46 +0000 (14:22 -0800)]
[util] Fix readLineFromFile on Cygwin
Nick Terrell [Mon, 13 Jan 2020 19:52:33 +0000 (11:52 -0800)]
[cmake] Add playTests.sh as a test
Nick Terrell [Mon, 13 Jan 2020 19:35:28 +0000 (11:35 -0800)]
Merge pull request #1948 from lazka/cygwin-fix-c99-build
Fix the c99/cmake build under Cygwin/MSYS2
Christoph Reiter [Sat, 11 Jan 2020 09:41:56 +0000 (10:41 +0100)]
appveyor: build with CMake under Cygwin
Nick Terrell [Sat, 11 Jan 2020 02:02:11 +0000 (18:02 -0800)]
Fix super block compression and stream raw blocks in decompression (#1947)
Super blocks must never violate the zstd block bound of input_size + ZSTD_blockHeaderSize. The individual sub-blocks may, but not the super block. If the superblock violates the block bound we are liable to violate ZSTD_compressBound(), which we must not do. Whenever the super block violates the block bound we instead emit an uncompressed block.
This means we increase the latency because of the single uncompressed block. I fix this by enabling streaming an uncompressed block, so the latency of an uncompressed block is 1 byte. This doesn't reduce the latency of the buffer-less API, but I don't think we really care.
* I added a test case that verifies that the decompression has 1 byte latency.
* I rely on existing zstreamtest / fuzzer / libfuzzer regression tests for correctness. During development I had several correctness bugs, and they easily caught them.
* The added assert that the superblock doesn't violate the block bound will help us discover any missed conditions (though I think I got them all).
Credit to OSS-Fuzz.
Christoph Reiter [Sat, 11 Jan 2020 00:04:14 +0000 (01:04 +0100)]
Fix the c99/cmake build under Cygwin/MSYS2
When building zst under cygwin or msys2 with std=c99 the build would fail because
of an undefined fileno()/_fileno(), which is used by the IS_CONSOLE() macro.
When building with -std=c99 (gcc otherwise defaults to gnu, which implies POSIX),
which is the default of the cmake build, then including unistd.h wont define
_POSIX_VERSION and all other headers also wont expose POSIX API.
To fix this make sure to define _POSIX_C_SOURCE with the version we want before including
unistd.h and so that _POSIX_VERSION is set to the version provided by the system.
Since Cygwin/MSYS2 just follow POSIX we can also remove their special cases for
defining IS_CONSOLE().
And, for completeness, also explicitly include stdio.h which is what actually declares fileno().
Tested with the normal make file and cmake under MSYS2 and Cygwin.
Bimba Shrestha [Fri, 10 Jan 2020 22:25:24 +0000 (14:25 -0800)]
Adding new cli endpoint --patch-from= (#1940)
* Adding new cli endpoint --diff-from=
* Appveyor conversion nit
* Using bool set trick instead of direct set
* Removing --diff-from and only leaving --diff-from=#
* Throwing error when both dictFileName vars are set
* Clean up syntax
* Renaming diff-from to patch-from
* Revering comma separated syntax clean up
* Updating playtests with patch-from
* Uncommenting accidentally commented
* Updating remaining docs and var names to be patch-from instead of diff-from
* Constifying
* Using existing log2 function and removing newly created one
* Argument order (moving prefs to end)
* Using comma separated syntax
* Moving to outside #ifndef
Nick Terrell [Thu, 9 Jan 2020 19:38:50 +0000 (11:38 -0800)]
[fuzz] Allow zero sized buffers for streaming fuzzers (#1945)
* Allow zero sized buffers in `stream_decompress`. Ensure that we never have two
zero sized buffers in a row so we guarantee forwards progress.
* Make case 4 in `stream_round_trip` do a zero sized buffers call followed by
a full call to guarantee forwards progress.
* Fix `limitCopy()` in legacy decoders.
* Fix memcpy in `zstdmt_compress.c`.
Catches the bug fixed in PR #1939
Igor Sugak [Thu, 9 Jan 2020 00:17:42 +0000 (16:17 -0800)]
fix UBSAN's invalid-null-argument error in zstd_decompress.c (#1939)
Nick Terrell [Wed, 8 Jan 2020 21:20:56 +0000 (13:20 -0800)]
[fuzz] Fix regression_driver.c with directory input (#1944)
The `numFiles` variable wasn't updated, so the fuzzer didn't do anything.
I did two things to fix this:
1. Remove the `numFiles` variable entirely.
2. Error if we can't open a file and print the number of files tested.
Christoph Reiter [Tue, 7 Jan 2020 23:48:26 +0000 (00:48 +0100)]
Make UTIL_countPhysicalCores() work under Cygwin (#1941)
Cygwin currently uses the fallback implementation which just returns 1 every time,
which leads to bad performance when zstd is called with -T0 for example.
Instead use the POSIX implementation used for the BSDs which works just fine under Cygwin.
Tested under Cygwin and MSYS2.
Yann Collet [Tue, 7 Jan 2020 17:51:22 +0000 (09:51 -0800)]
updated CHANGELOG
one missing item in v1.4.4
Bimba Shrestha [Mon, 6 Jan 2020 22:19:11 +0000 (14:19 -0800)]
[bench] Automated benchmarking script (#1906)
* Initial revised automated benchmarking script
* Updating nb_iterations and making loop infinite
* Allowing benchmarking params to be changed from cli
* Renaming old speed test
* Removing numpy dependency for cli
* Change filename and benchmakr on pr level
* Moving build outside loop and adding iterations param
* Moving benchmarking to seperate travis ci test
* Fixing typo and using unused variable
* Added mode labels and updated README accordingly
* Adding new mode 'current' that compraes facebook:dev against current hash
* Typo
* Reverting previous accidental diff
* Typo
* Adding frequency config variable to prevent github from blacklisting
* Added new argument for frequency of fetching new prs
* Updating documentation
Bimba Shrestha [Sat, 4 Jan 2020 00:53:51 +0000 (16:53 -0800)]
[fuzz] Dividing by targetCBlockSize instead of blockSize for nbBlocks fit (#1936)
* Adding fail logging for superblock flow
* Dividing by targetCBlockSize instead of blockSize
* Adding new const and using more acurate formula for nbBlocks
* Only do dstCapacity check if using superblock
* Remvoing disabling logic
* Updating test to make it catch more extreme case of previou bug
* Also updating comment
* Only taking compressEnd shortcut on non-superblock
Bimba Shrestha [Sat, 4 Jan 2020 00:36:47 +0000 (16:36 -0800)]
[doc] Adding -M# decompression operation modifier documentation (#1938)
* Adding -M# operation modifier documentation
* Adding long name, typo and update desc
Felix Handte [Fri, 3 Jan 2020 21:07:16 +0000 (16:07 -0500)]
Merge pull request #1920 from felixhandte/fix-mtim-again
Use statbuf->st_mtim Again
Felix Handte [Thu, 26 Dec 2019 19:16:23 +0000 (14:16 -0500)]
Fix playTests.sh Under QEMU (#1923)
W. Felix Handte [Thu, 5 Dec 2019 17:02:35 +0000 (12:02 -0500)]
Also Define _ATFILE_SOURCE
W. Felix Handte [Wed, 4 Dec 2019 21:59:16 +0000 (16:59 -0500)]
Add Comment
W. Felix Handte [Wed, 4 Dec 2019 15:25:07 +0000 (10:25 -0500)]
Use statbuf->st_mtim Again
W. Felix Handte [Thu, 5 Dec 2019 22:14:57 +0000 (17:14 -0500)]
Add Travis Test that Builds ARM on Trusty
W. Felix Handte [Thu, 5 Dec 2019 22:14:29 +0000 (17:14 -0500)]
Fix playTests.sh Under QEMU
Yann Collet [Thu, 19 Dec 2019 20:58:24 +0000 (12:58 -0800)]
Merge pull request #1928 from bimbashrestha/bimba-oss
[fuzz] Adding bool to check if there is enough room to emit noCompress Superblocks
Felix Handte [Thu, 19 Dec 2019 17:08:28 +0000 (12:08 -0500)]
Merge pull request #1932 from felixhandte/diagnose-corruption-dicts
Add Support for Dictionaries in Corruption Diagnosis Tool
W. Felix Handte [Wed, 18 Dec 2019 19:26:35 +0000 (11:26 -0800)]
Add Support for Dictionaries
Yann Collet [Wed, 18 Dec 2019 19:49:26 +0000 (11:49 -0800)]
Merge pull request #1929 from facebook/travisTest
added ppc64le tests on travis
W. Felix Handte [Wed, 18 Dec 2019 19:29:53 +0000 (11:29 -0800)]
Print Summary of Errors Encountered
Bimba Shrestha [Wed, 18 Dec 2019 01:16:51 +0000 (17:16 -0800)]
Constifying, malloc check and naming nit