findutils @ Savannah: GNU findutils 4.10.0 released

This is to announce findutils-4.10.0, a stable release.

See the NEWS below for more details.

GNU findutils is a set of software tools for finding files that match

certain criteria and for performing various operations on them.

Findutils includes the programs "find", "xargs" and "locate".

More information about findutils is available at:

https://www.gnu.org/software/findutils/

Please report bugs and problems with this release via the the

GNU Savannah bug tracker:

https://savannah.gnu.org/bugs/?group=findutils

Please send general comments and feedback about the GNU findutils

package to the mailing list (

There have been 88 commits by 8 people in the - sigh - 121 weeks since 4.9.0:

Antonio Diaz Diaz (2) James Youngman (24)

Bernhard Voelker (57) John A. Leuenhagen (1)

Bjarni Ingi Gislason (1) Shuiqing Zhou (1)

Helmut Grohne (1) ribbon (1)

This release was bootstrapped with the following tools:

Autoconf 2.72

Automake 1.16.5

M4 1.4.18

Gnulib v1.0-187-g623bcc22f4

Please consider supporting the Free Software Foundation in its fund

raising appeal; see <https://www.fsf.org/appeal/>.

Thanks to everyone who has contributed!

Have a nice day,

Bernhard Voelker [on behalf of the GNU findutils maintainers]

================================================================================

Here are the compressed sources:

https://ftp.gnu.org/pub/gnu/findutils/findutils-4.10.0.tar.xz

Here are the GPG detached signatures[*]:

https://ftp.gnu.org/pub/gnu/findutils/findutils-4.10.0.tar.xz.sig

Use a mirror for higher download bandwidth:

http://www.gnu.org/order/ftp.html

Here is the SHA256 checksum:

1387e0b67ff247d2abde998f90dfbf70c1491391a59ddfecb8ae698789f0a4f5 findutils-4.10.0.tar.xz

[*] Use a .sig file to verify that the corresponding file (without the

.sig suffix) is intact. First, be sure to download both the .sig file

and the corresponding tarball. Then, run a command like this:

gpg --verify findutils-4.10.0.tar.xz.sig

If that command fails because you don't have the required public key,

then run this command to import it:

gpg --keyserver keys.gnupg.net --recv-keys A5189DB69C1164D33002936646502EF796917195

and rerun the 'gpg --verify' command.

================================================================================

NEWS

  • Noteworthy changes in release 4.10.0 (2024-06-01) [stable]

** Bug Fixes

Find now defaults to optimization level 1 rather than 2 and the

cost-based optimizer will only run at level 2 and above. This

should prevent changes of operation order which result in

user-visible differences in behaviour. [#58427]

If the -P option to xargs is not used, xargs will not change the way

in which the SIGUSR1 and SIGUSR2 signals are handled. This means

that they will cause the program to terminate if the signals were

not ignored in the process which started xargs. This also means that

xargs does not use parallel execution at all.

If you start xargs with '-P 1', then xargs will not be killed by these

signals, and they instead change the degree of parallelism.

This change improves xargs' POSIX compliance.

'xargs -P' now waits for all its child processes to complete before

exiting, even if one of them exits with status 255. [#64451]

If the -P option of xargs is in use, reads on standard input which are

interrupted by a signal are re-started. [#64442]

'find -name /' no longer outputs a warning, because that is a valid pattern

to match the root directory "/". Previously, a diagnostic falsely claimed

that this pattern would not match anything. [#62227]

'find -gid' (without the mandatory argument) now outputs a correct error

diagnostic. Previously it output: "find: invalid argument -gid' to-gid'".

The error diagnostic for non-numeric arguments has been improved as well.

Likewise for -inum, -links and -uid.

'find -user' and 'find -group' now allow to specify larger UIDs/GIDs.

Previously, that was limited to INT_MAX, although the types uid_t and gid_t

are larger on many systems, including x86_64 GNU/Linux. [#64900]

'find -xtype l' no longer fails on symbolic links that point to

themselves. These are treated similarly to broken links. [#51926]

** Improvements

The find predicates -used, -amin, -cmin, -mmin, -atime, -ctime, and -mtime

now properly diagnose a not-a-number argument. Previously, find dumped

core via an assertion. [#64717]

** Changes to the build process

findutils now builds again on systems with musl-libc.

This requires gettext-0.19.8.

findutils programs no longer fail for timestamps past the year 2038

on obsolete configurations with 32-bit signed time_t, because the

build procedure now rejects these configurations.

On systems without any year2038 support configure with --disable-year2038.

** Documentation Changes

When generating the Texinfo manual, makeinfo is invoked with the --no-split

option for all output formats now; this avoids files like find.info-[12].

The xargs documentation now describes the double dash "--" option delimiter.

The xargs examples in the Texinfo manual now use the -L and --replace options

instead of the deprecated -l and -i options. [#64480]

The TexInfo manual now uses upper-case 'B' as birthtime for the -newerXY

comparison consistently. [#65378]

** Translations

Updated the following translations: Belarusian, Brazilian Portuguese,

Bulgarian, Catalan, Chinese (simplified), Chinese (traditional),

Croatian, Czech, Danish, Dutch, Esperanto, Estonian, Finnish, French,

Galician, Georgian, German, Greek, Hungarian, Indonesian, Irish,

Italian, Japanese, Korean, Lithuanian, Luganda, Malay, Norwegian

Bokmaal, Polish, Portuguese, Romanian, Russian, Serbian, Slovak,

Slovenian, Spanish, Swedish, Turkish, Ukrainian, Vietnamese.

#gnu #gnuorg #opensource

There are no comments yet.