Commit Graph
602 Commits
Author SHA1 Message Date
Sylvestre Ledru e006771dd0 util: factor the shared setup of the check-*.sh scripts into check-common.sh 2026-08-25 15:38:42 +02:00
Sylvestre Ledru 62d40de5ab chmod: use the libc fchmodat symbol for recursive mode changes
The raw syscall(SYS_fchmodat2, ...) in DirFd::chmod_at bypassed LD_PRELOAD
tools (fakeroot, fakechroot, pseudo), so a recursive mode change landed on
disk but their bookkeeping never saw it, silently and with exit status 0.
Try libc fchmodat() first and keep the raw syscall as a fallback for the
NoFollow case libc declines; glibc issues fchmodat2 from there anyway.

Add util/check-libc-interposition.sh, which runs chown -R and chmod -R
under fakeroot and compares what fakeroot reports afterwards.

Fixes #14028
2026-08-25 15:38:42 +02:00
oech3 9243b08b54 GnuTests: remove LD_PRELOAD from dd/fail-ftruncate-fstat 2026-08-21 07:17:27 +02:00
Sylvestre Ledru c183f06368 gnu/usage_vs_refs.sh checks that all options appear in GNU's texi docs.
we have some extra options + we don't need this test
2026-08-18 10:04:40 +02:00
Sylvestre Ledru 9e60788270 add misc/getopt_vs_usage.sh to the GNU unfixable tests 2026-08-17 09:42:06 +01:00
Sylvestre Ledru 02ea3864c1 Add empty-backup-suffix.sh to backport list
probably related to 
https://github.com/uutils/coreutils/pull/13966
2026-08-17 07:48:47 +02:00
Sylvestre Ledru b7a7b4085b gnu: backport the uname -A test 2026-08-15 08:20:12 +01:00
9516e99459 gnu: list the tests excluded from the pass/fail percentages (#13891)
* gnu: list the tests excluded from the pass/fail percentages

* Update util/gnu-unfixable-tests.txt

Co-authored-by: oech3 <79379754+oech3@users.noreply.github.com>

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: oech3 <79379754+oech3@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-08-14 16:34:09 +02:00
oech3 5f92c20a0b fetch-gnu.sh: remove incorrect exit 0 2026-08-11 08:34:42 +02:00
Aaron Ang c85fe286f7 mv: revert error message to GNU default when overwriting non-empty directory 2026-08-09 19:16:44 +02:00
oech3 c98a5dcfad fetch-gnu.sh: remove unnecessary 2 spaces (#13792) 2026-08-07 13:20:32 +02:00
Sylvestre Ledru 4c84e64f2d publish.sh: adjust to the new API 2026-08-06 10:13:37 +02:00
Sylvestre Ledru e05f379eb4 prepare release 0.10.0 2026-08-03 09:36:01 +02:00
oech3 bac4f0e359 GnuTests: backport cat/splice.sh 2026-07-25 16:30:04 +02:00
Sylvestre Ledru 10f5eef691 util: replace IOError alias with OSError 2026-07-25 13:50:16 +02:00
Sylvestre Ledru 49b696a9f2 util: drop empty string argument to print 2026-07-25 13:50:16 +02:00
Sylvestre Ledru 40aa01fedd util: use f-strings instead of percent formatting 2026-07-25 13:50:16 +02:00
Sylvestre Ledru a903cfd760 docs,util: use specific exception types instead of bare Exception 2026-07-25 13:50:16 +02:00
Sylvestre Ledru 470b8ab4be util: apply ruff format to compare_test_results.py 2026-07-25 13:50:16 +02:00
Sylvestre Ledru 896b8555e5 util,docs: sort Python imports (ruff I001) 2026-07-25 13:50:16 +02:00
Sylvestre Ledru a5a863eb0b util: fix Python style issues flagged by ruff
- compare_gnu_result.py: use context managers for open(), use next(iter()) instead of [0] slice
- compare_size_results.py: raise TypeError instead of ValueError for invalid type (TRY004)
- compare_test_results.py: flatten nested if statements (SIM102), use writelines (FURB122)
- analyze-gnu-results.py: use .values() when dict values are the only thing used (PERF102)
2026-07-24 22:03:19 +02:00
Alex Chen 20bad753ad fix(ci): keep coverage ACL with bounded %4m profraw pool
Default ACL still keeps umask(0777) profiles owner-writable, but restore
LLVM's online-merge pool (%4m) instead of one file per process.

Signed-off-by: Alex Chen <l46983284@gmail.com>
2026-07-23 00:00:06 +02:00
Alex Chen a92e1b4429 fix(ci): keep coverage profraw writable under umask 0777 tests
Some uutests set umask(0777) before spawning the utility. LLVM profile
files created under that umask can be mode 000; later writes fail with
Permission denied on stderr and break exact asserts (e.g. mkfifo).

Prepare the profraw directory with a default owner-write ACL when
setfacl is available (hard-fail under CI), use coverage-%p-%m.profraw,
and install acl on the coverage Ubuntu job.

Signed-off-by: Alex Chen <l46983284@gmail.com>
2026-07-23 00:00:06 +02:00
Sylvestre Ledru 4430794550 mv: regression test + strace check for cross-device O_NOFOLLOW (#10015) (#12468)
* mv: regression test + strace check for cross-device O_NOFOLLOW (#10015)

* spell-checker: add ELOOP to jargon wordlist
2026-07-05 12:52:35 +02:00
Sylvestre Ledru 54188d9927 util: re-point GNU test harness at current checkout in run-gnu-test.sh (#13163) 2026-07-05 12:52:11 +02:00