| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before Bash 4, the `command` builtin did not work properly in AND-OR
lists when set -e was active, leading to
set -e
command nonesuch || echo none
failing without echoing. Work around it by runing `command nproc` in a
subshell.
Link: https://stackoverflow.com/q/68143965
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
unbuffer is part of expect, which is not actively maintained. This
recently led to a CI failure on NetBSD which looked like
can't find package Expect
while executing
"package require Expect"
(file "/usr/pkg/bin/unbuffer" line 6)
Rather than debug this, I just reimplemented unbuffer myself. This also
reduces our test dependencies, which is nice.
Link: https://sourceforge.net/p/expect/bugs/107/
Link: https://github.com/tavianator/bfs/actions/runs/14421150823/job/40444068385
|
| |
|
| |
|
| |
|
|
|
|
| |
Fixes: 3678c2e ("bench/ioq: New ioq microbenchmark")
|
|
|
|
| |
Fixes: 9c911d7 ("ctx: Track the token kind of each argument")
|
|
|
|
| |
This matches the behaviour of GNU find.
|
| |
|
|
|
|
|
|
|
|
| |
GNU find intentionally makes later -files0-from options override earlier
ones, for symmetry with similar features like du --files0-from. Change
bfs to match.
Link: https://savannah.gnu.org/bugs/?66965
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
The thread-local scratch variables make it non-reentrant for no good
reason. I don't consider the theoretical strict-aliasing violation to
be practically relevant.
This partially reverts commit 90791fc ("list: Make SLIST_REMOVE() more
type-safe").
|
| |
|
| |
|
|
|
|
| |
Notes:
Fixes: a36774b ("bfstd: Take sched_getaffinity() into account in nproc()")
|
|
|
|
| |
Notes:
Fixes: 881d590 ("xtime: Add a wrapper for timer_create()/setitimer()")
|
|
|
|
| |
Just check our wrapper's error detection, like we do for xmktime().
|
|
|
|
| |
Notes:
Fixes: 1aefb83 ("tests/units: Run each test in a separate process")
|
|
|
|
|
| |
Rather than hiding them with %.0s, use a ternary to replace them with an
empty string if they would be unused.
|
|
|
|
|
|
|
|
| |
Just add the standard prefix to the passed format string in the
diagnostic macros themselves. This lets us write the whole message with
one dprintf() call, minimizing interleaving.
It's also a net win for binary size.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Compilers apparently aren't smart enough to infer that the odd tail
length fixup "loops" run at most once, and could be converted to ifs, so
do that manually.
|
|
|
|
| |
Notes:
Fixes: dd5df1f ("eval: Don't error out in -ls if the time overflows")
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Otherwise the order doesn't match lexicographical order on bytes.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
popcount(map & (bit - 1) & mask) has a longer critical path than
popcount(map & (bit - 1)) & mask.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
$TTY is the actual TTY, e.g. /dev/pts/3, which may not be accessible by
the current user. This can happen e.g. if the PTY is owned by root, who
then does
root@host# su user
user@host$ ./tests/tests.sh
./tests/color.sh: line 81: /dev/pts/3: Permission denied
Notes:
Fixes: 59b1c52 ("tests: Print progress outside the scroll region")
|
| |
|
|
|
|
|
|
|
| |
Bash 5 adds that special variable, which should be more reliable than
the awk trick, which is known to be broken on mawk.
Fixes: https://github.com/tavianator/bfs/issues/152
|
|
|
|
|
|
|
|
| |
getpid() could hypothetically be cached (and glibc used to do it).
getppid() can't be, because the parent could die and reparent the child
to init.
Link: https://lore.kernel.org/linux-mm/Z58dIOGlJ3grsAge@casper.infradead.org/
|
|
|
|
|
|
|
|
|
| |
This fixes -fstype on btrfs subvolumes, which previously reported
"unknown" due to their dev_t being potentially different from the mount
point.
Link: https://savannah.gnu.org/bugs/?50859
Link: https://lwn.net/Articles/866582/
|
| |
|
| |
|
|
|
|
| |
Link: https://sourceware.org/bugzilla/show_bug.cgi?id=16060
|
|
|
|
|
|
|
|
|
|
|
| |
The test was Linux-only, and didn't pass on at least mips64el due to a
different signal mask size. The new version should be fully portable,
but will hang forever on failure.
Link: https://buildd.debian.org/status/fetch.php?pkg=bfs&arch=mips64el&ver=4.0.5-1&stamp=1737761227&raw=0
Notes:
Fixes: 4859d49 ("tests: Add a test for sigmask restoration")
|