]>
git.ipfire.org Git - thirdparty/zstd.git/log
Yann Collet [Sun, 23 Mar 2025 06:52:45 +0000 (23:52 -0700)]
[doc] minor clarification for maximum block size
closes #4339
Yann Collet [Fri, 21 Mar 2025 02:49:08 +0000 (19:49 -0700)]
Merge pull request #4341 from clan/pragma
lib/zstd.h: don't put pragma after static
Z. Liu [Thu, 20 Mar 2025 03:28:37 +0000 (03:28 +0000)]
lib/zstd.h: move pragma before static
otherwise will cause dev-python/zstandard build failed when compiling with
clang as reported at https://bugs.gentoo.org/950259
the root cause is pycparser, which is unfixed since reported 2.5 years
ago, :(
Signed-off-by: Z. Liu <zhixu.liu@gmail.com>
Yann Collet [Wed, 12 Mar 2025 17:31:54 +0000 (10:31 -0700)]
Merge pull request #4336 from Cyan4973/qsort_v2
fix #4312 - musl compilation compatibility
Yann Collet [Wed, 12 Mar 2025 16:55:14 +0000 (09:55 -0700)]
removed OpenBSD specificity
Yann Collet [Tue, 11 Mar 2025 21:10:11 +0000 (14:10 -0700)]
updated documentation
Yann Collet [Tue, 11 Mar 2025 20:30:25 +0000 (13:30 -0700)]
add support for C11 Annex K qsort_s()
standard defined re-entrant variant of qsort().
Unfortunately, Annex K is optional.
Yann Collet [Tue, 11 Mar 2025 18:58:16 +0000 (11:58 -0700)]
re-design qsort() selection in cover
centralizes auto detection tests,
then distribute the outcome in all the places where it's active.
Yann Collet [Tue, 11 Mar 2025 08:57:24 +0000 (01:57 -0700)]
fix #4312
and upgraded the test so that it would fail, both at compile time and at run time, without the fix
Yann Collet [Tue, 11 Mar 2025 08:14:39 +0000 (01:14 -0700)]
attempt to reduce length of long cli tests by invoking -T0
Nick Terrell [Tue, 11 Mar 2025 18:53:20 +0000 (11:53 -0700)]
[linux] Opt out of row based match finder for the kernel
The row based match finder is slower without SIMD. We used to detect the
presence of SIMD to set the lower bound to 17, but that breaks
determinism. Instead, specifically opt into it for the kernel, because
it is one of the rare cases that doesn't have SIMD support.
Yann Collet [Tue, 11 Mar 2025 18:51:15 +0000 (11:51 -0700)]
Merge pull request #4335 from Cyan4973/dec_mt_warning
warn when requesting decompression with multiple threads
Yann Collet [Tue, 11 Mar 2025 07:17:45 +0000 (00:17 -0700)]
fix minor unused variable warning
Yann Collet [Tue, 11 Mar 2025 05:46:33 +0000 (22:46 -0700)]
warn when requesting decompression with multiple threads
restore #2918 fix
Yann Collet [Tue, 11 Mar 2025 05:12:24 +0000 (21:12 -0800)]
Merge pull request #4334 from Cyan4973/fix4332
fix #4332: setting ZSTD_NBTHREADS=0 via environment variable
Yann Collet [Tue, 11 Mar 2025 02:11:44 +0000 (19:11 -0700)]
fixed ShellCheck warning
Yann Collet [Mon, 10 Mar 2025 20:55:45 +0000 (13:55 -0700)]
fix FreeBSD
use an alias instead of a function
also: added more traces and updated version nb to v1.5.8
Yann Collet [Mon, 10 Mar 2025 20:40:47 +0000 (13:40 -0700)]
add test
checks that ZSTD_NBTHREADS triggers the expected verbose message
Also: checked that the new test script fails on current `dev` branch, and is fixed by this branch
Yann Collet [Mon, 10 Mar 2025 16:54:06 +0000 (09:54 -0700)]
removed useless assert()
Yann Collet [Mon, 10 Mar 2025 07:12:34 +0000 (00:12 -0700)]
fix #4332: setting ZSTD_NBTHREADS=0 via environment variables
Nick Terrell [Thu, 6 Mar 2025 19:14:38 +0000 (14:14 -0500)]
[test] Add tests for determinism
Run compression & validate the compressed file matches a known checksum.
To update the output run:
```
make -C tests update-cli-tests
```
Nick Terrell [Thu, 6 Mar 2025 22:31:57 +0000 (17:31 -0500)]
Add a method for checking if ZSTD was compiled with flags that impact determinism
Yann Collet [Wed, 5 Mar 2025 15:46:04 +0000 (07:46 -0800)]
Merge pull request #4329 from Cyan4973/cmd_split
New commands --split and --jobsize
Nick Terrell [Tue, 4 Mar 2025 20:54:49 +0000 (15:54 -0500)]
[zstd] Remove global variables in dictBuilder
D50949782 fixed a race condition updating `g_displayLevel` by disabling display.
Instead of disabling display, delete the global variable and always "capture" a local `displayLevel` variable.
This also fixes `DISPLAYUPDATE()` by requiring the user to pass in the last update time as the first parameter.
Nick Terrell [Tue, 4 Mar 2025 19:55:39 +0000 (14:55 -0500)]
[zstd] Backport
D49756856
Yann Collet [Wed, 5 Mar 2025 00:08:01 +0000 (16:08 -0800)]
Merge pull request #4327 from Cyan4973/win_artifacts
Generate Zstandard binaries for Windows with lz4 support
Yann Collet [Tue, 4 Mar 2025 23:24:43 +0000 (15:24 -0800)]
added a cli test for new command --jobsize
Yann Collet [Tue, 4 Mar 2025 23:12:35 +0000 (15:12 -0800)]
fix typo
Yann Collet [Tue, 4 Mar 2025 22:55:25 +0000 (14:55 -0800)]
update fileio to employ jobSize
Yann Collet [Tue, 4 Mar 2025 22:43:06 +0000 (14:43 -0800)]
update cli-tests
Yann Collet [Tue, 4 Mar 2025 21:22:01 +0000 (13:22 -0800)]
updated playTests.sh to employ the new commands
Yann Collet [Tue, 4 Mar 2025 21:17:10 +0000 (13:17 -0800)]
changed -B# command into --jobsize
to reduce confusion with the term "block".
-B# remains supported for existing scripts,
but it's no longer documented, so it's effectively a hidden shortcut.
Yann Collet [Tue, 4 Mar 2025 21:04:59 +0000 (13:04 -0800)]
convert benchmark unit to use the new naming scheme
chunks instead of blocks
Yann Collet [Tue, 4 Mar 2025 20:51:39 +0000 (12:51 -0800)]
changed command --blocksize into --split
to reduce confusion with the concept of "blocks" inside a Zstandard frame.
We are now talking about "independent chunks" being produced by a `split` operation.
updated documentation accordingly.
Note: old commands "-B#` and `--blocksize=#` remain supported,
to maintain compatibility with existing scripts.
Yann Collet [Mon, 3 Mar 2025 23:54:29 +0000 (15:54 -0800)]
attempt to no longer depend on system library presence for autodetection
use explicit opt-in and path setting
Yann Collet [Mon, 3 Mar 2025 22:27:43 +0000 (14:27 -0800)]
update zstd build recipe to also support lz4 format
Yann Collet [Mon, 3 Mar 2025 18:39:50 +0000 (10:39 -0800)]
Merge pull request #4324 from facebook/dependabot/github_actions/actions/checkout-4
Bump actions/checkout from 3 to 4
Yann Collet [Mon, 3 Mar 2025 07:11:35 +0000 (23:11 -0800)]
Update windows-artifacts.yml
edit version comment
Yann Collet [Mon, 3 Mar 2025 07:11:08 +0000 (23:11 -0800)]
Update scorecards.yml
edit version comment
Yann Collet [Mon, 3 Mar 2025 07:10:09 +0000 (23:10 -0800)]
Update publish-release-artifacts.yml
fix version comment
dependabot[bot] [Mon, 3 Mar 2025 05:44:17 +0000 (05:44 +0000)]
Bump actions/checkout from 3 to 4
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Sergey Senozhatsky [Mon, 2 Sep 2024 10:55:49 +0000 (19:55 +0900)]
lib: zstd: export API needed for dictionary support
Patch series "zram: introduce custom comp backends API", v7.
This series introduces support for run-time compression algorithms tuning,
so users, for instance, can adjust compression/acceleration levels and
provide pre-trained compression/decompression dictionaries which certain
algorithms support.
At this point we stop supporting (old/deprecated) comp API. We may add
new acomp API support in the future, but before that zram needs to undergo
some major rework (we are not ready for async compression).
Some benchmarks for reference (look at column #2)
*** init zstd
/sys/block/zram0/mm_stat
1750659072 504622188 514355200 0
514355200 1 0 34204 34204
*** init zstd dict=/home/ss/zstd-dict-amd64
/sys/block/zram0/mm_stat
1750650880 465908890 475398144 0
475398144 1 0 34185 34185
*** init zstd level=8 dict=/home/ss/zstd-dict-amd64
/sys/block/zram0/mm_stat
1750654976 430803319 439873536 0
439873536 1 0 34185 34185
*** init lz4
/sys/block/zram0/mm_stat
1750646784 664266564 677060608 0
677060608 1 0 34288 34288
*** init lz4 dict=/home/ss/lz4-dict-amd64
/sys/block/zram0/mm_stat
1750650880 619990300 632102912 0
632102912 1 0 34278 34278
*** init lz4hc
/sys/block/zram0/mm_stat
1750630400 609023822 621232128 0
621232128 1 0 34288 34288
*** init lz4hc dict=/home/ss/lz4-dict-amd64
/sys/block/zram0/mm_stat
1750659072 505133172 515231744 0
515231744 1 0 34278 34278
Recompress
init zram zstd (prio=0), zstd level=5 (prio 1), zstd with dict (prio 2)
*** zstd
/sys/block/zram0/mm_stat
1750982656 504630584 514269184 0
514269184 1 0 34204 34204
*** idle recompress priority=1 (zstd level=5)
/sys/block/zram0/mm_stat
1750982656 488645601 525438976 0
514269184 1 0 34204 34204
*** idle recompress priority=2 (zstd dict)
/sys/block/zram0/mm_stat
1750982656 460869640 517914624 0
514269184 1 0 34185 34204
This patch (of 24):
We need to export a number of API functions that enable advanced zstd
usage - C/D dictionaries, dictionaries sharing between contexts, etc.
Link: https://lkml.kernel.org/r/20240902105656.1383858-1-senozhatsky@chromium.org
Link: https://lkml.kernel.org/r/20240902105656.1383858-2-senozhatsky@chromium.org
Signed-off-by: Sergey Senozhatsky <senozhatsky@chromium.org>
Cc: Nick Terrell <terrelln@fb.com>
Cc: Minchan Kim <minchan@kernel.org>
Cc: Sergey Senozhatsky <senozhatsky@chromium.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Yann Collet [Fri, 28 Feb 2025 20:35:06 +0000 (12:35 -0800)]
Merge pull request #4321 from Cyan4973/win_artifacts
Automate Windows Artifact generation and publication
Yann Collet [Fri, 28 Feb 2025 20:04:06 +0000 (12:04 -0800)]
automatically upload windows artifact on Release Tag creation
Yann Collet [Fri, 28 Feb 2025 17:42:50 +0000 (09:42 -0800)]
test win artifact generation on pushing to release
this will get a chance to check that win artifact generation works correctly
before creating the release tag.
Yann Collet [Fri, 28 Feb 2025 17:33:22 +0000 (09:33 -0800)]
avoid double zipping
Yann Collet [Fri, 28 Feb 2025 00:59:40 +0000 (16:59 -0800)]
proper usage of standard variables
Yann Collet [Thu, 27 Feb 2025 22:33:49 +0000 (14:33 -0800)]
fixed the script so that it fails when a copy fails
and also: fix the list of files, as `zdict.h` was incorrectly set.
Yann Collet [Thu, 27 Feb 2025 20:43:11 +0000 (12:43 -0800)]
update build_package.bat by using a subrouting
Yann Collet [Thu, 27 Feb 2025 19:38:04 +0000 (11:38 -0800)]
updated zlib version to more recent v1.3.1
Yann Collet [Thu, 27 Feb 2025 19:36:25 +0000 (11:36 -0800)]
ensure that a copy error results in the task failing clearly
error code != 0, red status
checked by intentionally inserting an error in another run
Yann Collet [Fri, 28 Feb 2025 00:17:34 +0000 (16:17 -0800)]
Merge pull request #4322 from Cyan4973/meson_win
fix the meson windows build
Yann Collet [Thu, 27 Feb 2025 23:44:40 +0000 (15:44 -0800)]
try to fix the meson windows build
apparently could be just a missing include
Yann Collet [Thu, 27 Feb 2025 22:27:21 +0000 (14:27 -0800)]
Merge pull request #4312 from Cyan4973/musl_ci
introduce ZSTD_USE_C90_QSORT
Yann Collet [Thu, 27 Feb 2025 21:03:03 +0000 (13:03 -0800)]
Merge pull request #4317 from hirohira9119/fix-function-signature
Fix function signature mismatch for ZSTD_convertBlockSequences
Yann Collet [Wed, 26 Feb 2025 23:15:03 +0000 (15:15 -0800)]
Merge pull request #4320 from sebres/patch-1
build_package.bat: fix path to zstd_errors.h, avoid silently ignore of the errors if build failed
Yann Collet [Wed, 26 Feb 2025 23:14:52 +0000 (15:14 -0800)]
Merge pull request #4319 from Cyan4973/Wconversion
step towards -Wconversion
Yann Collet [Wed, 26 Feb 2025 22:30:29 +0000 (14:30 -0800)]
fixed minor C++ compat warnings
Sergey G. Brester [Wed, 26 Feb 2025 19:13:44 +0000 (20:13 +0100)]
GHA/windows-artifacts.yml: don't ignore the error if build-package batch failed
Sergey G. Brester [Wed, 26 Feb 2025 19:02:48 +0000 (20:02 +0100)]
build_package.bat: don't swallow the error(s) by copy, exit with error if failed somewhere
Sergey G. Brester [Wed, 26 Feb 2025 18:27:44 +0000 (19:27 +0100)]
build_package.bat: fix path to zstd_errors.h (it is in lib not in lib/common)
closes gh-4318
Yann Collet [Wed, 26 Feb 2025 18:01:05 +0000 (10:01 -0800)]
fixed -Wconversion for lib/decompress/zstd_decompress_block.c
Yann Collet [Wed, 26 Feb 2025 16:33:01 +0000 (08:33 -0800)]
fixed -Wconversion for cover.c
Yann Collet [Wed, 26 Feb 2025 16:12:11 +0000 (08:12 -0800)]
fixed -Wconversion for divsufsort.c
Yann Collet [Wed, 26 Feb 2025 16:07:51 +0000 (08:07 -0800)]
fixed -Wconversion for zdict
Yann Collet [Wed, 26 Feb 2025 15:41:34 +0000 (07:41 -0800)]
fix conversion warning
hirohira [Tue, 25 Feb 2025 23:23:48 +0000 (08:23 +0900)]
Fix function signature mismatch for ZSTD_convertBlockSequences
Yann Collet [Tue, 25 Feb 2025 18:04:10 +0000 (10:04 -0800)]
Merge pull request #4310 from Cyan4973/cmake_target_compile
[cmake] use target_compile_definitions
Yann Collet [Mon, 24 Feb 2025 23:17:11 +0000 (15:17 -0800)]
Merge pull request #4309 from Cyan4973/check_manual
Check API manual and man pages before release
Yann Collet [Mon, 24 Feb 2025 09:53:48 +0000 (01:53 -0800)]
Merge pull request #4315 from facebook/dependabot/github_actions/msys2/setup-msys2-2.27.0
Bump msys2/setup-msys2 from 2.26.0 to 2.27.0
dependabot[bot] [Mon, 24 Feb 2025 05:44:08 +0000 (05:44 +0000)]
Bump msys2/setup-msys2 from 2.26.0 to 2.27.0
Bumps [msys2/setup-msys2](https://github.com/msys2/setup-msys2) from 2.26.0 to 2.27.0.
- [Release notes](https://github.com/msys2/setup-msys2/releases)
- [Changelog](https://github.com/msys2/setup-msys2/blob/main/CHANGELOG.md)
- [Commits](https://github.com/msys2/setup-msys2/compare/
d44ca8e88d8b43d56cf5670f91747359d5537f97 ...
61f9e5e925871ba6c9e3e8da24ede83ea27fa91f )
---
updated-dependencies:
- dependency-name: msys2/setup-msys2
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Yann Collet [Fri, 21 Feb 2025 20:48:26 +0000 (12:48 -0800)]
document ZSTD_USE_C90_QSORT
Yann Collet [Fri, 21 Feb 2025 19:36:30 +0000 (11:36 -0800)]
introduce ZSTD_USE_C90_QSORT
Yann Collet [Fri, 21 Feb 2025 17:57:55 +0000 (09:57 -0800)]
added musl compilation test in CI
Yann Collet [Thu, 20 Feb 2025 23:21:48 +0000 (15:21 -0800)]
[cmake] use target_compile_definitions
which is considered best practice.
Yann Collet [Thu, 20 Feb 2025 21:14:11 +0000 (13:14 -0800)]
check man page update
Yann Collet [Thu, 20 Feb 2025 19:46:14 +0000 (11:46 -0800)]
add CI check for zstd_manual before release
ensures it's properly updated
Yann Collet [Thu, 20 Feb 2025 00:56:55 +0000 (16:56 -0800)]
Merge pull request #4302 from facebook/man157
updated man pages and manual
Yann Collet [Thu, 20 Feb 2025 00:25:00 +0000 (16:25 -0800)]
updated man pages and manual
fixes #4301
Yann Collet [Wed, 19 Feb 2025 06:18:57 +0000 (22:18 -0800)]
Merge pull request #4300 from facebook/bench_157
updated benchmark numbers for v1.5.7
Yann Collet [Wed, 19 Feb 2025 05:22:02 +0000 (21:22 -0800)]
updated benchmark numbers
using latest version of @inikep's lzbench
Yann Collet [Wed, 19 Feb 2025 00:19:18 +0000 (16:19 -0800)]
faster clang-msan-testzstd
this is by far our longest CI test.
Attempt to make it run a bit faster.
Yann Collet [Tue, 18 Feb 2025 23:26:29 +0000 (15:26 -0800)]
Merge pull request #4299 from facebook/ga_harden
Improved Github Actions scorecards
Yann Collet [Tue, 18 Feb 2025 22:53:31 +0000 (14:53 -0800)]
pinned dependency hash
Yann Collet [Tue, 18 Feb 2025 22:50:03 +0000 (14:50 -0800)]
harden github actions script Android NDK Build
Yann Collet [Tue, 18 Feb 2025 22:35:24 +0000 (14:35 -0800)]
Merge pull request #4297 from facebook/changelog157
update changelog for v1.5.7
Yann Collet [Tue, 18 Feb 2025 21:42:54 +0000 (13:42 -0800)]
update changelog for v1.5.7
Yann Collet [Fri, 14 Feb 2025 04:21:35 +0000 (20:21 -0800)]
Merge pull request #4274 from luau-project/intel-compilers
CI: enable Intel LLVM C compiler (icx) check
Yann Collet [Fri, 14 Feb 2025 04:21:10 +0000 (20:21 -0800)]
Merge pull request #4293 from facebook/rip-ubuntu20
Fixed CI
Yann Collet [Tue, 11 Feb 2025 21:20:15 +0000 (13:20 -0800)]
disabled BTI test
this test seems impossible on Ubuntu-24
Yann Collet [Tue, 11 Feb 2025 21:11:29 +0000 (13:11 -0800)]
faster aarch64 test execution
Yann Collet [Tue, 11 Feb 2025 20:58:35 +0000 (12:58 -0800)]
minor arm64 test script clarification
Yann Collet [Tue, 11 Feb 2025 20:52:59 +0000 (12:52 -0800)]
updated FreeBSD VM to 14.2
14.1 seems no longer supported by gcloud
Yann Collet [Tue, 11 Feb 2025 19:43:23 +0000 (11:43 -0800)]
update arm64 test
for ubuntu-24
Yann Collet [Tue, 11 Feb 2025 19:37:18 +0000 (11:37 -0800)]
removing x32 tests
this ABI is no longer supported by Ubuntu,
and there is a wider consensus that this ABI is on the way out,
with more and more distributions dropping it,
and lingering questions about support of x32 in the kernel.
Yann Collet [Tue, 11 Feb 2025 17:57:18 +0000 (09:57 -0800)]
move qemu tests to ubuntu24
Yann Collet [Tue, 11 Feb 2025 17:19:08 +0000 (09:19 -0800)]
ubuntu 20 is being deprecated
change ubuntu20 tests to use more modern ubuntu variants
Yann Collet [Mon, 10 Feb 2025 20:09:16 +0000 (12:09 -0800)]
Merge pull request #4288 from facebook/stronger_patchfrom
Improve compression ratio of the --patch-from mode
Yann Collet [Mon, 10 Feb 2025 18:48:56 +0000 (10:48 -0800)]
update hrlog comment
Yann Collet [Sun, 9 Feb 2025 19:11:49 +0000 (11:11 -0800)]
derive hashratelog from hashlog when only hashlog is set