8598 Commits

Author SHA1 Message Date
Yann Collet
16ec1cf355 added test case for seekTable API
and simple roundtrip test
2021-03-03 18:56:23 -08:00
Yann Collet
6c0bfc468c fixed wrong assert condition 2021-03-03 15:30:55 -08:00
Yann Collet
a1d7b9d654 fixed gcc conversion warnings 2021-03-03 15:17:12 -08:00
Yann Collet
24d59a655d Merge branch 'dev' into seekTable 2021-03-03 15:08:40 -08:00
sen
0388054aab
Merge pull request #2516 from senhuang42/seekable_hang_fix
Seekable hang fix
2021-03-03 17:30:46 -05:00
Yann Collet
ac95a30455 various minor style fixes 2021-03-02 16:03:18 -08:00
Yann Collet
029f974ddc strengthen compilation flags 2021-03-02 15:43:52 -08:00
Yann Collet
c7e42e147b fixed const guarantees
read-only objects are properly const-ified in parameters
2021-03-02 15:24:30 -08:00
Yann Collet
a80b10f5e6 fix potential leak on exit 2021-03-02 15:03:37 -08:00
Sen Huang
527a20c3cd Fix seekable decompress hanging 2021-03-02 14:30:03 -08:00
Martin Lindsay
3cbdbb888b ZSTD_seekable_decompress() example that hangs. 2021-03-02 14:25:17 -08:00
Yann Collet
ce6d1b9376
Merge pull request #2113 from mdittmer/expose-seek-table
[contrib] Support seek table-only API
2021-03-02 10:50:47 -08:00
Felix Handte
74d65eaa92
Merge pull request #2514 from felixhandte/v1.4.9
Prepare Codebase for v1.4.9 Release
2021-03-02 11:41:55 -05:00
W. Felix Handte
3835957b2d Update CHANGELOG 2021-03-01 18:00:10 -05:00
W. Felix Handte
0f1a52b349 Documentation Rebuild 2021-03-01 17:57:02 -05:00
W. Felix Handte
d7db928f72 Bump Library Version 1.4.8 -> 1.4.9 2021-03-01 17:45:30 -05:00
Felix Handte
aec1e8c715
Merge pull request #2513 from felixhandte/fix-2493
Avoid Using `stat -c` on NetBSD
2021-02-26 18:02:38 -05:00
Felix Handte
45ee23f6a1
Merge pull request #2512 from felixhandte/fix-2509
Detect `..` in Paths Correctly
2021-02-26 18:02:18 -05:00
W. Felix Handte
221e4659cd Avoid Using stat -c on NetBSD
Addresses #2493. I think. I don't have a NetBSD system to test on.
2021-02-26 13:05:39 -05:00
W. Felix Handte
9b7f9d26d5 Cover These Edge Cases in Tests 2021-02-26 13:01:20 -05:00
W. Felix Handte
61db590ad8 Detect .. in Paths Correctly
This commit addresses #2509.
2021-02-26 12:29:42 -05:00
Nick Terrell
aad85f19f0
Merge pull request #2510 from terrelln/regression
[regression] Update results.csv
2021-02-25 10:55:30 -08:00
Nick Terrell
04139c3ff2 [regression] Update results.csv
Fixes the update from PR #2508. I had accidentally forgotten to rebuild
the library, and the regression test suite isn't hooked up to the new
fancy build system yet.

I've double checked that the results are deterministic.
2021-02-24 19:11:38 -08:00
Yann Collet
61b63e9060
Merge pull request #2492 from niacat/dev
Use standard md5 tool on NetBSD.
2021-02-24 16:38:10 -08:00
Yann Collet
c03e1305ff
Merge pull request #2489 from concatime/cmake-c-lib-programs
CMake: Enable only C for lib and programs projects
2021-02-24 15:58:33 -08:00
Nick Terrell
390e050b1d
Merge pull request #2508 from terrelln/regression
[regression] Update results.csv
2021-02-23 16:19:33 -08:00
Nick Terrell
59b2c596d7 [regression] Update results.csv
9f327c02fd17a5aad2b24ae06b85d8226add1f93 changed the compression method
for LDM, so the results are slightly different.

I've re-tested LDM on some larger inputs and everything seems fine.
These ratio changes just seem to be noise. There is generally a 0.01%
swing in ratio, sometimes better sometimes worse, but never large.
2021-02-23 15:23:08 -08:00
Yann Collet
99dde00fc9
Merge pull request #2507 from facebook/freebsd12_2
update FreeBSD image to latest 12.2
2021-02-23 14:54:52 -08:00
Yann Collet
d1c0ae9e6c
Merge pull request #2504 from skitt/stop-using-resetxstream
Stop using deprecated reset?Stream functions
2021-02-23 13:37:17 -08:00
Yann Collet
3d91ab74a1 disabled icc tests on Github Actions 2021-02-23 13:25:08 -08:00
Stephen Kitt
adb54293ab
Stop using deprecated reset?Stream functions
These are replaced by the corresponding context resets. When
converting resetCStream, CCtx_setPledgedSrcSize isn't called if the
source size is "unknown".

