I am pleased to announce the release of version 4.3.1 of GNU findutils. 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 http://www.gnu.org/software/findutils/ (but the documentation there does not include material about changes in the 4.3.x releases).
This is a "development" release of findutils. It can be downloaded from ftp://alpha.gnu.org/gnu/findutils. This release includes some significant changes, and so is not yet ready for production use. However, I encourage you to try it out. Bugs in GNU findutils should be reported to the findutils bug tracker at http://savannah.gnu.org/bugs/?group=findutils. Reporting bugs via the web interface will ensure that you are automatically informed when the bug has been fixed. General discussion of findutils takes place on the bug-findutils mailing list. To join the 'bug-findutils' mailing list, send email to <[EMAIL PROTECTED]>. To verify the GPG signature of the release, you will need the public key of the findutils maintainer, James Youngman. You can download this from ftp://ftp.gnu.org/gnu/gnu-keyring.gpg. Alternatively, you could query a PGP keyserver, but you will need to use one that can cope with subkeys containing photos. Many older key servers cannot do this. I use subkeys.pgp.net. I think that one works. See also the "Downloading" section of http://www.gnu.org/software/findutils/. I would like to thank Andreas Metzler, Rob Holland and Eric Blake for their help in preparing this release. The 4.3.x release series are currently 'development' releases. Please test it, but think carefully before installing it in a production system. New features in findutils-4.3.x are under development; they may change or go away. All other changes in the 4.2.x release series up to and including findutils-4.2.28 are included in this release. In addition the following changes are new in this release: * Major changes in release 4.3.1 ** Bug Fixes Find now follows POSIX rules for determining where directories end and expressions start. This means that "find \(1 \!2 \, \)" now searches in the four named directories, rather than trying to parse an expression. (Savannah bug #15235). You now get a more helpful error message when you use command lines which have missing expressions, such as find . ( ) find . ! find . -a find . \( -not \) find . \( -true -a Savannah bug #15800 (also fixed in 4.2.28): If find finds more subdirectories within a parent directory than it previously expected to based on the link count of the parent, the resulting error message now gives the correct directory name (previously an error message was issued but it specified the wrong directory). Savannah bug #16738 (also fixed in 4.2.28): "find .... -exec ... {} +" now works if you have a large environment and many files must be passed to the -exec action. The same problem affected the -execdir action, though since the number of files in a given directory will normally be smaller, the problem was worse for -exec. Savannah bug #16579 (also fixed in 4.2.28): Updatedb now works if it is running as a user whose login shell is not actually a shell. There have also been a number of documentation improvements (includng Savannah bug #16269). ** Functional changes For find, debug output can now be enabled at runtime with the -D option. This causes the printing of various sorts of information about find's internal state and progress. The find option -nowarn cannot itself produce a warning (this used to happen with commands like "find . -name quux -nowarn -print"). ** Performance Enhancements Find now has a rudimentary cost-based optimiser. It has an idea of the basic cost of each test (i.e. that -name is very cheap while -size is more expensive). It re-orders tests bearing in mind the cost of each test and its likely success. Predicates with side effects (for example -delete or -exec) are not reordered. The optimiser is not yet enabled by default, but the new option -O controls the query optimisation level. To see this in action, try find -D opt -O3 . -type f -o -type c -o -size 555 -name Z and compare the optimised query with: find -D opt -O3 . -size 555 -o -type c -o -type f -name Z and find -D opt . -size 555 -o -type c -o -type f -name Z Over time, as optimisations are proven to be robust and correct, they will be moved to lower optimisation levels. Some optimisations have always been performed by find (for example -name is always done early if possible). ** Translations Findutils 4.3.1 includes updated translations for the following languages: Vietnamese, Belarusian, Catalan, Danish, German, Greek, Esperanto, Spanish, Estonian, Finnish, French, Irish, Galician, Croatian, Hungarian, Indonesian, Italian, Japanese, Korean, Luganda, Malay, Dutch, Polish, Portuguese, Brazilian Portuguese, Romanian, Russian, Kinyarwanda, Slovak, Slovenian, Serbian, Swedish, Turkish, Chinese (simplified), Chinese (traditional), Bulgarian -- James Youngman <[EMAIL PROTECTED]> GNU findutils maintainer _______________________________________________ Bug-findutils mailing list [email protected] http://lists.gnu.org/mailman/listinfo/bug-findutils
