Version 4.0
New features
-
To match BSD
find
(and the POSIX Utility Syntax Guidelines), multiple flags can now be given in a single argument like-LEXO2
. Previously, you would have had to write-L -E -X -O2
. (c0fd33a
) -
Explicit timestamps can now be written as
@SECONDS_SINCE_EPOCH
. For example,bfs -newermt @946684800
will print files modified since January 1, 2000 (UTC). (c6bb003
) -
The new
-noerror
option suppresses all error messages during traversal. (#142)
Changes
-
-mount
now excludes mount points entirely, to comply with the recently published POSIX 2024 standard. Use-xdev
to include the mount point itself, but not its contents.bfs
has been warning about this change since version 1.5.1 (September 2019). (33b85e1
) -
-perm
now takes the current file creation mask into account when parsing a symbolic mode like+rw
, as clarified by POSIX defect 1392. This matches the behaviour of BSDfind
, contrary to the behaviour of GNUfind
. (6290ce4
)
Bug fixes
-
Fixed commands like
./configure CC=clang --enable-release
that set variables before other options (49a5d48
) -
Fixed the build on RISC-V with GCC versions older than 14 (
e93a1dc
) -
Fixed running
bfs
under Valgrind (a01cfac
) -
Fixed the exit code when failing to execute a non-existent command with
-exec
/-ok
on some platforms including OpenBSD and HPPA (8c130ca
) -
Fixed
$LS_COLORS
case-sensitivity to match GNU ls more closely when the same extension is specified multiple times (08030ae
) -
Fixed the
-status
bar on Solaris/Illumos
New Contributors
Full Changelog: 3.3.1...4.0