This helps reduce the reliance on "static only" symbols, as well as
reducing the use of deprecated functions.

Signed-off-by: Stephen Kitt <steve@sk2.org>
2021-02-23 21:56:01 +01:00
Yann Collet
08fef036ec update FreeBSD image to latest 12.2 2021-02-23 10:40:44 -08:00
Yann Collet
c79411a483
Merge pull request #2502 from facebook/ubsanfix
fix ubsan test errors
2021-02-20 11:05:55 -08:00
Yann Collet
f2c0312889 removing signed integer overflow exception from ubsan tests 2021-02-19 16:30:06 -08:00
Yann Collet
f7cffb5d9d
Merge pull request #2503 from terrelln/fuzz-ubsan
[fuzz] Fix compiler detection & update ubsan flags
2021-02-19 16:19:07 -08:00
Nick Terrell
91e6480458 [fuzz] Fix compiler detection & update ubsan flags
* Fix compiler version regex, which was broken for multi-digit
  versions.
* Fix compiler detection for gcc.
* Disable `pointer-overflow` instead of `integer-overflow` for gcc
  versions newer than 8.0.0.
2021-02-19 13:19:18 -08:00
Yann Collet
9b0772177c fix ubsan test errors
allows recovering from pointer overflow
2021-02-19 10:42:05 -08:00
Felix Handte
a2adc6df9f
Merge pull request #2495 from felixhandte/umask
Use umask() to Constrain Created File Permissions
2021-02-17 17:03:23 -05:00
W. Felix Handte
a774c57973 Use umask() to Constrain Created File Permissions
This commit addresses #2491.

Note that a downside of this solution is that it is global: `umask()` affects
all file creation calls in the process. I believe this is safe since
`fileio.c` functions should only ever be used in the zstd binary, and these
are (almost) the only files ever created by zstd, and AIUI they're only
created in a single thread. So we can get away with messing with global state.

Note that this doesn't change the permissions of files created by `dibio.c`.
I'm not sure what those should be...
2021-02-17 15:27:39 -05:00
Yann Collet
b2bff75a7a
Merge pull request #2500 from senhuang42/add_cli_newline
[easy][cli] Add newline to boundary of --help message of --trace and --[no-]check
2021-02-17 10:43:41 -08:00
senhuang42
444c4650a0 Add newline to end of cli help message 2021-02-17 12:30:42 -05:00
Nick Terrell
bb6ca68713
Merge pull request #2498 from terrelln/old-api-fix
[bug-fix] Make simple single-pass functions ignore advanced parameters
2021-02-16 10:51:25 -08:00
Nick Terrell
7736549bea [bug-fix] Make simple single-pass functions ignore advanced parameters
The simple compression functions are intended to ignore the advanced
parameters, but they were accidentally using them. All the
`ZSTD_parameters` were set correctly, but any extra parameters were
used as-is. E.g. `ZSTD_c_format`.

This PR makes all the simple single-pass functions listed below ignore
the advanced parameters, as intended.

* `ZSTD_compressCCtx()`
* `ZSTD_compress_usingDict()`
* `ZSTD_compress_usingCDict()`
* `ZSTD_compress_advanced()`
* `ZSTD_compress_usingCDict_advanced()`

It also adds a test case that ensures that each of these functions
ignore the advanced parameters.
2021-02-12 19:11:23 -08:00
Nick Terrell
f39178b445
Merge pull request #2497 from terrelln/tracing
[lib] Set appliedParams.compressionLevel correctly
2021-02-12 17:34:07 -08:00
Nick Terrell
c62eb05964 [lib] Set appliedParams.compressionLevel correctly
Forward the correct compressionLevel to the appliedParams in all cases.
It was already correct for the advanced API, so only the old single-pass
functions needed to be fixed.

This compression level is unused by the library, but is set so that the
tracing framework can consume it.
2021-02-12 15:00:14 -08:00
Nick Terrell
3ac842d6cc
Merge pull request #2496 from terrelln/tracing
[trace] Minor fixes found during integration
2021-02-12 10:48:30 -08:00
Nick Terrell
f520f6dfbe [trace] Minor fixes found during integration
* Mark `ZSTD_CCtx_getParameter()` as const
* Add `extern "C"` guards to `zstd_trace.h`
2021-02-11 16:20:04 -08:00
Yann Collet
8884cb887d
Merge pull request #2483 from mpu/ldmgear
New algorithms for the long distance matcher
2021-02-11 08:38:23 -08:00
nia
74f85818a6 Use standard md5 tool on NetBSD.
This avoids a GNU coreutils dependency.

-n is used to match the output format of coreutils:
http://man.netbsd.org/md5.1
2021-02-11 10:50:11 +01:00
Quentin Carbonneaux
552efcac2d relocate large arrays from the stack to ldmState_t 2021-02-10 16:16:54 +01:00