Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

release v1.5.4 #3487

Merged
merged 668 commits into from
Feb 10, 2023
Merged
Show file tree
Hide file tree
Changes from 250 commits
Commits
Show all changes
668 commits
Select commit Hold shift + click to select a range
fbff782
Refactor progress bar & summary line logic
terrelln Jan 7, 2022
a78c91a
Use proper unaligned access attributes
Hello71 Nov 29, 2021
15f32ad
[fileio] Separate parameter adaption from display update rate
terrelln Dec 14, 2022
f31b83f
[decompress] Fix nullptr addition & improve fuzzer
terrelln Dec 15, 2022
728e73e
[legacy] Remove FORCE_MEMORY_ACCESS and only use memcpy
terrelln Dec 15, 2022
e2fc933
Merge branch 'dev' into http-to-https
daniellerozenblit Dec 15, 2022
6e3667a
Merge pull request #3352 from daniellerozenblit/http-to-https
daniellerozenblit Dec 15, 2022
6be3181
added mention of compilation flags
Cyan4973 Dec 15, 2022
a91e7ec
Fix corruption that rarely occurs in 32-bit mode with wlog=25
terrelln Dec 15, 2022
45ed0df
check potential overflow of compressBound()
Cyan4973 Dec 15, 2022
e0ef09d
meson: partial fix for building pzstd on MSVC
eli-schwartz Dec 14, 2022
1bc9dfe
Update documentation link to html format
Cyan4973 Dec 15, 2022
26e8c65
Merge branch 'dev' of github.com:facebook/zstd into dev
Cyan4973 Dec 15, 2022
e8401e9
meson: fix broken commit that broke the build
eli-schwartz Dec 16, 2022
626425d
meson: fix warning for using too-new features
eli-schwartz Dec 16, 2022
ee6475c
Add missing parens around macro definition
terrelln Dec 16, 2022
8745229
Merge pull request #3368 from eli-schwartz/meson-execinfo-bool
yoniko Dec 16, 2022
ef566c8
[circleci] Try to re-enable aarch64build
terrelln Dec 16, 2022
26134b4
meson: don't require valgrind tests
eli-schwartz Apr 20, 2022
9c3e18f
meson: add support for running both fast and slow version of tests
eli-schwartz Dec 15, 2022
7f29c18
meson: add Linux CI
eli-schwartz Dec 15, 2022
937e9d3
meson: add Windows CI
eli-schwartz Dec 15, 2022
6747ba4
meson: mark a known test failure on Windows
eli-schwartz Apr 20, 2022
5850839
[CI] Re-enable versions-test
terrelln Dec 16, 2022
97f63ce
added unit tests for compressBound()
Cyan4973 Dec 16, 2022
358a237
[api][visibility] Make the visibility macros more consistent
terrelln Dec 15, 2022
0c42424
[build] Fix ZSTD_LIB_MINIFY build option
terrelln Dec 16, 2022
2f7b8d4
[zdict] Fix static linking only include guards
terrelln Dec 16, 2022
51355e1
Merge pull request #3362 from facebook/compressBound
Cyan4973 Dec 16, 2022
ea24b88
decompressBound() tests
Cyan4973 Dec 16, 2022
2f4238e
make ZSTD_DECOMPRESSBOUND() compatible with input size 0
Cyan4973 Dec 16, 2022
3a484ef
Merge pull request #3373 from facebook/decompressBound
Cyan4973 Dec 17, 2022
ce61cb8
Merge pull request #3120 from eli-schwartz/meson-fixup
yoniko Dec 17, 2022
3867c41
meson: Fix Windows CI test by pulling a more recent version msvc-dev-cmd
yoniko Dec 17, 2022
fba704f
Merge pull request #3374 from yoniko/fix-meson-ci-dependancy
yoniko Dec 17, 2022
500f02e
Fixes two bugs in the Windows thread / pthread translation layer
yoniko Dec 16, 2022
ec42c92
Fix race condition in the Windows thread / pthread translation layer
yoniko Dec 17, 2022
aaa38b2
meson: zstreamtests should now pass on Windows
yoniko Dec 17, 2022
832c1a6
minor reformatting
Cyan4973 Dec 18, 2022
6554596
Bump ossf/scorecard-action from 2.0.6 to 2.1.0
dependabot[bot] Dec 19, 2022
79a00f8
Bump github/codeql-action from 1.0.26 to 2.1.37
dependabot[bot] Dec 19, 2022
9073fe0
Merge pull request #3376 from facebook/split2
Cyan4973 Dec 19, 2022
3cee69a
CI: build programs on meson-windows too
eli-schwartz Dec 18, 2022
67cd24b
CI: build contrib directory on meson-windows
eli-schwartz Dec 18, 2022
e9797b5
[pzstd] Fixes for Windows build
terrelln Dec 19, 2022
26f1bf7
CR fixes
yoniko Dec 19, 2022
a8add43
Merge pull request #3364 from yoniko/fix-windows-mt-thread-resize-bug
yoniko Dec 19, 2022
6a90c0f
Merge pull request #3289 from nmoinvaz/cmake/playtest-win
Cyan4973 Dec 20, 2022
a05cca6
Manually Update VS Code Copyright Definitions
felixhandte Jun 21, 2022
8927f98
Update Copyright Headers 'Facebook' -> 'Meta Platforms'
felixhandte Dec 20, 2022
36d5c2f
Update Copyright Year ('2021' -> 'present')
felixhandte Dec 20, 2022
4c999cf
Update test-license.py
felixhandte Jun 21, 2022
7f12f24
Rewrite Copyright Date Ranges from `-present` to `-2022`
felixhandte Dec 20, 2022
5d693cc
Coalesce Almost All Copyright Notices to Standard Phrasing
felixhandte Dec 20, 2022
f302ad8
Merge pull request #3173 from felixhandte/update-copyright-company
felixhandte Dec 20, 2022
e4018c4
[docs] Clarify dictionary loading documentation
terrelln Dec 20, 2022
3a7e2ee
Merge pull request #3340 from facebook/dependabot/github_actions/acti…
felixhandte Dec 20, 2022
5f0543a
Merge pull request #3377 from facebook/dependabot/github_actions/ossf…
felixhandte Dec 20, 2022
ea19987
Merge pull request #3378 from facebook/dependabot/github_actions/gith…
felixhandte Dec 20, 2022
e3f2c8b
Pin actions/checkout Dependency to Specific Commit Hash
felixhandte Dec 20, 2022
482689b
huf log speed optimization: unidirectional scan of logs + break when …
daniellerozenblit Dec 20, 2022
2def93b
Merge branch 'optimal-huff-depth-speed' of github.com:daniellerozenbl…
daniellerozenblit Dec 20, 2022
c26f348
fix CI errors
daniellerozenblit Dec 20, 2022
651a381
[build][cmake] Fix cmake with custom assembler
terrelln Dec 20, 2022
0790e86
Merge pull request #3384 from felixhandte/pin-checkout-action-commit-…
felixhandte Dec 20, 2022
150aa23
Pin Remaining Action Dependencies (Except OSS-Fuzz)
felixhandte Dec 20, 2022
678335c
Rewrite help output to improve readability
jonpalmisc Dec 20, 2022
9c93dd7
Clean up welcome message
jonpalmisc Dec 21, 2022
125bcde
Update tests to expect new CLI help output
jonpalmisc Dec 21, 2022
0694f14
Merge pull request #3386 from felixhandte/pin-other-action-commit-hashes
felixhandte Dec 21, 2022
7607b96
Merge pull request #3385 from jonpalmisc/improve_help
Cyan4973 Dec 21, 2022
b6e8112
[util] Add traces enabled by --trace-file-stat
terrelln Dec 22, 2022
7df6e25
[cli-tests] Add --set-exact-output to update the expected output
terrelln Dec 22, 2022
31a703e
[cmake] Add noexecstack to compiler/linker flags
terrelln Dec 21, 2022
40a7188
Fix `make clangbuild` & add CI
terrelln Dec 22, 2022
4b40e40
[tests] Remove deprecated function from longmatch.c test
terrelln Dec 22, 2022
7fe7a16
[cli-tests] Add tests that use --trace-file-stat
terrelln Dec 22, 2022
382026f
Man Page Tweaks, Edits, Formatting Fixes
felixhandte Dec 22, 2022
11aba9b
`make man`
felixhandte Dec 22, 2022
f5ea3a1
Merge pull request #3397 from felixhandte/man-page-tweaks
felixhandte Dec 22, 2022
ea2895c
Support decompression of compressed blocks of size ZSTD_BLOCKSIZE_MAX…
Cyan4973 Dec 22, 2022
8209bfc
Merge pull request #3399 from facebook/fix2577
Cyan4973 Dec 22, 2022
6a9c525
spec update : require minimum nb of literals for 4-streams mode
Cyan4973 Dec 22, 2022
089b279
Merge pull request #3398 from facebook/fix3316
Cyan4973 Dec 23, 2022
48f4aa7
Move deprecated annotation before static to allow C++ compilation for…
danlark1 Dec 23, 2022
6640377
cmake build: fix nit
Cyan4973 Dec 23, 2022
1f72dca
Bump ossf/scorecard-action from 2.1.0 to 2.1.2
dependabot[bot] Dec 26, 2022
90597d7
Merge pull request #3394 from terrelln/issue-3010
Cyan4973 Dec 28, 2022
89342d1
New xp library symbol : ZSTD_CCtx_setCParams()
Cyan4973 Dec 28, 2022
b17743e
Signal parameter change during MT compression
Cyan4973 Dec 28, 2022
2a40262
External matchfinder API (#3333)
embg Dec 28, 2022
481a2e1
Merge pull request #3403 from facebook/setCParams
Cyan4973 Dec 28, 2022
00c85b2
update ZSTD_CCts_setCParams() inline documentation
Cyan4973 Dec 28, 2022
bcbd395
Merge pull request #3395 from terrelln/2022-12-21-deprecated-test
Cyan4973 Dec 28, 2022
9fbbd74
Merge pull request #3400 from danlark1/dev
Cyan4973 Dec 28, 2022
4a1a79a
just add some comments to zstd_opt for improved clarity
Cyan4973 Aug 19, 2022
d07e72b
fixed incorrect assert
Cyan4973 Dec 29, 2022
3248910
Merge pull request #3248 from facebook/opt_comments1
Cyan4973 Dec 29, 2022
df714dd
implement suggestions
daniellerozenblit Jan 3, 2023
87becc5
update regression results.csv
daniellerozenblit Jan 3, 2023
1c818e3
Merge pull request #3302 from daniellerozenblit/optimal-huff-depth-speed
daniellerozenblit Jan 3, 2023
5434de0
improve compression ratio of small alphabets
Cyan4973 Dec 21, 2022
ebba9ff
update regression results
Cyan4973 Jan 3, 2023
c79fb4d
update levels.sh test
Cyan4973 Dec 22, 2022
834fd07
Merge pull request #3391 from facebook/fix3228
Cyan4973 Jan 4, 2023
908e812
initial commit
daniellerozenblit Jan 4, 2023
d913417
Merge branch 'dev' into fuzz-max-block-size
daniellerozenblit Jan 4, 2023
71dbe8f
minor: fix conversion warnings
Cyan4973 Jan 5, 2023
8b13000
minor simplification refactoring for timefn
Cyan4973 Jan 6, 2023
6f17a5d
Bump actions/checkout from 3.2.0 to 3.3.0
dependabot[bot] Jan 9, 2023
59a536a
Bump actions/upload-artifact from 3.1.1 to 3.1.2
dependabot[bot] Jan 9, 2023
fe08137
resolve max block value in cctx and use when calculating the max bloc…
daniellerozenblit Jan 9, 2023
98ca8b4
Merge pull request #3414 from facebook/dependabot/github_actions/acti…
Cyan4973 Jan 9, 2023
3ac0b91
Fix fuzzing with ZSTD_MULTITHREAD
danlark1 Jan 10, 2023
ca2ff78
Make the producer use the same amount of entropy
danlark1 Jan 10, 2023
1fffcfe
update minimum threshold for max block size
daniellerozenblit Jan 11, 2023
4f7183d
Completely overhaul Windows CI (#3410)
embg Jan 11, 2023
53eb5a7
add simple test for maxBlockSize expected functionality
daniellerozenblit Jan 12, 2023
fd2eb8a
Merge pull request #3402 from facebook/dependabot/github_actions/ossf…
felixhandte Jan 12, 2023
06b096d
additional tests and documentation updates + allow maxBlockSize to be…
daniellerozenblit Jan 12, 2023
423500d
Merge pull request #3413 from facebook/timefn
Cyan4973 Jan 12, 2023
796699c
fix root cause of #3416
Cyan4973 Jan 11, 2023
ac45e07
add explanation about new test
Cyan4973 Jan 12, 2023
5b26619
Add support for in-place decompression
terrelln Jan 12, 2023
bcfb7ad
refactor timefn
Cyan4973 Jan 13, 2023
a2ef23d
restore support of clock_gettime() for POSIX systems
Cyan4973 Jan 13, 2023
d550908
Merge pull request #3419 from facebook/fix3416
Cyan4973 Jan 13, 2023
14b8def
move ZSTD_BLOCKSIZE_MAX_MIN to static linking only section
daniellerozenblit Jan 13, 2023
f10922a
Disable Custom ASAN/MSAN Poisoning on MinGW Builds
felixhandte Jan 13, 2023
d78fbed
Don't Even Declare Poisoning Functions if Poisoning is Disabled
felixhandte Jan 13, 2023
2086e73
missing #include for Windows
Cyan4973 Jan 13, 2023
5d8cfa6
Deprecate advanced streaming functions (#3408)
embg Jan 13, 2023
3add5ca
Bump github/codeql-action from 2.1.37 to 2.1.38 (#3428)
dependabot[bot] Jan 16, 2023
018b68f
fix msys2 symlink breakage in CI (#3429)
embg Jan 17, 2023
23a356c
Merge pull request #3424 from felixhandte/disable-asan-msan-poison-mingw
felixhandte Jan 17, 2023
8353a4b
fix maxBlockSize resolution + add test cases
daniellerozenblit Jan 17, 2023
2ad6855
`FIO_openSrcFile()` Returns File Stat
felixhandte Jan 17, 2023
5653f96
Pass `stat_t` into `*_dstFile()` Functions
felixhandte Jan 17, 2023
a5ed28f
Use Existing Src File Stat in `*_dstFile()` Funcs
felixhandte Jan 17, 2023
860548c
[tests] Fix version test determinism
terrelln Dec 21, 2022
0382076
Re-Use `stat_t` in `FIO_compressFilename_srcFile()`
felixhandte Jan 17, 2023
1e3eba6
Copy Permissions from Source File
felixhandte Jan 17, 2023
0d2d460
Mimic gzip chown(gid), chmod(), chown(uid) Behavior
felixhandte Jan 18, 2023
7a8c8f3
Easy: Print Mode as Octal in `chmod()` Trace
felixhandte Jan 18, 2023
bbe65d7
Merge pull request #3423 from facebook/ptime
Cyan4973 Jan 18, 2023
dc1c6cc
Merge pull request #3418 from daniellerozenblit/fuzz-max-block-size
daniellerozenblit Jan 19, 2023
bce0382
Bugfixes for the External Matchfinder API (#3433)
embg Jan 19, 2023
3f9f568
Fuzz the external matchfinder API
embg Jan 19, 2023
ea684c3
added c89 build test to CI
Cyan4973 Jan 18, 2023
cd272d7
added cygwin tests to github actions
Cyan4973 Jan 18, 2023
f593e54
Enable if == 1 rather than if == 0
embg Jan 20, 2023
64963dc
Merge pull request #3437 from embg/fuzz_emf
embg Jan 20, 2023
aa385ec
fix sequence validation and bounds check in ZSTD_copySequencesToSeqSt…
daniellerozenblit Jan 20, 2023
abf965c
Merge pull request #3415 from facebook/dependabot/github_actions/acti…
Cyan4973 Jan 20, 2023
666944f
Cap hashLog & chainLog to ensure that we only use 32 bits of hash
terrelln Jan 20, 2023
667eb6d
[versions-test] Work around bug in dictionary builder for older versions
terrelln Jan 19, 2023
6742f20
Merge pull request #3435 from facebook/c89build
Cyan4973 Jan 20, 2023
bb9b9bc
Merge pull request #3431 from facebook/cygwin
Cyan4973 Jan 20, 2023
0cc1b0c
Delete unused Huffman functions
terrelln Jan 18, 2023
3291691
Replace Huffman boolean args with flags bit set
terrelln Jan 19, 2023
87e169d
Add Additional Flags to PGO Build
felixhandte Jan 20, 2023
aab3dd4
Add PGO Build Jobs to CI
felixhandte Jan 20, 2023
b4467c1
Fix bufferless API with attached dictionary
terrelln Jan 20, 2023
772229a
Merge pull request #3442 from felixhandte/pgo-tests
felixhandte Jan 21, 2023
3d25502
Merge pull request #3432 from felixhandte/fix-perms
felixhandte Jan 21, 2023
d9280af
fixed minor c89 warning
Cyan4973 Jan 21, 2023
cee6bec
refactor : --rm is ignored with stdout
Cyan4973 Jan 21, 2023
b6fd91b
update man
Cyan4973 Jan 21, 2023
3663faa
Bump github/codeql-action from 2.1.38 to 2.1.39
dependabot[bot] Jan 23, 2023
638d502
modify sequence compression api fuzzer
daniellerozenblit Jan 23, 2023
1b65727
fix nits and add new error code for invalid external sequences
daniellerozenblit Jan 23, 2023
f75afb6
merge dev
daniellerozenblit Jan 23, 2023
6aee603
Merge pull request #3446 from facebook/dependabot/github_actions/gith…
embg Jan 23, 2023
815d1d4
update external sequence error to fit error naming scheme
daniellerozenblit Jan 23, 2023
dc2b3e8
Fix -Wstringop-overflow warning
terrelln Jan 20, 2023
ced0882
Merge pull request #3443 from facebook/no_rm_w_stdout
Cyan4973 Jan 23, 2023
3bfd3be
Fix ZSTD_estimate* and ZSTD_initCStream() docs
embg Jan 23, 2023
7fc00c1
calloc dictionary in sequence compression fuzzer rather than generati…
daniellerozenblit Jan 23, 2023
9116000
Merge pull request #3439 from daniellerozenblit/sequence-validation-b…
daniellerozenblit Jan 23, 2023
0a91b31
Merge branch 'dev' into fuzz-sequence-compression
daniellerozenblit Jan 23, 2023
41682e6
Merge pull request #3448 from facebook/embg-doc-fix
embg Jan 23, 2023
7d600c6
fix bound check for ZSTD_copySequencesToSeqStoreNoBlockDelim()
daniellerozenblit Jan 24, 2023
1d636b4
Bug fix redzones by unpoisoning only the intended buffer and not the …
yoniko Jan 24, 2023
2baac04
Merge pull request #3451 from yoniko/red-zones-bugfix
yoniko Jan 24, 2023
63042f1
fix 32bit build errors in zstd seekable
daniellerozenblit Jan 24, 2023
29a4c8c
Merge pull request #3452 from daniellerozenblit/fix-seekable-32bit
daniellerozenblit Jan 25, 2023
f3255bf
Merge pull request #3447 from daniellerozenblit/fuzz-sequence-compres…
daniellerozenblit Jan 25, 2023
db18a62
Provide more accurate error codes for busy-loop scenarios
Cyan4973 Jan 25, 2023
8957fef
[huf] Add generic C versions of the fast decoding loops
terrelln Jan 14, 2023
321490c
[version-test] Work around bugs in v0.7.3 dict builder
terrelln Jan 24, 2023
efc9ae3
Merge pull request #3455 from facebook/fix3454
Cyan4973 Jan 25, 2023
8c85b29
disable --rm on -o command
Cyan4973 Jan 24, 2023
02434e0
enforce a hard fail when input files are set to be erased
Cyan4973 Jan 26, 2023
a82e0aa
Merge pull request #3450 from facebook/no_rm_on_o
Cyan4973 Jan 26, 2023
6422d1d
Bugfix: `--[no-]row-match-finder` do the opposite of what they are su…
yoniko Jan 26, 2023
7b3f03b
Merge pull request #3457 from yoniko/fix-rowhash-cli
yoniko Jan 26, 2023
3c21522
modify cli-test logic : ignore stderr message by default
Cyan4973 Jan 26, 2023
82ca008
change logic when stderr is not console : don't update progress status
Cyan4973 Jan 26, 2023
bda947e
[huf] Fix bug in fast C decoders
terrelln Jan 26, 2023
88b7088
Merge pull request #3458 from facebook/stderr_finalStatus
Cyan4973 Jan 27, 2023
814f4bf
fix long offset resolution
daniellerozenblit Jan 27, 2023
d210628
initialize long offsets in decodecorpus
daniellerozenblit Jan 27, 2023
9e4c66b
record long offsets in ZSTD_symbolEncodingTypeStats_t + add test case
daniellerozenblit Jan 27, 2023
423a749
[fse] Delete unused functions
terrelln Jan 27, 2023
2bde9fb
Update lib/compress/zstd_compress.c
daniellerozenblit Jan 27, 2023
da589a1
update CI
daniellerozenblit Jan 27, 2023
5ec77ad
Merge branch 'fix-long-offsets-resolution-pointer' of github.com:dani…
daniellerozenblit Jan 27, 2023
b3b43f2
Fix invalid assert in 32-bit decoding
terrelln Jan 27, 2023
295724b
Update .github/workflows/dev-long-tests.yml
daniellerozenblit Jan 28, 2023
dd7fdc9
Bump github/codeql-action from 2.1.39 to 2.2.1
dependabot[bot] Jan 30, 2023
66fae56
remove big test around large offset with small window size
daniellerozenblit Jan 30, 2023
0843d9b
Merge branch 'fix-long-offsets-resolution-pointer' of github.com:dani…
daniellerozenblit Jan 30, 2023
0017663
Merge pull request #3460 from daniellerozenblit/fix-long-offsets-reso…
daniellerozenblit Jan 30, 2023
2f74507
Simplify 32-bit long offsets decoding logic
terrelln Jan 30, 2023
39ceef2
bump version number to v1.5.4
Cyan4973 Jan 31, 2023
71c911d
Merge pull request #3464 from facebook/dependabot/github_actions/gith…
Cyan4973 Jan 31, 2023
4794bbf
Merge pull request #3469 from facebook/updateVersion
Cyan4973 Jan 31, 2023
af09777
ensure that benchmark mode can only be invoked with zstd format
Cyan4973 Jan 31, 2023
64052ef
Guard against invalid sequences from external matchfinders (#3465)
embg Jan 31, 2023
ac0746a
Merge pull request #3470 from facebook/bench_zstd_only
Cyan4973 Feb 1, 2023
7f8189c
add ZSTD_c_fastExternalSequenceParsing cctxParam
embg Jan 31, 2023
cc3e3ac
Fix 32-bit decoding with large dictionary
terrelln Feb 2, 2023
c22c995
Merge pull request #3472 from terrelln/2023-02-01-fix-32-bit-decoding
Cyan4973 Feb 2, 2023
3fe5f1f
assert externalRepSearch != ZSTD_ps_auto
embg Feb 2, 2023
31e41b3
Merge pull request #3471 from embg/fast_seq_parse
embg Feb 2, 2023
71a0259
Fix ZSTD_getOffsetInfo() when nbSeq == 0
terrelln Feb 2, 2023
79bdb8c
AsyncIO performance regression for small files fix (#3474)
yoniko Feb 2, 2023
35835f4
Bump ilammy/msvc-dev-cmd from 1.12.0 to 1.12.1
dependabot[bot] Feb 6, 2023
54a173e
Merge pull request #3477 from facebook/dependabot/github_actions/ilam…
felixhandte Feb 6, 2023
9cabd15
return error code when benchmark fails
Cyan4973 Feb 7, 2023
58e7067
added more accurate error messages
Cyan4973 Feb 7, 2023
6740f8f
add error message for the (rare) compression error scenario
Cyan4973 Feb 7, 2023
df21ace
Merge pull request #3480 from facebook/benchFail
Cyan4973 Feb 7, 2023
e04706c
fix oss-fuzz case 55714
Cyan4973 Feb 7, 2023
cfec005
fix for v0.3 blindly ported to v0.2
Cyan4973 Feb 7, 2023
7eb4471
adapt v0.3 fix to v0.1
Cyan4973 Feb 7, 2023
b20e4e9
copy fix for v0.3 to v0.4
Cyan4973 Feb 7, 2023
7a1a171
port fix for v0.3 to v0.5
Cyan4973 Feb 7, 2023
67d7a65
port fix for v0.3 to v0.6
Cyan4973 Feb 7, 2023
9419747
fix legacy decoders v0.4, v0.5 and v0.6
Cyan4973 Feb 7, 2023
c5bf6b8
add requested check for legacy decoder v0.1
Cyan4973 Feb 7, 2023
c689310
rewrite legacy v0.7 bound checks to be independent of address space o…
Cyan4973 Feb 8, 2023
488f7c0
Merge pull request #3476 from facebook/fix55714
Cyan4973 Feb 8, 2023
83f8a05
Fix empty-block.zst golden decompression file
terrelln Feb 8, 2023
4de9d63
minor: fix missing newline character in help page
Cyan4973 Feb 8, 2023
67fb9d9
Merge branch 'dev' of github.com:facebook/zstd into dev
Cyan4973 Feb 8, 2023
4aa3bc4
updated CHANGELOG in preparation for v1.5.4 release
Cyan4973 Feb 9, 2023
ff42ed1
Rename "External Matchfinder" to "Block-Level Sequence Producer" (#3484)
embg Feb 9, 2023
95ffc76
updated man pages
Cyan4973 Feb 9, 2023
515266e
minor nit updates to README.md
Cyan4973 Feb 9, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 1 addition & 2 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,6 @@ jobs:
# preinstalled to reduce installation time.
docker:
- image: fbopensource/zstd-circleci-primary:0.0.1
# TODO: Re-enable aarch64 build:
# make aarch64build && make clean
steps:
- checkout
- run:
Expand Down Expand Up @@ -36,6 +34,7 @@ jobs:
make ppc64build V=1; make clean
make ppcbuild V=1; make clean
make armbuild V=1; make clean
make aarch64build V=1; make clean
make -C tests test-legacy test-longmatch; make clean
make -C lib libzstd-nomt; make clean
# This step should only be run in a cron job
Expand Down
2 changes: 1 addition & 1 deletion .circleci/images/primary/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM circleci/buildpack-deps:bionic
FROM circleci/buildpack-deps:focal

Check warning

Code scanning / Scorecard

Pinned-Dependencies

score is 5: containerImage not pinned by hash Remediation tip: pin your Docker image by updating circleci/buildpack-deps to circleci/buildpack-deps@sha256:f6f10c11b7b8ccfd4f4a5b830c3256803604ce61292b60cb22e26b12f62b0e8c Click Remediation section below for further remediation help

RUN sudo dpkg --add-architecture i386
RUN sudo apt-get -y -qq update
Expand Down
3 changes: 1 addition & 2 deletions .cirrus.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,8 @@ task:
name: FreeBSD (shortest)
freebsd_instance:
matrix:
image_family: freebsd-13-0
image_family: freebsd-12-2
# The stable 11.3 image causes "Agent is not responding" so use a snapshot
image_family: freebsd-11-3-snap
install_script: pkg install -y gmake coreutils
script: |
MOREFLAGS="-Werror" gmake -j all
Expand Down
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ If applicable, add screenshots and charts to help explain your problem.
**Desktop (please complete the following information):**
- OS: [e.g. Mac]
- Version [e.g. 22]
- Compiler [e.g gcc]
- Flags [e.g O2]
- Compiler [e.g. gcc]
- Flags [e.g. O2]
- Other relevant hardware specs [e.g. Dual-core]
- Build system [e.g. Makefile]

Expand Down
6 changes: 6 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
163 changes: 97 additions & 66 deletions .github/workflows/dev-long-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
make-all:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: make all
run: make all

Expand All @@ -24,57 +24,85 @@ jobs:
DEVNULLRIGHTS: 1
READFROMBLOCKDEVICE: 1
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: make test
run: make test

# lasts ~26mn
make-test-osx:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: OS-X test
run: make test # make -c lib all doesn't work because of the fact that it's not a tty

no-intrinsics-fuzztest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: no intrinsics fuzztest
run: MOREFLAGS="-DZSTD_NO_INTRINSICS" make -C tests fuzztest

tsan-zstreamtest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: thread sanitizer zstreamtest
run: CC=clang ZSTREAM_TESTTIME=-T3mn make tsan-test-zstream

ubsan-zstreamtest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: undefined behavior sanitizer zstreamtest
run: CC=clang make uasan-test-zstream

# lasts ~15mn
tsan-fuzztest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: thread sanitizer fuzztest
run: CC=clang make tsan-fuzztest


big-tests-zstreamtest32:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: zstream tests in 32bit mode, with big tests
run: |
sudo apt-get -qqq update
make libc6install
CC=clang make -C tests test-zstream32 FUZZER_FLAGS="--big-tests"

# lasts ~23mn
gcc-8-asan-ubsan-testzstd:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: gcc-8 + ASan + UBSan + Test Zstd
# See https://askubuntu.com/a/1428822
run: |
echo "deb [arch=amd64] http://archive.ubuntu.com/ubuntu focal main universe" | sudo tee -a /etc/apt/sources.list
sudo apt-get -qqq update
make gcc8install
CC=gcc-8 make -j uasan-test-zstd </dev/null V=1

clang-asan-ubsan-testzstd:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: clang + ASan + UBSan + Test Zstd
run: CC=clang make -j uasan-test-zstd </dev/null V=1

gcc-asan-ubsan-testzstd-32bit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: ASan + UBSan + Test Zstd, 32bit mode
run: |
sudo apt-get -qqq update
make libc6install
make -j uasan-test-zstd32 V=1

Expand All @@ -85,39 +113,67 @@ jobs:
gcc-8-asan-ubsan-fuzz:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: gcc-8 + ASan + UBSan + Fuzz Test
# See https://askubuntu.com/a/1428822
run: |
echo "deb [arch=amd64] http://archive.ubuntu.com/ubuntu focal main universe" | sudo tee -a /etc/apt/sources.list
sudo apt-get -qqq update
make gcc8install
CC=gcc-8 FUZZER_FLAGS="--long-tests" make clean uasan-fuzztest

clang-asan-ubsan-fuzz:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: clang + ASan + UBSan + Fuzz Test
run: CC=clang FUZZER_FLAGS="--long-tests" make clean uasan-fuzztest

gcc-asan-ubsan-fuzz32:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: ASan + UBSan + Fuzz Test 32bit
run: |
sudo apt-get -qqq update
make libc6install
CFLAGS="-O3 -m32" FUZZER_FLAGS="--long-tests" make uasan-fuzztest

clang-asan-ubsan-fuzz32:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: clang + ASan + UBSan + Fuzz Test 32bit
run: |
sudo apt-get -qqq update
make libc6install
CC=clang CFLAGS="-O3 -m32" FUZZER_FLAGS="--long-tests" make uasan-fuzztest

asan-ubsan-regression:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: ASan + UBSan + Regression Test
run: make -j uasanregressiontest

clang-ubsan-regression:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: clang + ASan + UBSan + Regression Test
run: CC=clang make -j uasanregressiontest

msan-regression:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: MSan + Regression Test
run: make -j msanregressiontest

clang-msan-fuzz:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: clang + MSan + Fuzz Test
run: |
sudo apt-get -qqq update
Expand All @@ -128,7 +184,7 @@ jobs:
clang-msan-testzstd:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: clang + MSan + Test Zstd
run: |
sudo apt-get update
Expand All @@ -138,7 +194,7 @@ jobs:
armfuzz:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: Qemu ARM emulation + Fuzz Test
run: |
sudo apt-get -qqq update
Expand All @@ -148,67 +204,42 @@ jobs:
valgrind-fuzz-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- name: valgrind + fuzz test stack mode # ~ 7mn
shell: 'script -q -e -c "bash {0}"'
run: |
sudo apt-get -qqq update
make valgrindinstall
make -C tests valgrindTest
make -C tests test-valgrind
make clean
make -C tests test-fuzzer-stackmode

mingw-long-test:
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
include: [
{ compiler: clang, platform: x64, action: build, script: "MOREFLAGS='--target=x86_64-w64-mingw32 -Werror -Wconversion -Wno-sign-conversion -Wno-unused-command-line-argument -Wno-implicit-int-float-conversion' make -j allzstd V=1"},
{ compiler: gcc, platform: x64, action: test, script: ""},
]
defaults:
run:
shell: msys2 {0}
steps:
- uses: actions/checkout@v2
- name: Mingw long test
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # tag=v3
- uses: msys2/setup-msys2@v2

Check warning

Code scanning / Scorecard

Pinned-Dependencies

score is 5: third-party GitHubAction not pinned by hash Remediation tip: update your workflow using [https://app.stepsecurity.io](https://app.stepsecurity.io/secureworkflow/facebook/zstd/dev-long-tests.yml/dev?enable=pin) Click Remediation section below for further remediation help
with:
msystem: MINGW64
install: make
update: true
# Based on https://ariya.io/2020/07/on-github-actions-with-msys2
- name: install mingw gcc
run: pacman --noconfirm -S gcc
- name: MINGW64 gcc fuzztest
run: |
$env:PATH_ORIGINAL = $env:PATH
$env:PATH_MINGW32 = "C:\msys64\mingw32\bin"
$env:PATH_MINGW64 = "C:\msys64\mingw64\bin"
COPY C:\msys64\usr\bin\make.exe C:\msys64\mingw32\bin\make.exe
COPY C:\msys64\usr\bin\make.exe C:\msys64\mingw64\bin\make.exe
IF ("${{matrix.platform}}" -eq "x64")
{
$env:PATH = $env:PATH_MINGW64 + ";" + $env:PATH_ORIGINAL
}
ELSEIF ("${{matrix.platform}}" -eq "x86")
{
$env:PATH = $env:PATH_MINGW32 + ";" + $env:PATH_ORIGINAL
}
IF ("${{matrix.action}}" -eq "build")
{
make -v
sh -c "${{matrix.compiler}} -v"
ECHO "Building zlib to static link"
$env:CC = "${{matrix.compiler}}"
sh -c "cd .. && git clone --depth 1 --branch v1.2.11 https://github.com/madler/zlib"
sh -c "cd ../zlib && make -f win32/Makefile.gcc libz.a"
ECHO "Building zstd"
$env:CPPFLAGS = "-I../../zlib"
$env:LDFLAGS = "../../zlib/libz.a"
sh -c "${{matrix.script}}"
}
ELSEIF ("${{matrix.action}}" -eq "test")
{
ECHO "Testing ${{matrix.compiler}} ${{matrix.platform}}"
$env:CC = "gcc"
$env:CXX = "g++"
MKDIR build\cmake\build
CD build\cmake\build
$env:FUZZERTEST = "-T2mn"
$env:ZSTREAM_TESTTIME = "-T2mn"
cmake -G "Visual Studio 14 2015 Win64" ..
cd ..\..\..
make clean
}
export CC="gcc"
export CXX="g++"
export FUZZERTEST="-T2mn"
export ZSTREAM_TESTTIME="-T2mn"
echo "Testing $CC $CXX MINGW64"
make -v
$CC --version
$CXX --version
make -C tests fuzztest

# lasts ~20mn
oss-fuzz:
Expand All @@ -233,7 +264,7 @@ jobs:
dry-run: false
sanitizer: ${{ matrix.sanitizer }}
- name: Upload Crash
uses: actions/upload-artifact@v1
uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # tag=v3.1.2
if: failure() && steps.build.outcome == 'success'
with:
name: ${{ matrix.sanitizer }}-artifacts
Expand Down
Loading