summaryrefslogtreecommitdiff
path: root/ChangeLog-2013
diff options
context:
space:
mode:
authorJames Youngman <jay@gnu.org>2014-08-23 14:13:30 +0100
committerJames Youngman <jay@gnu.org>2014-08-23 14:20:14 +0100
commit718bde657248dfc2270f6e0ed16cfb38e2510c2c (patch)
tree5eca5a6ad0ad8d98b1cd1f7585754942ee06749c /ChangeLog-2013
parentfa44fbaae9080fc8d03420fd65f4446d112d556b (diff)
downloadfindutils-718bde657248dfc2270f6e0ed16cfb38e2510c2c.tar.gz
Revert the previous ChangeLog split and split at 2013 instead.
* ChangeLog-2013: Split the ChangeLog at 2013 rather than 2008; hence, delete ChangeLog-2008. * Makefile.am (EXTRA_DIST): Distribute ChangeLog-2013. * .gitattributes: Use the ChangeLog merge driver for ChangeLog-2013. This reverts commit c3e93017c2850cee2d2c15e03f66dedc1a2f445d. Conflicts: ChangeLog
Diffstat (limited to 'ChangeLog-2013')
-rw-r--r--ChangeLog-201311397
1 files changed, 11397 insertions, 0 deletions
diff --git a/ChangeLog-2013 b/ChangeLog-2013
new file mode 100644
index 00000000..7ce43bdc
--- /dev/null
+++ b/ChangeLog-2013
@@ -0,0 +1,11397 @@
+2013-12-08 James Youngman <jay@gnu.org>
+
+ Bug #35753: check the success/failure of material I/O operations.
+ * lib/listfile.c (list_file): Check the result of fprintf to
+ determine if there was an I/O error on output. Return false (bool
+ instead of void) if so.
+ (print_name_without_quoting): Likewise.
+ (print_name_with_quoting): Likewise.
+ (print_name): Propagate the result of print_name_without_quoting
+ or print_name_with_quoting (and make all three functions return bool).
+ * find/pred.c (is_ok): Check the result of fprintf to
+ determine if there was an I/O error on output. Exit fatally if
+ there was a problem (since we cannot expect the user to say "yes"
+ or "no" to a prompt they will not have seen).
+ * xargs/xargs.c (print_args): Check the result of fprintf and
+ fflush to determine if there was an I/O error on output. Exit
+ fatally for the same reason as above if there is a problem.
+ * NEWS: Mention this bugfix (now that it is fully fixed).
+
+ Fix some signed/unsigned problems.
+ * find/util.c (show_valid_debug_options): change type of array
+ subscript to size_t to avoid signed/unsigned problems.
+ (set_stat_placeholders): Silence unuseful compiler warning about
+ unused parameter.
+ * find/ftsfind.c (show_outstanding_execdirs): change type of array
+ subscript to size_t to avoid signed/unsizned problems.
+
+ Fix format specifier in safe_read error message.
+ * xargs/xargs.c (xargs_do_exec): print size_t values with %zu, not
+ %d (since size_t is not and never can be the same type as int).
+
+ Bug #35753: detect failure of the atexit library function.
+ * find/find.c (main): Issue a fatal error message if atexit fails.
+ * xargs/xargs.c (main): Likewise.
+ * find/ftsfind.c (main): Likewise.
+ * locate/code.c (main): Likewise.
+ * locate/frcode.c (main): Likewise.
+ * locate/locate.c (dolocate): Likewise.
+ * locate/bigram.c (main): Likewise; also include <errno.h>.
+
+2013-10-27 James Youngman <jay@gnu.org>
+
+ * THANKS: Add Eric S. Raymond.
+
+2013-10-27 Eric S. Raymond <esr@thyrsus.com>
+
+ Add bracket missing from synopsis in locate manpage.
+ * locate/locate.1 (SYNOPSIS): Add missing bracket.
+
+2013-10-26 James Youngman <jay@gnu.org>
+
+ Clearly explain the result of -exec/-execdir ... +
+ * doc/find.texi (Single File): Explain that "-exec command ;"
+ returns true of the command exited with a status of 0.
+ (Multiple Files): Explain that "-execdir command +" always returns
+ true. Likewise for "-exec command +".
+ * find/find.1: similar changes.
+
+2013-09-24 James Youngman <jay@gnu.org>
+
+ Fix bug #40094: minor inconsistencies in xargs option descriptions.
+ * xargs/xargs.1: Update the description of -e option to emphasize
+ that the argument must follow the option letter immediately (in
+ other words, that it may not appear in the next program argument).
+ Likewise for the the -i and -l (lower-case L) options.
+ * xargs/xargs.c (usage): Minor consistency improvements to help
+ text.
+
+ Update Vietnamese, Czech and Dutch translations.
+ * po/nl.po: Update Dutch translation.
+ * po/cs.po: Update Czech translation.
+ * po/vi.po: Update Vietnamese translation.
+
+2013-09-23 James Youngman <jay@gnu.org>
+
+ Fix bug #39162: -printf reads beyond arguments terminated by \
+ * find/print.c (insert_fprintf): If a \ is found at the end of a
+ format string, issue a warning (and render it as-is).
+ * NEWS: Mention this bugfix.
+
+ Update version number to 4.5.13-git.
+ * configure.ac: Update version number to 4.5.13-git.
+ * NEWS: Likewise.
+
+ Updated Estonian, Polish, Ukrainian translations.
+ * po/et.po: Updated the Estonian translation from the Translation
+ Project.
+ * po/pl.po: Updated the Polish translation.
+ * po/uk.po: Updated the Ukrainian translation.
+ * NEWS: Mention these updates.
+
+2013-09-22 James Youngman <jay@gnu.org>
+
+ Release findutils-4.5.12.
+ * configure.ac (AC_INIT): Change version number to 4.5.12.
+ * NEWS: Change version number of most recent release to 4.5.12.
+
+ Issue an error message when fts_read fails. Fixes bug #39324.
+ * find/ftsfind.c (find): when fts_read fails, issue an error
+ message, set the exit status to zero and stop. Previously the
+ program would just stop (i.e. it failed to distinguish "done" from
+ "failed").
+ * find/find.1 (-exec): explain that on failure, some pending
+ command launches may not happen. The Texinfo documentation
+ already pointed this out, so that didn't need to be changed.
+ * NEWS: Mention this bugfix.
+
+ Add a bug number for bug #40088.
+ * NEWS: Add a bug number for bug #40088: potential buffer overflow
+ in -execdir and -okdir. Re-order the bugs listed to be
+ decreasing numerically by ID.
+
+2013-09-21 James Youngman <jay@gnu.org>
+
+ find: state that -execdir command is run locally to the matched file.
+ * doc/find.texi (Single File): Correct the description of what the
+ current directory will be when the command specified by -execdir
+ gets run. This fixes a documentation but reported by Eric
+ Hanchrow.
+ * NEWS: Mention this fix.
+
+2013-09-21 Bernhard Voelker <mail@bernhard-voelker.de>
+
+ xargs: wait for process before prompting in interactive mode (-p)
+ * xargs/xargs.c (xargs_do_exec): Move the code for waiting for
+ forked processes up, so that the child process terminates before
+ we prompt for the next command.
+ * NEWS: Mention the fix.
+
+2013-09-21 Dmitry V. Levin <ldv@altlinux.org>
+
+ find: fix potential buffer overflow in -execdir and -okdir.
+ * lib/buildcmd.c (bc_push_arg): Take prefix length into account
+ to avoid state->argbuf overflow.
+ * NEWS: Mention this fix.
+
+2013-09-21 James Youngman <jay@gnu.org>
+
+ Make sv-34976-execdir-fd-leak.sh test more POSIX-compliant.
+ * find/testsuite/sv-34976-execdir-fd-leak.sh: Avoid using seq;
+ instead, use pre-generated lists of test file names. Also avoid
+ using file descriptors 0, 1, 2 in the test.
+
+ Fix typo "sturct".
+ * find/exec.c (impl_pred_exec): Typo fix: struct/struct.
+ * ChangeLog (2007-03-28): Likewise.
+
+2013-09-20 Bernhard Voelker <mail@bernhard-voelker.de>
+
+ find: fix fd leak with --execdir option (bug#34976)
+ * find/exec.c (impl_pred_exec): Free the working directory if find
+ executes the command in the local dir, i.e. if it has been saved
+ by record_exec_dir(). Re-indent code.
+ * find/testsuite/sv-34976-execdir-fd-leak.sh: Add test.
+ * find/testsuite/Makefile.am (test_shell_progs): Mention the test.
+ * NEWS: Mention the fix.
+
+2013-09-20 James Youngman <jay@gnu.org>
+
+ Updated Greek translation.
+ * po/el.po: Updated Greek translation from the Translation
+ Project.
+
+2013-09-20 Bernhard Voelker <mail@bernhard-voelker.de>
+
+ xargs: Fix integer overflow in implicit conversion in do_exec.
+ * xargs/xargs.c (xargs_do_exec): Change type of r from int to
+ size_t, since that is the type that safe_read actually returns.
+
+2013-09-20 James Youngman <jay@gnu.org>
+
+ Add Bernhard Voelker to AUTHORS.
+ * AUTHORS: Add Bernhard Voelker.
+
+ * configure.ac: Check for prefixed versions of ranlib, too.
+
+2013-09-20 Benedikt Morbach <benedikt.morbach@googlemail.com> (tiny change)
+
+ Check for both prefixed and unprefixed versions of "ar".
+ * configure.ac: Look for '${host}-ar' as set by AC_CANONICAL_HOST
+ before looking for the unprefixed 'ar'. This is useful when
+ cross-compiling when all your binutils are prefixed.
+
+2013-09-20 James Youngman <jay@gnu.org>
+
+ Fix compilation error where struct dirent lacks a d_ino member.
+ * find/find.c (NOT_AN_INODE_NUMBER): Add missing identifier which
+ (when missing) caused a compilation error on system where struct
+ dirent lacks a d_ino member.
+
+ Be consistent about what we call the places the search starts.
+ * find/find.1: Consistently describe the paths at which the search
+ begins as "satrting points".
+
+ Refer to the info manual in a clearer and more explicit way.
+ * find/find.1 (SEE ALSO): Explain how to invoke info to read the
+ Texinfo manual.
+ * locate/locate.1 (SEE ALSO): Likewise.
+ * locate/updatedb.1 (SEE ALSO): Likewise.
+ * xargs/xargs.1 (SEE ALSO): Likewise.
+
+2013-06-02 James Youngman <jay@gnu.org>
+
+ Add unlinkat moduile.
+ * import-gnulib.config (modules): Add unlinkat module, following
+ bug report from Martin von Gagern.
+
+2013-04-22 Paul Eggert <eggert@cs.ucla.edu>
+
+ More removal of support for -perm +MODE.
+ * find/parser.c (parse_perm): Remove no-longer-needed local var
+ and associated code. Reported by Eric Blake in
+ <http://savannah.gnu.org/bugs/?38474#comment9>.
+
+2013-04-21 Paul Eggert <eggert@cs.ucla.edu>
+
+ Remove support for obsolete -perm +MODE syntax.
+ Also, do not reject -perm /MODE merely because of POSIXLY_CORRECT.
+ Problem reported in <https://savannah.gnu.org/bugs/?38474>.
+ * NEWS:
+ * doc/find.texi (Mode Bits): Document this.
+ (Environment Variables): POSIXLY_CORRECT does not affect -perm.
+ * find/parser.c (parse_help): Mention /MODE, not +MODE.
+ (non_posix_mode): Remove.
+ (parse_perm): Remove support for -perm +MODE.
+ Do not reject -perm /MODE merely because POSIXLY_CORRECT is set;
+ POSIXLY_CORRECT is not supposed to be for pedantic checking.
+ * find/find.1 (-perm): describe this change.
+ (HISTORY): update the existing statement about the deprecation of
+ +MODE to explain that support has now been removed.
+
+2013-04-22 James Youngman <jay@gnu.org>
+
+ Fix documentation typo.
+ * doc/find.texi (Mode Bits): Fix typo "it set" -> "is set".
+
+2013-04-20 Paul Eggert <eggert@cs.ucla.edu>
+
+ doc: fix typos uncovered by texinfo 5.0
+ * doc/find-maint.texi: Fix typos that cause 'make' to fail
+ if texinfo 5.0 is installed.
+
+2013-04-22 James Youngman <jay@gnu.org>
+
+ Enable assertions in locate.
+ * locate/locate.c: Don't #define NDEBUG.
+
+2013-04-21 James Youngman <jay@gnu.org>
+
+ * find/find.1 (-size): explain the rounding-up semantics more
+ clearly.
+
+ Add example for find -printf.
+ * doc/find.texi (Print File Information): Add an example for "find
+ -printf" suggested by Karl Berry.
+
+2011-12-31 Karl Berry <karl@gnu.org>
+
+ Further documentation improvements.
+ * doc/find.texi: use @code for environment variable names, and
+ other improvements.
+
+2009-08-03 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ * locate/locate.c: Simplify handling of slocate databases.
+ Fix the bug assuming second path extends the first one.
+ * locate/testsuite/locate.gnu/slocate.{exp,xo}: New testcase
+ for slocate databse, exposing this bug.
+ * locate/testsuite/Makefile.am: Add new test case.
+
+2009-08-03 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ * locate/locate.c: Enable assertions and fix the off-by-one
+ bugs that prevented this.
+
+2009-08-03 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ * doc/find.texi: Remove duplicate paragraph and fix a typo.
+
+2013-03-31 James Youngman <jay@gnu.org>
+
+ Don't use reserved identifiers in macro names; fix other code smells.
+ * build-aux/src-sniff.py (checkers): Check for #define directives
+ which use a macro name which is reserved.
+ (MakefileRegexChecker): New class which performs regex checks on
+ makefiles; this ensures that we don't check Makefile.in if we're
+ going to check Makefile.am anyway.
+ * lib/unused-result.h: Don't use a reserved identifier in the
+ macro name defined as the #include guard.
+ * locate/locatedb.h: Likewise.
+ * Makefile.am (findutils-check-smells): Don't check gnulib code.
+ * import-gnulib.sh (hack_gnulib_tool_output): Move the 'do' of a
+ for loop onto the line following the 'for' (instead of the same
+ line).
+
+2013-03-29 James Youngman <jay@gnu.org>
+
+ Document that -0/-d turns off logical end-of-file processing.
+ * doc/find.texi (xargs options): Explain that the logical end of
+ file marker string set with -E is not special if -d or -0 was
+ specified.
+ * xargs/xargs.c (usage): Mention this in the --help output.
+ (read_string): Correct the function header comment to point out
+ that there is no logical end-of-file processing for this case.
+ Also point out that the delimiter may not always be NUL.
+ This documentation update fixes Savannah bug #36652.
+ (main): Emit a warning message if -0/-d is specified and -E was
+ also used.
+ * xargs/testsuite/xargs.gnu/E_-0.exp: Don't compare stderr output,
+ since for this case xargs now emits a warning message.
+ * NEWS: Mention this change.
+
+2013-03-29 James Youngman <jay@gnu.org>
+
+ Updated the Galician translation.
+ * gl.po: Updated Galician translation.
+
+2013-03-26 James Youngman <jay@gnu.org>
+
+ Updated a number of translations.
+ * cs.po: Updated Czech translation.
+ * et.po: Updated Estonian translation.
+ * fi.po: Updated Finnish translation.
+ * fr.po: Updated French translation.
+ * nl.po: Updated Dutch translation.
+ * pl.po: Updated Polish translation.
+ * ru.po: Updated Russian translation.
+ * uk.po: Updated Ukrainian translation.
+ * vi.po: Updated Vietnamese translation.
+ * zh_CN.po: Updated Chinese (simplified) translation.
+
+2013-03-26 Kamil Dudka <kdudka@redhat.com>
+
+ Fix compile-time warnings.
+ * find/defs.h (struct predicate): Add a missing const modifier.
+ * find/find.c (wd_sanity_check): Suppress a warning in #else branch.
+ (process_dir): Remove an unused variables and statements.
+ * find/pred.c (pred_context): Use const modifier in the prototype.
+ * lib/buildcmd.{c,h} (bc_args_exceed_testing_limit): Remove a const
+ modifier causing unnecessary warnings.
+ * xargs/xargs.c (main): Add explicit type-casts.
+
+2013-03-24 James Youngman <jay@gnu.org>
+
+ Expand on warning about xargs -P and stdout, including in Info.
+ * xargs/xargs.1: Expand on the warning about sharing stdout for
+ "xargs -P".
+ * doc/find.texi (Controlling Parallelism): Add a suitable warning
+ about sharing resources here, too.
+ * NEWS: Mention that all relevant documentation was updated with
+ this warning.
+
+2013-03-24 Bernhard Voelker <mail@bernhard-voelker.de>
+
+ Improve error message for find -type X (X = an unknown file type).
+ * find/parser.c (insert_type): Give a more comprehensible error
+ message when the type letter following -type or -xtype corresponds
+ to a type of file which was unknown on the system which compiled
+ the find binary.
+ * NEWS: Mention this improvement.
+
+ xargs: split usage text to help translators, and clarify it.
+ * xargs/xargs.c (usage): Define HTL macro to print one help text
+ line (or entry). Split the option descriptions up by using the
+ above macro. Refine the messages to adapt to the common way:
+ change the start of each option's description to lower case, do
+ not use periods at the end, use semicolons where needed, indent
+ secondary lines, several other minor improvements.
+ * NEWS: Mention this improvement.
+
+ * xargs/xargs.1: Add note for -P suggesting the use of a locking
+ system to avoid corrupted stdout.
+
+2013-03-24 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #38583: errno-buffer read failed in xargs_do_exec
+ * import-gnulib.config (modules): Import the safe-read module.
+ * xargs/xargs.c (xargs_do_exec): Use safe_read so that the read
+ system-call is retried if we handle a signal (for example
+ SIGUSR[12]) while we are trying to read the errno vlaue from the
+ child process.
+
+ Fix misleading message from import-gnulib.sh; allow .git symlink.
+ * import-gnulib.sh (check_old_gnulib_dir_layout): Really apply the
+ bugfix by Kamil Dudka which eliminates a misleading message of
+ import-gnulib.sh on a fresh repository obtained by 'git clone
+ --recursive', by requiring gnulib/.git to exist but not requiring
+ it to be a directory.
+
+ Bugfix to "make clean": do not delete header files.
+ * lib/Makefile.am (coverage-clean): Remove output files left
+ behind by gcc -fprofile-arcs -ftest-coverage by using $(RM) with a
+ glob pattern rather than a $(libfindtools_a_SOURCES.c=.gcno)
+ Makefile substitution, because the latter caused us to delete
+ header files entirely (their names do not end in .c). This had
+ meant that it was impossible to compile findutils after "make
+ clean". Bug report by David Gilbert.
+ * find/Makefile.am (coverage-clean): Likewise.
+ * xargs/Makefile.am (coverage-clean): Likewise.
+ * locate/Makefile.am (coverage-clean): Likewise.
+ * Makefile.am (coverage-clean): Likewise, but also do this in the
+ subdirectories whose Makefile.am files are generated by
+ gnulib-tool.
+
+ Move on from 4.5.11, to 4.5.12-git
+ * NEWS: Add a new section for 4.5.12-git. Mention the bugfix to
+ find/testsuite/sv-bug-32043.sh.
+ * configure.ac: Update the version number.
+
+ Fix Bash-ism [[ ... ]].
+ * find/testsuite/sv-bug-32043.sh: Change [[ ... ]] to [ ... ]
+ because the first pattern is a Bash-ism. Bug reported by David
+ Gilbert.
+
+2013-02-03 Kamil Dudka <kdudka@redhat.com>
+
+ Avoid using 'INCLUDES =' in automake templates.
+ * find/Makefile.am: Use AM_CPPFLAGS instead of deprecated INCLUDES.
+ * lib/Makefile.am: Likewise.
+ * locate/Makefile.am: Likewise.
+ * xargs/Makefile.am: Likewise.
+
+ Eliminate a misleading message of import-gnulib.sh on a fresh
+ repository obtained by 'git clone --recursive'.
+ * import-gnulib.sh (check_old_gnulib_dir_layout): Do not require
+ ./gnulib/.git to be a directory.
+
+2013-02-03 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #38239, missing variable initialisation in locate
+ * locate/locate.c (cleanup_quote_opts): New atexit function, frees
+ quote_opts which otherwise would leak.
+ (dolocate): Eliminate the redundant boolean variable
+ they_chose_db, whose true/false-ness followed the not-NULL-ness of
+ locate_path. Rename locate_path to user_selected_locate_path to
+ make this explicit.
+ (dolocate): When we get to the bottom of the loop, don't try to
+ check for a further element in user_selected_locate_path if it is
+ NULL (that is, $LOCATE_PATH was unset and the -d option was not
+ used).
+
+ * po/findutils.pot: Updated template file from the Translation
+ Project
+
+2013-02-02 James Youngman <jay@gnu.org>
+
+ Release findutils-4.5.11.
+ * NEWS: update version number from 4.5.11-git to 4.5.11.
+ * configure.ac (AC_INIT): Likewise.
+
+ Reduce needless calls to complete_pending_execdirs.
+ * find/exec.c (impl_pred_exec): Once pushing an argument for
+ -exec{,dir} ... +, Only set state.execdirs_outstanding if
+ there were previously no todo items on ths command line.
+ This avoids spurious calls to complete_pending_execdirs().
+
+2012-12-19 James Youngman <jay@gnu.org>
+
+ Make the manual section ordering and menu item ordering consistent.
+ * doc/find.texi (Top): Re-order menu items to be consistent with
+ ordering of sections ('Reference' is moved).
+ (Print File Information): Add missing menu item 'Formatting Flags'
+ and remove that menu item from inside 'Format Directives'.
+ (Formatting Flags): Hence this is a subsection, not a
+ subsubsection.
+
+2012-12-15 Stefano Lattarini <stefano.lattarini@gmail.com> (trivial change)
+
+ build: remove redundant AC_SUBST of var INCLUDES
+ * configure.ac: don't call AC_SUBST(INCLUDES).
+
+2012-12-15 Bernhard Voelker <mail@bernhard-voelker.de> (trivial change)
+
+ * locate/updatedb.sh (PRUNEFS): Avoid 9P, cifs and nfs4
+ filesystems by default.
+
+2012-12-15 James Youngman <jay@gnu.org>
+
+ Tweak updatedb.sh to make diffs easier to read.
+ * locate/updatedb.sh (PRUNEFS): List the default items in
+ alphabetical order to make diffs easier to read.
+ (PRUNEPATHS): likewise.
+
+ Re-generate doc/regexprops.texi.
+ * doc/regexprops.texi: re-generate to describe the changes to
+ gnulib for the regular expression types "awk" (to add character
+ class support), "gnu-awk" (to add range support) and "posix-awk"
+ (also to add range suport).
+ * NEWS: Describe this change.
+
+2012-11-17 Dmitry V. Levin <ldv@altlinux.org>
+
+ find: use FTS_VERBATIM
+ * gnulib: update to latest, to get FTS_VERBATIM support.
+ * find/ftsfind.c (ftsoptions): Set the FTS_VERBATIM bit. This
+ Patch was contributed on 2012-11-18, but was applied with the
+ above regexprops change)
+
+2012-12-14 James Youngman <jay@gnu.org>
+
+ Fix bug #37926 (wrong result for oldfind -inum)
+ * find/find.c (D_INO): Define D_INO as a convenience accessor for
+ the inode number in struct dirent; use 0 if there is no d_ino
+ member in struct dirent.
+ (main): Pass the inode number of the top-level directory to
+ process_top_path.
+ (at_top): Add argument inum, the inode number of the file we are
+ looking at. Pass this to the action function.
+ (do_process_top_dir): Pass the inode number to process_path.
+ (do_process_predicate): Take (but ignore) the inode number
+ argument.
+ (process_path): Add argument inum, the inode number of the file we are
+ looking at. Populate statbuf.st_ino with this value. This avoids
+ a stat call in pred_inum if the stat information would not
+ otherwise be used.
+ (process_dir): Pass the inode number to process_path.
+ * import-gnulib.config (modules): Add d-ino.
+ * NEWS: Mention this bugfix.
+
+2012-11-17 James Youngman <jay@gnu.org>
+
+ Update the Vietnamese, Ukranian and Croatian translations.
+ * po/vi.po, po/uk.po, po/hr.po: Update the translation files from
+ the translation project.
+
+2012-09-18 Jim Meyering <meyering@redhat.com>
+
+ find: fix two time-formatting leaks (bug #37356)
+ * find/print.c (do_time_format): Call xmalloc for static "buf" only
+ the first time.
+ When reallocating buf, be sure to update its buf_size.
+ Also free "altbuf".
+ Reported by Nemo Maelstrom Thorx in http://bugs.debian.org/687358
+ via Andreas Metzler in http://savannah.gnu.org/bugs/?37356
+
+ find: minor tweaks
+ * find/print.c (do_time_format): Use memcpy in place of sprintf.
+ When calling x2nrealloc, use "sizeof *buf" as the element size,
+ rather than "2u".
+
+ build: avoid import-gnulib.sh failure
+ * import-gnulib.config (extra_files): Remove build-aux/missing,
+ since that file has been removed from gnulib.
+
+ build: stop using now-obsolete macro, AM_C_PROTOTYPES
+ * configure.ac: Don't use obsolete AM_C_PROTOTYPES.
+
+2011-12-30 Karl Berry <karl@gnu.org>
+
+ Documentation improvements (UK spelling, use of @code).
+ * find.texi (@copying): add 2011, period outside quotes.
+ (thoughout): use UK spelling and " -- " convention.
+ (section names): use @code where needed.
+
+2011-09-11 Jim Meyering <meyering@redhat.com>
+
+ Fix a typo in find.texi.
+ * doc/find.texi (Error Messages From find): Fix typo s/an/a/.
+
+2011-08-20 James Youngman <jay@gnu.org>
+
+ Describe recent memory savings on very large directories.
+ * NEWS: Describe the recent changes which reduce the amount of
+ heap memory used in processing directories containing very many
+ entries.
+
+ Remove no-longer-used files savedir.[ch].
+ * lib/savedirinfo.c: delete unused file.
+ * lib/savedirinfo.h: delete unused file.
+ * lib/Makefile.am (libfind_a_SOURCES): Remove savedirinfo.c.
+ (EXTRA_DIST): Remove savedirinfo.h.
+
+ Reduce memory consumption of oldfind on large directories.
+ * find/find.c (process_dir): Reduce memory consumption for large
+ directories. Don't save the whole directory content with
+ xsavedir, instead just loop over the results of readdir. This
+ means that oldfind will consume one file descriptor per directory
+ level.
+ * find/testsuite/sv-34079.sh: verify that the memory consumption
+ of oldfind is reasonable on large directories.
+
+ Reduce memory consumption of fts.
+ * gnulib: update to latest, mainly to include a bugfix (gnulib
+ commit 47cb657eca1abf2c26c32c8ce03def994a3ee37c) which limits the
+ memory consumed by fts.
+ * find/testsuite/sv-34079.sh: New test, verifying that memory
+ consumption in ftsfind does not grow indefinitely as the size of
+ directories increases.
+ * find/testsuite/Makefile.am (test_shell_progs): Added sv-34079.sh.
+
+2011-06-29 James Youngman <jay@gnu.org>
+
+ Fix some constness warnings when dealing with -printf formats.
+ * find/parser.c (collect_arg_nonconst): Rename collect_arg to
+ collect_arg_nonconst and change the collected argument from const
+ char* to char*.
+ (collect_arg): Call collect_arg_nonconst to do the real work.
+ (parse_printf): Call collect_arg_nonconst instead of collect_arg.
+ Change `format' from const char* to char*.
+ (parse_fprintf): Likewise.
+ * find/print.h: Change 'format' from const char* to char*, since
+ actually we edit it in place.
+ * find/print.c (parse_octal_escape): Instead of updating a const
+ char* pointer to indicate how many characters from the input we
+ consumed, update a size_t value.
+ (insert_fprintf): Change function definition to match updated
+ prototype. Eliminate fmt_inpos. Introduce a `readpos' offset
+ variable which takes the previous role of fmt_inpos.
+
+2011-06-28 James Youngman <jay@gnu.org>
+
+ Refactor insert_fprintf to minimise calls to make_segment.
+ * find/print.c (get_format_flags_length): Factor out of
+ insert_fprintf; computes the length of the format flags for a
+ format specifier (that is everything after the % but before the
+ format control character).
+ (get_format_specifer_length): Also factored out of insert_fprintf;
+ returns the number of format control characters (e.g. 2 for %A@)
+ or 0 for error.
+ (insert_fprintf): Keep fmt_editpos and fmt_inpos more closely in
+ step, instead of initialising fmt_inpos only when we need it (the
+ idea eventually will be to make fmt_inpos the loop control
+ variable). Call get_format_specifer_length and
+ get_format_flags_length when needed. Reduce the number of
+ different calls to make_segment. We now have one for each KIND_
+ value plus one for the error case.
+
+2011-06-27 James Youngman <jay@gnu.org>
+
+ Factor some of the code out of insert_fprintf.
+ * find/print.c (insert_fprintf): Factor out the handling of
+ eascape codes into new functions parse_escape_char,
+ parse_octal_escape.
+
+2011-06-25 James Youngman <jay@gnu.org>
+
+ Separate out the handling of \c.
+ * find/print.c (insert_fprintf): Deal with \c as a special case.
+
+ Remove some redundant continue statements.
+ * find/print.c (insert_fprintf): Remove a pair of redundant
+ 'continue' statements.
+
+ Simplify -fprintf %%; handle %% like a regular format specifier.
+ * find/print.c (make_segment): Handle foo%% by simply generating a
+ format string of foo%% (that is, let vfprintf handle the escaped
+ %).
+ (insert_fprintf): Handle %% as KIND_FORMAT instead of KIND_PLAIN.
+ (do_fprintf): Handle %%.
+
+ Clarify variable naming in insert_fprintf.
+ * find/print.c (insert_fprintf): Rename some variables for greater
+ clarity:
+ format is now segstart, since it points to the start of the part
+ of the format string we're next going to pass to make_segment.
+ scan2 is now fmt_inpos (which is a const char*) and is the
+ scanning position beyond segstart which we're reading to locate
+ the end of this segment.
+ scan is now fmt_editpos and is the scanning position at which we
+ are modifying the format string (for example to change \n in the
+ format to the value of the '\n' character).
+
+2011-06-19 James Youngman <jay@gnu.org>
+
+ Test find -printf %i.
+ * find/testsuite/test_inode.sh: New test, for find -printf %i.
+ * find/testsuite/Makefile.am (test_shell_progs): Add test_inode.sh.
+
+ Extract common test code into a sourced file.
+ * find/testsuite/binary_locations.sh: New file, extracting common
+ code from the test scripts.
+ * find/testsuite/test_escape_c.sh: Source binary_locations.sh.
+ * find/testsuite/test_escapechars.sh: Source binary_locations.sh.
+ * find/testsuite/Makefile.am (EXTRA_DIST): Distribute
+ binary_locations.sh.
+
+2011-06-18 James Youngman <jay@gnu.org>
+
+ Fix some compiler warnings in xargs.
+ * xargs/xargs.c: Remove definition of the unused macro VOID.
+ Include error.h instead of declaring error (incorrectly).
+ Change the type of lineno from int to size_t.
+ (get_char_oct_or_hex_escape): Don't point endp unnecessarily at p,
+ because they have different constness. There's no need for this,
+ just initialise it to NULL.
+ (main): Make input_file const. Make the default arglist
+ non-const, to avoid a constness warning.
+ (main): Pass the option name as the argument to error's %s format,
+ as opposed to the whole struct (this was a bug, but since the name
+ member was the first in the struct, there were probably no
+ symptoms).
+ (main): read_args returns an int, but the only negative value it
+ can return is -1. Once we know that didn't happen, assign the
+ value to a size_t variable to avoid signed/unsigned warnings
+ elsewhere.
+ (xargs_do_exec): Manually inhibit some unused-parameters warnings.
+ (print_args): Use size_t as the type of a loop variable.
+ (wait_for_proc): Since procs_executing is an unsigned long, use a
+ %lu format specifier to print it.
+ (increment_proc_max): Inhibit an unused-parameter warning (the
+ signal number).
+ (decrement_proc_max): Likewise.
+ * lib/buildcmd.h (struct buildcmd_control): Make member
+ replace_pat const. Change the type of lines_per_exec to unsigned
+ long.
+
+2011-06-20 James Youngman <jay@gnu.org>
+
+ Use a consistent include order in header files too.
+ * lib/printquoted.h: Use the preferred header-file inclusion order
+ here too.
+
+ Use a consistent order for header-file inclusion.
+ * find/exec.c: Include config.h, then system headers followed by
+ gnulib headers and last, find-specific headers.
+ * find/find.c: Likewise.
+ * find/finddata.c: Likewise.
+ * find/fstype.c: Likewise.
+ * find/ftsfind.c: Likewise.
+ * find/parser.c: Likewise.
+ * find/pred.c: Likewise.
+ * find/tree.c: Likewise.
+ * find/util.c: Likewise.
+ * lib/buildcmd.c: Likewise.
+ * lib/dircallback.c: Likewise.
+ * lib/extendbuf.c: Likewise.
+ * lib/fdleak.c: Likewise.
+ * lib/findutils-version.c: Likewise.
+ * lib/listfile.c: Likewise.
+ * lib/printquoted.c: Likewise.
+ * lib/qmark.c: Likewise.
+ * lib/regexprops.c: Likewise.
+ * lib/regextype.c: Likewise.
+ * lib/safe-atoi.c: Likewise.
+ * lib/savedirinfo.c: Likewise.
+ * lib/splitstring.c: Likewise.
+ * lib/test_splitstring.c: Likewise.
+ * lib/waitpid.c: Likewise.
+ * locate/bigram.c: Likewise.
+ * locate/code.c: Likewise.
+ * locate/frcode.c: Likewise.
+ * locate/locate.c: Likewise.
+ * locate/word_io.c: Likewise.
+ * xargs/xargs.c: Likewise.
+
+ Take gnulib-tool's advice about which header files to include.
+ * locate/locate.c: Include <regex.h> instead of "regex.h".
+ Include "fnmatch.h" instead of <fnmatch.h> (because we use
+ fnmatch-gnu). Include "gettext.h".
+ * lib/regexprops.c: Include <regex.h> instead of "regex.h".
+ * find/tree.c: Include "gettext.h". Include "fnmatch.h" instead
+ of <fnmatch.h> (because we use fnmatch-gnu).
+ * find/parser.c: Include "gettext.h" and <regex.h>. Include
+ "fnmatch.h" instead of <fnmatch.h> (because we use fnmatch-gnu).
+ * find/pred.c: Likewise.
+ * find/exec.c: Include "gettext.h".
+ * find/find.c: Likewise.
+ * find/fstype.c: Likewise.
+ * find/ftsfind.c: Likewise.
+ * find/print.c: Likewise.
+ * lib/buildcmd.c: Likewise.
+ * lib/fdleak.c: Likewise.
+ * lib/findutils-version.c: Likewise.
+ * lib/regextype.c: Likewise.
+ * lib/safe-atoi.c: Likewise.
+ * find/util.c: Likewise.
+ * locate/bigram.c: Likewise.
+ * locate/code.c: Likewise.
+ * locate/frcode.c: Likewise.
+ * locate/word_io.c: Likewise.
+ * xargs/xargs.c: Likewise.
+ * find/Makefile.am: Add a comment explaining why gnulib-tool
+ advised us to use each library.
+
+2011-06-19 James Youngman <jay@gnu.org>
+
+ Update gnulib.
+ * gnulib: update to latest version.
+
+2011-06-18 James Youngman <jay@gnu.org>
+
+ Remove test-coverage output files for "make clean".
+ * find/Makefile.am (CLEANFILES): Clean the .gcda and .gcdo files
+ which are produced by running programs that were compile with gcc
+ -fprofile-arcs -ftest-coverage.
+ * lib/Makefile.am (CLEANFILES): Likewise.
+ * locate/Makefile.am (CLEANFILES): Likewise.
+ * xargs/Makefile.am (CLEANFILES): Likewise.
+
+ Move the printing code into print.c.
+ * find/print.c (scan_for_digit_differences): Move to this file
+ from pred.c.
+ (do_time_format): Move to this file from pred.c.
+ (format_date): Likewise.
+ (weekdays): Likewise.
+ (months): Likewise.
+ (ctime_format): Likewise.
+ (file_sparseness): Likewise.
+ (checked_fprintf): Likewise.
+ (checked_print_quoted): Likewise.
+ (checked_fwrite): Likewise.
+ (checked_fflush): Likewise.
+ (HANDLE_TYPE): Likewise.
+ (do_fprintf): Likewise.
+ (pred_fprintf): Likewise.
+ * find/pred.c: Don't include human.h, filemode.h, verify.h or
+ xalloc.h, we don't need them. Don't define MAX. Don't declare
+ ctime_format or format_date. Each of the functions moved into
+ print.c were moved out of this file.
+
+ Reserve format specifiers %(, %{ and %[ for future use.
+ * find/print.c (insert_fprintf): Reject %(, %{ and %[.
+ (make_segment): Remove code which previously supposedly rejected
+ these format specifiers, but in fact did nothing. Replace with
+ an assertion to document the fact that we do not expect to see
+ these format characters in make_segment.
+ * find/testsuite/find.gnu/printf-reserved.exp: New test case, for
+ %(, %{ and %[, which are all rejected.
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP): Add
+ find.gnu/printf-reserved.exp.
+ * doc/find.texi (Reserved and Unknown Directives): Document this.
+ * find/find.1: Document this.
+ * NEWS: Mention this change.
+
+ Additional test cases for printf field width, precision and sign.
+ * find/testsuite/find.gnu/printf.exp: Add test cases for left and
+ right string alignment (%-10p), string truncation (%10.6p),
+ explicit signs (%+d), left and right alignment (%10p, %-10p),
+ zero-filling on decimal fields.
+ * find/testsuite/find.gnu/printf.xo: Add expected outputs for the
+ new tests.
+
+ Add a test for find -printf ... %%.
+ * find/testsuite/find.gnu/printf.exp: Also test %%.
+ * find/testsuite/find.gnu/printf.xo: Add expected output for the
+ %% test case.
+
+ Add a test for "find -printf \c".
+ * find/testsuite/Makefile.am (test_shell_progs): Add
+ test_escape_c.sh.
+ * find/testsuite/test_escape_c.sh: New test for "find -printf
+ \c".
+
+ Remove an unnecessary argument from insert_fprintf.
+ * find/print.c (insert_fprintf): Eliminate the 'func' argument,
+ since it is always pref_fprintf.
+ * find/print.h: Adjust the prototype accordingly.
+ * find/parser.c (parse_fprintf): Don't pass the func argument to
+ insert_fprintf.
+ (parse_printf): Likewise.
+
+ Add new test for octal and letter escapes in -printf format.
+ * find/testsuite/test_escapechars.golden: Expected output file.
+ * find/testsuite/Makefile.am (EXTRA_DIST_GOLDEN): New variable;
+ distribute test_escapechars.golden.
+ * find/testsuite/test_escapechars.sh: New test.
+ * find/testsuite/Makefile.am (test_shell_progs): New variable,
+ where we keep the list of shell script tests. Move existing
+ examples from TESTS and add test_escapechars.sh.
+ * find/testsuite/Makefile.am (TESTS): Refer to test_shell_progs.
+ * cfg.mk: allow trailing blanks and space-tab sequences in
+ find/testsuite/test_escapechars.golden.
+
+2011-06-17 James Youngman <jay@gnu.org>
+
+ Split find's printf-related code into a new file.
+ * find/print.h: New file. Declare insert_fprintf and
+ make_segment.
+ * find/print.c: New file. Move definitions of insert_fprintf and
+ make_segment to here.
+ * find/parser.c: Include "parser.h". Move declarations of
+ insert_fprintf and make_segment into that file; move the
+ definitions into parser.c.
+ * find/Makefile.am (libfindtools_a_SOURCES): Add print.c.
+ (EXTRA_DIST): Add print.h.
+ * po/POTFILES.in: Add find/print.c.
+
+2011-06-15 James Youngman <jay@gnu.org>
+
+ Fix compiler warnings in lib/regextype.c and find/parser.c.
+ * lib/regextype.c (tagRegexTypeMap): make the name field const.
+ * find/parser.c (parse_version): instead of counting features, use
+ a boolean variable, nofeatures. This avoids compiler warnings
+ about overflow.
+
+ Adopt the use of the manywarnings module.
+ * import-gnulib.config (modules): Add manywarnings.
+ * configure.ac: Invoke gl_MANYWARN_ALL_GCC and
+ gl_MANYWARN_COMPLEMENT.
+ * configure.ac: Turn on the compiler warnings only if
+ --enable-compiler-warnings was specified to configure.
+
+2011-06-14 James Youngman <jay@gnu.org>
+
+ Avoid pointer/integer comparison on value returned by strchr.
+ * find/parser.c (parse_newerXY): Compare the result of strchr
+ against NULL rather than 0.
+
+ Fix further compiler warnings.
+ * find/ftsfind.c (show_outstanding_execdirs): Now that
+ execp->state.cmd_argc is a size_t, we can't print it with %d. So
+ print it with PRIuMAX (and include <inttypes.h> to define that).
+ * find/tree.c (prec_name): change return type to const char*.
+ (type_name): Likewise.
+ * find/exec.c (impl_pred_exec): use a separate variable (buf) to
+ point the memory allocated/freed with malloc/free, so that the
+ existing variable target can then be const (and so we can assign
+ pathname to it without a compiler warning).
+
+ Eliminate some compiler warnings.
+ * find/find.c: Remove definition of SAFE_CHDIR, which we don't
+ use.
+ * find/defs.h: Remove redundant declaration of launch.
+ * find/parser.c (parse_false): Cast unused arguments to void.
+ (parse_print0): Likewise.
+ (pred_context): Likewise.
+ (parse_newerXY): Add some parens for slightly greater clarity.
+ (make_segment): Avoid switch-missing-default-case warning by
+ turning it into an if statement.
+ (check_path_safety): Remove unused argument.
+ (insert_exec_ok): Don't pass the unwanted argument to
+ check_path_safety.
+ (get_relative_timestamp): silence compiler warning by adding a
+ case for the remaining enumeration value rather than using
+ default.
+ * find/pred.c (months): the strings can be const char*, rather
+ than just char*.
+ (ctime_format): change TIME_BUF_LEN to an integer constant to
+ avoid signed/unsigned comparison.
+ (blank_rtrim): Change to new-style function definition(!) and
+ remove unnecessary parentheses around a return value.
+ * lib/buildcmd.c: Omit redundant declaration of environ.
+ * find/tree.c (get_expr): Make static.
+ (cost_assoc): make the name field const.
+ (prec_assoc): make the prec_name field const.
+ (op_assoc): make the type_name field const.
+ (type_name): turn into an ANSI function definition(!).
+ (prec_name): Likewise! Also remove spurious parentheses around
+ return value.
+ (prec_name): Remove spurious parentheses around return value.
+ * lib/buildcmd.h (buildcmd_state): change types of several fields
+ to size_t: cmd_argc, cmd_argv_alloc, largest_successful_arg_count,
+ smallest_failed_arg_count.
+ (buildcmd_control): change types of several fields
+ to size_t: max_arg_count, initial_argc, lines_per_exec,
+ args_per_exec.
+
+ Assume SIGCHLD and O_NOFOLLOW are defined by gnulib.
+ * find/find.c: Since gnulib defines O_NOFOLLOW, don't check to see
+ if the macro is defined. Check instead to see if it is 0.
+ (safely_chdir_nofollow): Point this out.
+ (safely_chdir): Check O_NOFOLLOW for zeroness.
+ * find/exec.c: Don't #define SIGCHLD.
+ * xargs/xargs.c: Likewise.
+
+2011-06-14 James Youngman <jay@gnu.org>
+
+ Fix coredump bug introduced in the previous change.
+ * locate/locate.c (dolocate): Remove declaration of e, which was
+ replaced by the variable db_name. Change the last two uses of 'e'
+ to use 'db_name'. This bugfix prevents possible coredumps when
+ issuing error messages about reads from the locate database (or
+ warnings about byte order for old databases). This bug had been
+ introduced in the previous change.
+
+2011-06-13 James Youngman <jay@gnu.org>
+
+ Split strings into fields nondestructively.
+ * lib/splitstring.c: New file; defines splitstring(), which will
+ non-destructively locate character-separated fields in a string.
+ * lib/splitstring.h: New file; declares splitstring.
+ * lib/test_splitstring.c: New file; unit test for splitstring.c.
+ * lib/nextelem.c: Delete (obsoleted by splitstring.c).
+ * lib/nextelem.h: Delete (obsoleted by splitstring.h).
+ * lib/Makefile.am (libfind_a_SOURCES): Add splitstring.c,
+ splitstring.c. Remove nextelem.c, nextelem.h.
+ (check_PROGRAMS): Add test_splitstring.
+ (TESTS): Add test_splitstring.
+ (test_splitstring_SOURCES): Sources for the
+ test_splitstring unit test.
+ * locate/locate.c: Include splitstring.h rather than nextelem.h.
+ (dolocate): Use splitstring rather than next_element. In places
+ where we need a nul-terminated string, use strndup() to create it.
+ Convert some space-tab sequences to regular spacing.
+ * find/parser.c: Include splitstring.h rather than nextelem.h.
+ (check_path_safety): Use splitstring rather than next_element.
+ * import-gnulib.config (modules): Depend on the module strndup.
+ * cfg.mk: Exempt lib/test_splitstring.c from calling
+ bindtextdomain or set_program_name.
+
+2011-06-13 James Youngman <jay@gnu.org>
+
+ Fix compilation failure in bigram.c by including <locale.h>.
+ * locate/bigram.c: Include <locale.h>.
+
+2011-06-12 James Youngman <jay@gnu.org>
+
+ Split exec-related code into a new file, exec.c
+ * find/exec.c: New file.
+ (initialise_wd_for_exec): Move out of pred.c
+ (record_exec_dir): Likewise.
+ (impl_pred_exec): Likewise.
+ (prep_child_for_exec): Likewise.
+ (launch): Likewise.
+ * find/pred.c: These functions are moved out of this file.
+ * find/defs.h: impl_pred_exec is no longer static in pred.c, so
+ add an external declaration for it. Move the declaration of
+ launch to here also.
+ * find/Makefile.am (libfindtools_a_SOURCES): Add exec.c.
+ * po/POTFILES.in: Add find/exec.c.
+
+ Eliminate .x-sc_prohibit_empty_lines_at_EOF and .x-sc_bindtextdomain
+ * cfg.mk: Move definition of which files we should not check to
+ exclude_file_name_regexp--sc_prohibit_empty_lines_at_EOF, instead
+ of .x-sc_prohibit_empty_lines_at_EOF.
+ Move contents of .x-sc_bindtextdomain into
+ exclude_file_name_regexp--sc_bindtextdomain.
+ .x-sc_prohibit_empty_lines_at_EOF: Delete.
+ .x-sc_bindtextdomain: Delete.
+
+ Enable sc_makefile_at_at_check; fix problems it identifies.
+ * lib/Makefile.am: Use $(FINDLIBOBJS) instead of @FINDLIBOBJS@.
+ * find/Makefile.am (LDADD): Use $(FINDLIBS) instead of @FINDLIBS@.
+ * locate/Makefile.am (updatedb): Use $(VERSION) and
+ $(PACKAGE_NAME) instead of @VERSION@ and @PACKAGE_NAME@.
+ * cfg.mk: remove sc_makefile_at_at_check from local-checks-to-skip
+
+2011-06-12 James Youngman <jay@gnu.org>
+
+ Improve src-sniff.py.
+
+ * build-aux/src-sniff.py: Mention that many of these checks would
+ be better as gnulib syntax checks (since there are more flexible
+ ways to disable these).
+ (RegexChecker.__init__): Don't pass a spurious second "self"
+ argument.
+ (RegexChecker.Check): Provide a more intelligible message when
+ complaining about use atof/scanf.
+ (RegexChecker.Check): Enable the check for HAVE_FCNTL_H.
+ (RegexChecker.Check): When checking for trailing whitespace, don't
+ complain about trailing newlines(!)
+ (RegexChecker.Check): Indicate what the out-of-date address is
+ when we find one.
+
+2011-06-11 James Youngman <jay@gnu.org>
+
+ Enable the sc_trailing_blank check.
+ * cfg.mk: Enable sc_trailing_blank check.
+ (exclude_file_name_regexp--sc_trailing_blank): Exclude
+ xargs test inputs and outputs. Exclude the COPYING file. Exclude
+ a find test output. Exclude the .po files.
+ * xargs/xargs.c: Remove trailing blanks.
+ * xargs/testsuite/config/unix.exp: Likewise.
+ * find/testsuite/find.posix/bracket-depth.exp: Likewise.
+ * find/testsuite/find.posix/files-not-expressions1.exp: Likewise.
+ * find/testsuite/find.posix/files-not-expressions2.exp: Likewise.
+ * find/testsuite/find.posix/files-not-expressions3.exp: Likewise.
+ * find/testsuite/find.posix/nameslash.exp: Likewise.
+ * find/testsuite/find.posix/perm-vanilla.exp: Likewise.
+ * find/testsuite/find.posix/sizes.exp: Likewise.
+ * find/testsuite/find.posix/sv-bug-25359.exp: Likewise.
+ * find/testsuite/find.posix/typesize.exp: Likewise.
+ * find/testsuite/find.gnu/access.exp: Likewise.
+ * find/testsuite/find.gnu/deletedir.exp: Likewise.
+ * find/testsuite/find.gnu/deletefile.exp: Likewise.
+ * find/testsuite/find.gnu/exec-one-rtn-fail.exp: Likewise.
+ * find/testsuite/find.gnu/execdir-hier.exp: Likewise.
+ * find/testsuite/find.gnu/execdir-pwd.exp: Likewise.
+ * find/testsuite/find.gnu/execdir-root-only.exp: Likewise.
+ * find/testsuite/find.gnu/follow-arg-parent-symlink.exp: Likewise.
+ * find/testsuite/find.gnu/ilname.exp: Likewise.
+ * find/testsuite/find.gnu/lname.exp: Likewise.
+ * find/testsuite/find.gnu/perm-slash.exp: Likewise.
+ * find/testsuite/find.gnu/posix-h.exp: Likewise.
+ * find/testsuite/find.gnu/sv-bug-17782.exp: Likewise.
+ * find/testsuite/find.gnu/sv-bug-24169.exp: Likewise.
+ * find/testsuite/find.gnu/used-invarg.exp: Likewise.
+ * find/testsuite/find.gnu/used-missing.exp: Likewise.
+ * find/testsuite/excuses.txt: Likewise.
+ * locate/testsuite/config/unix.exp: Likewise.
+ * locate/testsuite/locate.gnu/bigendian.exp: Likewise.
+ * locate/testsuite/locate.gnu/bigprefix1.exp: Likewise.
+ * locate/testsuite/locate.gnu/exists2.exp: Likewise.
+ * locate/testsuite/locate.gnu/exists3.exp: Likewise.
+ * locate/testsuite/locate.gnu/littleendian.exp: Likewise.
+ * locate/testsuite/locate.gnu/notexists2.exp: Likewise.
+ * locate/testsuite/locate.gnu/notexists3.exp: Likewise.
+ * locate/testsuite/locate.gnu/sv-bug-14535.exp: Likewise.
+ * xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp: Likewise.
+ * xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp: Likewise.
+ * xargs/testsuite/xargs.posix/rc-125.exp: Likewise.
+ * xargs/testsuite/xargs.posix/sv-bug-18714.exp: Likewise.
+ * xargs/testsuite/xargs.posix/sv-bug-18714b.exp: Likewise.
+ * po/Makevars (EXTRA_LOCALE_CATEGORIES): Likewise.
+ * xargs/xargs.1 (SEE ALSO): Likewise.
+
+ Enable the sc_space_tab check
+ * cfg.mk: Enable the sc_space_tab check. Exclude various xargs
+ test inputs and outputs from the check. Remove some obsolete
+ comments.
+ * locate/Makefile.am (dblocation.texi): Remove space-tab sequences.
+
+ Enable the sc_texinfo_acronym check
+ * cfg.mk: Enable the sc_texinfo_acronym check. Exempt
+ doc/perm.text, which isn't ours anyway.
+ * doc/find.texi (Deleting Files): Say just POSIX rather than
+ @acronym{POSIX}, simply because this is the convention in GNU
+ documentation. The motivation is that it's hard to do so
+ consistently (because, for example, you can't use @acronym in a
+ node name).
+
+ Enable syntax check sc_obsolete_symbols.
+ (exclude_file_name_regexp--sc_obsolete_symbols): Don't check
+ build-aux/src-sniff.py.
+
+ Enable more syntax checks, eliminate useless C preprocessor parentheses
+ * find/defs.h: Eliminate useless parentheses in #if.
+ * find/find.c (safely_chdir): Likewise.
+ * find/pred.c: Likewise.
+ * lib/buildcmd.c: Likewise.
+ * lib/fdleak.c: Likewise
+ * xargs/xargs.c: Likewise.
+ * find/parser.c: Likewise.
+ (ISDIGIT): Simplify, and avoid undefining isascii.
+ * cfg.mk (local-checks-to-skip): Remove sc_prohibit_cvs_keyword,
+ since the test produces no hits anyway. Explain why we avoid
+ sc_two_space_separator_in_usage. Enable the sc_useless_cpp_parens
+ check.
+
+ Use stat-size macros in pred.c also.
+ * find/pred.c: Include stat-size. Eliminate definitions of
+ DEV_BSIZE, ST_BLKSIZE, ST_NBLOCKS, ST_NBLOCKSIZE macros which are
+ now in stat-size.h (yes, this is the second set of these macros
+ we've removed).
+ (file_sparseness): Use ST_NBLOCKS and ST_NBLOCKSIZE.
+ * cfg.mk (local-checks-to-skip): Don't skip
+ sc_prohibit_stat_st_blocks, because now we no loner access the
+ st_blocks field of struct stat, directly.
+ * lib/listfile.c (file_blocksize): Eliminate this function, it's
+ no longer needed.
+ * lib/listfile.h: Don't declare file_blocksize.
+
+ Adopt the new gnulib module stat-size.
+ * lib/listfile.c: Include "stat-size.h". Delete the DEV_BSIZE,
+ ST_BLKSIZE, ST_NBLOCKS, ST_NBLOCKSIZE macros which are now in
+ stat-size.h.
+ * gnulib: Update to latest.
+ * import-gnulib.config (modules): Add stat-size.
+
+2011-06-05 James Youngman <jay@gnu.org>
+
+ Don't include sys/param.h where we don't need it.
+ * xargs/xargs.c: Don't include sys/param.h, we don't use it.
+
+ Don't include "stdio-safer.h" where it is not used.
+ * find/parser.c: Don't include stdio-safer.h, it's not used.
+ * lib/findutils-version.c: Likewise.
+
+ Don't include <stddef.h> where it is not used.
+ * lib/dircallback.c: Don't include <stddef.h>, it's not used.
+ * lib/extendbuf.c: Likewise.
+ * lib/qmark.c: Likewise.
+ * lib/savedirinfo.c: Likewise.
+
+ Fixes for empty-lines-at-EOF syntax check.
+ * .x-sc_bindtextdomain: Add newline at EOF.
+ * locate/Makefile.am: Remove empty trailing line at EOF.
+ * find/testsuite/sv-bug-32043.sh: Likewise.
+ * .x-sc_prohibit_empty_lines_at_EOF: Don't apply this check to
+ m4/order-good.bin m4/order-bad.bin
+ locate/testsuite/locate.gnu/locateddb.old.x86.xi
+ locate/testsuite/locate.gnu/locateddb.old.powerpc.xi.
+
+ Avoid some false positives for the sc_prohibit_doubled_word check.
+ * .x-sc_prohibit_doubled_word: don't perform this check on
+ xargs/testsuite/xargs.sysv/iquotes.xo or ChangeLog.
+ Don't check .po files for doubled English words (because they're
+ not in English).
+ * find/tree.c: Modify some text to avoid saying "AND and",
+ which one of the syntax checks doesn't like.
+ (opt_expr): Likewise.
+ (consider_arm_swap): Likewise.
+ * README: Likewise.
+
+ Include dirent.h uncontintionally (since gnulib provides it).
+ * find/pred.c: Include <dirent.h> unconditionally; gnulib provides
+ it.
+ * lib/savedirinfo.c: Likewise.
+
+ Silence some false positives for sc_prohibit_always_true_header_tests.
+ * .x-sc_prohibit_always_true_header_tests: New file; exclude
+ build-aux/src-sniff.py from C inclusion tests, because it itself
+ contains examples of string the syntac checkers don't like
+ (because it's also a syntax checker).
+ ChangeLog: also exclude this because it frequently contains the
+ specifics of items added/removed, including examples of text which
+ are this syntax check looks for.
+
+ Prefer "cannot" to "can not".
+ * locate/locatedb.5: Change "can not" to "cannot".
+ * locate/updatedb.1: Likewise.
+
+ Update xargs error message.
+ * doc/find.texi (Error Messages From xargs): the message "can not
+ fit single argument within argument list size limit" is now
+ "argument list too long".
+
+2011-06-04 James Youngman <jay@gnu.org>
+
+ Use the gnulib byteswap and uname modules.
+ * import-gnulib.config (modules): Add byteswap and uname.
+ * locate/word_io.c: Include byteswap.h. Don't #define bswap_32.
+ * find/util.c: sys/utsname.h no longer needs include guards since
+ gnulib always provides it.
+ * configure.ac: Don't check for sys/utsname.
+
+ gnulib already defines O_CLOEXEC.
+ * lib/fdleak.c: gnulib's fcntl.h always defines O_CLOEXEC, so
+ don't define it here.
+
+ Add internationalisation support to bigram but not regexprops.
+ * locate/bigram.c: Use libintl.h.
+ (main): Call bindtextdomain.
+ * .x-sc_bindtextdomain: Exempt lib/regexprops.c from needing to
+ use bindtextdomain. The output of regexprops is intended to be
+ determined entirely by the properties of the GNU regex
+ implementation.
+
+ Update gnulib.
+ * gnulib: update to current head.
+
+ Update the copyright year in C source files.
+ * find/defs.h: Update copyright year.
+ * find/find.c: Update copyright year.
+ * find/finddata.c: Update copyright year.
+ * find/ftsfind.c: Update copyright year.
+ * find/parser.c: Update copyright year.
+ * find/pred.c: Update copyright year.
+ * find/sharefile.c: Update copyright year.
+ * find/sharefile.h: Update copyright year.
+ * find/tree.c: Update copyright year.
+ * find/util.c: Update copyright year.
+ * lib/buildcmd.c: Update copyright year.
+ * lib/buildcmd.h: Update copyright year.
+ * lib/dircallback.c: Update copyright year.
+ * lib/dircallback.h: Update copyright year.
+ * lib/extendbuf.c: Update copyright year.
+ * lib/extendbuf.h: Update copyright year.
+ * lib/fdleak.c: Update copyright year.
+ * lib/fdleak.h: Update copyright year.
+ * lib/findutils-version.c: Update copyright year.
+ * lib/findutils-version.h: Update copyright year.
+ * lib/forcefindlib.c: Update copyright year.
+ * lib/listfile.c: Update copyright year.
+ * lib/listfile.h: Update copyright year.
+ * lib/nextelem.c: Update copyright year.
+ * lib/nextelem.h: Update copyright year.
+ * lib/printquoted.c: Update copyright year.
+ * lib/printquoted.h: Update copyright year.
+ * lib/qmark.c: Update copyright year.
+ * lib/regexprops.c: Update copyright year.
+ (copying): Update copyright year in the output file, too.
+ * lib/regextype.c: Update copyright year.
+ * lib/regextype.h: Update copyright year.
+ * lib/safe-atoi.c: Update copyright year.
+ * lib/safe-atoi.h: Update copyright year.
+ * lib/savedirinfo.c: Update copyright year.
+ * lib/savedirinfo.h: Update copyright year.
+ * lib/unused-result.h: Update copyright year.
+ * lib/waitpid.c: Update copyright year.
+ * locate/bigram.c: Update copyright year.
+ * locate/code.c: Update copyright year.
+ * locate/frcode.c: Update copyright year.
+ * locate/locate.c: Update copyright year.
+ * locate/locatedb.h: Update copyright year.
+ * locate/word_io.c: Update copyright year.
+ * xargs/xargs.c: Update copyright year.
+
+ More copyright year updates.
+ * build-aux/check-testfiles.sh: Update copyright year.
+ * m4/noreturn.m4: Update copyright year.
+ * po/POTFILES.in: Update copyright year.
+
+ Update the copyright year in test/documentation files, updatedb.
+ * build-aux/src-sniff.py: Update copyright year.
+ * doc/find-maint.texi: Update copyright year.
+ * doc/regexprops.texi: Update copyright year.
+ * find/testsuite/config/unix.exp: Update copyright year.
+ * locate/testsuite/config/unix.exp: Update copyright year.
+ * xargs/testsuite/config/unix.exp: Update copyright year.
+ * locate/updatedb.sh: Update copyright year.
+
+2011-06-03 James Youngman <jay@gnu.org>
+
+ Warn about lack of birth time information only when it's true.
+ * find/pred.c (pred_newerXY): Issue a warning about the inability
+ to get the birth time of a file, only if we actually failed to
+ obtain the birth time of the file. This is a bugfix; there was a
+ misplaced semicolon after an if condition, so the immediately
+ succeeding block qould be executed unconditionally.
+
+ Compiler warning fixes in find/pred.c.
+ * find/pred.c (mode_to_filetype): return const char*.
+ (impl_pred_exec): Make target and prefix variables const.
+ (impl_pred_exec): Separate 'target' variable (which sometimes
+ points to a string literal) from a separate 'buf' variable (which,
+ if set, is always the value returned by base_name, which needs to
+ be freed.
+ (checked_fwrite): Store the result of fwrite in a size_t (i.e. the
+ same type the function returns).
+
+ Eliminate some compiler warnings in parser.c
+ * find/parser.c: Don't define the macros STRINGIFY and
+ PARSE_ACTION_NP.
+ (optionh_getfilecon): Make this function static
+ since it is not used elsewhere.
+ (optionl_getfilecon): Likewise.
+ (optionp_getfilecon): Likewise.
+ (found_parser): Likewise.
+
+ Avoid code redundancy in lib/buildcmd.c.
+ * lib/buildcmd.c (bc_get_arg_max): Recheck val only if we might
+ have changed it (i.e. when ARG_MAX is defined).
+
+ Eliminate some compiler warnings in find/parser.c.
+ * find/defs.h (struct parser_table): Make parser_name field const.
+ * find/parser.c: Remove redundant declaration of parse_print.
+ (insert_path_check): Change name of parameter pred_name to avoid
+ shadowing the function of that name.
+ (find_parser): Make search_name parameter const.
+
+ Fix a compiler warning in lib/buildcmd.c
+ * lib/buildcmd.c: special_terminating_arg should be const.
+
+ Fix compiler warnings in lib/fdleak.c
+ * lib/fdleak.c (visit_open_fds): Rename loop variable from i to j
+ to avoid shadowing.
+ (get_proc_max_fd): Fix definition (it's a void function, not a
+ traditional pre-ANSI function definition).
+
+ Fix several small compiler warnings.
+ * lib/dircallback.c: Include dircallback.h.
+ * lib/dircallback.h: Correct declaration of run_in_dir.
+ * lib/listfile.c (file_blocksize): Use the otherwise-unused parameter.
+ * find/defs.h: Remove redundant declaration of variable options.
+
+ Fix some compiler warnings in findutils-version.c.
+ * lib/findutils-version.c: include findutils-version.h. Make
+ version_string const. Don't #define N_, since we don't use it.
+
+ Don't display a separate gnulib version.
+ * lib/findutils-version.c (display_findutils_version): Don't
+ display gnulib_version because it's no longer defined (because
+ there is no gnulib version separate from the findutils version,
+ now that gnulib is a submodule).
+ * import-gnulib.config: remove gnulib_version and destdir, they
+ are not needed any more.
+ * lib/Makefile.am (EXTRA_DIST): Don't distribute gnulib-version.h
+ or gnulib-version.c.
+ (BUILT_SOURCES): delete, there are no longer any built sources.
+ * lib/gnulib-version.h: Remove.
+ * locate/code.c: Don't include gnulib-version.h
+ * xargs/xargs.c: Don't include gnulib-version.h
+
+2011-06-01 James Youngman <jay@gnu.org>
+
+ Take the last matching entry in /etc/mtab, not the first.
+ * find/fstype.c (file_system_type_uncached): Instead of taking the
+ first match, take the last match. This deals better with mtab
+ implementations in which there can be duplicate entries, for
+ example Linux-based systems in which /etc/mtab is a symlink to
+ /proc/mounts) can have duplicate entries in the file system list.
+ This happens most frequently for /.
+ * NEWS: Mention this change.
+
+2011-06-02 James Youngman <jay@gnu.org>
+
+ Remove unnecessary header checks and include guards.
+ * configure.ac (AC_CHECK_HEADERS): Remove checks for header files
+ that gnulib either assumes are always present, or provides
+ itself. These include errno.h fcntl.h inttypes.h limits.h
+ locale.h stddef.h stdint.h stdlib.h string.h sys/types.h
+ unistd.h.
+ * lib/buildcmd.c: Remove include guard for limits.h.
+ * find/fstype.c: Remove include guard for sys/types.h.
+ * lib/savedirinfo.c: Likewise.
+ * find/find.c: Remove include guard for locale.h.
+ * find/ftsfind.c: Likewise.
+
+2011-06-01 James Youngman <jay@gnu.org>
+
+ Better error handling for the result of set_fstype_devno.
+ * find/fstype.c (file_system_type_uncached): If set_fstype_devno
+ fails for an entry (that is, the device number stays at -1) don't
+ consider it a match.
+ (get_mounted_filesystems): Don't call set_fstype_devno since we
+ don't need to check the device number.
+ (get_mounted_devices): If set_fstype_devno fails for a file
+ system, don't return it.
+
+2011-05-31 James Youngman <jay@gnu.org>
+
+ import-gnulib.sh now stops if it sees the old directory layout.
+ * import-gnulib.sh (check_old_gnulib_dir_layout): Check the
+ ./gnulib-git, ./gnulib/ and ./gl/ subdirectories to figure out if
+ we are using a current version of import-gnulib.sh with an old
+ directory layout. If so, print an explanation of the problem and
+ return false.
+ (main): stop if check_old_gnulib_dir_layout didn't like the
+ directory layout.
+
+ Minor fixes in import-gnulib.sh.
+ * import-gnulib.sh (fixmsg): Fix punctuation in the commands given
+ for installing the changelog driver.
+ (usage): Explain what the -a option does.
+ (run_gnulib_tool): delete broken symlinks in the output directory,
+ not the gnulib source.
+ (check_merge_driver): fix the path to the ChangeLog merge driver
+ source.
+
+2011-05-30 James Youngman <jay@gnu.org>
+
+ Manage gnulib as a git submodule.
+ * .gitmodules: New file; manage gnulib as a submodule. For future
+ compatibility with the "bootstrap" script, keep the gnulib
+ submodule in the gnulib directory (instead of the gnulib-git
+ directory as before). This means we need to find a new directory
+ for the output of gnulib-tool; we will use "gl" for that.
+ * import-gnulib.sh (do_checkout): Replace with do_submodule.
+ (do_submodule): initialise and configure the gnulib module.
+ (main): call do_submodule instead of do_checkout. Don't call
+ move_cvsdir, it's obsolete.
+ (move_cvsdir): delete
+ (run_gnulib_tool): change gnulib to ${gldest} (and set that variable).
+ (hack_gnulib_tool_output): generate gl/Makefile.am, not
+ gnulib/Makefile.am.
+ (refresh_output_files): Rename gnulib to gl.
+ (update_version_file): Check the state of the submodule.
+ * Makefile.am (SUBDIRS): Rename gnulib to gl.
+ (ACLOCAL_AMFLAGS): Likewise.
+ * lib/Makefile.am (INCLUDES): Likewise.
+ (LDADD): Likewise.
+ (findutils-check-smells): Rename gnulib-git to gnulib.
+ * find/Makefile.am (INCLUDES): Change gnulib to gl.
+ (LDADD): Likewise.
+ * xargs/Makefile.am (INCLUDES): Change gnulib to gl.
+ (LDADD): Likewise.
+ * locate/Makefile.am (INCLUDES): Rename gnulib to gl.
+ (LDADD): Likewise.
+ * .gitignore: Rename gnulib to gl.
+ * configure.ac (AC_CONFIG_MACRO_DIR): Change to gl/m4.
+ (AC_CONFIG_FILES): use gl/Makefile and gl/lib/Makefile instead of
+ gnulib/Makefile and gnulib/lib/Makefile.
+ * find/fstype.c: Include gnulib include files as "foo.h", not
+ "../gnulib/lib/foo.h", because the relative path is not needed and
+ in any case has changed.
+
+2011-05-29 James Youngman <jay@gnu.org>
+
+ Savannah bug #31424: Revert Interix-specific change.
+ Gnulib will use suacomp for solving this problem, so findutils
+ will not need a workaround here.
+ * lib/arg-max.h: Delete this file.
+ * lib/Makefile.am (libfind_a_SOURCES): Remove arg-max.h.
+ * lib/buildcmd.c: Don't include arg-max.h.
+ * xargs/xargs.c: Likewise.
+
+2011-05-24 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #33384.
+ * locate/updatedb.sh: Don't reset $PATH, because the hard-coded
+ value we were using isn't guaranteed to contain all the utilities
+ (for example rm, chmod and so on) we would like to use.
+ * NEWS: Mention this bugfix.
+
+2011-05-22 James Youngman <jay@gnu.org>
+
+ Don't assume that "echo" lives in /bin.
+ * xargs/xargs.c (main): Change default_cmd from "/bin/echo" (which
+ may not be present on some POSIX systems) to "echo" (which must
+ exist somewhere on $PATH on any POSIX system).
+ * doc/find.texi (Multiple Files): document this.
+ * NEWS: Describe this change.
+ * xargs/testsuite/xargs.sysv/empty_def-t.xe: Change /bin/echo to
+ echo.
+ * xargs/testsuite/xargs.gnu/n2-s26-x-0.exp: Change -s26 to -s21 to
+ keep the expected test result the same. Rename the test to
+ reflect the updated arguments.
+ * xargs/testsuite/xargs.gnu/n2-s26-x-0.xo: Rename to
+ n2-s21-x-0.xo.
+ * xargs/testsuite/xargs.gnu/n2-s26-0.exp: Rename to n2-s21-0.exp,
+ update -s argument.
+ * xargs/testsuite/xargs.posix/s30.exp: Rename to s25.exp, update -s.
+ * xargs/testsuite/xargs.posix/s30.xo: Rename to s25.xo.
+ * xargs/testsuite/xargs.gnu/s30-0.exp: Rename to s25-0.exp, update
+ -s argument.
+ * xargs/testsuite/xargs.gnu/s30-0.xo: Rename to s25-0.xo.
+ * xargs/testsuite/xargs.sysv/s30-t.exp: Rename to s25-t.exp,
+ update -s.
+ * xargs/testsuite/xargs.sysv/s30-t.xo: Rename to s25-t.xo.
+ * xargs/testsuite/xargs.sysv/s30-t.xe: Rename to s25-t.xe, change
+ /bin/echo to just echo.
+ * xargs/testsuite/xargs.posix/s47.exp: Rename to s42.exp, update -s.
+ * xargs/testsuite/xargs.posix/s47.xo: Rename to s42.xo.
+ * xargs/testsuite/xargs.gnu/n3-s36-0.exp: Rename to n3-s31-0.exp,
+ update -s.
+ * xargs/testsuite/xargs.gnu/n3-s36-0.xo: Rename to n3-s31-0.xo.
+ * xargs/testsuite/xargs.gnu/s20-0.exp: Rename to s15-0.exp, update
+ -s.
+ * xargs/testsuite/xargs.gnu/s20-0.xo: Rename to s15-0.xo.
+ * xargs/testsuite/xargs.posix/n2-s26.exp: Rename to n2-s21.exp,
+ update -s.
+ * xargs/testsuite/xargs.posix/n2-s26.xo: Rename to n2-s21.xo.
+ * xargs/testsuite/xargs.gnu/s19-0.exp: Rename to s14-0.exp, update
+ -s.
+ * xargs/testsuite/xargs.gnu/s19-0.xo: Rename to s14-0.xo.
+ * xargs/testsuite/xargs.gnu/s19_2-0.exp: Rename to s14_2-0.exp,
+ update -s.
+ * xargs/testsuite/xargs.gnu/s19_2-0.xo: Rename to s14_2-0.xo.
+ * xargs/testsuite/xargs.posix/n3-s36.exp: Rename to n3-s31.exp,
+ update -s.
+ * xargs/testsuite/xargs.posix/n3-s36.xo: Rename to n3-s31.xo.
+ * xargs/testsuite/xargs.posix/s19.exp: Rename to s14.exp, update
+ -s.
+ * xargs/testsuite/xargs.posix/s19.xo: Rename to s14.xo.
+ * xargs/testsuite/xargs.posix/s19_2.exp: Rename to s14_2.exp,
+ update -s.
+ * xargs/testsuite/xargs.posix/s19_2.xo: Rename to s14_2.xo.
+ * xargs/testsuite/xargs.posix/s20.exp: Rename to s15.exp,
+ update -s.
+ * xargs/testsuite/xargs.posix/s20.xo: Rename to s15.xo.
+ * xargs/testsuite/Makefile.am (EXTRA_DIST_XO): Update names.
+ (EXTRA_DIST_EXP): Likewise.
+
+2011-05-17 James Youngman <jay@gnu.org>
+
+ Document ftsfind/oldfind and configure options.
+ * doc/find.texi (Configuration): New section documenting the
+ important configuration options that can be passed to configure,
+ including --without-fts.
+ * find/find.1 (BINARIES): New section explaining why two binaries
+ are installed.
+ * find/oldfind.1: New manual page explaining how 'oldfind' is
+ different to 'find'.
+ * find/ftsfind.1: New manual page explaining how 'ftsfind' is
+ different to 'find'.
+ * find/Makefile.am (man_MANS): As well as find.1, install one of
+ ftsfind.1 or oldfind.1, depending on whether --without-fts was
+ specified to configure.
+ * NEWS: Mention this change.
+
+2011-05-15 James Youngman <jay@gnu.org>
+
+ Add lib/fdleak.c to translatable files.
+ * po/POTFILES.in: Add lib/fdleak.c.
+
+ Fix Savannah bug #18227 (-ls doesn't print device major/minor).
+ * lib/listfile.c (list_file): check HAVE_STRUCT_STAT_ST_RDEV
+ instead of HAVE_ST_RDEV, fixing this bug. HAVE_ST_RDEV was
+ defined by the obsolete Autoconf macro AC_STRUCT_ST_RDEV, but
+ findutils hasn't actually called AC_STRUCT_ST_RDEV since Apr 5
+ 2000.
+ * NEWS: Mention this bugfix.
+
+ #29698: Correct and clarify documentation of xargs -d option
+ * xargs/xargs.1: Update documentation for -d option to more
+ clearly distinguish the treatment of backslashes in the input and
+ the treatment of backslashes in the argument to -d.
+ * NEWS: Mention this bugfix.
+
+ Implement xargs --process-slot-var.
+ * xargs/xargs.c (set_slot_var): New function; sets an environment
+ variable to the index of the entry in pids[] that represents the
+ relevant child process. This can be used in rudimentary load
+ distribution systems.
+ (slot_var_name): the name of the variable to use (selected by
+ --process-slot-var).
+ (enum LongOptionIdentifier): Unique identifiers for long options
+ with no short option equivalent (--process-slot-var is the first).
+ (longopts): Add --process-slot-var.
+ (add_proc): return the index within pids[] that we selected.
+ (main): Pass &option_index to getopt_long (option_index is a new
+ variable) in order to identify which long option was passed.
+ Handle --process-slot-var.
+ (prep_child_for_exec): Call set_slot_var.
+ (usage): Mention --process-slot-var.
+ * doc/find.texi (xargs options): Document --process-slot-var.
+ * xargs/xargs.1: Likewise.
+ * NEWS: Mention this change and that it was Savannah bug #29512.
+
+ Describe xargs options in alphabetical order.
+ * xargs/xargs.1: Re-order the options to place them in
+ alphabetical order. Put --help and --version at the end.
+ * xargs/xargs.c (usage): Describe the options in alphabeitcal
+ order.
+ * NEWS: Mention this change.
+
+ Fix bug #14386: updatedb relies on mktemp, which is not portable.
+ * locate/updatedb.sh (make_tempdir): new function, works around
+ the possible absence of mktemp. We now create the file list and
+ the bigrams file in a temporary directory. Also add some quoting
+ for a few shell variables. Update the copyright years.
+ * locate/testsuite/locate.gnu/oldformat.exp: Add a test case which
+ uses the old database format, in order to exercise our mktemp
+ replacement.
+ * locate/testsuite/Makefile.am (EXTRA_DIST_EXP): Ship this new
+ file.
+ * locate/testsuite/locate.gnu/oldformat.xo: The expected output
+ for the new test.
+ * locate/testsuite/Makefile.am (EXTRA_DIST_XO): Ship this new
+ file.
+ * NEWS: Mention this bugfix.
+
+2011-05-14 James Youngman <jay@gnu.org>
+
+ Fix bug #32043 (fnmatch should treat unquoted [ literally).
+ * import-gnulib.config (gnulib_version): Update gnulib to the
+ version which includes the fnmatch fix (a backport of glibc bug
+ #12378). This fixes our bug too.
+ * find/testsuite/sv-bug-32043.sh: New (non-DejaGnu) test script.
+ Tests Savannah bug #32043 (POSIX requires that an unquoted [
+ should be matched literally).
+ * find/testsuite/Makefile.am (TESTS): Add sv-bug-32043.sh.
+ (EXTRA_DIST): Distribute sv-bug-32043.sh.
+ * NEWS: Mention this bugfix.
+
+2011-05-11 James Youngman <jay@gnu.org>
+
+ Move on from 4.5.10, to 4.5.11-git.
+ * NEWS, configure.ac: update version number.
+
+ Prepare for release of findutils-4.5.10.
+ * NEWS: Update version number to 4.5.10 to prepare for that
+ release. Add a release date (2011-05-11).
+
+ * configure.ac: Also update version number.
+ * po/*.po, po/findutils.pot: make dist changes these.
+
+ Savannah bug #30608 (Automagic dependency on selinux) is fixed.
+ * NEWS: Mention that Savannah bug #30608 (Automagic dependency on
+ selinux) is fixed. The gnulib update on 2011-04-02 will have
+ included gnulib change 83e52ee5a420f8b552745a72e5869001b0f6da60
+ which fixes this problem. The configure script now provides a
+ --without-selinux option.
+
+ Update Estonian translation.
+ * po/et.po: Update from the Translation Project.
+
+2010-05-24 Kamil Dudka <kdudka@redhat.com>
+
+ Fix Savannah bug #29949, -execdir does not change working directory.
+ * find/pred.c (record_exec_dir): Do not throw the execdir when not
+ working in the cumulative mode.
+ * find/testsuite/find.gnu/execdir-multiple.exp: Add a test-case for
+ the bug #29949.
+ * NEWS: Mention this bugfix.
+
+2011-04-02 James Youngman <jay@gnu.org>
+
+ Change "can not" to "cannot".
+ * lib/buildcmd.c (bc_push_arg): "can not" -> "cannot" in message.
+ * find/tree.c: Likewise in a comment.
+
+ Update Danish translation.
+ * po/da.po: Likewise.
+
+ Update Slovenian, German, Estonian, French, Japanese translations.
+ * po/sl.po: Updated from the Translation Project.
+ * po/de.po: Likewise.
+ * po/et.po: Likewise.
+ * po/fr.po: Likewise.
+ * po/ja.po: Likewise.
+
+ Update to the current version of gnulib.
+ * import-gnulib.config (gnulib_version): Update to the current
+ version of gnulib.
+ * configure.ac: Update to gettext 0.18.1.
+ * po/Rules-quot: Update this file from gettext.
+
+ Use parse-datetime instead of the obsolete module getdate.
+ * import-gnulib.config (modules): Import the gnulib module
+ parse-datetime instead of the obsolete module getdate.
+ * find/parser.c: Include parse-datetime.h instead of getdate.h.
+ * doc/find.texi: Include parse-datetime.texi instead of
+ getdate.texi.
+ * doc/Makefile.am (find_TEXINFOS): Use parse-datetime.texi instead
+ of getdate.texi.
+
+2010-10-23 James Youngman <jay@gnu.org>
+
+ Savannah bug #31424: Work around Interix bug in _SC_ARG_MAX,
+ in which execve will fail with ENOMEM if we use a command line
+ somewhere between ARG_MAX and _SC_ARG_MAX.
+ * lib/arg-max.h: New file: undefine _SC_ARG_MAX if we cannot rely
+ on the value that sysconf produces.
+ * lib/Makefile.am (libfind_a_SOURCES): Add arg-max.h.
+ * lib/buildcmd.c: #include arg-max.h.
+ * xargs/xargs.c: Likewise.
+
+2010-10-21 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #31359: FAIL: test-strstr on alpha.
+ * import-gnulib.config (gnulib_version): Update the version of
+ gnulib.
+ * NEWS: Mention this bugfix.
+
+2010-10-11 James Youngman <jay@gnu.org>
+
+ * doc/find.texi (Further Reading on Security): Give some
+ references to further reading on security.
+ * NEWS: Mention this change.
+
+2010-08-16 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #30777.
+ * find/parser.c (insert_exec_ok): Fail if {} appears in an
+ argument between -exec ... \+ but it's not the whole argument
+ (that is, reject "FOO{}"). Previously the FOO prefix was accepted
+ but ignored, which is probably POSIX-incompliant and certainly
+ surprising.
+ * find/testsuite/find.posix/sv-bug-30777.exp: New test case for
+ Savannah bug #30777.
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP): Add
+ find.posix/sv-bug-30777.exp.
+
+2010-08-15 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #30180, wrong error message for -size b300
+ * find/parser.c (parse_size): Don't print a suffix in the error
+ message if no suffix was specified.
+ * NEWS: Mention this change.
+
+ * po/da.po: Update Danish translation.
+
+2010-05-11 John Gilmore <gnu@xargs.toad.com>
+
+ Fix bug arising when we receive SIGUSR2.
+ * xargs/xargs.c (xargs_do_exec): Don't assume that proc_max won't
+ decrease while we are waiting for a process to exit. This happens
+ if we receive SIGUSR2.
+
+2010-05-09 James Youngman <jay@gnu.org>
+
+ * xargs/xargs.1: Refer to signal(7) rather than signal(2).
+
+2010-05-08 John Gilmore <gnu@xargs.toad.com>
+
+ Control xargs parallelism with SIGUSR1/SIGUSR2.
+ * xargs/xargs.c: Increase parallelism in mid-run with SIGUSR1;
+ decrease it with SIGUSR2.
+ * doc/find.texi, xargs/xargs.1, NEWS: Document SIGUSR1/2.
+
+2010-05-09 Sergei Golovan <sgolovan@gmail.com> (tiny change)
+
+ Fix Savannah bug #29828, test suite deadlock on FreeBSD.
+ * find/testsuite/find.gnu/sv-bug-24169.exp: Read find output until
+ eof before calling wait, in order to avoid a deadlock on FreeBSD.
+
+2010-05-08 Andreas Metzler <gnu@downhill.at.eu.org>
+
+ Fix a typo. Use "\-" in nroff, rather than a naked "-".
+ * find/parser.c (check_option_combinations): Fix typo
+ "atomatically".
+ * find/find.1 (-name): protect nroff hyphens with backslashes.
+ * locate/locatedb.5: Likewise.
+
+2010-05-07 James Youngman <jay@gnu.org>
+
+ * AUTHORS: Add Kamil Dudka.
+
+2010-05-07 Kamil Dudka <kdudka@redhat.com>
+
+ * lib/dircallback.c (run_in_dir): Make sure that if the callback
+ doesn't get run, the return value is nonzero. Make sure that if
+ the directory save/restore fails, we don't overwrite errno with a
+ random value (and hence report some unrelated and nonexistent
+ error, instead of the real problem). Restore the previous current
+ directory.
+
+2010-05-04 James Youngman <jay@gnu.org>
+
+ Bugfix: make sure make distdir works in VPATH directly after configure
+ * locate/Makefile.am (EXTRA_DIST): Add dblocation.texi.
+ (dblocation.texi): Always rebuild, but don't replace the existing
+ version if the content would not change.
+
+2010-04-30 James Youngman <jay@gnu.org>
+
+ Update Finnish and Italian translations.
+ * po/fi.po: Updated Finnish translation.
+ * po/it.po: Updated Italian translation.
+ * NEWS: Mention these updates.
+
+ Move on from 4.5.9.
+ * NEWS: Bump the version number from 4.5.9 to 4.5.10-git.
+ * configure.ac: Likewise.
+
+2010-04-29 James Youngman <jay@gnu.org>
+
+ Prepare for the release of findutils version 4.5.9.
+ * NEWS: Change the version number to 4.5.9.
+ * configure.ac: Likewise.
+
+ Preserve locate/dblocation.texi during 'make clean'.
+ * locate/Makefile.am (DISTCLEANFILES): Clean dblocation.texi for
+ 'make distclean', but not 'make clean'.
+
+2010-04-18 James Youngman <jay@gnu.org>
+
+ Remove redundant declarations.
+ * locate/frcode.c: Don't declare xmalloc, include xalloc.h instead.
+ * locate/code.c: Don't declare program_name, we already included
+ progname.h.
+
+ Remove support for compilers lacking prototypes.
+ * find/defs.h: Don't define or use the PARAMS macro.
+ * xargs/xargs.c: Likewise.
+ * locate/locatedb.h: Likewise.
+ * locate/frcode.c: Likewise.
+ * lib/buildcmd.c: Likewise.
+ * find/tree.c: Likewise.
+ * find/pred.c: Likewise.
+ * find/parser.c: Likewise.
+ * find/fstype.c: Likewise.
+ * find/find.c: Likewise.
+
+2010-04-21 James Youngman <jay@gnu.org>
+
+ Update Chinese (simplified) translation.
+ * po/zh_CN.po: Updated from the Translation Project.
+ * NEWS: Mention this change.
+
+2010-04-18 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #29593: Make import-gnulib.sh work under a POSIX shell.
+ * import-gnulib.sh: Remove bash-specific '[[...]]' tests; instead
+ use '[...]'.
+ * NEWS: Mention this bugfix.
+
+2010-04-17 James Youngman <jay@gnu.org>
+
+ Remove obsolete module strpbrk.
+ * import-gnulib.config (modules): Remove strpbrk.
+
+ * locate/Makefile.am (locate_TEXINFOS): Add dblocation.texi.
+
+2010-04-13 James Youngman <jay@gnu.org>
+
+ Correct some test file names.
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP):
+ find.gnu/sv-bug-25359-execdir.exp should in fact be
+ find.gnu/sv-bug-27563-execdir.exp and
+ find.posix/sv-bug-25359-exec.exp should be
+ find.posix/sv-bug-27563-exec.exp.
+
+ * .x-sc_prohibit_test_minus_ao: Condense the file (since the
+ entries are regular expressions anyway).
+
+ * .x-sc_prohibit_empty_lines_at_EOF: New file; exceptions for the
+ sc_prohibit_empty_lines_at_EOF syntax check.
+
+2010-04-11 James Youngman <jay@gnu.org>
+
+ Make sure we don't open a file on a standard fd (that is, 0/1/2).
+ * lib/fdleak.c: Include fcntl--.h to turn calls to open into calls
+ to open_safer.
+ * find/find.c: Likewise.
+
+ After-the-fact change to NEWS for 4.5.8: fixed bug 27974.
+ * NEWS: Mention that release 4.5.8 also fixed bug #27974 (Use
+ gnulib's xreadlinkat support), though the NEWS file in that
+ release omitted to say so.
+
+ Fix Savannah bug #29511: fails to build on kfreebsd-*
+ * lib/fdleak.c (get_max_fd): Don't use RLIM_SAVED_MAX or
+ RLIM_SAVED_CUR. Not only are they non-portable, they aren't
+ useful.
+ * NEWS: Mention this bugfix.
+
+ Remove some unused or dead code.
+ * find/util.c (hook_fstatat): This has been disabled and unused
+ for a long time, delete it.
+ * find/find.c (process_dir): Remove some unused debug code.
+ * find/tree.c (predlist_insert): Remove some dead code.
+ * lib/fdleak.c (complain_about_leaky_fds): Remove some unused
+ debug code.
+
+ Add a test case for Savannah bug 27563 (-L breaks -execdir).
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP): Add
+ find.gnu/sv-bug-27563-execdir.exp and
+ find.posix/sv-bug-27563-exec.exp.
+ (EXTRA_DIST_XO): Add find.gnu/sv-bug-27563-execdir.xo and
+ find.posix/sv-bug-27563-exec.xo.
+ * find/testsuite/find.gnu/sv-bug-27563-execdir.exp: New test.
+ * find/testsuite/find.posix/sv-bug-27563-exec.exp: New test.
+ * find/testsuite/find.gnu/sv-bug-27563-execdir.xo: Expected output.
+ * find/testsuite/find.posix/sv-bug-27563-exec.xo: Expected output.
+
+ Fix Savannah bug #27563, -L breaks -execdir.
+ * find/pred.c (initialise_wd_for_exec): New function, factoring
+ out part of the body of record_exec_dir.
+ (record_exec_dir): If state.rel_pathname contains a /, extract the
+ directory part and initialise execp->wd_for_exec to point at that
+ directory.
+ (impl_pred_exec): Rename new_impl_pred_exec to impl_pred_exec.
+ Drop the prefix and pfxlen parameters. Compute the base name of
+ the target and pass that to the bc_push_arg function instead of
+ state.rel_pathname. Deal with state.rel_pathname being an
+ absolute path (e.g. find / -execdir...). Introduce a new
+ variable, result, allowing us to free the buffer used for the base
+ name in the return path.
+ (pred_exec): Don't pass the prefix and the prefix length any more.
+ (pred_execdir): Likewise.
+ (pred_ok): Likewise.
+ (pred_okdir): Likewise.
+
+2010-04-10 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #19593, -execdir .... {} + has suboptimal performance
+ * find/ftsfind.c (consider_visiting): Don't call
+ complete_pending_execdirs for every file we visit.
+ (find): Instead, call complete_pending_execdirs every time we
+ see a file which isn't at the same nesting level as the previous
+ file we saw. This is an improvement but not optimal (since
+ descending into a subdirectory will cause us to issue an exec
+ before we've finished with the current directory).
+ * NEWS: Mention this change.
+
+ Exec predicates now store which directory they want to run in.
+ * lib/dircallback.c (run_in_dirfd): New name for old run_in_dir
+ function.
+ (run_in_dir): Like the old function of the same name, but now
+ takes an argument const struct saved_cwd *.
+ * lib/dircallback.h: Update declarations of run_in_dirfd and
+ run_in_dir.
+ * find/util.c: Include dircallback.h, xalloc.h, save-cwd.h.
+ (do_complete_pending_execdirs): Remove dir_fd parameter, since the
+ per-predicate data structures now indicate what directory they
+ need to be run in. Instead of calling bc_do_exec directly, use a
+ callback 'exec_cb' that uses run_in_dir (which now takes a
+ saved_cwd* parameter instead of a file descriptor).
+ (do_exec): Called by do_complete_pending_execdirs, and simply uses
+ run_in_dir to call exec_cb, restoring the working directory
+ afterward.
+ (record_initial_cwd): New function, initialises the global
+ variable initial_wd.
+ (cleanup_initial_cwd): New function, cleans up the global variable
+ initial_wd.
+ (cleanup): Call cleanup_initial_cwd.
+ (get_start_dirfd): Remove.
+ (is_exec_in_local_dir): New function; true for predicates -execdir
+ and -okdir.
+ * find/pred.c: Include cloexec.h and save-cwd.h.
+ (record_exec_dir): New function, sets the value of
+ execp->wd_for_exec if needed.
+ (new_impl_pred_exec): Remove the obsolete dir_fd parameter. Call
+ record_exec_dir.
+ (pred_exec): Don't pass the dir_fd parameter.
+ (pred_execdir): Likewise.
+ (pred_ok): Likewise.
+ (pred_okdir): Likewise.
+ (can_access): Call run_in_dirfd rather than run_in_dir (the
+ function was renamed).
+ (prep_child_for_exec): Remove dir_fd parameter; don't fchdir to
+ that. Call restore_cwd instead (passing a saved_cwd* parameter
+ which replaced dir_fd).
+ (launch): Remove references to execp->use_current_dir.
+ (launch): Change references to execp->dir_fd to execp->wd_for_exec.
+ * find/parser.c: Correct indentiation of declaration of
+ insert_exec_ok and remove the obsolete dir_fd parameter.
+ (parse_exec): Don't pass the dir_fd parameter to insert_exec_ok.
+ (parse_execdir): Likewise.
+ (parse_ok): Likewise.
+ (parse_okdir): Likewise.
+ (insert_exec_ok): Remove obsolete dir_fd paramter. Initialise
+ execp->wd_for_exec, either to NULL (for -*dir) or to the
+ initial_wd.
+ * find/ftsfind.c: Remove get_current_dirfd. Remove
+ complete_execdirs_cb.
+ (consider_visiting): Call complete_pending_execdirs directly.
+ (main): Call record_initial_cwd to record the initial working
+ directory, early on. Don't initialise starting_dir or
+ starting_desc, they have been removed.
+ * find/finddata.c: Include save-cwd.h. Remove starting_dir and
+ starting_desc. Add new global variable initial_wd. It is a struct
+ saved_wd* and represents find's initial working directory.
+ * find/find.c: Include save-cwd.h.
+ (main): Call record_initial_cwd in order to initialise the
+ global variable initial_wd Don't set starting_desc and
+ starting_dir, since those variables have been removed.
+ (safely_chdir): Don't pass an fd to complete_pending_execdirs.
+ (chdir_back): Remove the safety check (since we are using fchdir
+ and in any case no longer have all the data that the existing
+ wd_sanity_check function wants).
+ (do_process_top_dir): Don't pass an fd to
+ complete_pending_execdirs.
+ (process_dir): Likewise.
+ * find/defs.h (struct exec_val): Remove use_current_dir and
+ dir_fd. Replace with wd_for_exec, which is a struct saved_wd*.
+ (get_start_dirfd): Remove prototype.
+ (get_current_dirfd): Remove prototype.
+ (complete_pending_execdirs): No longer takes dir_fd parameter.
+ (record_initial_cwd): Add prototype.
+ (is_exec_in_local_dir): Add prototype.
+ (options): Declare.
+ (initial_wd): Add declaration. It is a struct saved_wd* and
+ represents find's initial working directory.
+ (starting_dir): Remove declaration of global variable.
+ (starting_desc): Remove declaration of global variable.
+ * import-gnulib.config (modules): Import module save-cwd.
+
+2010-04-10 James Youngman <jay@gnu.org>
+
+ Add a test which checks $CWD for find -execdir {} +/;
+ * find/testsuite/find.gnu/execdir-multiple.exp: New test; verifies
+ that for -execdir +, all the execs occur with the correct working
+ directory.
+ * find/testsuite/find.gnu/execdir-multiple.xo: Expected output for
+ this test.
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP): Add the new test.
+ (EXTRA_DIST_XO): Add the expected output file.
+ * find/testsuite/config/unix.exp (mkdir): Create proc "mkdir"
+ which creates a directory.
+ * find/testsuite/find.gnu/execdir-pwd1.exp: New test.
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP): Add
+ execdir-pwd1.exp.
+
+2010-04-11 James Youngman <jay@gnu.org>
+
+ Fix syntax checks problems for check sc_unmarked_diagnostics.
+ * find/tree.c (get_pred_cost): Clarify an error message and mark
+ it for translation.
+
+ Fix false positives for syntax check sc_prohibit_test_minus_ao.
+ * .x-sc_prohibit_test_minus_ao: Add all the DejaGnu scripts to the
+ list of exceptions to the 'test C1 -a C2' syntax check, since they
+ are not actually shell scripts.
+
+ Remove trailing blank lines.
+ * .x-sc_prohibit_empty_lines_at_EOF: Add list of exceptions to the
+ no-blank-lines-at-EOF syntax check.
+ * doc/regexprops.texi: Remove empty lines at the end of the file.
+ * find/finddata.c: Likewise.
+ * find/fstype.c: Likewise.
+ * find/testsuite/excuses.txt: Likewise.
+ * find/testsuite/find.gnu/access.exp: Likewise.
+ * find/testsuite/find.gnu/exec-one-rtn-fail.exp: Likewise.
+ * find/testsuite/find.gnu/posix-perminvalid.exp: Likewise.
+ * find/testsuite/find.gnu/samefile-missing.exp: Likewise.
+ * find/testsuite/find.gnu/samefile-p-brokenlink.exp: Likewise.
+ * find/testsuite/find.gnu/sv-bug-17490.exp: Likewise.
+ * find/testsuite/find.gnu/sv-bug-18222.exp: Likewise.
+ * find/testsuite/find.posix/bracket-depth.exp: Likewise.
+ * find/testsuite/find.posix/empty-parens.exp: Likewise.
+ * find/testsuite/find.posix/files-not-expressions1.exp: Likewise.
+ * find/testsuite/find.posix/files-not-expressions2.exp: Likewise.
+ * find/testsuite/find.posix/files-not-expressions3.exp: Likewise.
+ * find/testsuite/find.posix/group-empty.exp: Likewise.
+ * find/testsuite/find.posix/user-empty.exp: Likewise.
+ * find/testsuite/find.posix/user-missing.exp: Likewise.
+ * lib/extendbuf.c: Likewise.
+ * lib/fdleak.c: Likewise.
+ * lib/fdleak.h: Likewise.
+ * lib/findutils-version.h: Likewise.
+ * lib/gnulib-version.h: Likewise.
+ * lib/printquoted.c: Likewise.
+ * lib/regextype.c: Likewise.
+ * lib/safe-atoi.c: Likewise.
+ * locate/testsuite/config/unix.exp: Likewise.
+ * locate/testsuite/locate.gnu/exists1.exp: Likewise.
+ * locate/testsuite/locate.gnu/exists2.exp: Likewise.
+ * locate/testsuite/locate.gnu/exists3.exp: Likewise.
+ * locate/testsuite/locate.gnu/ignore_case1.exp: Likewise.
+ * locate/testsuite/locate.gnu/ignore_case2.exp: Likewise.
+ * locate/testsuite/locate.gnu/ignore_case3.exp: Likewise.
+ * locate/testsuite/locate.gnu/notexists1.exp: Likewise.
+ * locate/testsuite/locate.gnu/notexists2.exp: Likewise.
+ * locate/testsuite/locate.gnu/notexists3.exp: Likewise.
+ * locate/testsuite/locate.gnu/sv-bug-14535.exp: Likewise.
+ * m4/Makefile.am: Likewise.
+ * m4/nullsort.m4: Likewise.
+ * xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp: Likewise.
+ * xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp: Likewise.
+
+ After-the-fact change to NEWS for 4.5.8: fixed bug 27221.
+ * NEWS: Mention that release 4.5.8 also fixed bug #27221
+ (symlink_loop check broken by FTS_CWDFD), though the NEWS file in
+ that release omitted to say so.
+
+ After-the-fact change to NEWS for 4.5.8: fixed bug 27974.
+ * NEWS: Mention that release 4.5.8 also fixed bug #27974 (Use
+ gnulib's xreadlinkat support), though the NEWS file in that
+ release omitted to say so.
+
+2010-04-10 James Youngman <jay@gnu.org>
+
+ * import-gnulib.config (gnulib_version): Update to current gnulib
+ head.
+
+2010-04-09 James Youngman <jay@gnu.org>
+
+ * find/parser.c (parse_samefile): Use open_cloexec to open the
+ reference file, so that we don't leak a file descriptor.
+
+2010-04-09 Roberto Reale <rreale@iol.it> (tiny change)
+
+ * find/parser.c (parse_samefile): Since collect_arg_stat_info
+ increments *arg_ptr, argv[*arg_ptr] is often NULL. Use filename
+ instead, as that's the variable in which we store the name of our
+ file. The purpose of the fd was only to attempt to keep the inode
+ number stable on systems that don't really have inode numbers, so
+ this change should have no functional effect on POSIX systems.
+
+2010-04-08 James Youngman <jay@gnu.org>
+
+ Adopt the use of the gnulib module readlink.
+ * import-gnulib.config (modules): Add readlink.
+
+ Adopt the use of the gnulib module isblank.
+ (modules): Add isblank.
+
+ Adopt the use of the gnulib module faccessat.
+ * import-gnulib.config (modules): Add faccessat.
+ * find/pred.c (struct access_check_args): Delete.
+ (access_callback): Delete.
+ (can_access): Delete.
+ (pred_executable): Use faccessat.
+ (pred_readable): Likewise.
+ (pred_writable): Likewise.
+
+ Adopt (explicitly) the use of the gnulib module dirent-safer.
+ * import-gnulib.config (modules): Add dirent-safer; we were
+ previously transitively importing this module, but we are now
+ importing it directly.
+ * lib/savedirinfo.c: Include opendir-safer.h.
+ (xsavedir): Call opendir_safer instead of opendir.
+
+ Adopt the use of the gnulib module d-type.
+ * import-gnulib.config (modules): Import the d-type module.
+ * configure.ac: Remove old struct dirent.d_type detection logic
+ (since we now use the gnulib macro from the d-type module for
+ this).
+ * find/parser.c (parse_version): Use HAVE_STRUCT_DIRENT_D_TYPE
+ (since the d-ino module still defines it) but remove references to
+ the macro USE_STRUCT_DIRENT_D_TYPE, since it's not defined and not
+ needed.
+ * lib/savedirinfo.c: Use HAVE_STRUCT_DIRENT_D_TYPE but ignore
+ USE_STRUCT_DIRENT_D_TYPE.
+ (xsavedir): Unconditionally initialise
+ internal[result->size].type_info so that we don't have untested
+ code (HAVE_STRUCT_DIRENT_D_TYPE is defined on my system).
+
+ Move on from 4.5.8.
+ * configure.ac: Bump the version number to 4.5.9-git.
+ * NEWS: Likewise.
+
+2010-04-07 James Youngman <jay@gnu.org>
+
+ Prepare to release findutils-4.5.8.
+ * configure.ac: Update version number in AC_INIT.
+ * NEWS: Update version number and release date.
+
+ Depend on gnulib modules appropriate to features we already use.
+ * import-gnulib.config (modules): Add c-casestr, errno, fdopendir,
+ fflush, getdelim, gettimeofday, locale, modf, perror, snprintf,
+ stat, stdarg, stddef, stdio, stdlib, string, strpbrk, sys_time,
+ sys_wait.
+ Also add comments about other modules we may also want to use
+ which would require other code changes (for example dirent-safer).
+ * find/Makefile.am (LDADD): Add $(LIB_EACCESS) $(LIB_SELINUX)
+ $(MODF_LIBM) which are needed by gnulib modules we now depend on.
+
+ More stat/xstat cleanup.
+ * find/parser.c (estimate_fstype_success_rate): Change the name of
+ the variable "dir" to "the_root_dir" to emphasise that it doesn't
+ matter that we're calling stat rather than options.xstat.
+ * find/ftsfind.c (symlink_loop): Call options.xstat instead of
+ stat/lstat, because options.xstat takes account of
+ state.cwd_dir_fd.
+
+ Fix Savannah bug 29460, -printf %Y fails in $CWD-dependent way
+ * find/pred.c (do_fprintf): Use optionl_stat and optionp_stat
+ instead of stat and lstat, because the first two functions are
+ aware of state.cwd_dir_fd.
+ * find/testsuite/find.gnu/printf-nonlocal-symlink.exp: A new test
+ case for this bug.
+ * find/testsuite/find.gnu/printf-nonlocal-symlink.xo: Expected
+ output for this test.
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP): Add the new test
+ case.
+ (EXTRA_DIST_XO): Add the expected-output file.
+ * NEWS: Mention this fix.
+
+ * lib/strspn.c: Delete this unused file.
+
+ Update the maintenance manual.
+ * doc/find-maint.texi: Update the maintenance manual to take into
+ account the fact that we uniformly use git rather than CVS. Point
+ out the new version tag format. Mention "make coverage".
+ README-CVS is now called README-hacking. Update the URL for the
+ Translation Project.
+
+ Eliminate some obsolete code.
+ * locate/locate.c (search_one_database): Remove obsolete code
+ (alternative size for procdata.pathsize).
+ * lib/buildcmd.c (get_line_max): Remove obsolete function.
+
+ Remove obsolete code from savedirinfo.c.
+ * lib/savedirinfo.c (new_savedirinfo): Rename new_savedirinfo to
+ savedirinfo.
+ (old_savedirinfo): Remove obsolete function body.
+
+ Support extendbuf buffers larger than SIZE_MAX/2.
+ * lib/extendbuf.c (xextendbuf): New function; extends the buffer,
+ but calls xalloc_die on failure. On the the other hand, extendbuf
+ returns NULL on failure.
+ (decide_size): If wanted>SIZE_MAX/2, return wanted. This means
+ that for very large buffers, performance on repeated extension
+ degrades from linear to quadratic (instead of just failing at that
+ point, as before).
+ * lib/savedirinfo.c (xsavedir): Use xextendbuf rather than
+ extendbuf, now that there is a difference in semantics.
+ * find/fstype.c (get_mounted_filesystems): If extendbuf returns
+ NULL, fail (by returning NULL ourselves).
+ (get_mounted_devices): Likewise.
+
+ * po/vi.po: Update Vietnamese translation.
+ * NEWS: Mention this change.
+
+2010-04-05 James Youngman <jay@gnu.org>
+
+ Use set_program_name in regexprops.
+ * lib/regexprops.c: Include "progname.h". Update function
+ defintions to have a newline before the function name (to comply
+ with the GNU coding standard). Use set_program_name.
+
+2010-04-06 James Youngman <jay@gnu.org>
+
+ Fix several merge errors.
+ * find/defs.h (struct state): Correct type of
+ already_issued_stat_error_msg from boolean to bool.
+ * find/util.c (report_file_err): Likewise with parameter
+ is_target_file.
+ * find/pred.c: Include "areadlink.h".
+ (do_fprintf): nonfatal_file_error should be
+ nonfatal_target_file_error.
+ (match_lname): Likewise.
+
+ Update some translations.
+ * po/cs.po: Update Czech translation.
+ * po/nl.po: Update Dutch translation.
+ * po/pl.po: Update Polish translation.
+ * po/ru.po: Update Russian translation.
+
+ * import-gnulib.config (modules): Use the getopt-gnu module from
+ gnulib rather than the (obsolete) getopt module.
+
+ Remove form-feeds.
+ * find/find.c: Remove form-feed characters.
+ * find/ftsfind.c: Likewise.
+ * find/parser.c: Likewise.
+ * find/pred.c: Likewise.
+ * find/tree.c: Likewise.
+ * find/util.c: Likewise.
+ * locate/locate.c: Likewise.
+ * xargs/xargs.c: Likewise.
+
+2010-04-05 James Youngman <jay@gnu.org>
+
+ Use bool instead of the previous typedef boolean.
+ * find/defs.h: Don't create typedef "boolean"; use the standard
+ type bool. Update other declarations accordingly.
+ * find/find.c: Update declarations and function definitions to use
+ bool.
+ * find/ftsfind.c: Likewise.
+ * find/parser.c: Likewise.
+ * find/pred.c: Likewise.
+ * find/tree.c: Likewise.
+ * find/util.c: Likewise.
+ * locate/locate.c: Likewise.
+ * xargs/xargs.c: Likewise.
+
+ Make use of gnulib's areadlinkat.
+ * lib/listfile.c: #include "areadlink.h" but not "dircallback.h",
+ since we no longer need to use get_link_name_at.
+ Don't include xalloc.h, since we don't need it.
+ (get_link_name_at): Delete.
+ (get_link_name_cb): Delete.
+ (get_link_name): Delete.
+ * lib/listfile.h: Remove declaration of get_link_name_at.
+ * find/pred.c (match_lname): Use areadlinkat instead of
+ get_link_name_at.
+
+ Use bool instead of the previous typedef boolean.
+ * find/defs.h: Don't create typedef "boolean"; use the standard
+ type bool. Update other declarations accordingly.
+ * find/find.c: Update declarations and function definitions to use
+ bool.
+ * find/ftsfind.c: Likewise.
+ * find/parser.c: Likewise.
+ * find/pred.c: Likewise.
+ * find/tree.c: Likewise.
+ * find/util.c: Likewise.
+ * locate/locate.c: Likewise.
+ * xargs/xargs.c: Likewise.
+
+ Don't issue an error message twice for the same target file.
+ * find/defs.h (struct state): New member,
+ already_issued_stat_error_msg, used to de-duplicate error
+ messages. If it is true, we already issued an error message for
+ the current target file.
+ Declare fatal_target_file_error, fatal_nontarget_file_error,
+ nonfatal_target_file_error, nonfatal_nontarget_file_error.
+ Between them, they replace fatal_file_error and
+ nonfatal_file_error. The *target_file_error versions are
+ de-duplicated and the nontarget_file_error_versions are not.
+ * find/util.c (nonfatal_nontarget_file_error): Implement.
+ (fatal_nontarget_file_error): Implement.
+ (nonfatal_target_file_error): Implement.
+ (fatal_target_file_error): Implement.
+ (fatal_file_error): Remove.
+ (nonfatal_file_error): Remove.
+ (error_severity): Define error_severity (moved from ftsfind.c)
+ (get_statinfo): Call nonfatal_target_file_error in order to avoid
+ a duplicate message. ALso call error_severity after a different
+ call to error to preserve the constraint that we exit with a
+ nonzero status if we issue a diagnostic.
+ (cleanup): Call nonfatal_nontarget_file_error instead of
+ nonfatal_file_error.
+ * find/tree.c (build_expression_tree): Initialise
+ state.already_issued_stat_error_msg.
+ * find/find.c (main): Initialise state.already_issued_stat_error_msg.
+ (wd_sanity_check): Call fatal_target_file_error instead of
+ fatal_file_error.
+ (chdir_back): Call fatal_nontarget_file_error instead of
+ fatal_file_error.
+ (process_path): Initialise state.already_issued_stat_error_msg.
+ * find/ftsfind.c (consider_visiting): Call
+ nonfatal_target_file_error instead of calling error directly.
+ (find): Call error_severity to ensure exit status is nonzero after
+ a call to error.
+ (main): Initialise state.already_issued_stat_error_msg.
+ (error_severity): Move to util.c.
+ * find/parser.c (collect_arg_stat_info): Call
+ fatal_target_file_error instead of fatal_file_error.
+ (parse_newerXY): Likewise.
+ (parse_samefile): Likewise.
+ (parse_samefile): Likewise.
+ (open_output_file): Call fatal_nontarget_file_error instead of
+ fatal_file_error.
+ * find/pred.c (checked_fprintf): Likewise.
+ (checked_print_quoted): Likewise.
+ (checked_fwrite): Likewise.
+ (checked_fflush): Likewise.
+ * find/sharefile.c (entry_free): Likewise.
+
+2010-04-04 Martin von Gagern <Martin.vGagern@gmx.net>
+
+ Fix Savannah bug #27213: avoid failed assertions for
+ non-executable directories.
+ (consider_visiting): Continue (after issuing an error message)
+ even if ent->fts_info == FTS_NS.
+ * find/util.c (get_statinfo): If we cannot stat the file, issue a
+ diagnostic, but continue anyway.
+ * find/ftsfind.c (consider_visiting): Don't assert-fail if
+ ent->fts_info == FTS_NSOK. Don't assert-fail if state.type is
+ nonzero.
+
+2010-04-04 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #29435: fd_is_cloexec does not work on Fedora
+ buildhosts.
+ Fix open_cloexec on hosts which ignore O_CLOEXEC (i.e. old kernels).
+ * lib/fdleak.c (o_cloexec_works): New function, detects whether
+ the open flag O_CLOEXEC has any effect.
+ (open_cloexec): Call o_cloexec_works, just once, to find out
+ whether O_CLOEXEC is effective. If not, set the close-on-exec
+ flag on fds by calling set_cloexec_flag.
+ * NEWS: Mention this bugfix.
+
+ Use bool instead of the previous typedef boolean.
+ * find/defs.h: Don't create typedef "boolean"; use the standard
+ type bool. Update other declarations accordingly.
+ * find/find.c: Update declarations and function definitions to use
+ bool.
+ * find/ftsfind.c: Likewise.
+ * find/parser.c: Likewise.
+ * find/pred.c: Likewise.
+ * find/tree.c: Likewise.
+ * find/util.c: Likewise.
+ * locate/locate.c: Likewise.
+ * xargs/xargs.c: Likewise.
+
+2010-04-05 Jim Meyering <meyering@redhat.com>
+
+ frcode: avoid link failure due to multiple program_name definition
+ * locate/frcode.c: Include "progname.h".
+ (program_name): Remove two declarations.
+ Now the definition comes from gnulib.
+
+2010-04-04 James Youngman <jay@gnu.org>
+
+ Don't return int to represent a boolean value.
+ * find/defs.h: fd_leak_check_is_enabled should return boolean, not
+ int. Likewise following_links and digest_mode.
+ * lib/buildcmd.h: Likewise for bc_args_exceed_testing_limit.
+ Also #include <stdbool.h>.
+ * find/util.c (fd_leak_check_is_enabled): Now returns boolean.
+ * find/util.c (following_links): Likewise.
+ * find/util.c (digest_mode): Likewise.
+ * lib/buildcmd.c (bc_args_exceed_testing_limit): Likewise.
+ * find/find.c (get_current_dirfd): Indent definition correctly.
+ * find/util.c (get_start_dirfd): Likewise.
+
+ Fix Savannah bug #29435: fd_is_cloexec does not work on Fedora
+ buildhosts.
+ Fix open_cloexec on hosts which ignore O_CLOEXEC (i.e. old kernels).
+ * lib/fdleak.c (o_cloexec_works): New function, detects whether
+ the open flag O_CLOEXEC has any effect.
+ (open_cloexec): Call o_cloexec_works, just once, to find out
+ whether O_CLOEXEC is effective. If not, set the close-on-exec
+ flag on fds by calling set_cloexec_flag.
+ * NEWS: Mention this bugfix.
+
+2010-04-03 James Youngman <jay@gnu.org>
+
+ Move on from 4.5.7.
+ * configure.ac: Update version number again, to 4.5.8-git.
+ * NEWS: Likewise.
+
+ Prepare for release of findutils-4.5.7.
+ * configure.ac: Update version number.
+ * NEWS: Mention the translation changes. Update version number.
+
+ Accelerate find/testsuite/find.posix/exec-nogaps.exp.
+ * find/testsuite/config/unix.exp (optimisation_levels_to_test):
+ New function, decides which optimisation levels we shuld run find
+ at for the current test. Set $OPTIMISATION_LEVELS to control
+ this.
+ (find_start): Call optimisation_levels_to_test to determine which
+ optimisation levels to run find at.
+ * find/testsuite/find.posix/exec-nogaps.exp: Run the test only at
+ -O3 (but for both oldfind and ftsfind).
+
+ Correct the format of copyright statements, and add 2010.
+ * lib/fdleak.h: Correct the format of the copyright statement.
+ * po/vi.po: Likewise.
+ * lib/safe-atoi.h: Likewise.
+ * locate/locate.c: Likewise.
+ * po/ca.po: Likewise.
+ * po/gl.po: Likewise.
+ * po/fi.po: Likewise.
+ * po/it.po: Likewise.
+ * po/findutils.pot: Fill in the boilerplate in the header.
+
+ Update copyright years.
+ * find/defs.h: Update copyright years.
+ * find/finddata.c: Likewise.
+ * find/sharefile.h: Likewise.
+ * lib/buildcmd.h: Likewise.
+ * lib/dircallback.h: Likewise.
+ * lib/extendbuf.h: Likewise.
+ * lib/findutils-version.h: Likewise.
+ * lib/gnulib-version.h: Likewise.
+ * lib/listfile.h: Likewise.
+ * lib/nextelem.c: Likewise.
+ * lib/nextelem.h: Likewise.
+ * lib/printquoted.h: Likewise.
+ * lib/regextype.h: Likewise.
+ * lib/savedirinfo.h: Likewise.
+ * lib/strspn.c: Likewise.
+ * lib/waitpid.c: Likewise.
+ * locate/locatedb.h: Likewise.
+ * m4/mkinstalldirs.m4: Likewise.
+ * m4/noreturn.m4: Likewise.
+ * build-aux/check-testfiles.sh: Likewise.
+ * build-aux/src-sniff.py: Likewise.
+ * import-gnulib.sh: Likewise.
+ * locate/testsuite/config/unix.exp: Likewise.
+ * locate/updatedb.sh: Likewise.
+ * xargs/testsuite/config/unix.exp: Likewise.
+
+ Add the update-copyright gnulib module.
+ * import-gnulib.config (maintainer_modules): Separate out the
+ modules primarily useful for maintainer activities. Add
+ 'update-copyright' to this.
+ * build-aux/.cvsignore: Ignore update-copyright, since it's
+ installed by gnulib.
+ * build-aux/.gitignore: Likewise.
+
+ Ignore generated files for the convenience of non-VPATH users.
+ * lib/.gitignore: Ignore object and archive files.
+ * find/.gitignore: Likewise.
+ * locate/.gitignore: Ignore object files.
+
+2010-04-02 James Youngman <jay@gnu.org>
+
+ Check for accidental modifications to the wrong section of the
+ NEWS file.
+ * cfg.mk (local-checks-to-skip): Remove sc_immutable_news.
+ (old_NEWS_hash): add existing hash (from "make update-NEWS-hash").
+
+ * cfg.mk: Append the names of checks to skip to
+ local-checks-to-skip rather than inventing 7 new variables.
+
+ Don't include quote.h/quotearg.h where it is not used.
+ * find/find.c: Don't include "quote.h", it's not used.
+ * find/ftsfind.c: Likewise.
+ * find/parser.c: Likewise.
+ * locate/locate.c: Likewise.
+ * locate/word_io.c: Likewise.
+ * cfg.mk (skip_dunno): Enable check sc_prohibit_quote_without_use.
+ * find/find.c: Don't include "quotearg.h", it's not used.
+ * lib/fdleak.c: Likewise.
+
+ Use set_program_name() to remember the programs' names.
+ * cfg.mk *skip(defer): Enable sc_program_name. Remove the
+ now-unused variable skip_defer.
+ * find/ftsfind.c: Include "program_name.h".
+ (main): Call set_program_name.
+ * find/find.c: Include "program_name.h".
+ (main): Call set_program_name.
+ * locate/locate.c: Include "program_name.h".
+ (dolocate): Call set_program_name.
+ Remove global variable program_name.
+ * locate/bigram.c: Include "program_name.h".
+ Remove global variable "program_name".
+ (main): Call set_program_name.
+ * locate/frcode.c: Include "program_name.h".
+ (main): Call set_program_name.
+ * xargs/xargs.c (main): Call set_program_name.
+ Include "program_name.h".
+ Remove global variable program_name.
+ * find/finddata.c: Remove global variable program_name.
+ * find/defs.h: No longer need declaration of program_name.
+ * find/util.c: Include "program_name.h".
+
+ Use named constants for xargs exit codes.
+ * xargs/xargs.c (child_error): Use EXIT_SUCCESS instead of 0.
+ (enum XargsStatusValues): introduce named constants for the
+ various things that cause speicific exit codes.
+ (enum ClientStatusValues): Also introduce named constants for the
+ child's exit status.
+ (get_char_oct_or_hex_escape): Use EXIT_FAILURE instead of 1.
+ (get_input_delimiter): Likewise.
+ (main): Likewise.
+ (read_line): Likewise.
+ (read_string): Likewise.
+ (print_args): Likewise.
+ (xargs_do_exec): Likewise.
+ (wait_for_proc): Likewise.
+ (wait_for_proc): Use enum XargsStatusValues for exit codes.
+ (parse_num): Use EXIT_FAILURE instead of 1.
+
+ Avoid using magic numbers as exit statuses.
+ * cfg.mk (skip_defer): Enable sc_prohibit_magic_number_exit.
+ * doc/find-maint.texi (Security): Avoid error (1, ...) in the
+ example patch.
+ * find/find.c (main): Use exit status EXIT_FAILURE instead of 1.
+ (wd_sanity_check): Likewise.
+ (safely_chdir_lstat): Likewise.
+ (process_dir): Likewise.
+ * find/fstype.c (must_read_fs_list): Likewise.
+ * find/ftsfind.c (main): Likewise.
+ (main): Likewise.
+ * find/parser.c (check_option_combinations): Use exit status
+ EXIT_FAILURE instead of 1.
+ (parse_group): Likewise.
+ (parse_help): Use exit status EXIT_SUCCESS instead of 0.
+ (parse_version): Likewise.
+ (fnmatch_sanitycheck): Use exit status EXIT_FAILURE instead of 1.
+ (insert_depthspec): Likewise.
+ (parse_newerXY): Likewise.
+ (non_posix_mode): Likewise.
+ (parse_perm): Likewise.
+ (insert_regex): Likewise.
+ (parse_size): Likewise.
+ (parse_show_control_chars): Likewise.
+ (parse_used): Likewise.
+ (parse_user): Likewise.
+ (parse_context): Likewise.
+ (insert_type): Likewise.
+ (insert_fprintf): Likewise.
+ (make_segment): Likewise.
+ (check_path_safety): Likewise.
+ (new_insert_exec_ok): Likewise.
+ (get_relative_timestamp): Likewise.
+ (parse_time): Likewise.
+ * find/tree.c (get_expr): Use exit status EXIT_FAILURE instead of 1.
+ (scan_rest): Likewise.
+ (get_pred_cost): Likewise.
+ (get_pred_cost): Likewise.
+ (build_expression_tree): Likewise.
+ (get_new_pred_chk_op): Likewise.
+ * find/pred.c (launch): Use exit status EXIT_FAILURE instead of 1.
+ * find/util.c (process_debug_options): Use exit status
+ EXIT_SUCCESS instead of 0.
+ (process_optimisation_option): Use exit status EXIT_FAILURE
+ instead of 1.
+ (set_option_defaults): Likewise.
+ * lib/buildcmd.c (exceeds): Likewise.
+ (bc_do_exec): Likewise.
+ (bc_push_arg): Likewise.
+ * lib/nextelem.c: Remove test code.
+ * lib/safe-atoi.c (safe_atoi): Use exit status EXIT_FAILURE
+ instead of 1.
+ * lib/regextype.c (get_regex_type): Use exit status EXIT_FAILURE
+ instead of 1. Include <stdlib.h>, for EXIT_FAILURE.
+ * locate/locate.c (set_max_db_age): Use exit status EXIT_FAILURE
+ instead of 1.
+ (set_max_db_age): Likewise.
+ (toolong): Likewise.
+ (visit_locate02_format): Likewise.
+ (search_one_database): Likewise.
+ (drop_privs): Likewise.
+ * locate/frcode.c (get_seclevel): Use exit status EXIT_FAILURE
+ instead of 1.
+ (outerr): Likewise.
+ (main): Likewise.
+ * locate/code.c (inerr): Use exit status EXIT_FAILURE instead of
+ 1.
+ (outerr): Likewise.
+ * locate/word_io.c (getword): Use exit status EXIT_FAILURE instead of 1.
+
+ Avoid sc_prohibit_stat_st_blocks check, since it is broken.
+ * cfg.mk (skip_broken_checks): Skip sc_prohibit_stat_st_blocks.
+
+ Enable syntax checker sc_the_the, detecting doubled 'the'.
+ * cfg.mk (false_positives): Enable syntax checker sc_the_the
+ * build-aux/src-sniff.py (checkers): Avoid false positive with
+ sc_the_the.
+
+ Avoid false positives for sc_prohibit_atoi_atof.
+ * find/util.c (set_option_defaults): Avoid false positive with
+ sc_prohibit_atoi_atof.
+ (check_nofollow): Likewise.
+
+ Avoid sscanf.
+ * lib/fdleak.c (get_proc_max_fd): Use safe_atoi to do string to
+ int conversion, instead of sscanf. Skip '.' and '..'.
+ * cfg.mk (skip_defer): Enable the sc_prohibit_atoi_atof check.
+
+ * po/POTFILES.in: Remove source files we don't maintain any more.
+ Also remove files which exist but have no translated messages
+ (dircallback.c, listfile.c).
+ * lib/listfile.c: Don't include libintl, since there are no
+ translated messages in this file.
+ * lib/dircallback.c: Likewise.
+
+ Move safe_atoi out into a separate module.
+ * find/parser.c: Include "safe-atoi.h". Remove the body of safe_atoi.
+ (parse_group): pass options.err_quoting_style to safe_atoi.
+ (insert_depthspec): Likewise.
+ (parse_user): Likewise.
+ * lib/safe-atoi.h: New file.
+ * lib/safe-atoi.c: New file. Add parameter for quoting style (to
+ avoid an external reference to the "options"struct).
+ * lib/Makefile.am (libfind_a_SOURCES): Add safe-atoi.c and
+ safe-atoi.h.
+
+ Avoid false positives for the sc_prohibit_test_minus_ao syntax check.
+ * doc/find.texi (Updating A Timestamp File): Work around a syntax
+ check designed to prevent the use of "test X -a Y".
+ * find/find.1: Likewise.
+
+ * find/ftsfind.c: We don't use anything from xalloc.h, so don't
+ #include it.
+
+ Eliminate some unused function result warnings.
+ * lib/unused-result.h: New file, defines function attribute macro
+ __attribute_warn_unused_result__.
+ * lib/Makefile.am (EXTRA_DIST): Add unused-result.h.
+ * find/ftsfind.c (find): Issue a diagnostic if fts_close fails,
+ change return type to bool and return false for this case. Add
+ __warn_unused_result__ attribute.
+ (process_all_startpoints): Likewise (except no need for second
+ diagnostic).
+ (main): If process_all_startpoints failed, don't do the cleanup
+ operations because we don't know what subdirectory we're in.
+
+ * find/util.c (fd_leak_check_is_enabled): Avoid implicit
+ pointer-to-int conversion.
+ * lib/buildcmd.c: #include <stdlib.h> for declaration of free.
+
+ Avoid false positives for the sc_prohibit_test_minus_ao syntax check.
+ * doc/find.texi (Updating A Timestamp File): Work around a syntax
+ check designed to prevent the use of "test X -a Y".
+ * find/find.1: Likewise.
+
+ * find/ftsfind.c: We don't use anything from xalloc.h, so don't
+ #include it.
+
+ Eliminate some unused function result warnings.
+ * lib/unused-result.h: New file, defines function attribute macro
+ __attribute_warn_unused_result__.
+ * lib/Makefile.am (EXTRA_DIST): Add unused-result.h.
+ * find/ftsfind.c (find): Issue a diagnostic if fts_close fails,
+ change return type to bool and return false for this case. Add
+ __warn_unused_result__ attribute.
+ (process_all_startpoints): Likewise (except no need for second
+ diagnostic).
+ (main): If process_all_startpoints failed, don't do the cleanup
+ operations because we don't know what subdirectory we're in.
+
+ * find/util.c (fd_leak_check_is_enabled): Avoid implicit
+ pointer-to-int conversion.
+ * lib/buildcmd.c: #include <stdlib.h> for declaration of free.
+
+ Fix some space-followed-by-tab sequences.
+ * NEWS: Change space-tab sequences to just spaces.
+ * build-aux/check-testfiles.sh (main): Likewise
+ * build-aux/src-sniff.py (checkers): Likewise.
+ * find/Makefile.am: Likewise.
+ * find/testsuite/find.posix/sv-bug-25359.exp: Likewise.
+ * import-gnulib.sh (check_merge_driver): Likewise.
+ * m4/withfts.m4 (FIND_WITH_FTS): Likewise.
+ * cfg.mk (false_positives): Explain why we can't enable the
+ sc_space_tab check (xargs .xo test files).
+
+ * cfg.mk: Explain that we cannot enable the sc_texinfo_acronym
+ syntax check right now, since the perm.texi file uses
+ @acronym{GNU} but we try to keep that in sync. with coreutils.
+
+ Mark error messages for translation.
+ * find/parser.c (safe_atoi): Likewise.
+ * find/pred.c (pred_context): Likewise.
+ (do_fprintf): Likewise.
+ * xargs/xargs.c (xargs_do_exec): Translate error message.
+ (xargs_do_exec): Likewise.
+ * lib/buildcmd.c (exceeds): Likewise.
+
+ Add customisation of the behaviour of "make syntax-check".
+ * cfg.mk: New file; configuration file for the maintainer-makefile
+ provided by gnulib.
+
+ * import-gnulib.config (modules): Add maintainer-makefile.
+
+ Various coding standard fixes.
+ * m4/withfts.m4: Quote the first argument of AC_DEFINE.
+ * lib/regextype.c: Don't use HAVE_CONFIG_H.
+ * doc/find-maint.texi: Remove RCS keywords (they were in an
+ example security vulnerability announcement).
+
+ Don't define S_IS*; include <sys/stat.h> instead.
+ * lib/modetype.h: Remove (all it does is define S_IS*).
+ * lib/Makefile.am (EXTRA_DIST): Remove modetype.h.
+ * lib/listfile.c: Don't define S_IS* macros.
+ * find/pred.c: Don't include "modetype.h".
+ * find/parser.c: Likewise.
+ * find/ftsfind.c: Likewise.
+ * find/fstype.c: Likewise.
+ * find/find.c: Likewise.
+
+ * m4/withfts.m4: Quote the first argument of AC_DEFINE.
+
+ Coding standard fix: "Warning" should be "WARNING".
+ * find/find.c (dirchange_is_fatal): Change "Warning" to "WARNING".
+ * find/ftsfind.c (consider_visiting): Likewise.
+ * find/pred.c (pred_newerXY): Likewise.
+ * find/util.c (get_statinfo): Likewise.
+ (hook_fstatat): Likewise.
+ * locate/word_io.c (decode_value): Likewise.
+ * xargs/xargs.c (main): Change "Warning" to "warning".
+ (read_line): Change "Warning" to "WARNING".
+ (wait_for_proc): Likewise.
+
+ Remove useless if conditionals before calls to 'free'.
+ * lib/nextelem.c (next_element): Remove useless if-before-free.
+ * lib/buildcmd.c (bc_do_exec): Likewise.
+ * find/find.c (process_dir): Likewise.
+
+ * import-gnulib.sh (usage): Defeat the simple GPL version check
+ of maint.mk, since it's trying to identify GPL2 licenses. Since
+ the 'rehack' script converts v2 licenses into v3, we get a false
+ positive for v2. So, amusingly, we use the same hack that
+ maint.mk uses to avoid a false positive on itself: spurious
+ quotes.
+
+ Switch from GNU Free Documentation License 1.2 to 1.3.
+ * NEWS: Update GFDL version.
+ * README-hacking: Likewise.
+ * doc/find-maint.texi: Likewise.
+ * lib/regexprops.c: Likewise (though the license being changed is
+ the license for the output).
+
+ * NEWS: Update copyright years.
+
+2010-04-01 James Youngman <jay@gnu.org>
+
+ Change error (1, ...) to error (EXIT_FAILURE, ...).
+ * find/find.c: Change error (1, ...) to error (EXIT_FAILURE, ...).
+ * find/fstype.c: Likewise.
+ * find/ftsfind.c: Likewise.
+ * find/parser.c: Likewise.
+ * find/pred.c: Likewise.
+ * find/tree.c: Likewise.
+ * find/util.c: Likewise.
+ * locate/code.c: Likewise.
+ * locate/frcode.c: Likewise.
+ * locate/locate.c: Likewise.
+ * locate/word_io.c: Likewise.
+ * xargs/xargs.c: Likewise.
+ * lib/buildcmd.c: Likewise. Also include <stdlib.h>.
+ * lib/regextype.c: Likewise (both).
+
+ Assume C89 (or C99) C headers. Assume working <ctype.h>.
+ * xargs/xargs.c: Unconditionally include <ctype.h>. Assume
+ isblank(c) is defined. Assume memcpy() has a prototype in
+ <string.h>.
+ * import-gnulib.config (modules): Import gnulib's ctype module.
+
+ Optimise -fstype NOTUSED to -false at -O2.
+ * find/parser.c: Include mountlist.h.
+ (insert_false): New function, inserts a -false predicate.
+ (parse_false): Use insert_false.
+ (is_used_fs_type): New function, determines if any mounted
+ filesystem is of the named type.
+ (parse_fstype): At optimisation level 2 and above, -fstpe FOO
+ is converted to -false if no mounted filesytem is of type FOO.
+ * find/find.1: Document this optimisation.
+ * doc/find.texi (Optimisation Options): Likewise.
+ * NEWS: Mention this change.
+
+ Updated copyright years to add 2010.
+ * find/find.c: Add 2010.
+ * find/fstype.c: Add 2010.
+ * find/ftsfind.c: Add 2010.
+ * find/parser.c: Add 2010.
+ * find/pred.c: Add 2010.
+ * find/sharefile.c: Add 2010.
+ * find/testsuite/config/unix.exp: Add 2010.
+ * find/tree.c: Add 2010.
+ * find/util.c: Add 2010.
+ * locate/bigram.c: Add 2010.
+ * locate/frcode.c: Add 2010.
+ * xargs/xargs.c: Add 2010.
+
+ Coding style fixes: space after function names.
+ * lib/buildcmd.c: Insert a space between function name and open
+ parenthesis.
+ * lib/dircallback.c: Likewise.
+ * lib/extendbuf.c: Likewise.
+ * lib/fdleak.c: Likewise.
+ * lib/findutils-version.c: Likewise.
+ * lib/forcefindlib.c: Likewise.
+ * lib/listfile.c: Likewise.
+ * lib/printquoted.c: Likewise.
+ * lib/qmark.c: Likewise.
+ * lib/regexprops.c: Likewise.
+ * lib/regextype.c: Likewise.
+ * lib/savedirinfo.c: Likewise.
+ * locate/code.c: Likewise.
+ * locate/frcode.c: Likewise.
+ * locate/locate.c: Likewise.
+ * locate/word_io.c: Likewise.
+
+2010-03-31 James Youngman <jay@gnu.org>
+
+ Coding style fixes: space after function names.
+ * find/util.c: Insert a space between function name and open
+ parenthesis.
+ * find/ftsfind.c: Likewise.
+ * find/fstype.c: Likewise.
+ * find/util.c: Likewise.
+ * find/tree.c: Likewise.
+ * find/sharefile.c: Likewise.
+ * find/pred.c: Likewise.
+ * find/parser.c: Likewise.
+ * xargs/xargs.c: Likewise.
+
+ Move version number on to 4.5.7-git, so that we can make test
+ releases.
+ * configure.ac: Update version number.
+ * NEWS: Likewise.
+ * Makefile.am (AUTOMAKE_OPTIONS): Return to "gnits" rules.
+
+ Mention additional bugfixes.
+ * NEWS: Mention that Savannah bug #29089 was also fixed in
+ 4.5.6b.
+
+ Prepare for release of findutils-4.5.6b
+ This release is identical to 4.5.6 apart from the version number
+ and the fact that it was generated by automake version 1.11.1 in
+ order to avoid issues with CVE-2009-4029.
+ * configure.ac: Update version number.
+ * NEWS: Update version number. Mention that Savannah bug #29089
+ was also fixed in 4.5.6b.
+ * Makefile.am: switch to 'gnu' option ('gnits' forbids the 'b'
+ suffix).
+
+2010-03-30 James Youngman <jay@gnu.org>
+
+ Prepare for release of findutils-4.5.6
+ * configure.ac: Update version number.
+ * NEWS: Update version number.
+
+ Support O_CREAT in open_cloexec.
+ * lib/fdleak.c: Include <stdarg.h> and "cloexec.h".
+ (open_cloexec): Support O_CREAT. Use O_CLOEXEC if it is available.
+ (O_CLOEXEC): #define to 0 if not already #defined.
+ * lib/fdleak.h: Update prototype of open_cloexec to allow mode to
+ be passed.
+
+ * import-gnulib.config (modules): Import modules open (for
+ PROMOTED_MODE_T) and stdbool (for 'true').
+
+ Tolerate the absence of getrusage.
+ * configure.ac: Check for <sys/resource.h> and the getrusage
+ function.
+ * lib/fdleak.c: Don't #include <sys/resource.h> if we don't have it.
+ (get_max_fd): If neither /proc/self/fd not getrusage is available,
+ return _POSIX_OPEN_MAX.
+
+ Detect leaks in file descriptors 0, 1, 2.
+ * lib/fdleak.c: (remember_non_cloexec_fds): Also check for leaks
+ in file descriptors 0, 1, 2, just in case the caller closed them.
+ (find_first_leaked_fd): Likewise.
+
+2009-08-16 James Youngman <jay@gnu.org>
+
+ Bugfixes to the handling of %Z in the Red Hat SELinux patch.
+ * find/pred.c (do_fprintf): If getfilecon fails, print the
+ relevant segment anyway, with the file context expanding to an
+ empty string.
+ * find/parser.c (make_segment): For %Z, set the cost to
+ NeedsAccessInfo.
+
+2009-08-11 Kamil Dudka <kdudka@redhat.com>
+
+ find: add SELinux support
+ * find/defs.h: Add SELinux related definitions.
+ * find/tree.c: Add -context predicate to lookup.
+ * find/pred.c: Handle %Z printf directive.
+ * find/parser.c: Parse -context predicate and %Z printf directive.
+ * find/find.1: Mention -context predicate and %Z printf directive.
+ * doc/find.texi: Mention -context predicate and %Z printf directive.
+ * find/Makefile.am: Add SELinux libraries.
+ * import-gnulib.config: Require module selinux-at and the corresponding
+ version of gnulib.
+
+2010-03-29 James Youngman <jay@gnu.org>
+
+ Fix file descriptor leaks. This fixes Savannah bug bug #27375.
+ * find/util.c (fd_leak_check_is_enabled): New function; returns
+ nonzero if the environment variable GNU_FINDUTILS_FD_LEAK_CHECK is
+ enabled. Setting this variable enables the file descriptor leak
+ checker.
+ * find/defs.h: Declare fd_leak_check_is_enabled.
+ * import-gnulib.config (gnulib_version): Update to more recent
+ version of gnulib. Import the cloexec module too.
+ * lib/fdleak.c: New file; a module for detecting file descriptor
+ leaks. Also define an open_cloexec() function.
+ * lib/fdleak.h: Declare the global functions defined in fdleak.c.
+ * lib/Makefile.am (libfind_a_SOURCES): Add fdleak.c.
+ * find/find.c (main): Call remember_non_cloexec_fds in order to
+ detect file descriptor leaks.
+ (main): set FD_CLOEXEC on starting_desc.
+ (safely_chdir_lstat): Likewise for dotfd.
+ (safely_chdir_nofollow): Likewise for fd.
+ * find/ftsfind.c (inside_dir): set FD_CLOEXEC on curr_fd.
+ (main): Call remember_non_cloexec_fds in order to detect file
+ descriptor leaks.
+ (main): set FD_CLOEXEC on starting_desc.
+ * find/pred.c (launch): before we exec the child, call
+ complain_about_leaky_fds in order to complain about non-FD_CLOEXEC
+ file descriptors that weren't open when the program was run.
+ * find/sharefile.c (sharefile_fopen): Set FD_CLOEXEC on the files
+ we open.
+ * import-gnulib.sh (run_gnulib_tool): Pass the --local-dir option
+ in order to apply any required patches (none needed right now).
+ * find/testsuite/config/unix.exp: Set environment variable
+ $GNU_FINDUTILS_FD_LEAK_CHECK to enable the file descriptor leak
+ check for all tests.
+ * find/testsuite/find.gnu/no-fdleak-test.exp: New test; runs find
+ with the fd leak detector turned off, in order to make sure there
+ are no (e.g.) crashing bugs when that happens.
+ * find/testsuite/find.gnu/no-fdleak-test.xo: Expected output for
+ the new test.
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP): Add no-fdleak-test.exp
+ (EXTRA_DIST_XO): Add no-fdleak-test.xo.
+
+ * NEWS: Mention these changes.
+
+2010-03-30 James Youngman <jay@gnu.org>
+
+ Add missing exec-nogaps.{exp,xo}.
+ * find/testsuite/Makefile.am (EXTRA_DIST_XO): Add exec-nogaps.xo.
+ (EXTRA_DIST_EXP): Add exec-nogaps.exp.
+
+2010-02-25 James Youngman <jay@gnu.org>
+
+ Explain the problems with "-name a/b" and "-path foo/".
+ * find/find.1 (-iname): We already refer to -name, so duplicate
+ less text.
+ (-name): Explain that -name a/b will never match anything.
+ * doc/find.texi (Base Name Patterns): Explain that -name a/b will
+ never match anything.
+ (Full Name Patterns): Fix typo.
+
+2010-02-22 James Youngman <jay@gnu.org>
+
+ * xargs/xargs.1: Simplify the wording in the description of "xargs
+ -i".
+
+2010-02-21 James Youngman <jay@gnu.org>
+
+ Update #include directives for the openat module, to comply with
+ recent POSIX-compliance changes.
+ * find/find.c: Don't include <openat.h>.
+ * find./ftsfind.c: Likewise.
+ * find/pred.c: Likewise; include <unistd.h>.
+ * find/util.c: Don't include <openat.h>; include <sys/stat.h>.
+
+ * import-gnulib.config (gnulib_version): Update to current version
+ of gnulib.
+ * build-aux/.cvsignore: Ignore new files built by gnulib.
+ * build-aux/.gitignore: Likewise.
+
+2010-02-20 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #27846: assertion failure in xargs.c on AIX.
+ * xargs/xargs.c (smaller_of): New function, returns the smaller of
+ its two size_t arguments.
+ (main): Instead of asserting that the value of bc_ctl.arg_max is
+ smaller than some value, simply adjust the value if necessary.
+ * NEWS: Mention this change.
+
+ Fix Savannah bug#28872, Mistake in "Problems with -exec and filenames"
+ * doc/find.texi (Problems with -exec and filenames): Add missing
+ $0 argument in example for sh -c 'something "$@" sh ...
+ * NEWS: Mention this change.
+
+ Fix Savannah bug# 28824: "-ctime x" yields "missing argument to
+ `-ctime'".
+ * find/parser.c (parse_fls): If the argument is invalid, reverse
+ the change that collect_arg() made to *arg_ptr (that is, don't
+ consume the argument).
+ (parse_fprint0): Likewise.
+ (parse_gid): Likewise.
+ (parse_group): Likewise.
+ (parse_inum): Likewise.
+ (parse_links): Likewise.
+ (do_parse_xmin): Likewise.
+ (parse_name): Likewise.
+ (parse_printf): Likewise.
+ (parse_uid): Likewise.
+ (parse_used): Likewise.
+ (parse_time): Likewise.
+ * NEWS: mention this change.
+
+2009-12-04 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #26868: compilation error in pred.c on Solaris
+ x86_64.
+ * import-gnulib.config (modules): Include gnulib's math module, to
+ avoid a compilation error for "-HUGE_VAL" on Solaris x86_64.
+ * NEWS: Mention this change.
+
+2009-11-29 James Youngman <jay@gnu.org>
+
+ * find/testsuite/find.posix/exec-nogaps.exp: New test for find
+ -exec ... {} ; and find -exec ... {} +, both of which simply
+ ensure that all exec arguments are processed exactly once each.
+ * find/testsuite/find.posix/exec-nogaps.xo: Expected output file
+ for the test in exec-nogaps.exp.
+
+ Fix Savannah bug#27328, segfault if the initial exec for "find
+ -exec" fails. Also Savennah bug #27975: Infinite loop
+ for -exec [..] {} +.
+ * lib/buildcmd.h (struct buildcmd_state): Introduce
+ largest_successful_arg_count and smallest_failed_arg_count in
+ order to avoid an assumption that we understand how the operatingn
+ system interprets ARG_MAX and the assumption that the compile-time
+ ARG_MAX value (or the equivalent from sysconf()) is avtually
+ correct.
+ (struct buildcmd_control): Change the calling convention of the
+ exec callback to allow us to pass the argument list separately.
+ (bc_args_exceed_testing_limit): declare this new function.
+ * lib/buildcmd.c (bc_args_complete): New function, NULL-terminates
+ the argv list. We use this instead of passing NULL to
+ bc_push_arg().
+ (update_limit): New function. Decides how many arguments to
+ pass to the invoked command on the next attempt.
+ (copy_args): Build an argument list containing all the initial
+ arguments plus some of the other args (the number to be used is
+ decided by update_limit).
+ (bc_do_exec): Avoid special-casing the first call to exec. Use
+ update_limit to decide how many arguments to pass and copy_args to
+ build the argument list. The new form of the loop should fix
+ Savannah bug #27328.
+ (bc_push_arg): Drop support for passing NULL as an argument (to
+ terminate the arg list we just pass in a special argument instead).
+ (bc_args_exceed_testing_limit): New function, returns nonzero if
+ the argument list exceeds a testing limit (used for failure
+ injection by tests).
+ (exceeds): New support function, implementing part of
+ bc_args_exceed_testing_limit.
+ (bc_init_state): Initialise largest_successful_arg_count and
+ smallest_failed_arg_count.
+ * find/defs.h (struct exec_val): New member last_child_status.
+ This stores the status of the most recently completed child.
+ * find/pred.c (new_impl_pred_exec): Use last_child_status.
+ (launch): Use the new calling convention for the exec callback.
+ Set last_child_status. Call bc_args_exceed_testing_limit() to do
+ failure injection for unit tests.
+ * find/util.c (do_complete_pending_execdirs): Call bc_do_exec
+ rather than calling launch directly in order to allow for breaking
+ the argument list up if it's too long.
+ * xargs/xargs.c (xargs_do_exec): Update to use the new caling
+ convention for the exec callback.
+ * NEWS: Mention these fixes.
+
+2009-11-09 Jim Meyering <meyering@redhat.com>
+
+ Adjust two xargs diagnostics.
+ * xargs/xargs.c (print_args): Give a better diagnostic when
+ failing to open /dev/tty.
+ (xargs_do_exec): Mark a diagnostic for translation.
+
+2009-11-08 James Youngman <jay@gnu.org>
+
+ Localise some previously non-localised strings.
+ * find/find.c (init_mounted_dev_list): Pass translatable string
+ gettext.
+ (safely_chdir_lstat): Likewise.
+ * find/fstype.c (must_read_fs_list): Likewise.
+ * find/parser.c (safe_atoi): Likewise.
+
+ Updated a number of translation messages.
+ * po/it.po: Updated Italian translation.
+ * po/fi.po: Updated Finnish translation.
+ * po/vi.po: Updated Vietnamese translation.
+ * po/hu.po: Updated Hungarian translation.
+ * po/de.po: Updated German translation.
+ * po/ru.po: Updated Russian translation.
+
+2009-08-16 James Youngman <jay@gnu.org>
+
+ * lib/check-regexprops.sh: Portability fixes for FreeBSD (mktemp
+ requires an argument, dialect differences in sed regexes).
+
+ Bugfixes to the handling of %Z in the Red Hat SELinux patch.
+ * find/pred.c (do_fprintf): If getfilecon fails, print the
+ relevant segment anyway, with the file context expanding to an
+ empty string.
+ * find/parser.c (make_segment): For %Z, set the cost to
+ NeedsAccessInfo.
+
+2009-08-15 James Youngman <jay@gnu.org>
+
+ * import-gnulib.config (gnulib_version): Update to the current
+ version of gnulib.
+
+2009-07-18 James Youngman <jay@gnu.org>
+
+ Fix up some problems introduced in a manual conflict resolution.
+ * find/parser.c (insert_path_check): Add missing third argument to
+ insert_primary_withpred.
+ (parse_iwholename): Remove redundant extra definition.
+ (parse_ipath): Likewise.
+
+2009-07-14 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #27017: find -D opt / -fstype ext3 -print , -quit
+ coredumps.
+ * find/tree.c (set_new_parent): Initialise struct
+ predicate->arg_text to NULL (instead of leaving it uninitialised).
+ (get_new_pred_noarg): Likewise.
+ (get_new_pred): Initialise predicate->arg_text to
+ "ThisShouldBeSetToSomethingElse" to make it easier to notice
+ bugs.
+ (get_new_pred_chk_op): Use get_new_pred_noarg.
+ (print_predicate): Use an if statement instead of
+ two ternary operators.
+ * find/util.c (insert_primary_withpred): Accept new argument, arg,
+ being the argument (if any) of this predicate. Pass it to
+ get_new_pred_chk_op.
+ (insert_primary): Likewise (pass arg to insert_primary_withpred).
+ (insert_primary_noarg): New function; calls insert_primary with
+ arg=NULL.
+ * find/parser.c (collect_arg_stat_info): Add an output parameter;
+ the filename from which we collected the stat information.
+ (parse_closeparen, parse_delete, parse_and, parse_or,
+ parse_comma): Use get_new_pred_noarg.
+ (parse_cnewer, parse_newer, parse_anewer): Use new
+ collect_arg_stat_info and insert_primary interface.
+ (parse_print, parse_prune, parse_nouser, parse_empty): Use
+ insert_primary_noarg.
+ (parse_accesscheck, parse_false): Use insert_primary_noarg.
+ (parse_used, parse_iname, parse_fprint, insert_fprint,
+ parse_fstype, parse_ilname): Use new collect_arg and
+ insert_primary interfaces.
+ (parse_ipath, parse_lname, do_parse_xmin, parse_name, parse_path,
+ parse_perm, parse_size, parse_user, parse_time): Use new
+ collect_arg and insert_primary_withpred interface.
+ (parse_negate, parse_openparen): Use new get_new_pred_chk_op interface.
+ (parse_newerXY, parse_nogroup): Use new insert_primary interface.
+ (insert_regex, parse_samefile): Use new insert_primary_withpred
+ interface.
+ (insert_type, insert_fprintf, new_insert_exec_ok, insert_num): Use
+ new insert_primary_withpred interface.
+ * find/defs.h (struct predicate.arg_text): make const.
+ Add declarations for new function get_new_pred_noarg and
+ insert_primary_noarg. Add 'arg' parameter to get_new_pred_chk_op
+ and insert_primary_withpred.
+ * NEWS: Mention the bugfix.
+
+2009-07-12 James Youngman <jay@gnu.org>
+
+ Savannah bug #23920: warn about -path arguments ending in /.
+ * find/parser.c (insert_path_check): new function; abstracts the
+ common functionality of parse_path, parse_ipath, parse_wholename,
+ parse_iwholename. Also check for a trailing slash and warn about
+ it (unless $POSIXLY_CORRECT is set). Don't warn if the pattern
+ also happens to be a start_point, because those could be matched.
+ (parse_path, parse_ipath, parse_wholename, parse_iwholename): Use
+ insert_path_check.
+ * find/tree.c (is_start_point): new function; returns true if the
+ indidated string matches a start point.
+ (num_start_points, start_points): new variables, storing the
+ starting points listed on the command line.
+ (build_expression_tree): Set num_start_points and start_points.
+ * find/defs.h: Declare is_start_point.
+ * doc/find.texi (Full Name Patterns): Explain that candidate names
+ for -path, -regex etc. will never end in a slash, so "-path /tmp/"
+ will never match anything.
+ * find/find.1: Likewise.
+
+ Fix Savannah bug #26327: xargs man page is vague about the number
+ of times command is executed.
+ * xargs/xargs.1 (DESCRIPTION): Explain more clearly that the
+ command will be executed many times. Indicate that -L can also be
+ useful with -P.
+ * NEWS: Mention this change.
+
+2009-07-11 James Youngman <jay@gnu.org>
+
+ * NEWS: Set the version to 4.5.6-git, so that we can make test
+ releases.
+
+2009-06-11 James Youngman <jay@gnu.org>
+
+ Make import-gnulib.sh faster in the common case where neither
+ import-gnulib.config nor gnulib itself changed.
+ * import-gnulib.sh (gnulib_changed): New variable.
+ (do_checkout): set gnulib_changed=true if the gnulib code didn't
+ already correspond to our configured version. Don't use a large
+ subshell, because we need to set $gnulib_changed and don't want
+ the value to be discarded.
+ (main): Run gnulib-tool if gnulib was not at the correct version
+ or the import-gnulib.config file has changed.
+
+2009-07-10 Reuben Thomas <rrt@sc3d.org>
+
+ Fix quotation punctuation in find manual page, fixing bug #19120.
+ * find/find.1: Use ` instead of ' at the start of quoted text. Use
+ \(aq instead of ' or \' in commands to get a literal straight quote.
+ Use ` and ' instead of `` and '' (for consistency).
+ * NEWS: mention this change.
+
+2009-07-10 James Youngman <jay@gnu.org>
+
+ * import-gnulib.config (gnulib_version): Update to the current version
+ of gnulib.
+
+ Fix Savannah bug #24873, Duplicate fprint option corrupts output
+ by opening each output file only once.
+ * find/sharefile.c: New file; keeps a mapping from dev/inode to
+ FILE*, allowing us to determine when the file we just opened is
+ the same as something else we already opened.
+ * import-gnulib.config (modules): Import the hash module, used by
+ sharefile.c.
+ * find/sharefile.h: Function declarations for same.
+ * find/find.c (main): Call sharefile_init().
+ * find/ftsfind.c (main): Likewise.
+ * find/parser.c (open_output_file): Call sharfile_fopen to open an
+ output file, instead of fopen_safer.
+ * find/util.c (cleanup): Close any shared output files that are
+ open. Also fflush stdout.
+ (undangle_file_pointers): Set the relevant FILE* pointers to
+ NULL.
+ (flush_and_close_output_files): Remove (since sharefile_destroy
+ has the desired effect).
+ * find/Makefile.am (libfindtools_a_SOURCES): Add sharefile.c.
+ (EXTRA_DIST): Add sharefile.h.
+ * find/defs.h: #include sharefile.h.
+ (struct state): Add member shared_files, holding a handle to the
+ shared-file hash table implemented in sharefile.[ch].
+ * find/testsuite/find.gnu/fprintf-samefile.exp: New test,
+ exercising -fprintf (though it is not able to detect bug #24873).
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP): Add
+ find.gnu/fprintf-samefile.exp.
+ * NEWS: Mention the bugfix.
+
+2009-07-07 James Youngman <jay@gnu.org>
+
+ * NEWS: Indicate that -wholename is no longer preferred over -ipath.
+
+2009-07-06 James Youngman <jay@gnu.org>
+
+ Prepare for release of findutils version 4.5.5.
+ * configure.ac: Set version number to 4.5.5.
+ * NEWS: Likewise.
+
+2009-07-06 Andreas Metzler <gnu@downhill.at.eu.org>
+
+ * doc/find.texi: Various typo fixes.
+
+2009-07-05 James Youngman <jay@gnu.org>
+
+ Fix typo in -execdir documentation.
+ * doc/find.texi (Single File): Typo correction; we're describing
+ -execdir, not -exec.
+ * NEWS: Mention the bugfix.
+
+2009-05-12 James Youngman <jay@gnu.org>
+
+ #26537: find -prune now makes sure it has valid stat() information.
+ * NEWS: Added Savannah bug number for Colin's bugfix.
+
+2009-05-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * find/parser.c (parse_prune): -prune needs stat information if
+ -depth is not in use.
+ * find/pred.c (pred_prune): Assert that stat information is
+ available if needed.
+ * find/testsuite/find.posix/prune-stat.exp: New test.
+ * find/testsuite/find.posix/prune-stat.xo: New test.
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP, EXTRA_DIST_XO): Added
+ prune-stat.exp, prune-stat.xo.
+ * NEWS: Mention this bugfix.
+
+2009-07-05 James Youngman <jay@gnu.org>
+
+ * lib/check-regexprops.sh: New test. Run regexprops as a check,
+ and compare its output against the contents of doc/regexprops.texi.
+ * lib/Makefile.am: Run check-regexprops.sh for 'make check'.
+ * doc/Makefile.am: don't clean regexprops.texi, and don't generate
+ it automatically.
+ * doc/regexprops.texi: add into source control.
+ * doc/.gitignore: don't ignore regexprops.texi
+
+2009-07-04 James Youngman <jay@gnu.org>
+
+ * configure.ac (AC_CONFIG_FILES): order the entries alphabetically
+ and remove duplicates. Put po/Makefile.in before
+ po/Makefile, since the former is required in order to
+ config.status to generate the latter.
+
+2009-07-04 gettextize <bug-gnu-gettext@gnu.org>
+
+ * configure.ac (AC_CONFIG_FILES): Add po/Makefile.in.
+ (AM_GNU_GETTEXT_VERSION): Bump to 0.17.
+
+2009-05-12 Eric Blake <ebb9@byu.net>
+
+ xargs: fix compilation on cygwin
+ * xargs/xargs.c (main): Check that ARG_MAX is defined.
+
+ xargs: avoid compiler warning
+ * xargs/xargs.c (get_char_oct_or_hex_escape): Pass correct type to
+ ctype macro.
+
+2009-05-04 James Youngman <jay@gnu.org>
+
+ * find/util.c (get_info): Don't fall off the end of the function
+ without returning a value.
+
+2009-04-25 James Youngman <jay@gnu.org>
+
+ * AUTHORS: Add Andreas Metzler.
+
+2009-04-25 Andreas Metzler <gnu@downhill.at.eu.org> (tiny change)
+
+ Correct a typo "diagnositcs".
+ * doc/find.texi (Environment Variables): Correct a typo.
+
+2009-04-24 A. Costa <agcosta@gis.net> (tiny change)
+
+ Correct a typo "diagnositcs".
+ * find/find.1 (POSIXLY_CORRECT): Correct a typo.
+
+2009-04-24 James Youngman <jay@gnu.org>
+
+ * find/ftsfind.c (consider_visiting): Print a message for "-D
+ search" both on entry to the function and at the point where we
+ have decided not to ignore this file.
+
+2009-04-12 James Youngman <jay@gnu.org>
+
+ * NEWS: Mention the fix for bug #22708 in the correct section.
+
+ Avoid mixing declarations and statements.
+ * lib/buildcmd.c (bc_do_exec): Declare variables at the top of the
+ relevant block, in order to avoid mixing declarations and
+ statements.
+ * xargs/xargs.c (main): Likewise.
+
+2009-04-12 Leslie Polzer <leslie.polzer@gmx.net>
+
+ Merge Leslie Polzer's ARG_MAX enhancements to xargs which were
+ produced as part of the Google Summer of Code 2007.
+ These changes fix Savannah bug #22708.
+ * find/pred.c (launch): The struct buildcmd_control* argument is
+ no longer const.
+ * find/defs.h: Likewise
+ * lib/buildcmd.c (bc_do_insert): The struct buildcmd_control*
+ argument is no longer const.
+ (bc_push_arg): Likewise.
+ (cb_exec_noop): Likewise.
+ (get_stringv_len): New function; measures the length of
+ a NULL-terminated argv sequence.
+ (bc_do_exec): Rename from do_exec, and make global. Modify the
+ function to react to exec failing with E2BIG by trying again
+ with fewer arguments.
+ * xargs/xargs.1: Mention that xargs automatically adopts to the
+ situation where exec fails with E2BIG.
+ * xargs/xargs.c: (parent): New variable, the PID of the parent
+ process.
+ (main): initialise the variable 'parent'. Don't fail immediately
+ due to lack of space when the environment is large. Call
+ xargs_do_exec via bc_do_exec.
+ (xargs_do_exec): The struct buildcmd_control* argument is no
+ longer const. When exec fails in the child, communicate the
+ errno value back to the parent through a pipe which is
+ close-on-exec; this allows us to accurately determine the cause of
+ the failure and also to distinguish exec failures from all
+ possible exit codes in the child.
+ (wait_for_proc): If the utility cannot be found or cannot be run,
+ we now find out about this by reading an errno value from the
+ pipe, so this means that exit codes 126 and 127 in the child no
+ longer have a special interpretation.
+ * NEWS: mention these changes.
+
+2009-04-13 James Youngman <jay@gnu.org>
+
+ * import-gnulib.config (gnulib_version): Update to current head
+ version.
+
+2009-04-13 Andreas Metzler <gnu@downhill.at.eu.org>
+
+ Fix Savannah bug# 26092: find.1 still marks -iwholename as preferred
+ * find/find.1 (-iwholename): Indicate that this option is no
+ longer preferred over -ipath.
+
+2009-03-07 James Youngman <jay@gnu.org>
+
+ Update the code to better reflect the semantics of digest_mode().
+ * find/defs.h: Pass the file mode to digest_mode() by reference
+ (as a pointer) rather than by value to make it unnecessary for the
+ caller to know that the value passed should become dead.
+ * find/util.c (digest_mode): Change the implementation.
+ * find/find.c (process_path): Update caller.
+ * find/ftsfind.c (consider_visiting): Update caller.
+
+2009-03-10 James Youngman <jay@gnu.org>
+
+ Remove "lib/wait.h", since gnulib provides <sys/wait.h>.
+ * lib/Makefile.am (EXTRA_DIST): Remove wait.h, since gnulib
+ provides it.
+ * lib/wait.h: Not needed.
+ * find/pred.c: Include <sys/wait.h> instead of "wait.h".
+ * lib/waitpid.c: Likewise.
+ * xargs/xargs.c: Likewise.
+
+ Remove unnecessary include guards.
+ * lib/dircallback.c: gnulib provides <locale.h>, so no need for
+ include guards.
+ * locate/locate.c: Likewise.
+ * lib/listfile.c: Likewise.
+ * lib/savedirinfo.c: Likewise with <sys/stat.h>
+ * find/defs.h: gnulib provides <inttypes.h>, so no need for
+ include guards.
+ * lib/nextelem.c: Likewise with <string.h> and <stdlib.h>.
+ * locate/bigram.c: Likewise.
+ * locate/frcode.c: Likewise.
+ * lib/buildcmd.c: Likewise with <locale.h> and <wchar.h>
+ * xargs/xargs.c: Likewise with <locale.h>, <wchar.h> and <stdlib.h>
+ * import-gnulib.config (modules): Import the mbrtowc and whchar
+ modules.
+ * lib/qmark.c (multibyte_qmark_chars): Don't surround with
+ HAVE_MBRTOWC, since we now have a replacement for mbrtowc.
+ Likewise, don't protect inclusion of <string.h> with
+ HAVE_STRING_H. Likewise with <wchar.h>.
+ (multibyte_qmark_chars): Rename to qmark_chars.
+ (qmark_chars): Remove old version (since it is replaced by the
+ function that used to be multibyte_qmark_chars).
+ * lib/printquoted.c: Don't include <wchar.h>, we don't need it.
+
+ Prepare for release of findutils-4.5.4.
+ * configure.ac (AC_INIT): Set version number to 4.5.4.
+ * NEWS: Likewise.
+
+ Remove obsolete regex.c copy fixup.
+ * Makefile.am (jy-regex-fix) Delete.
+ (dist-hook): Remove jy-regex-fix.
+
+ Update to version 0.17 of GNU gettext.
+ * configure.ac: Update to version 0.17 of gettext.
+ * import-gnulib.sh (refresh_output_files): Run autopoint too.
+ * ABOUT-NLS: Remove the file from source control, since gettext
+ produces it.
+ * .gitignore: Ignore ABOUT-NLS.
+ * po/Makefile.in.in: Likewise.
+ * po/.gitignore: Ignore po/Makefile.in.in.
+
+ Correct the changelog-driver argument list.
+ * import-gnulib.sh (check_merge_driver): Add the missing arguments
+ to the changelog driver. Change the name of the merge driver from
+ cl-merge to merge-changelog, for consistency with gnulib,
+ coreutils, autoconf, libtool, and m4.
+
+2009-03-08 James Youngman <jay@gnu.org>
+
+ Switch to using a merge driver for the ChangeLog file.
+ * import-gnulib.sh (check_merge_driver): New function; verifies
+ that we have a merge driver installed for the ChangeLog file (if
+ we're on the master or release branch, the check is skipped).
+ Also check that the .gitattributes file exists.
+ * README-hacking: Point out that using a merge driver for
+ ChangeLog is a good idea.
+ * .gitattributes: New file
+
+ Optimise away calls to stat if all we need is the inode number.
+ This fixes Savannah bug #24342.
+ * find/util.c (get_info): call get_statinfo if need_inum and we
+ don't already have the inode number.
+ (apply_predicate): Call get_info if need_inum.
+ * find/defs.h (enum EvaluationCost): Add NeedsInodeNumber.
+ (struct predicate): Add need_inum.
+ * find/tree.c (get_new_pred): Default need_inum to false.
+ (get_new_pred_chk_op): Likewise.
+ * find/ftsfind.c (consider_visiting): Copy the value of st_ino
+ into statbuf.st_ino.
+ * find/parser.c (parse_inum): Set need_inum=true.
+ (parse_samefile): Set need_inum=false, but add a comment
+ indicating that there is an optimisation opportunity.
+ (make_segment): For -printf %i, set NeedsInodeNumber rather than
+ NeedsStat.
+ * find/pred.c (pred_inum): assert that the inode number is known
+ (i.e. non-zero).
+ (print_optlist): Print "[need inum]" when need_inum is true.
+ * find/tree.c (opt_expr): Also reorder expressions if the right
+ hand expression is -inum (that is, consider that test to be no
+ more expensive than -type).
+ (set_new_parent): Default need_inum to false.
+ (costlookup): Set pred_inum=NeedsInodeNumber.
+ (get_pred_cost): need_inum implies a data cost of
+ NeedsInodeNumber.
+ (cost_table): Add NeedsInodeNumber.
+ (print_tree): Handle need_inum.
+
+ For -samefile, skip stat if inode numbers differ.
+ * find/pred.c (pred_samefile): Skip stat if the inode numbers are
+ different.
+ Enable -Wall compiler warnings and fix them.
+ * configure.ac: Turn on -Wall warnings.
+ * find/find.c (process_dir): Print unsigned values of unspecified
+ width as uintmax_t.
+ * xargs/xargs.c: Include <inttypes.h> and <stdint.h>, but without
+ the include guards (since we assume an ISO C platform anyway).
+ * import-gnulib.config (modules): Add modules inttypes and stdint.
+
+2009-03-07 James Youngman <jay@gnu.org>
+
+ Remove unused Debian files; the Debian package doesn't use them.
+ * debian.rules: Delete.
+ * debian/README.debian: Delete.
+ * debian/TODO: Delete.
+ * debian/changelog: Delete.
+ * debian/conffiles: Delete.
+ * debian/control: Delete.
+ * debian/copyright: Delete.
+ * debian/cron.find: Delete.
+ * debian/doc-base: Delete.
+ * debian/postinst: Delete.
+ * debian/preinst: Delete.
+ * debian/prerm: Delete.
+ * debian/rules: Delete.
+ * debian/substvars: Delete.
+ * debian/updatedb.conf: Delete.
+ * debian/.cvsignore: Delete.
+ * debian/.gitignore: Delete.
+
+2009-03-06 James Youngman <jay@gnu.org>
+
+ Change suffix for non-release versions from -CVS to -git.
+ * configure.ac(AC_INIT): Change the suffix used to indicate that
+ the version number doesn't correspond to a source release from
+ -CVS to -git.
+ * NEWS: Likewise.
+
+ Delete the INSTALL file; rely on Autoconf providing it.
+ * INSTALL: Delete; this file can be copied/generated by Autoconf,
+ so do that rather than keeping it under source control.
+ * .gitignore: Ignore INSTALL.
+
+ Updated translation po files from translationproject.org.
+ * po/bg.po: Updated Bulgarian translation.
+ * po/de.po: Updated German translation.
+ * po/ga.po: Updated Irish translation.
+ * po/hu.po: Updated Hungarian translation.
+ * po/lt.po: Updated Lithuanian translation.
+ * po/nl.po: Updated Dutch translation.
+ * po/pl.po: Updated Polish translation.
+ * po/sl.po: Updated Slovenian translation.
+ * po/sv.po: Updated Swedish translation.
+ * po/tr.po: Updated Turkish translation.
+ * po/uk.po: Updated Ukrainian translation.
+ * po/vi.po: Updated Vietnamese translation.
+ * NEWS: Mention these updates.
+
+2009-03-05 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #25764, duplicate entry for proc in PRUNEFS.
+ * locate/updatedb.sh (PRUNEFS): Remove duplicate entry for proc.
+ * locate/Makefile.am (updatedb): add dependency on Makefile, and
+ add a comment explaining why updatedb is generated by make, not
+ configure.
+ * NEWS: Mention this bugfix.
+
+ Provide more detailed help on how to work with the git sources.
+ * README-CVS: Rename to README-hacking.
+ * README-hacking: Add more specific information about using topic
+ branches, test cases, documentation, coding standards and how to
+ submit patches. Much of this is adapted from the files
+ README-hacking and HACKING in the coreutils source tree.
+ * Makefile.am: Generate tool-versions.txt, which is a list of the
+ --version outputs of the tools that the maintainer used to build a
+ release.
+ * NEWS: Mention these improvements.
+
+2009-03-04 James Youngman <jay@gnu.org>
+
+ Upgrade to gnulib version 86a37c05846ff3772afd1300f135866dd1d271c6.
+ * import-gnulib.config(gnulib_version): Update.
+ * xargs/Makefile.am: Add $(LIB_CLOSE) to $(LDADD), as suggested by
+ gnulib's unistd module.
+ * locate/Makefile.am: Likewise.
+ * find/Makefile.am: Likewise.
+
+ Removed trailing white space.
+ * Makefile.am: Removed trailing white space.
+ * NEWS, build-aux/check-testfiles.sh, build-aux/src-sniff.py,
+ doc/Makefile.am, doc/find-maint.texi, doc/find.texi, find/Makefile.am,
+ find/defs.h, find/find.1, find/find.c, find/finddata.c, find/fstype.c,
+ find/ftsfind.c, find/parser.c, find/pred.c, find/tree.c, find/util.c,
+ import-gnulib.sh, lib/Makefile.am, lib/buildcmd.c, lib/buildcmd.h,
+ lib/dircallback.c, lib/dircallback.h, lib/extendbuf.c,
+ lib/extendbuf.h, lib/findutils-version.c, lib/findutils-version.h,
+ lib/forcefindlib.c, lib/gnulib-version.h, lib/listfile.c,
+ lib/modetype.h, lib/nextelem.c, lib/nextelem.h, lib/printquoted.c,
+ lib/printquoted.h, lib/qmark.c, lib/regexprops.c, lib/regextype.c,
+ lib/savedirinfo.c, lib/savedirinfo.h, lib/strspn.c, lib/wait.h,
+ lib/waitpid.c, locate/bigram.c, locate/code.c, locate/locate.1,
+ locate/locate.c, locate/locatedb.5, locate/locatedb.h,
+ locate/updatedb.1, locate/updatedb.sh, locate/word_io.c,
+ m4/findlib.m4, m4/nullsort.m4, m4/withfts.m4, xargs/xargs.1:
+ Likewise.
+ * m4/nullsort.m4: Removed occurrences of space followed by tab.
+
+ Enabled GCC warnings for declarations after statements.
+ * import-gnulib.config: Import the gnulib module 'warnings'
+ * configure.ac: Add GCC warning -Wdeclaration-after-statement.
+ * Makefile.am: Add AM_CFLAGS and set it to $(WARN_CFLAGS).
+ * find/Makefile.am, doc/Makefile.am, lib/Makefile.am: Likewise.
+ * locate/Makefile.am, xargs/Makefile.am: Likewise.
+
+2009-03-03 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #25359, more efficiently (suggestion by Nick Fortino).
+ * find/ftsfind.c (consider_visiting): revert the previous change
+ which discarded type information, and instead simply ensure that
+ state.curdepth holds the correct value before digest_mode() is
+ called.
+ (find): revert the previous change.
+ (visit): we no longer need to set state.curdepth here, since it
+ will have been set already in consider_visiting().
+
+2009-03-02 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #25359.
+ * find/ftsfind.c (consider_visiting): discard mode information
+ from fts when the -H option is in effect and the current file is a
+ symbolic link.
+ (find): don't decode the mode information that find is trying to
+ pass to us in that case, since we don't want to use it.
+ * find.posix/sv-bug-25359.exp: new test for this bug.
+ * find.posix/sv-bug-25359.xo: expected output for the test.
+ * NEWS: Mention this bugfix.
+
+2009-02-21 James Youngman <jay@gnu.org>
+
+ Updated the email address for Eric B. Decker.
+ * ChangeLog: Updated Eric's address
+ * find/find.c: Likewise
+ * find/ftsfind.c: Likewise
+
+2009-02-21 Jim Meyering <meyering@redhat.com>
+
+ find: take advantage of new gnulib/fts leaf-optimization
+ * find/ftsfind.c (ftsoptions): Set the FTS_CWDFD bit.
+ This is required in order to take advantage of fts' leaf-optimization.
+ * find/ftsfind.c (consider_visiting): Allow state.type to be 0
+ when fts_info is FTS_NSOK;
+
+ This allows find to process an fts entry for which fts_read returns
+ FTS_NSOK (no stat) but for which find requires only type info.
+ This happens on file systems that lack dirent.dtype information.
+ Currently, only reiserfs is handled this way. Until the recent
+ gnulib/fts change, [97d5b66] "fts: arrange not to stat non-directories
+ in more cases" this change was not necessary, because fts would always
+ stat non-dir entries on a file system with no dirent.dtype information.
+
+ However, combined with the gnulib change, this change lets find
+ avoid many per-non-directory stat-like syscalls (i.e. fstatat)
+ in some very common cases, like "find . -print" on reiserfs --
+ which can be a huge performance savings.
+
+ find: avoid warning about unused local
+ * find/pred.c (scan_for_digit_differences): Remove declaration of
+ unused local, "ok". (second time, really applying that patch).
+
+2009-02-21 James Youngman <jay@gnu.org>
+
+ Update gnulib version.
+ * import-gnulib.config (gnulib_version): Update from
+ d4b129b8e5f8a8d1198020fd6fc79310d305936c to
+ df70a4bf4a1e84171918db09b639ae1a14c2a9b2. This pulls in the
+ following relevant changes:
+ fts: correct internal computation of nlinks (optimization-related)
+ fts: move a function definition "up" (no semantic change)
+ fts: arrange not to stat non-directories in more cases
+ fts: add #if guards so that the fts_lgpl module still builds
+ fts: avoid used-uninitialized error due to recent change
+ regex: avoid compilation failure with upcoming gcc-4.4
+ regex: fix glibc bug 697
+ regex: fix glibc bug 9697
+ Other changes may also be relevant; for details please check gnulib/ChangeLog.
+
+ Improvements to import-gnulib.config, import-gnulib.sh.
+ * import-gnulib.config (gpl3_update_files): No longer need to
+ update the licenses of build-aux/mdate-sh, build-aux/texinfo.tex
+ or build-aux/ylwrap as they are already GPLv3+.
+ (modules): Use the strdup-posix module instead of strdup, and stop
+ using the obsolete modules memcmp and memset, since we now assume
+ those functions will already be present on the host system.
+ * import-gnulib.sh (rehack): Be more verbose about which files
+ actually needed a license edit and which did not.
+
+ Follow gnulib-tool's Makefile.am edit suggestions.
+ * find/Makefile.am (LDADD): Use $(LIBINTL) instead of @INTLLIBS@
+ and use $(LIB_CLOCK_GETTIME) instead of @LIB_CLOCK_GETTIME@.
+ * lib/Makefile.am: Likewise.
+ * locate/Makefile.am: Likewise.
+ * xargs/Makefile.am: Likewise.
+ * import-gnulib.sh (hack_gnulib_tool_output): Add
+ m4/gnulib-cache.m4 to EXTRA_DIST in gnulib/Makefile.am, as
+ gnulib-tool suggests.
+
+2009-02-21 Jim Meyering <meyering@redhat.com>
+
+ find: avoid warning about unused local, remove unnecessary include.
+ * find/pred.c (scan_for_digit_differences): Remove declaration of
+ unused local, "ok".
+ (do_time_format): Remove decl of "done"; replace sole use with a
+ constant, "true". Initialize "i" and "n".
+ * lib/dircallback.c: Don't include unistd.h. Not needed.
+
+1987-02-22 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * defs.h: added definition of BLKSIZE for size
+
+1987-02-21 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * find.c: added global convert_glob
+
+1987-02-21 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * find.c: added error checking for no paths. better error
+ message if illegal ordering.
+
+1987-02-22 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * find.c: changed where we are setting perm_mask to -1. need
+ to make sure that this happens before every apply_predicate.
+
+1987-02-19 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * parser.c: minor bug in -fulldays predicate parser. It
+ should have set the flag full_days to true.
+
+1987-02-20 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * parser.c: added ok guts. consolidated exec and ok to using
+ insert_exec_ok
+
+1987-02-21 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * parser.c: added predicate newer
+
+1987-02-21 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * parser.c: added guts to name. uses a conversion from
+ globbing to regexp format. uses regex and regcmp to actually
+ to the comparison.
+
+1987-02-21 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * parser.c: reworked name so the regexpr pattern includes $ at
+ the end to force globbing to work correctly. End of the
+ pattern refers to the end of the filename.
+
+1987-02-21 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * parser.c: added -fre, -fullregex predicate to turn off
+ globbing conversion
+
+1987-02-22 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * parser.c: added guts of perm and permmask. added getoct
+ routine for perm and permmask
+
+1987-02-22 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * parser.c: added guts to parse_size
+
+1987-02-19 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * pred.c: finished exec.
+
+1987-02-20 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * pred.c: added guts to pred_ok
+
+1987-02-21 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * pred.c: added predicate newer
+
+1987-02-21 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * pred.c: added guts to name. useds regex and regcmp to do
+ regular expression handling.
+
+1987-02-21 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * pred.c: made pred_name only look at the last component of
+ the path.
+
+1987-02-22 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * pred.c: added guts to perm and permmask.
+
+1987-02-22 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * pred.c: added guts to pred_size
+
+1990-03-21 David J. MacKenzie <djm@gnu.org>
+
+ * xargs.c: Indent. Comment and rename some global variables.
+ (main): Use getopt to parse options. Open new global var
+ `tty_stream' to /dev/tty if querying requested.
+ (print_args): Read response from tty_stream, not stdin.
+ (xmalloc): New function.
+ Global: Use xmalloc instead of malloc.
+ (usage): Revise message.
+
+1990-03-25 David J. MacKenzie <djm@gnu.org>
+
+ * find.c (main): Don't take basename of argv[0].
+
+ * util.c (xmalloc): New function.
+ * find.c, parser.c, utils.c: Use xmalloc instead of malloc.
+
+ * pred.c: Remove emulation of regex for BSD and use GNU
+ library version in regcmp.c instead.
+ * parser.c: Remove emulation of regcmp for BSD and use GNU
+ library version in regcmp.c instead.
+ * Makefile: Link with regex.o and regcmp.o.
+ Add a DISTFILES macro and dist target.
+
+ * Indent source code. Move RCS logs to this file.
+
+1990-03-27 David J. MacKenzie <djm@gnu.org>
+
+ * defs.h: Change some #defines to enums.
+
+1990-05-13 David J. MacKenzie <djm@gnu.org>
+
+ * Replace fprintf, simple_error, and mem_error with error and
+ usage.
+
+ * Fix string header includes for USG.
+
+1990-05-14 David J. MacKenzie <djm@gnu.org>
+
+ * find.c: Add variable `stay_on_filesystem' for -xdev.
+ (process_path): Take an arg determining whether this call is
+ the root of a tree. Use lstat instead of stat. If
+ stay_on_filesystem, don't process a dir on a different
+ filesystem.
+
+ * parser.c (parse_newer): Use lstat instead of stat. Is this right?
+ (parse_xdev): Set stay_on_filesystem.
+
+ * parser.c: Add dummy parse_nogroup, parse_nouser,
+ parse_prune, and parse_xdev; to be written later.
+ * pred.c: Add dummy pred_nogroup, pred_nouser, pred_prune.
+
+ * find.c: Support System V directory library/headers.
+
+ * find.c (process_path): Don't continue with a file that stat
+ fails on.
+
+ * defs.h, parser.c, pred.c: Change 'u_long' and 'u_short' to
+ 'unsigned long' and 'unsigned short'.
+ * find.c, defs.h: Remove 'convert_glob' variable.
+ * parser.c (parse_fullregex): Function removed.
+ (parse_name): Remove regular expression code.
+ (parse_type): Recognize sockets.
+ Add code to check for missing arguments to many parse_* functions.
+ * pred.c (pred_name): Use glob_match instead of regex.
+
+1990-05-16 David J. MacKenzie <djm@gnu.org>
+
+ * parser.c (parse_nogroup, parse_nouser): Implement.
+ * pred.c (pred_nogroup, pred_nouser): Implement.
+
+1990-05-17 David J. MacKenzie <djm@gnu.org>
+
+ * parser.c (get_oct): Don't consider an empty string a valid number.
+
+ * parser.c (parse_perm): If arg starts with '-', set flag bit
+ for special comparison (POSIX).
+ * pred.c (pred_perm): If flag bit set, compare s[ug]id &
+ sticky bits as well, and return true if the given perms are
+ set, ignoring other bits.
+
+ * find.c: New global var `exit_status'. Use it. (POSIX)
+ * parser.c: Set `exit_status' if lstat on -newer file fails.
+
+ * fastfind.c: New file.
+ * find.c (main): Call fastfind if given only 1 arg.
+ * util.c (usage): Update message.
+ * lib/{Makefile,updatedb.sh,bigram.c,code.c}: New files.
+ * Makefile: Add 'all' and 'install' targets.
+
+1990-05-18 David J. MacKenzie <djm@gnu.org>
+
+ * modechange.c, modechange.h: New files.
+ * parser.c (parse_perm): Use mode_compile and mode_adjust to
+ parse arg, to allow symbolic mode for POSIX.
+
+1990-05-20 David J. MacKenzie <djm@gnu.org>
+
+ * pred.c (pred_prune): Set new global var `stop_at_current_level'.
+ * find.c (process_path): Test and reset it.
+
+1990-05-21 David J. MacKenzie <djm@gnu.org>
+
+ * lib/updatedb.sh: Put BINDIR in PATH.
+
+ * fstype.c: Do nothing if MNTENT_MISSING is defined.
+
+ * fstype.c: New file.
+ * parser.c (parse_fstype): New function.
+ * pred.c (pred_fstype): New function.
+
+ * parser.c (parse_newer): Failure to stat -newer file is a
+ fatal error.
+
+ * pred.c (pred_ok): Flush output before reading. Use getchar
+ instead of scanf.
+
+ * pred.c (pred_prune): Return false if -depth given.
+ * find.c: Apply the predicates to the dir when -depth and
+ -prune are given.
+
+1990-05-31 David J. MacKenzie <djm@gnu.org>
+
+ * parser.c (parse_regex): New function.
+ * pred.c (pred_regex): New function.
+
+ * fstype.c (read_mtab): If mtab entry has a "dev=" option
+ (like in SunOS 4.1), use it, so there is no need to stat the
+ special file later on.
+ (xatoi, strstr): New functions.
+
+1990-06-07 David J. MacKenzie <djm@gnu.org>
+
+ * Makefile, find.c: Use DIRENT to control whether <dirent.h>
+ is used.
+
+1990-06-09 David J. MacKenzie <djm@gnu.org>
+
+ * parser.c (parse_permmask): Allow symbolic mode masks.
+ (parse_perm): Free 'struct change' when done with it.
+ (get_oct): Function removed.
+
+ * find.c (process_path): Allow arbitrarily-long filenames.
+ More efficient string copying. Initialize perm_mask to 07777
+ instead of -1.
+
+1990-06-14 David J. MacKenzie <djm@gnu.org>
+
+ * savedir.c: New file; now find won't run out of file
+ descriptors in deep trees.
+ * find.c (process_path): Use savedir.
+
+1990-06-15 David J. MacKenzie <djm@gnu.org>
+
+ * fstype.c: If MOUNTED isn't defined but MNT_MNTTAB is, use it
+ instead. True for HP/UX, at least.
+
+1990-06-17 David J. MacKenzie <djm@gnu.org>
+
+ * listfile.c: New file.
+ * parser.c (parse_ls): New function.
+ * pred.c (pred_ls): New function.
+
+ * find.c (main): Remove interface to fastfind, to prevent
+ conflict with POSIX syntax.
+ * util.c (usage): Remove fastfind syntax from message.
+ * fastfind.c (main): New function.
+ * Makefile: Make fastfind a separate program.
+
+ * find.c (main): Print correct message if a predicate arg is
+ missing.
+
+ * parser.c (insert_exec_ok): Make args that start with a ';' but
+ contain other characters not terminate the command.
+
+1990-06-18 David J. MacKenzie <djm@gnu.org>
+
+ * parser.c [STRSPN_MISSING] (strspn): New function.
+
+1990-06-19 David J. MacKenzie <djm@gnu.org>
+
+ * lib/updatedb.sh: Prune entries that match PRUNEREGEX.
+ Split up finding files from computing bigrams.
+ Use redirection instead of nonportable grep -s to detect sort
+ failure. Optionally search network filesystems as well as
+ local ones.
+
+ * pred.c (pred_regex): Match against full pathname instead of
+ just last element.
+ * util.c (basename): Return "/", not "", if given "/".
+
+ * find.c (process_path): Fix error in handling "/" directory.
+
+1990-06-22 David J. MacKenzie <djm@gnu.org>
+
+ * Version 1.0.
+
+1990-06-24 David J. MacKenzie <djm@gnu.org>
+
+ * Version 1.1.
+
+ * Makefile [DISTFILES]: Add COPYING.
+
+1990-06-25 David J. MacKenzie <djm@gnu.org>
+
+ * fastfind.c (fastfind): Initialize count to 0.
+
+ * lib/updatedb.sh: Only do regex comparison on directories,
+ for speed.
+
+ * listfile.c (list_file): Truncate user and group name to 8 chars.
+
+1990-06-28 David J. MacKenzie <djm@gnu.org>
+
+ * parser.c (parse_regex): Set fastmap and translate before
+ compiling regex.
+
+1990-07-02 David J. MacKenzie <djm@gnu.org>
+
+ * pred.c: Don't check for invalid comparison types in numeric
+ predicate functions.
+
+1990-07-03 David J. MacKenzie <djm@gnu.org>
+
+ * parser.c (strspn): Stop when end of string reached.
+
+ * Version 1.2.
+
+ * Move version number from Makefile to new file version.c.
+ * parser.c: Recognize new -version predicate.
+
+ * find.c (main): If no predicates that produce output are
+ given, default to -print if the entire expression is true, not
+ just the last part of an alternation.
+ * Print the names of predicates with invalid arguments.
+
+1990-07-04 David J. MacKenzie <djm@gnu.org>
+
+ * find.c (main): Only enclose expressions that produce no side
+ effects within `( ... )'.
+
+1990-07-15 David J. MacKenzie <djm@gnu.org>
+
+ * parser.c (parse_and): New function, for compatibility.
+
+1990-07-16 David J. MacKenzie <djm@gnu.org>
+
+ * defs.h: Don't declare fprintf and printf, in case they have
+ prototypes in stdio.h (important for functions that use stdarg).
+
+1990-07-25 David J. MacKenzie <djm@gnu.org>
+
+ * listfile.c (getuser, getgroup): Make uid and gid unsigned
+ short, not int.
+
+1990-08-04 David J. MacKenzie <djm@gnu.org>
+
+ * parser.c (parse_perm), pred.c (pred_perm): Always compare
+ bits 07777.
+
+ * locate.c, Makefile: Rename 'fastfind' program to 'locate',
+ following comment in POSIX.2 draft 10 rationale for find.
+
+1990-08-12 David J. MacKenzie <djm@gnu.org>
+
+ * xargs.c (main): Tell getopt to not permute.
+
+1990-08-26 Jim Kingdon <kingdon@pogo.ai.mit.edu>
+
+ * Makefile (TAGS): New target.
+
+1990-09-12 David J. MacKenzie <djm@gnu.org>
+
+ * parser.c: Add -not as synonym for !.
+
+1990-09-20 David J. MacKenzie <djm@gnu.org>
+
+ * parser.c (parse_maxdepth): New function.
+ * find.c (process_path): If -maxdepth was given, don't go
+ more than that many levels deep.
+ * defs.h: Declare maxdepth.
+
+1990-09-21 David J. MacKenzie <djm@gnu.org>
+
+ * find.c (process_path): Take DEPTH as an arg instead of ROOT,
+ and change callers.
+
+1990-11-01 David J. MacKenzie <djm@gnu.org>
+
+ * Reorganize into subdirectories and add xargs. Rewrite Makefiles.
+
+ * find.c (process_path, main): Allow a maxdepth of 0, meaning
+ only process command line args.
+
+ * parser.c, pred.c: Add -print0 predicate.
+
+ * xargs.c: Add -0 option and long options. Move standard
+ library functions into separate files. Use error instead of
+ fatal and fprintf/perror. Use POSIX macros for examining exit
+ status from wait.
+ (read_string): New function.
+
+1990-11-02 David J. MacKenzie <djm@gnu.org>
+
+ * xargs.c: Exit with status 127 if running commmand fails, as
+ required by POSIX.
+
+ * fstype.c: Support -fstype for Ultrix (-DFS_GETMNT).
+ Sun/BSD code is now -DFS_MNTENT.
+
+1990-11-03 David J. MacKenzie <djm@gnu.org>
+
+ * xargs.c (do_exec): Child process exits with status 255, not
+ 127, if command can't be run.
+
+1990-11-05 David J. MacKenzie <djm@gnu.org>
+
+ * find.c (process_path): For -xdev, process filesystem
+ mountpoints (but don't descend them), instead of skipping them
+ entirely.
+
+ * find.c, parser.c, defs.h: Add -follow predicate.
+
+ * xargs.c: Change ifdefs to support STDC POSIX systems.
+
+1990-11-08 David J. MacKenzie <djm@gnu.org>
+
+ * parser.c, pred.c, listfile.c: If not _POSIX_SOURCE, declare
+ getpwuid and getgrgid. Use them.
+
+ * listfile.c: If not _POSIX_SOURCE, define S_ISDIR and
+ S_ISBLK. Use them.
+
+ * find.c: Use S_ISDIR instead of S_IFDIR, and define if not
+ _POSIX_SOURCE.
+
+ * Makefile: Define AR and RANLIB and pass to child makes.
+ lib/Makefile: Use them.
+
+ * xargs.c (WIFSIGNALED): Redefine so it works.
+
+1990-11-12 David J. MacKenzie <djm@gnu.org>
+
+ * pred.c (pred_fstype): Free old fs type.
+
+ * fstype.c, pred.c (pred_fstype), parser.c (parse_fstype):
+ Reread the file system type info. every time a filesystem
+ mount point is crossed, to allow for automounting.
+
+ * xstrdup.c: New file from fileutils.
+
+ * find.c (process_path): Rename root_dev to current_dev and
+ make it global, for -fstype.
+
+ * wait.h: New file taken from xargs.c.
+
+ * xargs.c: Make limits.h vs. sys/param.h conditional on
+ LIMITS_MISSING instead of USG, to accommodate SVR2.
+
+1990-11-15 David J. MacKenzie <djm@gnu.org>
+
+ * xmalloc.c: New file from fileutils.
+
+ * fstype.c (fstype_to_string): Add case for MFS.
+ (filesystem_type): Take a pathname as a second arg.
+ [FS_STATFS] return "unknown" instead of exiting if statfs
+ fails because of ENOENT.
+ * pred.c (pred_fstype): Pass the pathname. Set current_dev.
+ * find.c (process_path): Make root_dev local again.
+
+1990-11-16 David J. MacKenzie <djm@gnu.org>
+
+ * modetype.h: New file.
+ parser.c, pred.c: Use it.
+
+1990-11-20 David J. MacKenzie <djm@gnu.org>
+
+ * Version 2.0.
+
+ * fstype.c [FS_USG_STATFS]: New code.
+ [FS_STATFS]: For symlinks, statfs the directory the link is in
+ instead of the link.
+ * Various files: Conditionalize some declarations on
+ STDC_HEADERS or _POSIX_SOURCE.
+
+1990-12-03 David J. MacKenzie <djm@gnu.org>
+
+ * find.c, fstype.c, parser.c, pred.c, util.c: Flush stdout before
+ writing to stderr, in case they have been redirected to the
+ same file descriptor.
+
+ * pred.c (launch): Use POSIX wait macros from wait.h.
+
+ * xargs.c (print_xargs): Read from tty_stream, not stdin.
+
+1990-12-15 David J. MacKenzie <djm@gnu.org>
+
+ * listfile.c: Define major and minor if not defined (as in POSIX).
+
+1990-12-15 David J. MacKenzie <djm@gnu.org>
+
+ * find.c (main), util.c (usage): Make directory args optional,
+ defaulting to ".".
+
+1990-12-20 David J. MacKenzie <djm@gnu.org>
+
+ * fstype.c (filesystem_type) [FS_MNTENT]: Allow for optional
+ "0x" at front of "dev=" mount option, which amd puts there but
+ Sun automounter doesn't.
+
+1990-12-21 David J. MacKenzie <djm@gnu.org>
+
+ * defs.h, parser.c: Remove unused field from `struct exec_t'.
+
+ * xargs.c: Add +no-run-if-empty option to cause the command to
+ not be run if the input is empty.
+
+ * defs.h (struct exec_t): Change the array of offsets into an
+ array of `struct path_arg'.
+ * parser.c (insert_exec_ok): Fill in new fields, to allow "{}"
+ to be substituted (multiple times) anywhere in an arg to -exec
+ or -ok.
+ * pred.c (pred_exec): Add code to substitute "{}" within args.
+ (pred_ok): After prompting, just run pred_exec.
+
+1990-12-26 David J. MacKenzie <djm@gnu.org>
+
+ * locate.c, bigram.c, code.c: Attempt to get max. path length
+ on more kinds of systems, incl. POSIX.
+
+ * pred.c, listfile.c, xargs.c: Get some decls from unistd.h,
+ if available.
+
+ * find.c, defs.h: Make `cur_day_start' a time_t, not long.
+
+1991-01-01 David J. MacKenzie <djm@gnu.org>
+
+ * Version 2.1.
+
+1991-01-10 David J. MacKenzie <djm@gnu.org>
+
+ * wait.h: Include sys/types.h to get pid_t.
+
+ * xargs.c [USG && !STDC_HEADERS]: Only include memory.h if not
+ _POSIX_SOURCE.
+
+1991-01-12 David J. MacKenzie <djm@gnu.org>
+
+ * defs.h, find.c, parser.c, pred.c: Remove -permmask option.
+
+1991-01-18 David J. MacKenzie <djm@gnu.org>
+
+ * bigram.c, code.c, locate.c: Use LIMITS_MISSING, not
+ _POSIX_SOURCE, to decide whether to include limits.h.
+
+ * parser.c, pred.c, listfile.c: Use POSIX, not _POSIX_SOURCE,
+ to decide whether to declare getpwuid and getgrgid.
+
+ * xargs.c: Use POSIX, not _POSIX_SOURCE, to determine whether
+ to include memory.h.
+
+1991-03-15 David J. MacKenzie <djm@gnu.org>
+
+ * xargs.c (main): Always run the command if some args are left over.
+ Rename some variables.
+
+1991-04-05 David J. MacKenzie <djm@gnu.org>
+
+ * Version 2.2.
+
+1991-07-19 David J. MacKenzie <djm@gnu.org>
+
+ * pred.c, locate.c: Use fnmatch instead of glob_match.
+ * fnmatch.c, fnmatch.h: New files.
+
+ * Many files: Use string.h if STDC_HEADERS, as well as if USG.
+
+ * locate.c, code.c, bigram.c: Possibly use pathconf to get
+ PATH_MAX. Use malloc to allocate path arrays.
+
+ * xargs.c: Possibly use sysconf to get ARG_MAX.
+ (env_size): Make definition unconditional.
+ (main): Do arg_max adjustment that can't be done with
+ preprocessor now that ARG_MAX might be a function call.
+ (do_exec): Exit with status 126 or 127 after failed exec, for
+ POSIX.2 draft 11.1.
+
+ * xargs.c, pred.c, listfile.c: Use POSIX, not UNISTD_MISSING.
+ * wait.h: Use POSIX, not WAIT_MACROS_MISSING.
+
+ * COPYING: Use version 2. Update all files.
+
+ * Replace Makefile and lib/Makefile with Makefile.in,
+ lib/Makefile.in and configure. Update README.
+
+1991-07-20 David J. MacKenzie <djm@gnu.org>
+
+ * configure: Filter /etc and /usr/etc from path.
+
+ * xargs.c (wait_for_proc): Fix handling of child exit status.
+ (main): Exit with a nonzero status if any child did.
+
+ * pred.c (launch): Flush stdout and stderr before forking.
+
+ * fstype.c (filesystem_type) [FS_MNTENT]: Skip entries of
+ type "ignore".
+
+1991-08-07 David J. MacKenzie <djm@gnu.org>
+
+ * configure, Makefile.in's: Support +srcdir option via VPATH.
+ Clean up clean targets.
+
+1991-08-08 David J. MacKenzie <djm@gnu.org>
+
+ * parser.c, pred.c [CACHE_IDS]: Optional code to turn uid and
+ gid lookups into table lookups.
+
+1991-08-09 David J. MacKenzie <djm@gnu.org>
+
+ * xargs.c (read_line): Use isblank, to support POSIX locales.
+
+ * fstype [FS_STATVFS]: New code for SVR4, from slootman@dri.nl
+ (Paul Slootman).
+ * configure: Figure out when to use it.
+
+ * configure: Check for st_blocks in struct stat.
+ * listfile.c (ST_NBLOCKS): New macro.
+ (list_file): Print file's block count.
+ Use S_ISLNK instead of S_IFLNK.
+ * fileblocks.c: New file, from fileutils.
+
+1991-08-14 David J. MacKenzie <djm@gnu.org>
+
+ * parser.c (parse_size), pred.c (pred_size), defs.h (struct
+ size_t): Allow `k' to follow number to measure size in Kbytes.
+ * parser.c (parse_size, get_num, insert_num), defs.h (struct
+ size_t): Use enum comparison_type instead of short.
+
+1991-08-15 David J. MacKenzie <djm@gnu.org>
+
+ * modetype.h: Define POSIX.1 stat stuff if missing.
+ * pred.c, parser.c, find.c, fstype.c: Don't define it.
+ * updatedb.sh: Use a variable substitution method like configure's.
+ * Makefile.in: Add datadir variable to separate programs from
+ data file.
+
+ * parser.c, pred.c: Rename -fulldays to -daystart.
+
+ * defs.h, find.c, parser.c, pred.c: Add many new predicates
+ from Jay Plett (jay@princeton.edu).
+
+1991-08-21 David J. MacKenzie <djm@gnu.org>
+
+ * Version 3.1.
+
+ * parser.c (parse_fprintf), pred.c (pred_fprintf): Add %k
+ conversion to print 1K blocks.
+
+ * listfile.c: Print counts of 1K blocks, for consistency with
+ new fileutils release. Bad timing, there.
+
+ * Version 3.0.
+
+ * pred.c [VOID_CLOSEDIR]: Fake a return value for closedir,
+ which returns void on some systems, like Sequents.
+ * configure: Check sys/dir.h for 'void closedir'.
+
+1991-08-22 David J. MacKenzie <djm@gnu.org>
+
+ * pred.c (pred_fprintf, pred_lname) [_AIX]: Allocate PATH_MAX
+ byte for link object since st_size is wrong.
+
+ * listfile.c (list_file): Don't convert blocks to kilobytes if
+ env. var POSIX_ME_HARDER is defined.
+
+ * fstype.c [FS_AIX_STATFS]: New case.
+
+ * configure: Make sure the sys/mount.h is the 4.4BSD version
+ with grep instead of just testing whether it exists.
+
+ * listfile.c (list_file): Add 1 to number of 512-byte blocks
+ before dividing to get 1K blocks (so we round up, not down).
+
+1991-08-23 David J. MacKenzie <djm@gnu.org>
+
+ * pred.c (pred_fprintf): Round block number up to get K.
+
+1991-08-26 David J. MacKenzie <djm@gnu.org>
+
+ * bigram.c, code.c: Fix handling of PATH_MAX.
+ Check for anomalous input line lengths.
+ From Bruce Evans.
+
+1991-08-28 David J. MacKenzie <djm@gnu.org>
+
+ * Version 3.2.
+
+1991-09-05 Jim Meyering <meyering@churchy.gnu.ai.mit.edu>
+
+ * parser.c (insert_fprintf): Add `\\' escape and fixed `%%'
+ interpretation.
+ * pred.c (pred_fprintf): fixed off-by-one indexing problem
+ when handling [gGuU] printf formats.
+
+1991-09-05 David J. MacKenzie <djm@gnu.org>
+
+ * bigram.c, code.c (main): Make path_max int, not unsigned.
+ * locate.c (main): Check for pathconf failure.
+
+1991-09-13 David J. MacKenzie <djm@gnu.org>
+
+ * xargs.c [POSIX]: Always use sysconf to get ARG_MAX.
+
+1991-10-05 Jim Meyering <meyering@churchy.gnu.ai.mit.edu>
+
+ * parser.c (parse_perm): Parse new `-perm +mode' notation.
+ * pred.c (pred_perm): Interpret same.
+
+1991-10-17 David J. MacKenzie <djm@gnu.org>
+
+ * xargs.c: Don't determine memory.h based on POSIX, which
+ doesn't mention it.
+
+1993-03-23 David J. MacKenzie (djm@gnu.org>
+
+ * defs.h, parser.c, pred.c: Rename some types that conflict
+ with reserved POSIX.1 namespace (ended in _t).
+
+
+
+1993-03-29 David J. MacKenzie (djm@gnu.org>.
+
+ * parser.c (make_segment, insert_fprintf), pred.c
+ (pred_fprintf): Add '%F' to print filesystem type.
+
+ * parser.c (parse_fprintf): Check if second arg is missing.
+
+1993-03-31 David J. MacKenzie (djm@gnu.org>text; nuke cp.
+
+1993-03-31 Jim Meyering (meyering@comco.com)
+
+ * parser.c: Define isascii macro to be 1 also if STDC_HEADERS.
+ * xargs.c: Ditto.
+
+1993-08-01 David J. MacKenzie (djm@gnu.org>.
+ (filesystem_type_uncached) [AFS]: Call it if the fs type is
+ otherwise unknown.
+
+ * parser.c (parse_size): Recognize b and w suffixes for dd
+ compatibility.
+
+ * code.c (puthalfword): New function.
+ (main): Call it.
+ * locate.c (gethalfword): New function.
+ (locate): Call it.
+ From ifado!wb@germany.eu.net (Wilhelm B. Kloke).
+
+ * listfile.c: Include pathmax.h.
+ (get_link_name): Always allocate PATH_MAX + 1 bytes for
+ readlink buffers.
+ * pred.c (pred_fprintf, insert_lname): Call get_link_name.
+
+ * fstype.c (filesystem_type, filesystem_type_uncached),
+ listfile.c (list_file): Take an arg for the path to access.
+ * pred.c (pred_ls, pred_fstype, pred_fprintf): Pass it.
+
+ * find.c (process_dir): Renamed from scan_directory.
+
+ Changes from jrs@world.std.com (Rick Sladkey) to chdir into
+ subdirectories instead of using string concatenation, for speed:
+ * find.c (process_top_path): New function.
+ (main): Call it, and xgetcwd.
+ (process_path, scan_directory): Take new arg, the pathname
+ relative to ".". Use it and pass it on.
+ * pred.c (pred_and, pred_comma, pred_negate, pred_or,
+ pred_xtype, pred_fprintf, pred_empty, insert_lname):
+ access rel_pathname instead of pathname.
+ (launch): chdir to starting_dir.
+ * defs.h: Declare rel_pathname and starting_dir.
+ * find.c: Define them.
+
+ * xgetcwd.c: New file.
+
+ * updatedb.sh: Recognize -fstype NFS as well as nfs.
+ * locate.c (patprep): Skip trailing character classes correctly.
+ From luik@pharao.stgt.sub.org (Andreas Luik).
+
+ * parser.c (parse_group): Make gid a gid_t, not short or int.
+ (parse_nogroup): Cast gid to unsigned when using it as an array index.
+ (parse_user, parse_nouser): Similar changes for uid.
+ * defs.h: Use uid_t and gid_t.
+
+ * parser.c (parse_help): New function.
+ (parse_table): Add --version, -help, and --help options.
+ Rename struct parser_table_t to struct parser_table.
+ (parse_version): Exit after printing message, on
+ stdout not stderr.
+
+ * xargs.c, locate.c (main, usage): Add --version and --help
+ options.
+
+1994-02-13 Jim Meyering (meyering@comco.com)
+
+ * man/Makefile.in [man1ext, man5ext]: Set man5ext (not man1ext) to 5.
+
+1994-09-20 David MacKenzie <djm@gnu.org>
+
+ * configure.in: Update for Autoconf v2.
+ * find/pred.c lib/savedir.c: Use new symbols for dir header.
+ * locate/updatedb.sh: Add --help option.
+
+1994-09-21 David MacKenzie <djm@gnu.org>
+
+ * locate/locate.c (locate): Warn if database is >8 days old.
+ From Ian Lance Taylor.
+
+ * xargs/xargs.c (do_exec), find/pred.c (launch): Set SIGCHLD to
+ default. From tsi@gpu.srv.ualberta.ca (Marc Aurele La France).
+ * find/find.c pred.c util.c lib/listfile.c: Remove fflush(stdout)
+ calls before error. error does it, and doesn't trash errno.
+ From tsi@gpu.srv.ualberta.ca (Marc Aurele La France).
+
+ * find/fstype.c (filesystem_type_uncached): Don't trust mtab dev
+ number on HPUX. From Andreas Luik <luik@isa.de>.
+ (filesystem_type_uncached): Don't cache unknown file system
+ types. From casper@fwi.uva.nl (Casper Dik).
+
+ * locate/updatedb.sh: Collect results in temp file and rename it
+ atomically. From Andreas Luik <luik@isa.de>.
+
+ * xargs/xargs.c (parse_num): Print a long using %ld. From Jim
+ Meyering.
+
+ * find/defs.h find.c parser.c pred.c util.c, lib/nextelem.c:
+ Emulate strchr and strrchr with index and rindex, not vice versa.
+
+ Remove man directory; move man pages to the directories of the
+ programs they document.
+
+ * locate/frcode.c: Renamed from code.c.
+ * locate/frcode.c (put_short): Renamed from puthalfword.
+ * locate/locate.c (get_short): Renamed from gethalfword.
+ (last_literal_end): Renamed from patprep.
+ (locate): Recognize old-format databases too.
+ * locate/locatedb.h: Add defines for old-format databases.
+ * locate/bigram.c locate/code.c: Put back programs to create
+ old-format databases.
+ * locate/updatedb.sh: Take --old option to use them.
+
+1994-09-22 David MacKenzie <djm@gnu.org>
+
+ * locate/locate.c (last_literal_end): Dynamically allocate enough
+ memory for the subpattern.
+
+1994-09-23 David MacKenzie <djm@gnu.org>
+
+ * lib/listfile.c: Change #ifdef S_IFLNK to #ifdef S_ISLNK.
+ From Andreas Luik <luik@isa.de>.
+
+1994-09-25 David MacKenzie <djm@gnu.org>
+
+ * find/* [__STDC__]: Prototype declarations.
+
+ * locate/updatedb.sh: Account for renaming code and frcode.
+
+ * find/find.c (process_path): Store dev and ino of directories in
+ current branch to avoid symlink loops. From DJ Delorie
+ <dj@ctron.com>.
+ (process_dir): If following symlinks, don't cd to ..; instead,
+ cd to the starting directory and then to the parent directory.
+ (main) [HAVE_FCHDIR]: Save the dev, ino of the starting directory.
+ (process_top_path) [HAVE_FCHDIR]: Use it.
+ * find/pred.c (launch) [HAVE_FCHDIR]: Likewise.
+ * defs.h [HAVE_FCHDIR]: Declare starting_desc instead of starting_dir.
+ * configure.in: Check for dev_t, ino_t, fchdir, fcntl.h.
+
+1994-09-26 David MacKenzie <djm@gnu.org>
+
+ * configure.in: Add AC_CONFIG_HEADER.
+ * find/*.c locate/*.c xargs/*.c: Include config.h.
+ * locate/updatedb.sh: Add --version; --old -> --old-format.
+
+1994-09-27 Kaveh R. Ghazi (ghazi@noc.rutgers.edu)
+
+ * configure.in: Add AC_HEADER_STAT.
+ * lib/listfile.c, lib/modetype.h: Add STAT_MACROS_BROKEN.
+
+ * find/pred.c: Move the inclusion of defs.h ahead of the first
+ test of _POSIX_VERSION.
+
+ * lib/xgetcwd.c: Remove _POSIX_VERSION, rely only on HAVE_GETCWD.
+
+1994-09-29 David J. MacKenzie (djm@gnu.org>
+
+ * find/fstype.c (fstype_to_string): Add more cases. Use
+ INITMOUNTNAMES if defined.
+ * find/defs.h: Change boolean typedef from char to int.
+ * configure.in: Check for mktime.
+
+1994-10-01 David MacKenzie <djm@gnu.org>
+
+ * find/pred.c (launch): Use pid_t.
+
+ * xargs/xargs.c (EOF_STR): Define and use.
+ [__STDC__]: Declare xrealloc and xmalloc using void *.
+ * find/defs.h: Likewise.
+
+ * find/defs.h: Only declare stpcpy if !HAVE_STPCPY.
+
+ * xargs/xargs.c: Replace most global variables with structure
+ pointers passed as arguments. Use pid_t.
+ * lib/wait.h: Include sys/wait.h if HAVE_SYS_WAIT_H.
+ * configure.in: Call AC_TYPE_MODE_T and AC_HEADER_SYS_WAIT.
+
+ * xargs/xargs.c: Improve paging performance and memory
+ fragmentation by building command arguments in a pre-allocated
+ buffer and re-implementing the child pid list as an expandable
+ array. From tsi@gpu.srv.ualberta.ca (Marc Aurele La France).
+
+1994-10-04 David MacKenzie <djm@gnu.org>
+
+ * locate/updatedb.sh Makefile.in: Add substitutions to get
+ the transformed program names.
+
+ * xargs/xargs.c: Put back the global variables for now.
+ Rename some variables. Increase default args_per_exec.
+ Use boolean where applicable.
+ (main): Reduce default arg_max by 2048 for POSIX.2.
+ (read_string): Don't check EOF string.
+ (read_line, read_string): Take initial args size into account.
+
+1994-10-05 David MacKenzie <djm@gnu.org>
+
+ * xargs/xargs.c (main, read_line, read_string, do_exec): Pass
+ along the lengths of the args.
+ (main): Calculate length of replace_pat.
+ (push_arg, do_insert): Use those lengths instead of calculating
+ them.
+
+1994-10-12 David J. MacKenzie (djm@gnu.org>
+
+ * find/parser.c: Add -mount as an alias for -xdev.
+ From Klaus.Steinberger@physik.uni-muenchen.de (Klaus Steinberger).
+
+ * lib/modechange.c: Make umask_value unsigned short.
+
+ * xargs/xargs.c: Use symbolic constants in longopts.
+ From Chapman Flack.
+
+1994-10-18 David J. MacKenzie <djm@gnu.org>
+
+ * find/defs.h parser.c pred.c tree.c util.c: Globally change
+ "victim" to "primary".
+
+ * find/parser.c (insert_fprintf): For 'c' format, don't lose the
+ need_stat information. From Chapman Flack.
+
+ * doc/find.texi perm.texi: New files.
+ * configure.in: Configure the doc directory.
+
+ * find/pred.c (pred_regex): Check that the regex matched the whole
+ file name.
+
+1994-10-25 David J. MacKenzie <djm@gnu.org>
+
+ * find/pred.c (pred_fprintf): Flush output after \c. From Chapman
+ Flack.
+
+ * find/parser.c (insert_fprintf): Warn about unrecognized \ and %
+ sequences.
+
+1994-11-02 David J. MacKenzie <djm@gnu.org>
+
+ * The big 4 0.
+
+ * lib/listfile.c find/defs.h (list_file): Take a stream arg.
+ * find/pred.c (pred_ls): pass it.
+ * find/parser.c pred.c defs.h (parse_fls, pred_fls): New functions.
+
+1994-11-03 David J. MacKenzie <djm@gnu.org>
+
+ * Version 4.1.
+
+ * locate/Makefile.am: Move updatedb from LIBSCRIPTS to SCRIPTS.
+
+ * Makefile.am (distname): Change distribution name from find to
+ findutils.
+
+ * testsuite/config/unix.exp: Don't abuse xfail; simulate it correctly.
+
+ * locate/Makefile.am (CLEANFILES): Fix typo.
+
+1996-05-27 Kevin Dalley <kevind@rahul.net>
+
+ * updatedb.sh: when NETPATHS is used, only su to NETUSER if whoami
+ is root
+1996-04-27 Kevin Dalley <kevind@rahul.net>
+
+ * lib/getline.c (getstr): verify that nchars_avail is *really*
+ greater than 0; set *n to a large enough number, stops some core
+ dumping
+
+1996-12-28 Kevin Dalley <kevind@rahul.net>
+ * added PRUNEFS as variable in updatedb and --prunefs as option to
+ updatedb
+
+1997-01-11 Kevin Dalley <kevind@rahul.net>
+
+ * locate/updatedb.sh: add --localuser option to updatedb, which
+ allows find to be run as nobody, while allowing database file to
+ be created as root, change suggested by
+ <Bernd_Eckenfels@Wittumstrasse13.76646Bruchsal.de>
+
+1997-03-03 Kevin Dalley <kevind@rahul.net>
+
+ * xargs/xargs.c: xargs fixed to prevent occasional core dumping.
+
+1998-02-08 Kevin Dalley <kevind@rahul.net>
+
+ * locate/locate.c: corrected get_short so that it correctly
+ returns negative numbers.
+
+ * remove declarations of various string functions. Removing the
+ declarations almost matches the GNU Coding Standards.
+
+1998-02-27 Kevin Dalley <kevind@rahul.net>
+
+ * locate/locate.c: add --existing option to locate, which only
+ prints the names of files which still exist
+
+1998-08-30 Kevin Dalley <kevind@rahul.net>
+
+ * lib/nextelem.c: removed declaration of strdup and free, which
+ meets GNU coding standards and allow compilation on sparc
+
+ * corrected explanation of -amin option which described hours
+ instead of minutes
+
+1998-09-20 Kevin Dalley <kevind@rahul.net>
+
+ * removed more function declarations to meet GNU coding standards
+
+1998-09-26 Kevin Dalley <kevind@rahul.net>
+
+ * lib/getline.c: fix getstr so that it correctly handles long file
+ paths
+
+1998-12-04 Kevin Dalley <kevind@rahul.net>
+
+ * lib/nextelem.c: removed declaration of strdup and free, which
+ meets GNU coding standards and allows compilation on more
+ platforms.
+
+ * find.texi: corrected explanation of -amin option which described
+ hours instead of minutes
+
+1999-01-30 Kevin Dalley <kevind@rahul.net>
+
+ * added const to declaration of basename, which should satisfy
+ Linux as well as Hurd (fixes bug #31325).
+
+1999-08-02 Kevin Dalley <kevind@rahul.net>
+
+ * AUTHORS: added file listing AUTHORS
+
+ * lib/Makefile.am: modified code for EXTRA sources
+
+1999-08-08 Kevin Dalley <kevin@seti.org>
+
+ * Version 4.1.1
+
+ * README-alpha: added alpha README file
+
+ * find/defs.h: move lstat declarations into defs.h
+
+ * xargs/Makefile.am, testsuite/Makefile.am, locate/Makefile.am,
+ lib/Makefile.am, find/Makefile.am, doc/Makefile.am, configure.in,
+ Makefile.am: update for automake-1.4
+
+1999-08-15 Kevin Dalley <Kevin Dalley <kevind@rahul.net>
+
+ * find/version.c: version string is now set by config.h
+
+1999-08-15 Mark Kettenis <kettenis@gnu.org>
+
+ * xargs/xargs.c (LONG_MAX): Define if necessary.
+ (main): If ARG_MAX is -1 (that is sysconf
+ (_SC_ARG_MAX) returns -1) the system does not impose a limit. In
+ that case, use LONG_MAX as the limit.
+
+1999-08-15 Kevin Dalley <Kevin Dalley <kevin@seti.org>>
+
+ * find/fstype.c (filesystem_type_uncached): a stat failure with
+ EACCESS will ignore this file system keep on looking. Patch
+ suggested by Vincent Danjean <vdanjean@ens-lyon.fr>.
+
+2000-01-17 Jonathan R. Ferro <jferro@corwin.ece.cmu.edu>
+
+ * find/find.c (process_path): fix problem with "-depth" which is
+ tested in depth.exp test.
+
+2000-01-17 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * find/tree.c (opt_expr): Never rearrange the arguments of the
+ comma operator, since it is not commutative. Remove useless
+ assignment.2
+
+2000-01-17 Kevin Dalley <kevind@rahul.net>
+
+ * doc/find.texi (Multiple Files): placed missing xargs in examples
+
+ * find/testsuite/find.gnu/depth.exp: added find tests to test
+ "-depth" bug.
+
+ * doc/find.texi: include version.texi for automatic determination
+ of version number, update bug report email address to
+ bug-findutils@gnu.org.
+ (Combining Primaries With Operators): add indices for " ,", "()",
+ "-a", "-o", etc.
+
+2000-01-18 Kevin Dalley <kevind@rahul.net>
+
+ * Version 4.1.2
+
+ * locate/Makefile.am: remove creation of updatedb, since it is now
+ made by configure
+
+ * configure.in: updatedb is now created by configure.
+
+ * xargs/Makefile.am: added testsuite to xargs directory
+
+ * locate/updatedb.in: updatedb is now created by configure
+
+ * locate/frcode.c, locate/code.c, locate/bigram.c: change return
+ from main to int. Replace getstr with getline, where possible.
+
+ * locate/Makefile.am: place frcode, code, bigram in
+ libexec_PROGRAMS
+
+ * lib/xstrdup.c, lib/xmalloc.c, lib/xgetcwd.c, lib/xalloc.h,
+ lib/strtol.c, lib/strstr.c, lib/strftime.c, lib/strdup.c,
+ lib/stpcpy.c, lib/stat.c, lib/savedir.h, lib/savedir.c,
+ lib/regex.h, lib/regex.c, lib/realloc.c, lib/pathmax.h,
+ lib/modechange.h, lib/modechange.c, lib/mktime.c, lib/memset.c,
+ lib/memcmp.c, lib/malloc.c, lib/lstat.c, lib/idcache.c,
+ lib/getopt1.c, lib/getopt.c, lib/getopt.h, lib/getline.c,
+ lib/getline.h, lib/fnmatch.c, lib/fnmatch.h, lib/filemode.c,
+ lib/filemode.h, lib/fileblocks.c, lib/error.c, lib/error.h,
+ lib/dirname.c, lib/alloca.c: updated to newer version of file from
+ fileutils.
+
+ * find/version.c: version number is now automatically generated by
+ configure.
+
+ * find/fstype.c (filesystem_type_uncached): fixes bug described as
+ follows: When 'find' looks for a fstype, it parses the /etc/mtab
+ until it finds the good line. But, if there is, before the good
+ line, a line whose mountpoint is unreachable, it fails.
+
+ * doc/texinfo.tex: updated to newer version
+
+ * doc/find.texi: added version.texi, fixed a few documentation bugs.
+
+ * configure.in: new m4 features.
+
+ * Makefile.am: moved testsuite to below corresponding directories
+ find and xargs.
+
+ * acconfig.h: updated to match new m4 files.
+
+ * m4: added m4 directory, largely borrowed from Jim Meyering's
+ fileutils.
+
+2000-01-22 Kevin Dalley <kevind@rahul.net>
+
+ * added intl directory.
+ * created po directory and added existing po files from
+ http://www.iro.umontreal.ca/contrib/po/HTML
+
+ * Added internationalization, only with slightly out of date po
+ files for many locales.
+
+2000-01-24 Kevin Dalley <kevind@rahul.net>
+
+ * lib/xmalloc.c, lib/regex.c, lib/getopt.c: internationalization
+ works with current version of gettext.
+
+ * lib/getline.h : added declaration of getstr.
+ * lib/Makefile.am (libfind_a_SOURCES): added getline.[ch] to
+ standard compilation. Added internationalization.
+ * find/Makefile.am (INCLUDES): corrected -I options for building
+ in other directories.
+ (LDADD): changes for internationalization.
+
+ * configure.in (ALL_LINGUAS): added internationalization.
+ getline.c is always compiled and linked, because of getstr.
+ AM_GNU_GETTEXT
+
+ * Makefile.am:
+ (DISTCLEANFILES): added intl/libintl.h
+ (AUTOMAKE_OPTIONS): added gnits to AUTOMAKE_OPTIONS
+ (SUBDIRS): added intl and po
+
+ * acconfig.h: added internationalization values
+
+ * THANKS: added thanks file for gnits compatibility.
+
+2000-01-26 Kevin Dalley <kevind@rahul.net>
+
+ * po/POTFILES.in: added list of files with translatable strings.
+
+ * de.po, es.po, fr.po, it.po, ko.po, nl.po, pl.po, pt_BR.po,
+ ru.po, sv.po: New, slightly out of date, files imported from the
+ Translation Project: http://www.iro.umontreal.ca/contrib/po/HTML/,
+ German, Spanish, French, Italian, Korean, Dutch, Polish, Brazilian
+ Portuguese.
+
+
+2000-01-26 Kevin Dalley <kevind@rahul.net>
+
+ * Version 4.1.3
+
+ * acconfig.h: added internationalization.
+
+ * intl/*: copied from tar-1.13.17.
+
+ * locate/Makefile.am, locate/locate.c, locate/code.c:
+ internationalized file.
+
+ * locate/frcode.c, locate/bigram.c: include headers from ../lib
+ directory.
+
+ * xargs/Makefile.am, xargs/xargs.c: internationalized directory.
+
+2000-02-12 Kevin Dalley <kevind@rahul.net>
+
+ * lib/wait.h: updated address.
+
+2000-02-13 Kevin Dalley <kevind@rahul.net>
+
+ * configure.in: removed AC_ARG_PROGRAM, which is already in
+ AM_INIT_AUTOMAKE.
+
+ * locate/Makefile.am (updatedb), locate/updatedb.sh: add
+ transforms of find, frcode, bigram, and code back into
+ updatedb.sh, which were accidentally removed.
+
+2000-02-17 Kevin Dalley <kevind@rahul.net>
+
+ * po/it.po: new version of Italian file.
+
+ * locate/updatedb.sh (prunefs_exp): have sed statement use '*'
+ rather than the often unsupported '+'.
+
+2000-02-23 Kevin Dalley <kevind@rahul.net>
+
+ * po/ChangeLog: removed, merged with top-level ChangeLog.
+
+ * po/de.po: new version of German file.
+
+ * po/gl.po, po/et.po: new languages, Estonian and Galician.
+
+ * locate/updatedb.sh (PRUNEFS): enclose paths in quotes
+
+2000-02-26 Kevin Dalley <kevind@rahul.net>
+
+ * Version 4.1.4
+
+ * lib/strtoul.c: added to distribution
+
+ * configure.in: added strtoul to AC_REPLACE_FUNCS
+
+ * configure.in: added jm_CHECK_ALL_TYPE
+
+2000-03-11 Kevin Dalley <kevind@rahul.net>
+
+ * lib/basename.c: Add file from libit.
+ * lib/Makefile.am (libfind_a_SOURCES): add basename.c since it is
+ no longer replaceable.
+
+ * find/util.c: Remove definition of basename, which is now in
+ lib/basename.c (as base_name).
+ * find/pred.c: Use base_name, not basename.
+ * find/defs.h: Likewise.
+
+ * configure.in : Don't replace basename. Now we use only
+ base_name.
+
+2000-04-05 Kevin Dalley <kevind@rahul.net>
+
+ * xargs/Makefile.am: add ansi2knr
+
+ * xargs/xargs.c: add macros PARAMS rather than P_. Add
+ prototypes.
+
+ * po/POTFILES: new file listing all POFILES.
+
+ * m4/gl.po, m4/et.po: new files
+
+ * m4/Makefile.am.in: updated file
+
+ * m4: update directory
+
+ * locate/Makefile.am: create updatedb from updatedb.sh
+
+ * locate/updatedb.sh, locate/updatedb.in: removed file. Replaced
+ by updatedb.sh
+
+ * locate/frcode.c, locate/code.c, locate/bigram.c: add macros
+ PARAMS rather than P_. Add prototypes.
+
+ * lib/xstat.in: new file
+
+ * lib/Makefile.am: update to latest versions of library files.
+
+ * find/testsuite/Makefile.am: add CLEANFILES
+
+ * find/util.c: remove definition of basename
+
+ * find/util.c, find/tree.c, find/pred.c, find/parser.c,
+ find/fstype.c, find/find.c, find/defs.h: add macros PARAMS rather
+ than P_, for consistency, change to prototypes
+
+ * find/Makefile.am: Add prototypes and ansi2knr
+
+ * configure.in: add Galition and Estonian languages.
+ Miscellaneous other fixes.
+
+
+2000-04-02 Paul Eggert <eggert@twinsun.com>
+
+ Add support for large files, and port to Solaris 8 and earlier
+ versions.
+
+ * lib/human.c (getenv): Depend on NEED_GETENV_DECL, not
+ HAVE_DECL_GETENV.
+
+ * lib/strftime.c (my_strftime): Make sure we call the system
+ strftime, not ourselves, when invoking the underlying strftime.
+
+ * m4/check-decl.m4 (jm_CHECK_DECLS): Remove memchr, nanosleep.
+
+ * m4/jm-macros.m4 (jm_MACROS): Don't check for utime.h. Do not
+ require jm_BISON, jm_CHECK_TYPE_STRUCT_UTIMBUF, jm_FUNC_LCHOWN,
+ jm_FUNC_CHOWN, jm_FUNC_NANOSLEEP, jm_FUNC_GROUP_MEMBER,
+ jm_FUNC_PUTENV, jm_FUNC_GETGROUPS, AM_FUNC_GETLOADAVG,
+ jm_SYS_PROC_UPTIME, jm_FUNC_FTRUNCATE, jm_FUNC_UTIME. Do not
+ replace strcasecmp, dup2, gethostname, getusershell, stime,
+ strcspn, strpbrk, euidaccess, mkdir, rmdir, rpmatch, strndup,
+ strverscmp, memchr, memmove. Do not check for declaration of
+ lchown. Remove invocations of AM_FUNC_OBSTACK, AM_FUNC_STRTOD,
+ POW_LIBM, jm_LANGINFO_CODESET, jm_ICONV. Remove df tests.
+ (jm_CHECK_ALL_TYPES): Include <sys/stat.h> when checking for
+ struct stat.st_blksize.
+
+ * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set environment variable
+ in shell rather than using putenv, which isn't portable.
+
+ * COPYING, lib/alloca.c, lib/dirname.c, lib/error.c,
+ lib/savedir.c, lib/strstr.c, m4/check-decl.m4, m4/d-ino.m4,
+ m4/d-type.m4, m4/getline.m4, m4/jm-glibc-io.m4, m4/jm-macros.m4,
+ m4/jm-mktime.m4, m4/ls-mntd-fs.m4, m4/memcmp.m4, m4/prereq.m4,
+ m4/readdir.m4, m4/regex.m4, m4/strftime.m4, m4/uintmax_t.m4: Sync
+ to latest version from sh-utils-2.0g.
+
+ * config.guess, config.sub, lib/argmatch.c, lib/argmatch.h,
+ lib/human.c, lib/human.h, lib/memcpy.c, lib/quotearg.c,
+ lib/quotearg.h, lib/strtoull.c, lib/strtoumax.c,
+ lib/xstrtoumax.c, m4/c-bs-a.m4, m4/gettext.m4,
+ m4/largefile.m4, m4/lcmessage.m4, m4/link-follow.m4,
+ m4/progtest.m4, m4/strerror_r.m4, m4/timespec.m4,
+ m4/xstrtoumax.m4: New files, taken from sh-utils-2.0g.
+
+ * lib/ansi2knr.1, lib/ansi2knr.c, lib/basename.c, lib/getopt.h,
+ lib/fnmatch.c, lib/fnmatch.h, lib/modechange.c: Sync to latest
+ unreleased version of GNU tar (between 1.13.17 and 1.13.18).
+
+ * lib/basename.h, lib/waitpid.c: New files, taken from same
+ version of GNU tar.
+
+ * lib/regex.c, lib/regex.h: Sync to GNU grep 2.4.2.
+
+ * lib/posix/Makefile.am, lib/posix/regex.h: New files, taken from
+ GNU grep 2.4.2.
+
+ * lib/strftime.c: Sync to textutils 2.0e.
+
+ * acconfig.h, depcomp, lib/strcasecmp.c, m4/check-type.m4,
+ m4/const.m4, m4/decl.m4, m4/lfs.m4, m4/mktime.m4, m4/perl.m4,
+ m4/putenv.m4, m4/uptime.m4, m4/utimbuf.m4, m4/utime.m4,
+ m4/utimes.m4: Remove these files; no longer needed.
+
+ * configure.in (AC_CANONICAL_HOST, AC_SYS_LARGEFILE,
+ jm_AC_TYPE_UINTMAX_T): Add.
+ (CACHE_IDS, FSTYPE_STATVFS, FSTYPE_USG_STATFS, FSTYPE_AIX_STATFS,
+ FSTYPE_MNTENT, FSTYPE_STATFS, FSTYPE_GETMNT): Add comment, so that
+ we don't need acconfig.h.
+ (AC_CHECK_TYPE): Add ssize_t.
+ (AC_REPLACE_FUNCS): Add waitpid.
+ (AC_CHECK_FUNCS): Remove basename.
+ (AC_FUNC_MKTIME): Remove.
+ (LIBOBJS): Add no-ops to work around automake 1.4 bug.
+ (AC_OUTPUT): Add lib/posix/Makefile.
+
+ * find/defs.h: Include <config.h>, <sys/types.h>, <sys/stat.h>,
+ <stdio.h>, <limits.h>, <inttypes.h>. All includers changed to not
+ include these files, and to include "defs.h" first (since config.h
+ must be included first).
+ (CHAR_BIT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
+ S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, MOD_WXUSR,
+ MODE_R, MODE_RW, MODE_RWX, MODE_ALL): New macros.
+ (enum permissions_type): New enum.
+ (struct long_val.negative): New member.
+ (struct long_val.l_val): Now uintmax_t, not unsigned long.
+ (struct size_val.size): Likewise.
+ (struct perm_val): New type.
+ (struct predicate.perm): Now struct perm_val, not unsigned long.
+ (struct predicate.type): Now mode_t, not unsigned long.
+ (list_file): New parameters current_time, output_block_size.
+ All callers changed.
+ (savedir, basename): Remove decls.
+ (output_block_size, start_time): New extern vars.
+
+ * find/find.c: Include <human.h>, <savedir.h>.
+ (output_block_size, start_time): New vars.
+ (main): Initialize them. No need to check for negative st_size,
+ since savedir now does it for us.
+
+ * find/fstype.c: Include "dirname.h".
+ (xatoi): Remove.
+ (filesystem_type_uncached): Use xstrtoumax instead of xatoi.
+
+ * find/parser.c: Include "xstrtol.h".
+ (get_num_days, get_num, parse_amin, parse_cmin, parse_mmin,
+ parse_size, parse_used, insert_time, insert_num): Compute using
+ uintmax_t, not unsigned long.
+ (parse_amin, parse_cmin, parse_mmin, parse_used, insert_time):
+ Keep track of whether time was negative before converting it to an
+ unsigned type.
+ (parse_daystart): Don't assume that localtime succeeds; e.g. it
+ can fail with 64-bit time_t and 32-bit tm_year.
+ (parse_perm, insert_type): Compute using mode_t, not unsigned
+ long.
+ (insert_type): Use symbolic constants like MODE_ALL instead of
+ traditional ones like 07777. Set new kind member to indicate
+ permissions type, instead of using unportable magic numbers.
+ (make_segment): We will use human_readable to convert most numeric
+ values, so simplify the cases.
+ (get_num_days): Write in terms of get_num, to avoid duplicated
+ code.
+ (insert_time, insert_num): When debugging, convert large values to
+ uintmax_t and output with %ju.
+ (get_num): Use xstrtoumax to do the real work.
+
+ * find/pred.c: Include "basename.h", "human.h".
+ (DEV_BSIZE, ST_BLKSIZE, ST_NBLOCKSIZE): New macros, taken from
+ fileutils.
+ (ST_NBLOCKS): Replace with fileutils defn.
+ (MAX): New macro.
+ (ctime_format): New function.
+ (pred_fprintf, format_date): Use human_readable to output large
+ numbers portably.
+ (pred_fprintf): Use ctime_format to output ctime-style dates. Use
+ base_name to compute the base name of a path. With %m, output the
+ mode portably using traditional numbers, even if the host uses
+ some other numbering scheme.
+ (pred_iname, pred_name): basename -> base_name.
+ (pred_perm): Use new kind member to deduce permissions type,
+ instead of relying on magic numbers.
+ (pred_size): Compute using uintmax_t, not unsigned long. Avoid
+ overflow if file size is near the maximum.
+ (pred_type): Compute using mode_t, not unsigned long.
+ (launch): Use waitpid, not wait. Check for EINTR.
+ (format_date): Don't assume that localtime succeeds.
+
+ * find/util.c (basename): Remove; we now use base_name.
+
+ * lib/Makefile.am (SUBDIRS): New macro.
+ (libfind_a_SOURCES): Add argmatch.h, argmatch.c, basename.h,
+ basename.c, human.c, human.h, quotearg.c, quotearg.h, xstrtoumax.c.
+ Remove error.h, error.c, getline.c.
+ (EXTRA_DIST): Add mktime.c, regex.c.
+
+ * lib/listfile.c: Include "human.h".
+ (alloca): Declare, or include appropriate files to declare.
+ (DEV_BSIZE, ST_NBLKSIZE, ST_NBLOCKS, ST_NBLOCKSIZE): New macros.
+ (convert_blocks): Remove.
+ (list_file): New current_time and output_block_size args.
+ Revamp quite a bit, to handle large numbers correctly
+ and to match GNU ls behavior more closely.
+
+ * m4/Makefile.am (EXTRA_DIST): Add c-bs-a.m4, gettext.m4,
+ largefile.m4, lcmessage.m4, link-follow.m4, progtest.m4,
+ strerror_r.m4, xstrtoumax.m4. Remove check-type.m4, const.m4,
+ decl.m4, lfs.m4, mktime.m4, perl.m4, putenv.m4, timespec.m4,
+ uptime.m4, utimbuf.m4, utime.m4, utimes.m4.
+
+ * xargs/xargs.c (wait_for_proc): Retry wait if it fails with
+ errno == EINTR.
+
+2000-04-12 Kevin Dalley <kevind@rahul.net>
+
+ * doc/find.texi, doc/permi.texi: fix spellings, add LocalWords.
+
+ * lib/Makefile.am: put getline.c back into libfind_a_SOURCES,
+ since getstr is needed.
+
+ * Version 4.1.5
+
+ * po/POTFILES.in: updated list of files, updated po files.
+
+
+2000-05-13 Kevin Dalley <kevind@rahul.net>
+
+ * find/tree.c (opt_expr): move iname and ipath to the front of the
+ list of arguments.
+
+ * doc/find.texi (Directories): changed wording for "-prune".
+
+ * find/parser.c (parse_prune): set side_effects to true, to
+ prevent prune from being moved in opt_expr.
+
+2000-08-24 Kevin Dalley <kevind@rahul.net>
+
+ * doc/find.texi (Invoking xargs): changed @var{-s} to @samp{-s}.
+
+2000-10-09 Kevin Dalley <kevind@rahul.net>
+
+ * lib/fnmatch.c, lib/fnmatch.h: reverted to older version of
+ fnmatch which works with Solaris.
+
+ * locate/testsuite/config/unix.exp: dejagnu unix.exp
+
+ * xargs/testsuite/config/unix.exp: remove temporary file
+
+ * xargs/xargs.c: spelling correction
+
+ * m4/prereq.m4: updated and changed some macros
+
+ * m4/jm-macros.m4: replaced jm_FUNC_FNMATCH with
+ kd_FUNC_FNMATCH_CASE_REPL
+
+ * m4/timespec.m4, m4/strerror_r.m4, m4/mbstate_t.m4,
+ m4/largefile.m4, m4/gettext.m4, m4/fnmatchcase.m4, m4/d-type.m4,
+ m4/d-ino.m4, m4/c-bs-a.m4: new m4 macros.
+
+ * m4/Makefile.am: add fnmatchcase.m4 and mbstate_t.m4
+
+ * locate/testsuite/locate.gnu/ignore_case3.xo,
+ locate/testsuite/locate.gnu/ignore_case3.exp,
+ locate/testsuite/locate.gnu/ignore_case2.xo,
+ locate/testsuite/locate.gnu/ignore_case2.exp,
+ locate/testsuite/locate.gnu/ignore_case1.xo,
+ locate/testsuite/locate.gnu/ignore_case1.exp,
+ locate/testsuite/config/unix.exp: tests related to "--ignore-case"
+ option.
+
+ * locate/testsuite/locate.gnu: testsuite directory
+
+ * locate/testsuite/Makefile.am (Repository):
+
+ * locate/testsuite: add directory for locate testsuite
+
+ * po/findutils.pot: updated file
+
+ * po/sv.po, po/ru.po, po/pt_BR.po, po/pl.po, po/nl.po, po/ko.po,
+ po/it.po, po/gl.po, po/fr.po, po/et.po, po/es.po, po/de.po:
+ updated various po files.
+
+ * locate/updatedb.sh: export TMPDIR, which is used by child
+ processes.
+
+ * locate/locate.1, locate/locate.c: add "--ignore-case" option.
+
+ * locate/Makefile.am: add testsuite subdirectory
+
+ * find/testsuite/find.gnu/perm.xo,
+ find/testsuite/find.gnu/perm.exp,
+ find/testsuite/find.gnu/name-opt.xo,
+ find/testsuite/find.gnu/name-opt.exp: added test suites
+
+ * configure.in: add locate/testsuite/Makefile
+
+ * doc/find.info*: removed from repository
+
+ * doc/find.texi: add documentation for "-i" option.
+
+ * aclocal.m4: removed from repository, as it is generated.
+
+ * find/pred.c: fixes problem with "find -perm -0100".
+
+ * lib/lstat.c, lib/stat.c: removed from repository. These files
+ are generated from lib/xstat.in.
+
+2000-10-10 Kevin Dalley <kevind@rahul.net>
+
+ * locate/testsuite/config/unix.exp (Repository):
+
+ * po/POTFILES.in: added lib/rpmatch.c
+
+2000-10-10 Kevin Dalley <kevind@rahul.net>
+
+ * locate/testsuite/Makefile.am: Added missing \ at end of
+ EXTRA_DIST lines.
+
+ * locate/testsuite/locate.gnu/ignore_case3.xo,
+ locate/testsuite/locate.gnu/ignore_case3.exp,
+ locate/testsuite/locate.gnu/ignore_case2.exp,
+ locate/testsuite/locate.gnu/ignore_case1.xo,
+ locate/testsuite/locate.gnu/ignore_case1.exp: place locatedb
+ inside tmp directory, add subdir directory under tmp.
+
+ * locate/testsuite/config/unix.exp: clean up tmp after test is
+ finished.
+
+2000-10-10 Bruno Haible <haible@ilog.fr>
+
+ * lib/Makefile.am (libfind_a_SOURCES): added yesno.c
+
+ * lib/yesno.c, lib/rpmatch.c: new files.
+
+ * find/pred.c: use function yesno().
+
+2000-10-11 Kevin Dalley <kevind@rahul.net>
+
+ * Version 4.1.6
+
+ * locate/testsuite/config/unix.exp: set PRUNEFS to "" for the
+ testsuite.
+
+2000-10-13 Kevin Dalley <kevin@seti.org>
+
+ * depcomp, lib/depcomp: depcomp moved from lib to .
+
+ * po/sv.po, ru.po, pt_BR.po, pl.po, nl.po, ko.po, it.po, gl.po,
+ fr.po, findutils.pot, et.po, es.po, de.po: updated after addition
+ of lib/rpmatch.c
+
+2000-10-20 Kevin Dalley <kevin@seti.org>
+
+ * xargs/xargs.c, locate/updatedb.sh, locate/locate.c (usage),
+ find/parser.c (parse_help): add bug reporting address to help
+
+2000-10-21 Paul Eggert <eggert@twinsun.com>
+
+ If open + fchdir fails, fall back on xgetcwd + chdir.
+ The old code tested for this at compile-time,
+ but SunOS 4.1.4 fchdir can fail at run-time.
+
+ * find/defs.h (fchdir): Define to -1 if not available.
+ * find/defs.h (starting_dir, starting_desc):
+ Always declare. starting_dir now points to const.
+ * find/find.c (starting_dir, starting_desc): Likewise.
+ * find/find.c (starting_dir):
+ Now "." if starting_desc is nonnegative, for benefit of diagnostics.
+ (main, process_top_path, process_dir):
+ If open + fchdir fails, fall back on xgetcwd + chdir.
+ * find/pred.c (launch): Likewise.
+
+2000-10-29 Bruno Haible <haible@ilog.fr>
+
+ * locate/code.c (main), doc/find.texi: improve handling of
+ non-ASCII characters used old format.
+
+2001-01-20 Kevin Dalley <kevin@seti.org>
+
+ * doc/find.texi (Adding Tests): Place space in "#! /bin/sh".
+
+ * find/testsuite/find.gnu/prune-default-print.xo,
+ find/testsuite/find.gnu/prune-default-print.exp: test for "find
+ . -prune" which passes after changes. Also see name-opt.exp.
+
+ * find/util.c (get_new_pred):
+ * find/tree.c (set_new_parent):
+ * find/parser.c (various parse functions):
+ * find/find.c (main):
+ (default_prints): new function
+ * find/defs.h (struct predicate): added no_default_print
+ side_effects are no separated from no_default_print. predicates
+ which cause side effects should not be reordered (optimized).
+ predicates which cause printing should have printing turned off.
+ Printing statements also cause side effects.
+
+2001-04-28 Kevin Dalley <kevind@rahul.net>
+
+ * po/sv.po, ru.po, pt_BR.po, pl.po, nl.po, ko.po, it.po, gl.po,
+ fr.po, et.po, es.po, de.po, findutils.pot: new translations, and
+ new source code to translate.
+
+ * po/da.po: new Danish translation.
+
+2001-05-02 Kevin Dalley <kevin@seti.org>
+
+ * configure.in: Change AC_CHECK_MEMBERS to conform to new
+ autoconf. Add Danish.
+
+2001-05-20 Lionel CONS <lionel.cons@cern.ch>
+
+ * find/find.c: Fixed security holes. 1. There is a race
+ condition between the lstat() to detect a symbolic link and the
+ actual chdir(). 2. An attacker can move directories while find
+ is _inside_ so that chdir(..) goes out of the intended file tree.
+
+ * lib/modetype.h: support for Solaris door files is added.
+
+ * lib/filemode.c: S_ISDOOR is undef'ed if STAT_MACROS_BROKEN
+
+ * find/pred.c (pred_type): -D option (for Solaris door files) is
+ added.
+
+ * find/parser.c (insert_type): -D option (for Solaris door files)
+ is added.
+
+ * find/find.1: -D option (for Solaris door files) is documented
+
+ * doc/find.texi (Type): -D option (for Solaris door files) is
+ documented
+
+2001-05-20 Kevin Dalley <kevin@seti.org>
+
+ * Version 4.1.7
+
+ * lib/Makefile.am (EXTRA_DIST): add strcasecmp.c
+
+ * find/testsuite/Makefile.am (EXTRA_DIST): new tests:
+ find.gnu/name-opt.exp find.gnu/perm.exp find.gnu/perm.xo
+ find.gnu/prune-default-print.exp find.gnu/prune-default-print.xo
+
+ * configure.in: update to 4.1.7
+
+ * config.sub, config.guess: upgraded to recent versions of
+ config.sub and config.guess.
+
+ * locate/updatedb.sh: Add space to "#! /bin/sh"
+
+ * configure.in: Add id to ALL_LINGUAS
+
+ * lib/Makefile.am (EXTRA_DIST): getline.[ch] added
+ (libfind_a_SOURCES): getline.[ch] removed since getline.c is not
+ always needed.
+
+ * po/da.po, de.po, es.po, et.po, fr.po, gl.po, id.po, it.po, ko.po,
+ nl.po, pl.po, pt_BR.po, ru.po, sv.po: updated to reflect changes
+ in source code.
+
+ * po/id.po: New translation for Indonesia.
+
+2001-06-01 gettextize <bug-gnu-utils@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.10.38.
+ * cat-id-tbl.c: Remove file.
+ * stamp-cat-id: Remove file.
+
+2001-06-04 Kevin Dalley <kevin@seti.org>
+
+ * locate/testsuite/Makefile.am (DIST_SUBDIRS): remove second
+ instance of DIST_SUBDIRS.
+
+ * locate/Makefile.am (install-data-hook): changed install target
+ to install-data-hook, which still installs other files.
+
+ * doc/Makefile.am (MOSTLYCLEANFILES): added find.cps, which should
+ probably be handled by automake.
+
+ * doc/mdate-sh: removed file in doc directory. It now exists only
+ in top_srcdir, but this changed required a patch to automake.
+
+2001-06-05 Kevin Dalley <kevin@seti.org>
+
+ * locate/updatedb.sh: replace "whoami" with "id -u" when testing
+ for root.
+
+2001-06-09 Kevin Dalley <kevin@seti.org>
+
+ * ABOUT-NLS: updated from gettext-0.10.38.
+
+ * configure.in: add tr to ALL_LINGUAS.
+
+ * doc/Makefile.am (MOSTLYCLEANFILES): add find.cps, which is
+ created by dvips. This should be taken care of by automake, but
+ the code is commented out.
+
+ * po/stamp-cat-id: * stamp-cat-id: Remove file.
+
+ * po/Makefile.in.in: * Makefile.in.in: Upgrade to gettext-0.10.38.
+
+ * po/ChangeLog: * cat-id-tbl.c: Remove file.
+
+ * po/de.po, es.po, et.po, fr.po:
+ * po/fr.po, et.po, es.po, de.po: updated translations to
+ findutils-4.1.7.
+
+ * po/tr.po: * tr.po: New Turkish translation.
+
+2001-06-09 Kevin Dalley <kevin@seti.org>
+
+ * intl/plural.c:
+ Changes the location of bison.simple after running bison on local
+ machine
+
+ * ChangeLog: *** empty log message ***
+
+ * Makefile.in, aclocal.m4, config.h.in, configure,
+ doc/Makefile.in, find/Makefile.in, find/testsuite/Makefile.in,
+ lib/Makefile.in, lib/posix/Makefile.in, locate/Makefile.in,
+ locate/testsuite/Makefile.in, m4/Makefile.in, xargs/Makefile.in,
+ xargs/testsuite/Makefile.in: Updates mostly from gettext-0.10.38
+
+ * ABOUT-NLS: * ABOUT-NLS: updated from gettext-0.10.38.
+
+ * configure.in: * configure.in: add tr to ALL_LINGUAS.
+
+ * intl/config.charset, intl/dcigettext.c, intl/dcngettext.c,
+ intl/dngettext.c, intl/libgnuintl.h, intl/localcharset.c,
+ intl/locale.alias, intl/ngettext.c, intl/plural.y,
+ intl/ref-add.sin, intl/ref-del.sin: updated from gettext-0.10.38
+
+ * intl/cat-compat.c, intl/linux-msg.sed, intl/po2tbl.sed.in,
+ intl/xopen-msg.sed, m4/ChangeLog: *** empty log message ***
+
+ * m4/jm-macros.m4:
+ * jm-macros.m4 (jm_MACROS): remove jm_ICONV, which is replaced by
+ AM_ICONV, which is imported from gettext-0.10.38. removed
+ jm_GLIBC21, which is required in AM_GNU_GETTEXT, which is
+ imported from gettext-0.10.38.
+
+ * po/stamp-cat-id: * stamp-cat-id: Remove file.
+
+ * po/Makefile.in.in: * Makefile.in.in: Upgrade to gettext-0.10.38.
+
+ * po/ChangeLog: * cat-id-tbl.c: Remove file.
+
+ * po/de.po, po/es.po, po/et.po, po/fr.po:
+ * fr.po, et.po, es.po, de.po: updated translations to
+ findutils-4.1.7.
+
+ * po/tr.po: * tr.po: New Turkish translation.
+
+ * m4/ChangeLog: *** empty log message ***
+
+ * intl/dgettext.c, intl/explodename.c, intl/finddomain.c,
+ intl/gettext.c, intl/gettext.h, intl/gettextP.h,
+ intl/hash-string.h, intl/intl-compat.c, intl/l10nflist.c,
+ intl/libgettext.h, intl/loadinfo.h, intl/loadmsgcat.c,
+ intl/localealias.c, intl/plural.c, intl/textdomain.c,
+ intl/ChangeLog, intl/Makefile.in, intl/VERSION,
+ intl/bindtextdom.c, intl/dcgettext.c: Updated from gettext-0.10.38
+
+ * m4/Makefile.am:
+ reflects addition of codeset.m4 from gettext-0.10.38, automatically
+ generated.
+
+ * m4/codeset.m4, m4/gettext.m4, m4/glibc21.m4, m4/iconv.m4,
+ m4/isc-posix.m4, m4/lcmessage.m4, m4/progtest.m4: *
+ progtest.m4, lcmessage.m4, isc-posix.m4, iconv.m4,
+ glibc21.m4, gettext.m4, codeset.m4: updated from
+ gettext-0.10.38.
+
+ * ChangeLog: *** empty log message ***
+
+ * THANKS: added "Gerrit P. Haase" <gerrit.haase@t-online.de>
+
+ * m4/ChangeLog, locate/testsuite/.cvsignore,
+ xargs/testsuite/.cvsignore, config.h.in, configure, aclocal.m4,
+ doc/.cvsignore: *** empty log message ***
+
+ * m4/jm-macros.m4: * jm-macros.m4 (jm_MACROS): add jm_FSTYPENAME
+
+ * doc/Makefile.in: *** empty log message ***
+
+ * doc/Makefile.am:
+ * doc/Makefile.am (MOSTLYCLEANFILES): add find.cps, which is
+ created by dvips. This should be taken care of by automake, but
+ the code is commented out.
+
+2003-05-24 James Youngman <jay@gnu.org>
+
+ * po/da.po, de.po, es.po, et.po, findutils.pot, fr.po, gl.po,
+ id.po, it.po, ko.po, nl.po, pl.po, pt_BR.po, ru.po, sv.po, tr.po:
+ also need stpcpy (e.g. for Solaris)
+
+ * po/POTFILES.in, da.po, de.po, es.po, et.po, findutils.pot, fr.po,
+ gl.po, id.po, it.po, ko.po, nl.po, pl.po, pt_BR.po, ru.po, sv.po,
+ tr.po: Updates to the i18n files to ensure that 'make dist'
+ succeeds
+
+2003-05-26 James Youngman <jay@gnu.org>
+
+ * po/pl.po, pt_BR.po, ru.po, sv.po, tr.po, da.po, de.po, es.po,
+ et.po, findutils.pot, fr.po, gl.po, id.po, it.po, ko.po, nl.po:
+ Changes to allow compilation on non-GNU systems (i.e. for the
+ macros that gnulib decides to #define to be effective)
+
+2003-06-14 James Youngman <jay@gnu.org>
+
+ * NEWS, configure.in:
+ Updated version number to 4.2.0-CVS [not ready for release yet]
+
+ * configure.in, doc/.cvsignore, doc/Makefile.in, find/.cvsignore, find/Makefile.am, find/Makefile.in, find/defs.h, find/find.c, find/fstype.c, find/parser.c, find/pred.c, find/testsuite/.cvsignore, find/testsuite/Makefile.in, find/testsuite/config/unix.exp, find/tree.c, find/util.c, import-gnulib.sh, intl/bindtextdom.c, intl/dcgettext.c, intl/dcigettext.c, intl/dcngettext.c, intl/dgettext.c, intl/dngettext.c, intl/explodename.c, intl/finddomain.c, intl/gettext.c, intl/intl-compat.c, intl/l10nflist.c, intl/loadmsgcat.c, intl/localcharset.c, intl/localealias.c, intl/ngettext.c, intl/plural.y, intl/textdomain.c, lib/.cvsignore
+ also need stpcpy (e.g. for Solaris)
+
+ * intl/dcigettext.c:
+ plural_lookup: don't use a variable called "index", because we may
+ have done "#define strchr index", in which case using a variable
+ called index will prevent us calling strchr(p, ch) in the same scope.
+
+ * find/defs.h, find/find.c, find/fstype.c, find/parser.c, find/pred.c, find/testsuite/config/unix.exp, find/tree.c, find/util.c, import-gnulib.sh, lib/Makefile.am, lib/listfile.c, lib/modetype.h, lib/nextelem.c, locate/bigram.c, locate/code.c, locate/frcode.c, locate/locate.c, locate/locatedb.h, locate/testsuite/config/unix.exp, locate/updatedb.sh, xargs/testsuite/config/unix.exp, xargs/xargs.c:
+ Updated copyright years and the address of the FSF
+
+ * aclocal.m4, config.h.in, configure:
+ Removed files that are generated from other files (e.g. configure)
+
+ * NEWS: Updated NEWS file for 4.1.20.
+
+ * configure.in, lib/Makefile.am, po/POTFILES.in, po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sv.po, po/tr.po:
+ Updates to the i18n files to ensure that 'make dist' succeeds
+
+ * lib/posix/.cvsignore, lib/posix/Makefile.am,
+ lib/posix/Makefile.in, lib/posix/regex.h, lib/strftime.c,
+ lib/strncasecmp.c, lib/strspn.c, lib/strstr.c, lib/strtol.c,
+ lib/strtoul.c, lib/strtoull.c, lib/strtoumax.c, lib/wait.h,
+ lib/waitpid.c, lib/xalloc.h, lib/xgetcwd.c, lib/xmalloc.c,
+ lib/xstat.in, lib/xstrdup.c, lib/xstrtol.c, lib/xstrtol.h,
+ lib/xstrtoul.c, lib/xstrtoul.h, lib/xstrtoumax.c, lib/yesno.c,
+ locate/Makefile.am, locate/Makefile.in, locate/locate.c,
+ locate/testsuite/Makefile.in, m4/.cvsignore, m4/ChangeLog,
+ m4/Makefile.am, m4/Makefile.am.in, m4/Makefile.in, m4/README,
+ m4/afs.m4, m4/assert.m4, m4/c-bs-a.m4, m4/check-decl.m4,
+ m4/codeset.m4, m4/d-ino.m4, m4/d-type.m4, m4/error.m4,
+ m4/fnmatch.m4, m4/fnmatchcase.m4, m4/fstypename.m4, m4/getline.m4,
+ m4/gettext.m4, m4/glibc.m4, m4/glibc21.m4, m4/iconv.m4,
+ m4/inttypes_h.m4, m4/isc-posix.m4, m4/jm-glibc-io.m4,
+ m4/jm-macros.m4, m4/jm-mktime.m4, m4/lcmessage.m4, m4/libintl.m4,
+ m4/link-follow.m4, m4/ls-mntd-fs.m4, m4/lstat-slash.m4,
+ m4/lstat.m4, m4/malloc.m4, m4/mbstate_t.m4, m4/memcmp.m4,
+ m4/prereq.m4, m4/progtest.m4, m4/readdir.m4, m4/realloc.m4,
+ m4/regex.m4, m4/st_dm_mode.m4, m4/st_mtim.m4, m4/stat.m4,
+ m4/strerror_r.m4, m4/strftime.m4, m4/timespec.m4, m4/uintmax_t.m4,
+ m4/ulonglong.m4, m4/xstrtoumax.m4, xargs/Makefile.am,
+ xargs/Makefile.in, xargs/testsuite/Makefile.in,
+ find/testsuite/Makefile.in, lib/.cvsignore, lib/Makefile.am,
+ lib/Makefile.in, lib/alloca.c, lib/ansi2knr.1, lib/ansi2knr.c,
+ lib/argmatch.c, lib/argmatch.h, lib/basename.c, lib/basename.h,
+ lib/dirname.c, lib/dirname.h, lib/error.c, lib/error.h,
+ lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/fnmatch.c,
+ lib/fnmatch.h, lib/getline.c, lib/getline.h, lib/getopt.c,
+ lib/getopt.h, lib/getopt1.c, lib/human.c, lib/human.h,
+ lib/idcache.c, lib/malloc.c, lib/memcmp.c, lib/memcpy.c,
+ lib/memset.c, lib/mktime.c, lib/modechange.c, lib/modechange.h,
+ lib/pathmax.h, lib/quotearg.c, lib/quotearg.h, lib/realloc.c,
+ lib/regex.c, lib/regex.h, lib/rpmatch.c, lib/savedir.c,
+ lib/savedir.h, lib/stpcpy.c, lib/strcasecmp.c, lib/strdup.c,
+ find/Makefile.am, find/Makefile.in, find/find.c, find/pred.c:
+ Updated to work with current version of gnulib
+
+ * import-gnulib.sh: New file.
+
+ * config.h.in, configure, configure.in, doc/Makefile.in, import-gnulib.sh:
+ Updated to work with current version of gnulib
+
+ * README-CVS: New file.
+
+ * Makefile.am, Makefile.in, README-CVS, aclocal.m4:
+ Updated to work with current version of gnulib
+
+2003-06-16 James Youngman <jay@gnu.org>
+
+ * ChangeLog, find/find.1, locate/locate.1, locate/locatedb.5, locate/updatedb.1, xargs/xargs.1:
+ Added BUGS section to manual pages. This section includes information about known bugs and how to report new bugs.
+
+ * AUTHORS: Identify the current maintainer.
+
+ * TODO: Removed the TODO items which have now been done.
+
+ * THANKS: Added Bruno Haible and Bob Proulx.
+
+ * xargs/xargs.c: xargs/xargs.c (DO_MULTIBYTE): New macro.
+ (mbstrstr): New function.
+ (do_insert): Use it instead of strstr.
+
+ * config.guess, config.sub:
+ Use config.guess and config.sub from automake
+
+ * find/fstype.c:
+ Bruno Haible: (fstype_to_string) Don't define this function if
+ HAVE_F_FSTYPENAME_IN_STATFS is defined.
+
+ * configure.in:
+ Bruno Haible: Prefer the 4.4BSD API (if present) to the 4.3BSD API,
+ because some 4.4BSD systems have <mntent.h> but no /etc/mtab file.
+
+ * doc/find.texi, find/find.1:
+ Applied patch 1498 (documenting the backslash escape sequence)
+
+ * locate/updatedb.sh: Applied (my own version of) Savannah patch 1601.
+
+ * doc/find.texi:
+ Applied Savannah patch #1547 (document the fact that printf
+ field-width specifiers are supported).
+
+ * xargs/xargs.c:
+ Applied Savannah patch #1499 (adds final newline to usage message).
+
+2003-06-18 James Youngman <jay@gnu.org>
+
+ * find/find.1:
+ Indicate that -fls and friends always create their output file
+
+2003-06-21 James Youngman <jay@gnu.org>
+
+ * doc/find.texi:
+ Indicate that xargs stops immediately if a command exits with status 255
+
+ * xargs/xargs.1:
+ Document the fact that xargs exits immediately with an error message
+ if the command it executes exits with a status of 255.
+
+2003-06-26 James Youngman <jay@gnu.org>
+
+ * import-gnulib.sh:
+ Remove reference to nonexistent module "basename" ("dirname" exists
+ and we already use that).
+
+2003-08-02 James Youngman <jay@gnu.org>
+
+ * find/find.1:
+ Explain that braces are not special when performing filename matching
+ with -name.
+
+ * find/find.1:
+ added example of the use of -exec to the EXAMPLES section
+
+ * find/fstype.c, locate/locate.c:
+ Savannah bug #4295 - implicit declarations of ctype.h functions
+
+ * locate/locate.c:
+ Savannah bug #4279 - missing newline on locate help message
+
+ * find/find.1, xargs/xargs.1:
+ Improved discussion of the -print0 option of find and the -0 option of xargs
+
+2003-08-08 James Youngman <jay@gnu.org>
+
+ * find/find.1:
+ Documented the fact that -printf also supports the '\0' escape code.
+ Added "STANDARDS CONFORMANCE" section.
+
+2004-01-03 James Youngman <jay@gnu.org>
+
+ * xargs/xargs.c:
+ Indicate that prep_child_for_exec() fixes Savannah bug #3992.
+
+ * xargs/xargs.c:
+ Attach the stdin of xargs' child process to /dev/null so that if it
+ tries to read from its stdin it doesn't consume any of the list of
+ files that xargs is trying to use.
+
+ * find/find.1:
+ Documented that the -regex option follows Gnulib's re_match()
+ implementation.
+
+ * NEWS, locate/locate.c: Applied Savannah patch 2108
+
+ * xargs/xargs.c: Applied Savannah patch 1500
+
+ * find/find.1, doc/find.texi:
+ Improved the documentation for the %k and %b format specifiers to
+ -printf (Savannah bug #5034). Also pointed out that this handling is
+ different to that used by the "b" and "k" suffixes with "-size".
+
+ * find/find.1: Improved the documentation for %k (Savannah bug #5034).
+
+ * find/find.1:
+ Improved the documentation for -print0 in the manpage, fixing Debian
+ bug 111143.
+
+ * README-CVS, find/pred.c, lib/listfile.c:
+ Brought up-to-date with change in gnulib's human.c - we no longer
+ use human_readable_inexact(), because it is no longer provided.
+
+2004-03-13 James Youngman <jay@gnu.org>
+
+ * ChangeLog: Updated from checkin comments.
+
+ * find/find.c:
+ Oops, there is no access to the predicate name table if DEBUG is
+ not #defined.
+
+ * find/parser.c:
+ Detect arithmetic overflow (poorly) in insert_time(), which diagnoses
+ the failure to handle large arguments to -mtime. The existing code
+ does careful computation and then bungs the value into a time_t, which
+ ruins all our careful effort. The new code is not a great
+ improvement. We just check the result to detect overflow, rather than
+ actually avoiding the overflow.
+
+ * find/find.c:
+ Fixed Debian bug #185202 by checking for any trailing predicates after
+ the top-level invocation of get_expr() has done its work.
+
+ * locate/locate.1, xargs/xargs.1:
+ Fixed Debian bug 175372, inappropriate 'L' suffixes on manual
+ page section indicators
+
+ * find/find.1:
+ Removed "L" suffixes from manual page section indicators, to fix
+ Debian bug 175372.
+
+ * debian/updatedb.conf:
+ Updated with list of filesystems from current Debian release. This
+ includes devfs, for example.
+
+ * xargs/xargs.1:
+ Modified documentation of "-s" option to take into account the fix for
+ Debian bug #176201.
+
+ * xargs/xargs.c:
+ Fixed Debian bug #176201, "xargs environment size limited to 20k", by
+ reading a patch offered by Bob Proulx and implementing something
+ substantially similar myself.
+
+2004-04-13 James Youngman <jay@gnu.org>
+
+ * doc/find.texi:
+ Actioned Savannah bug #8558 (find complains when it tries to recurse
+ into directories that it had removed).
+
+2004-04-24 James Youngman <jay@gnu.org>
+
+ * README-CVS: Corrected the instructions for getting gnulib via CVS.
+
+2004-05-03 James Youngman <jay@gnu.org>
+
+ * find/find.1:
+ document the various suffixes for -size and also the new
+ option -ignore_readdir_race
+
+ * locate/locate.c:
+ Fixes Savannah bug #8623 (failure to check consistency of data
+ read from locate database)
+
+ * locate/updatedb.sh:
+ Resolves Savannah bug 4380, that updatedb generates an empty
+ database if one of the commands fails
+
+ * NEWS: Talk about -ignore_readdir_race
+
+ * doc/find.texi:
+ Documented -ignore_readdir_race and -noignore_readdir_race
+
+ * find/find.c:
+ -ignore_readdir_race should have no effect if the reason for the
+ failure of stat(2) was anything other than ENOENT.
+
+ * find/defs.h, find/find.c, find/parser.c:
+ Fixed Savannah bug 4391 (readdir race condition leading to
+ spurious error messages)
+
+2004-08-08 James Youngman <jay@gnu.org>
+
+ * locate/updatedb.sh:
+ cd to / to avoid inability to examine the current directory if we're
+ invoked via cron (and hence in root's home directory for example).
+
+ * doc/find.texi, find/find.1:
+ Deprecate -path and -ipath in favour of -wholename and -iwholename
+
+ * find/parser.c:
+ As per RMS's suggestion, deprecate -path and -ipath in favour of
+ -wholename and -iwholename.
+
+ * locate/locate.c:
+ Fixed Savannah bug #9923, in which get_short() returns large positive
+ ints when it should be returning negative shorts.
+
+ * xargs/xargs.1:
+ Applied documentation improvements suggested by Dan Jacobson
+ <jidanni@jidanni.org>.
+
+ * xargs/xargs.c:
+ Don't check size_of_environment against arg_max since that causes the
+ test suite to fail.
+
+ * xargs/xargs.1, xargs/xargs.c: Better documentation for the -i option
+
+2004-10-02 James Youngman <jay@gnu.org>
+
+ * po/Makefile.in.in:
+ Search in $(top_srcdir) for mkinstalldirs, since that's where we keep it.
+
+ * NEWS: Brought up to date, organised more clearly, and tidied up.
+
+ * NEWS: brought up to date with recent changes
+
+ * locate/testsuite/config/unix.exp, locate/testsuite/locate.gnu/ignore_case1.exp, locate/testsuite/locate.gnu/ignore_case3.exp, locate/updatedb.sh:
+ Added new option --changecwd to updatedb so that the 'cd /' which it does can be compatible with the requirements of the test suite. Specifically, the test suite relies on being able to use relative pathnames
+
+ * find/pred.c:
+ Fixed usage of human_readable() in '%k' format specifier to fix a bug
+ reported by Dmitry V. Levin (arguments to human_readable() were
+ specified in the wrong order, which resulted in a floating-point
+ error).
+
+2004-10-16 James Youngman <jay@gnu.org>
+
+ * import-gnulib.sh:
+ Switch to requirement for GNU fnmatch because it supports FNM_CASEFOLD.
+
+ * locate/updatedb.sh:
+ Bug #9465: use of signal numbers for 'trap' is deprecated. Should use
+ names instead. See
+ http://www.opengroup.org/onlinepubs/009695399/utilities/trap.html,
+ which indicates that support for signal numbers is optional, while
+ support for signal names is mandatory.
+
+ * configure.in:
+ Indicate that this is the CVS version (once again) now that findutils
+ 4.2.0 has been released.
+
+ * ChangeLog, configure.in, po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sv.po, po/tr.po:
+ findutils 4.1.20 check-in for tagging
+
+2004-10-17 James Youngman <jay@gnu.org>
+
+ * configure.in:
+ Define intmax_t if it is not already defined - allows parser.c to compile on AIX 4.3
+
+ * configure.in:
+ Adjust version number to indicate that this s/w has moved on since the
+ 4.2.1 release.
+
+ * configure.in: preparing to release 4.2.1
+
+ * ChangeLog: updated with current changes
+
+ * README-CVS: Updated to go with newer version of gnulib.
+
+ * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sv.po, po/tr.po:
+ preparation for release
+
+ * NEWS: Mention the changes to "trap".
+
+ * NEWS: Brought up to date.
+
+ * import-gnulib.sh:
+ Use xalloc-die module from gnulib, since that has now been split out
+
+ * find/parser.c:
+ Check fnmatch() when other predicates that rely on fnmatch() are used.
+
+ * find/parser.c: bug #10701: find needs fnmatch sanitycheck on startup
+
+2004-10-22 James Youngman <jay@gnu.org>
+
+ * doc/find.texi: Syntax corrections.
+
+ * doc/find.texi: Indicate that "-exec {}+" is not yet supported.
+
+ * find/find.1: Indicate that "{}+" is not yet supported.
+
+ * find/testsuite/find.gnu/name-period.xo, find/testsuite/find.gnu/name-period.exp, find/find.1, doc/find.texi:
+ The -name predicate must allow '*' to match '.foo' as demanded by IEEE
+ Std 1003.2-1992 Interpretation #126.
+
+ * find/pred.c:
+ Remove use of FNM_PERIOD for -name as demanded by IEEE Std 1003.2-1992
+ Interpretation #126
+
+ * find/parser.c: Fix for compilation (on AIX 4.3) with GCC 2.x.
+
+ * xargs/xargs.c:
+ Changed the erorr message issued when there is an unmatched quote to
+ point out that the user might have wanted to use the -0 option instead.
+
+2004-10-24 James Youngman <jay@gnu.org>
+
+ * ChangeLog: Prepared to release findutils-4.2.2.
+
+ * ChangeLog, NEWS, po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sv.po, po/tr.po:
+ Updates prior to release of 4.2.2
+
+ * NEWS: Updated with news for findutils-4.2.2.
+
+ * find/testsuite/config/unix.exp, lib/forcefindlib.c, lib/listfile.c, lib/modetype.h, lib/nextelem.c, locate/bigram.c, locate/code.c, locate/frcode.c, locate/locate.c, locate/locatedb.h, locate/testsuite/config/unix.exp, locate/updatedb.sh, xargs/testsuite/config/unix.exp, xargs/xargs.c, NEWS, find/defs.h, find/find.c, find/fstype.c, find/parser.c, find/pred.c, find/tree.c, find/util.c, import-gnulib.sh:
+ Corrected typo in the address of the FSF office
+
+ * lib/strspn.c: Updated FSF address.
+
+ * m4/.cvsignore: 'cvs status' should ignore Makefile.in
+
+ * m4/Makefile.am, Makefile.am, NEWS, README-CVS, configure.in, doc/texinfo.tex, find/defs.h, find/fstype.c, find/parser.c, find/pred.c, import-gnulib.sh, intl/bindtextdom.c, intl/dcgettext.c, intl/dcigettext.c, intl/dcngettext.c, intl/dgettext.c, intl/dngettext.c, intl/explodename.c, intl/finddomain.c, intl/gettext.c, intl/intl-compat.c, intl/l10nflist.c, intl/loadmsgcat.c, intl/localcharset.c, intl/localealias.c, intl/ngettext.c, intl/plural.y, intl/textdomain.c, lib/Makefile.am, lib/forcefindlib.c, lib/listfile.c, lib/nextelem.c, lib/strspn.c, lib/waitpid.c, locate/bigram.c, locate/code.c, locate/frcode.c, locate/locate.c, m4/findlib.m4, po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sv.po, po/tr.po, xargs/xargs.c:
+ Use gnulib-tool --import to import the gnulib code, rather than the odd way we were doing it before
+
+ * find/find.c, find/fstype.c, find/parser.c, find/pred.c, find/tree.c, find/util.c, locate/code.c, locate/locate.c, xargs/xargs.c:
+ Work round an apparent compiler bug in HP-UX 11.23 for
+ ia64
+
+ * locate/locate.c:
+ Work around what appears to be a C compiler bug in HP-UX 11.23 for
+ ia64.
+
+ * INSTALL, depcomp, install-sh, missing, mkinstalldirs:
+ Updated from automake
+
+ * locate/bigram.c, locate/code.c, locate/frcode.c, locate/locate.c, xargs/xargs.c, find/find.c:
+ Avoid use of exit() within main, to silence warnings about unreachable code
+
+2004-10-25 James Youngman <jay@gnu.org>
+
+ * doc/find.texi, find/find.1, find/parser.c, find/pred.c:
+ Support -printf %D, which prints the device number of the containing filesystem
+
+ * locate/updatedb.sh:
+ Avoid confusion between James Woods and James Youngman, by using the
+ disambiguating surname.
+
+ * find/parser.c: Use RE_ICASE instead of re->translate.
+
+ * configure.in, find/parser.c, find/pred.c, xargs/xargs.c:
+ No need to #define _GNU_SOURCE if we use gl_INIT.
+
+2004-10-30 James Youngman <jay@gnu.org>
+
+ * .cvsignore, NEWS, doc/find.texi, find/defs.h, find/find.1, find/parser.c, find/pred.c:
+ Implemented the -quit action
+
+ * NEWS, doc/find.texi, find/find.1, find/parser.c, find/pred.c:
+ Refactored time handling routines in preparation for support of absolute timestamp comparison predicates
+
+ * locate/locate.c:
+ Applied Savannah patch #2952 ("getline off-by-one bugfix").
+
+ * NEWS, doc/find.texi, find/defs.h, find/find.1, find/parser.c, find/pred.c:
+ Added -delete action (Savannah patch #3454 with additions)
+
+ * locate/locate.c:
+ Applied Savannah patch #2692 (allowing get_short to process negative integers).
+
+ * find/find.c:
+ If we are iossuing an error message because $FIND_BLOCK_SIZE is set,
+ ignore the setting of errno.
+
+ * find/parser.c: More fixes for pedantic compiler warnings
+
+ * NEWS, find/parser.c, find/tree.c: Eliminated some compiler warnings
+
+ * find/find.c, find/parser.c, find/pred.c:
+ Various fixes for compiler warninga sbout unreachable code or unused function arguments
+
+ * intl/plural.y: Silence compiler warning about unused argument.
+
+ * locate/testsuite/Makefile.am:
+ Subdirectory "inputs" does not exist, so remove it from DIST_SUBDIRS.
+
+ * locate/locate.c:
+ Corrected the explanation of why we have to use no parentheses around
+ the String argument to the N_ macro in its expansion.
+
+ * configure.in: Nextr release is 4.2.3.
+
+ * configure.in: IOndicate this is no longer the pristine release.
+
+ * NEWS:
+ Oops, comments for release 4.2.0 should have said 20480 bytes, not 2480.
+
+ * lib/listfile.c:
+ The -ls predicate should not truncate usernames. Fixes Savannah bug #10800.
+
+ * find/fstype.c, locate/locate.c:
+ Fixes for Savannah bug #3727 (Intel icc compilation errors).
+
+2004-10-31 James Youngman <jay@gnu.org>
+
+ * find/find.1, find/parser.c: NetBSD also supports -d.
+
+ * find/find.1, doc/find.texi:
+ Documented the behaviour of -daystart and -follow in more detail
+
+ * find/parser.c: Corrected the usage message.
+
+ * find/parser.c:
+ When deciding whether to issue a warning about options following
+ non-options, ignore any options whose position affects the tests
+ (i.e. -daystart and -follow).
+
+ * find/parser.c: -daystart is a positional option like -follow.
+
+ * find/parser.c:
+ Issue a warning message if an option is specified after a test or an
+ action (because the user might have believed that the behaviour of the
+ option is in some way conditional on the preceding tests).
+
+ * locate/updatedb.sh:
+ Oops; removed some test code that I shouldn't have checked in.
+
+ * locate/updatedb.sh:
+ Indicate that the old locate database format will shortly be unsupported.
+
+ * doc/find.texi:
+ Use @direntry instead of hard-coding START-INFO-DIR-ENTRY inside @ifinfo.
+
+ * locate/updatedb.1: Updated default location of locatedb file.
+
+ * README-alpha:
+ Updated to give correct FTP location and to not talk about "test"
+ versions of automake, which are no longer required.
+
+ * locate/updatedb.sh:
+ Incorporated the default list of filesystems to avoid from the Debian
+ package. Also added /afs and /sfs to the default pruned paths.
+
+ * configure.in: Released findutils 4.2.3
+
+ * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sv.po, po/tr.po:
+ did make distcheck, which updates these files
+
+ * find/defs.h, find/fstype.c:
+ Use const qualifier in arguments to filesystem_type() to allow callers with const variables to use them
+
+ * ChangeLog: Updated.
+
+ * NEWS: Added new news.
+
+ * find/find.c:
+ Extra diagnositcs for the case where we have the error "%s changed
+ during execution of %s" - that is when we chdir back to the parent
+ directory only to find that it has changed.
+
+2004-11-01 James Youngman <jay@gnu.org>
+
+ * NEWS: Fixed "find -printf '%H\n'".
+
+ * find/find.c:
+ Avoid segfault if -printf %H is used where the matched file was the default, unspecified starting point, the current directory
+
+2004-11-06 James Youngman <jay@gnu.org>
+
+ * NEWS, doc/find.texi, locate/locate.1:
+ Documented --wholename and --basename and updated the NEWS file
+
+ * README-CVS:
+ Give the autogen commands in a form that you can usefully cut and paste into a shell
+
+ * NEWS: Options --null and --count) for locate
+
+ * lib/nextelem.c:
+ Don't return '.' for an empty path element, because the path we are splitting may not be intended to contain directories
+
+ * configure.in: we're working on findutils-4.2.4 now
+
+ * locate/Makefile.am: Substitute @SORT_SUPPORTS_Z@
+
+ * doc/find.texi:
+ Documented new locate option --null and newline handling
+
+ * locate/locate.1, locate/locate.c:
+ New locate options --null, --wholename, --basename, --count
+
+ * locate/frcode.c, locate/updatedb.1, locate/updatedb.sh:
+ correctly handle newlines in the file names
+
+ * configure.in: Determine if sort -z works
+
+ * m4/nullsort.m4, m4/order-bad.bin, m4/order-good.bin:
+ jy_SORTZ: a macro to determine if the system has a sort command with a working -z option
+
+2004-11-07 James Youngman <jay@gnu.org>
+
+ * m4/Makefile.am:
+ Added in the extra files we need to distribute, nullsort.m4
+ order-bad.bin order-good.bin
+
+ * doc/find.texi: Documented locate's --limit option
+
+ * locate/locate.1, locate/locate.c:
+ Implmented --limit and corrected the implementation of the -i option.
+
+2004-11-08 James Youngman <jay@gnu.org>
+
+ * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sv.po, po/tr.po:
+ distcheck changed the po files again
+
+ * locate/Makefile.am:
+ Make install-data-hook honour the setting of DESTDIR so that "make
+ DESTDIR=/tmp/foo install" works and puts localstater in the right
+ place.
+
+ * configure.in: We're now working on findutils-4.2.5.
+
+ * doc/find.texi, xargs/xargs.1:
+ Point out that xargs -i only splits input items at newlines
+
+ * ChangeLog: Indicate that we released 4.2.4.
+
+ * ChangeLog: Updated for release 4.2.4
+
+ * NEWS, configure.in: Prepare for release of 4.2.4.
+
+ * NEWS: Brought up to date with latest changes.
+
+ * NEWS, doc/find.texi, find/defs.h, find/find.1, find/find.c, find/parser.c, po/da.po, po/de.po, po/es.po, po/findutils.pot, po/gl.po, po/id.po, po/ko.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sv.po:
+ Turn warning messages off by default if stdin is not a tty; allow these to be controlled explicitly by options -warn and -nowarn
+
+ * po/et.po, po/it.po: Updated translation files
+
+ * po/sk.po: New translation file
+
+ * po/fr.po, po/nl.po, po/tr.po: Updated translation files
+
+ * configure.in: Added Slovak (sk) language.
+
+ * xargs/xargs.c:
+ Enforcing a lower limit on the value specified by -s makes the test
+ suite fail. Removed that lower limit.
+
+ * locate/Makefile.am: Oops, multilocate doesn't exist yet.
+
+ * NEWS: *** empty log message ***
+
+ * doc/find.texi, locate/updatedb.1, locate/updatedb.sh:
+ Added option --findoptions to updatedb
+
+ * locate/Makefile.am, locate/locatedb.5, locate/updatedb.1, xargs/xargs.1:
+ Fixed section numbers in manpage titles and cross-references
+
+ * NEWS, doc/find.texi, xargs/xargs.1, xargs/xargs.c:
+ Increased the default argument length and improved POSIX compliance of the handling of out-of-range values for the -s option
+
+2004-11-10 James Youngman <jay@gnu.org>
+
+ * doc/find.texi, find/find.1, find/parser.c, find/pred.c:
+ Implemented %M and %A+ format specifiers
+
+ * doc/find.texi, find/find.1, find/parser.c, find/pred.c:
+ Documented the fact that only %d and %m format specifiers honour the various formatting flags
+
+ * xargs/xargs.c:
+ Get the right number of bytes in a Kilobyte (hint: it's not 1048; that
+ was a typo, honest :)
+
+ * po/pl.po: Applied Polish translations
+
+2004-11-11 James Youngman <jay@gnu.org>
+
+ * NEWS, doc/find.texi, find/defs.h, find/find.1, find/find.c, find/parser.c:
+ Implemented -H and -L options.
+
+ * find/util.c: Added in the -H and -L options on the usage message.
+
+2004-11-12 James Youngman <jay@gnu.org>
+
+ * NEWS, doc/find.texi, find/defs.h, find/find.1, find/find.c, find/parser.c, find/pred.c, find/testsuite/find.gnu/posix-dflt.exp, find/testsuite/find.gnu/posix-dflt.xo, find/testsuite/find.gnu/posix-h.exp, find/testsuite/find.gnu/posix-h.xo, find/testsuite/find.gnu/posix-l.exp, find/testsuite/find.gnu/posix-l.xo, find/util.c:
+ Implemented BSD option -P and also the correct default behaviour of find with respect to symlinks if neither -L nor -H is specified [i.e. same as -P]
+
+2004-11-15 James Youngman <jay@gnu.org>
+
+ * import-gnulib.sh:
+ Avoid test -e because not all systems are POSIX-compliant (bug
+ #11005). Also don't need regex module any more if we're not building
+ in intl.
+
+ * Makefile.am, configure.in:
+ These days gnulib likes to include 'libintl.h' which our very old intl/ directory lacks. For the moment, disable use of the internal intl/ directory
+
+ * doc/find.texi:
+ Use @ref not @xref for a reference at the beginning of a sentence.
+
+ * intl/Makefile.in:
+ Make sure gnulib.lib is on the #include path (Savannah bug #11002)
+
+ * locate/locate.c:
+ Use base_name instead of basename - fixes Savannah bug 11003.
+
+ * configure.in, find/defs.h, find/find.c, find/parser.c, find/pred.c, locate/bigram.c, locate/locate.c:
+ Don't need banner to emphasise the location of the call to jy_SORTZ
+
+2004-11-19 James Youngman <jay@gnu.org>
+
+ * configure.in: releaseing findutils-4.2.5
+
+ * find/testsuite/Makefile.am, locate/testsuite/Makefile.am, xargs/testsuite/Makefile.am:
+ If a directory has no Makefile.am, omit it from the parent's DIST_SUBDIRS - automake-1.9 requires this
+
+ * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sv.po, po/tr.po:
+ updated by make distcheck
+
+ * ChangeLog, NEWS: Updated for release 4.2.5.
+
+ * find/find.1, doc/find.texi:
+ Tell the reader that format flags may not work as they expect.
+
+ * configure.in:
+ Use the correct name for the macro gl_AC_TYPE_LONG_LONG (not
+ jm_AC_TYPE_LONG_LONG).
+
+2004-11-21 James Youngman <jay@gnu.org>
+
+ * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sv.po, po/tr.po:
+ Messages changed again
+
+ * ChangeLog, configure.in: Preparing to release 4.2.7.
+
+ * NEWS: Updated for release of 4.2.7.
+
+ * import-gnulib.sh: Also need canonicalize module.
+
+ * find/find.c:
+ When checking to see if a filesystem has changed state, use an
+ absolute pathname.
+
+ * configure.in:
+ No need to pause to allow James to view his handiwork, it (allegedly)
+ works now.
+
+ * configure.in:
+ Oops. Check for setlocale() to re-enable the i18n support which was
+ accidentally disabled in 4.2.5.
+
+ * find/find.c:
+ Check to see if the new directory is a transitioned mount point by
+ using its ABSOLUTE name, if we can figure it out.
+
+ * doc/find.texi:
+ Added guidance on some of the error messages. Not the most common
+ ones, but the ones where the user might most benefit from some handy
+ hints or an explanation of what is going on.
+
+ * find/pred.c:
+ Actually emit an error message if we fail to stat a symlink (for
+ reasons other than nonexistence of the link and infinite loop).
+
+ * doc/texinfo.tex: Updated texinfo.tex
+
+ * NEWS, configure.in, find/find.c, find/fstype.c:
+ Enable the 'Warning: filesystem XXX has recently been mounted' check on Solaris, which prevents it exiting fatally when traversing an automount mount point
+
+ * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sv.po, po/tr.po:
+ messages changed again
+
+ * NEWS: Implemented xargs --arg-file.
+
+ * doc/find.texi, xargs/xargs.1, xargs/xargs.c, NEWS:
+ Implemented xargs --arg-file
+
+ * find/find.c:
+ Where a filesystem was recently (un)mounted, try togive its full name
+
+ * configure.in:
+ Try to avoid requesting -lsun if we don't seem to need it (e.g. on
+ UNICOS where it is not present and trying to link against it produces
+ a warning).
+
+ * find/defs.h, lib/modetype.h: Guard against multiple inclusion
+
+ * find/fstype.c:
+ We now need <mntent.h> even if we are not using getmntent() to figure
+ out the type of a filesystem, because wd_sanity_check() needs to
+ enumerate the system mount points.
+
+ * configure.in: Next release will be 4.2.7.
+
+ * find/fstype.c:
+ get_mounted_filesystems() should use getmntent() if that function is
+ present, rather than just if configure didn't find anything better for
+ filesystem_type_uncached() to use than that.
+
+ * find/parser.c:
+ If -delete is the only action on a file, don't assume the default
+ -print action too.
+
+ * ChangeLog, configure.in, po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sv.po, po/tr.po:
+ Preparation to release findutils-4.2.6.
+
+ * find/Makefile.am, xargs/Makefile.am:
+ Enable checking of support for --version and --help
+
+ * locate/Makefile.am:
+ Con't check command-line options for frcode, code or bigram
+
+ * locate/code.c: Support --version and --help.
+
+ * ChangeLog: *** empty log message ***
+
+ * find/defs.h, find/find.c, find/fstype.c, lib/Makefile.am, lib/extendbuf.c, lib/extendbuf.h, NEWS:
+ Avoid fatal error if automount mounts a filesystem on a directory because we chdir()ed into it
+
+ * configure.in: Next release will be 4.2.6.
+
+ * find/find.1:
+ Indicate that the '-' flag does work for most fields. Also provide
+ an example of using the comma operator to traverse the filesystem just
+ once but search for more than one thing.
+
+ * doc/find.texi: Indicate that the '-' flag does work for most fields.
+
+2004-11-24 James Youngman <jay@gnu.org>
+
+ * doc/find.texi:
+ Updated the discussion of th error messages for findutils-4.2.8.
+
+ * configure.in: Next version will be 4.2.9...
+
+ * find/find.c:
+ Don't issue a warning if we notice the mounting of a filesystem that's
+ likely just to be an automounter.
+
+ * doc/find.texi, find/find.1:
+ Explain how rounding is performed for -atime and friends.
+
+ * xargs/xargs.c:
+ Once we collect enough arguments (for the value specified by the -n
+ option) to do an exec(), do it immediaely instead of waiting for the
+ next one to arrive. This fixes Savannah bug #7340.
+
+ * ChangeLog, configure.in, NEWS: Prepare to release 4.2.8.
+
+ * NEWS: Updates for 4.2.8.
+
+ * configure.in: check for sys/types.h
+
+ * find/find.c:
+ If wd_sanity_check() discovers that the mount table has changed, remember the updated device number and inode so that we also consider these to be valid on the way back up.
+
+ * find/defs.h:
+ Declarations of xmalloc() and friends belong in xalloc.h, not in defs.h
+
+ * find/parser.c: avoid signed/unsigned warning, and #include xalloc.h
+
+ * find/fstype.c:
+ Changed to alloc get_mounted_devices() to compile on Solaris
+
+ * README-CVS:
+ Automake requires GNU m4, so point out that the reader needs that.
+
+ * find/defs.h, find/find.c, find/fstype.c:
+ When wd_sanity_check() fails, enumerate the mounted devices, rather than the mounted filesystem names
+
+ * NEWS: prepare for 4.2.8
+
+ * configure.in:
+ Look for some Solaris headers which are used by get_mounted_devices()
+
+ * lib/Makefile.am: don't build savedirtypes yet
+
+ * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sv.po, po/tr.po:
+ updated po files
+
+ * m4/nullsort.m4:
+ Avoid suprious output of the test data when the tests fail.
+
+2004-11-26 James Youngman <jay@gnu.org>
+
+ * find/find.c: Removed some unused code.
+
+ * Makefile.am: Don't do anything in the 'intl' subdirectory
+
+ * find/find.c:
+ Enhanced safely_chdir() to the point where the test suite passes, and report infinite loops in the directory hierarchy
+
+ * find/defs.h:
+ belt and braces; ensure that SYMLINK_NEVER_DEREF has value zero
+
+ * find/find.1:
+ Describe our strategy for detecting and reporting infinite loops
+
+2004-11-27 James Youngman <jay@gnu.org>
+
+ * find/find.c:
+ More use of safely_chdir(). Also bugfix: -L should imply -noleaf. Be more careful about when xstat should fall back on lstat() when stat() fails.
+
+ * find/find.1: "necessary" only has one "C".
+
+ * find/find.1:
+ If stat() fails with ELOOP, we issue a diagnostic message.
+
+2004-12-03 James Youngman <jay@gnu.org>
+
+ * find/parser.c:
+ -xdev is an option, not a test. Fixes Savannah bug 11192.
+
+ * find/find.1, xargs/xargs.1:
+ Escape dashes with a backslash (for fix Savannah bug 11189).
+
+2004-12-05 James Youngman <jay@gnu.org>
+
+ * README, configure.in, find/defs.h, find/find.c, find/parser.c, find/pred.c, find/tree.c:
+ Allow debug output to be turned on or off by saying --enable-debug on the configure command line
+
+ * README:
+ Removed disparaging (it is now, it probably wasn't then) comment about
+ the production-readiness of Automake.
+
+ * README: Qualify remarks about POSIX compliance.
+
+ * NEWS, configure.in: Preparation for release 4.2.9
+
+ * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sv.po, po/tr.po:
+ distcheck
+
+ * ChangeLog: Brought up to date.
+
+ * find/find.c:
+ Avoid duplicate error message when we cannot chdir() into a subdirectory.
+
+ * THANKS: Added recent thankees.
+
+ * NEWS:
+ Brought up to date with respect to the current set of fixed bugs.
+
+ * NEWS, xargs/xargs.1, xargs/xargs.c:
+ Implemented POSIX options -L, -I and -E
+
+2004-12-06 James Youngman <jay@gnu.org>
+
+ * ChangeLog: Brought up to date.
+
+ * NEWS, configure.in: releasing 4.2.10
+
+ * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sv.po, po/tr.po:
+ distcheck
+
+ * ChangeLog: Updated prior to release of finsutils-4.2.10.
+
+ * import-gnulib.sh, find/fstype.c:
+ Use gnulib's mountlist module instead of grokking it ourselves.
+
+ * configure.in:
+ Removed all the out-of-date cruft for grokking getmntent().
+
+ * xargs/xargs.c:
+ Added the -I and -L options; also -E takes an argument which is not optional.
+
+2004-12-07 James Youngman <jay@gnu.org>
+
+ * find/fstype.c: Use xstat() not stat() to examine things.
+
+ * find/find.c: Explain why #ifdef EOVERFLOW.
+
+ * find/find.c: EOVERFLOW is not defined on UNICOS.
+
+ * NEWS: Corrected typo.
+
+2004-12-11 James Youngman <jay@gnu.org>
+
+ * find/parser.c: Readability improvement to the usage message.
+
+ * find/find.c: Oops. Fixed unmatched #endif.
+
+ * find/testsuite/find.gnu/printf.exp, find/testsuite/find.gnu/printf.xo, THANKS, configure.in, find/testsuite/Makefile.am, find/testsuite/config/unix.exp:
+ Fixed Savannah bug #11280
+
+ * find/find.c:
+ Remember to set path_length and curdepth in process_top_path().
+
+2004-12-12 James Youngman <jay@gnu.org>
+
+ * NEWS: Added a summary of the changes so far.
+
+ * find/tree.c: Made some of the error messages more self-explanatory
+
+ * find/pred.c: Print pointers with %p, not %x.
+
+ * find/find.c: Moved option data into struct options.
+
+ * find/find.1: clarifications
+
+ * find/testsuite/find.gnu/comma.exp:
+ Limit the amount of searching with maxdepth.
+
+ * doc/find.texi: clearer description of how -prune works
+
+ * ChangeLog: Removed duplicate entry.
+
+ * configure.in, find/defs.h, find/find.c, find/fstype.c, find/parser.c, find/pred.c, find/tree.c, find/util.c:
+ Separated ariables representing current state from variable representing option information
+
+2004-12-19 James Youngman <jay@gnu.org>
+
+ * doc/find.texi:
+ Indicate that "cd /; find tmp -wholename /tmp" will never match anything.
+
+ * doc/find.texi: Documented locate --statistics.
+
+ * locate/locate.1: Documented the --statistics option.
+
+ * locate/locate.c: Added support for the -S option.
+
+2004-12-23 James Youngman <jay@gnu.org>
+
+ * locate/locate.c:
+ Applied bugfixes from Bas van Gompel <patch-findutils.buzz@bavag.tmfweb.nl>.
+ (lc_strcpy): Zero-terminate result.
+ (add_visitor): Update lastinspector.
+ (visit_substring_match_casefold): fix off-by-one error.
+ (new_locate): Move visit_exists down to improve performance.
+ (new_locate): Don't fold case when getting stats.
+
+2004-12-31 James Youngman <jay@gnu.org>
+
+ * NEWS: Brought up to date with recent changes
+
+ * doc/find.texi:
+ Don't need to nest the "race conditions with..." sections so deeply.
+
+ * doc/find.texi: Corrected some spelling errors.
+
+ * doc/find.texi: Added new "Security Considerations" chapter.
+
+2005-01-02 James Youngman <jay@gnu.org>
+
+ * ChangeLog: Updated with recent changes.
+
+ * NEWS:
+ Bas van Gompel: two-line patch to locate.c to make locate's -i and -w
+ options work if -e is in use.
+
+ * THANKS: Added Bas van Gompel.
+
+ * locate/locate.c:
+ Bas van Gompel: (visit_exists) when testing for the existence of the
+ file, check the real filename [printname], not the case-converted
+ filename [testname]. Really these argument names are badly chosen.
+
+ * find/find.1, doc/find.texi:
+ Improved the documentation for -perm, with plenty of examples,
+ following a comment by Dan Jacobson that the comment "Symbolic modes
+ use mode 0 as a point of departure" is baffling and unhelpful.
+
+ * locate/locate.c:
+ Suggestion and patch from Bas van Gompel: (new_locate): Fix display of
+ negative compression ratios.
+
+2005-01-03 James Youngman <jay@gnu.org>
+
+ * doc/find.texi:
+ Oops. Had duplicated an entire section. Fortunately this was after
+ @bye, so there was no adverse effect.
+
+ * NEWS: locate -b.
+
+ * doc/find.texi, locate/locate.1: document locate -S
+
+ * configure.in, doc/find.texi, locate/locate.1, locate/locate.c:
+ Support locate -b as a synonym for locate --basename
+
+ * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sv.po, po/tr.po:
+ distcheck
+
+ * find/testsuite/config/unix.exp:
+ Clean up (delete) find.out at at the end of the test.
+
+ * NEWS, doc/find.texi, find/defs.h, find/find.1, find/find.c, find/parser.c, find/pred.c:
+ Implemented the -samefile test for find
+
+2005-01-05 James Youngman <jay@gnu.org>
+
+ * find/parser.c:
+ Fixed Savannah bug 11495: fallthrough from -printf format processing
+ from 'n' case to 'd' case.
+
+2005-01-06 James Youngman <jay@gnu.org>
+
+ * xargs/testsuite/inputs/lines.xi, xargs/testsuite/xargs.posix/l2.exp, xargs/testsuite/Makefile.am:
+ Tests for the -L option
+
+ * xargs/testsuite/config/unix.exp: When a test fails, show the diffs
+
+ * xargs/testsuite/xargs.posix/l2.exp, xargs/testsuite/xargs.posix/l2.xo:
+ tests for the -l option
+
+ * xargs/testsuite/Makefile.am: Added extra test files
+
+ * xargs/testsuite/xargs.sysv/trace.exp, xargs/testsuite/xargs.sysv/trace.xe, xargs/testsuite/xargs.sysv/trace.xo:
+ Added tests for the -t option
+
+ * xargs/testsuite/config/unix.exp, xargs/testsuite/inputs/foobar.xi, xargs/testsuite/xargs.gnu/r.exp, xargs/testsuite/xargs.gnu/r.xo, xargs/xargs.1:
+ Use a blanks-only input file for cases where there is supposed to be no output
+
+ * xargs/testsuite/inputs/blank.xi: Initial version.
+
+ * xargs/xargs.1:
+ Corrected a typo; also indicate that it's impossible to use xargs
+ securely due to the race condition.
+
+2005-01-07 James Youngman <jay@gnu.org>
+
+ * lib/Makefile.am, lib/buildcmd.c, lib/buildcmd.h, xargs/xargs.c:
+ Refactored xargs to use an external library function from the new file buildcmd.c
+
+ * configure.in: no longer the same as the released 4.2.11 version
+
+2005-01-08 James Youngman <jay@gnu.org>
+
+ * find/find.c: Fixed typo in comment.
+
+ * find/defs.h, find/find.c, find/parser.c, find/pred.c:
+ We now understand but do not implement -execdir (a *BSD invention, and a very useful security enhancement) and -okdir (the obvious companion to it)
+
+ * locate/bigram.c, locate/code.c, locate/frcode.c, locate/locate.c, xargs/xargs.c:
+ The GNU coding standard requires a space between the function name and
+ its parenthesised argument list.
+
+ * find/defs.h:
+ Understand the -exec ... {} \+ construction (for multiple
+ replacement). No support yet.
+
+ * locate/locate.1:
+ Indicate that empty elements in the dbpath are treated as synonyms for
+ the default database.
+
+ * locate/locate.c:
+ Support empty elements in the dbpath as synonyms for the default
+ database. These colons can be leading, trailing or in the middle of
+ the string. We no longer com,plain if the user does this.
+
+ * lib/nextelem.c:
+ If curdir_ok is 0 and an element is empty, return "" instead of NULL
+ so that the caller knows to keep calling us.
+
+ * find/find.c, find/pred.c, import-gnulib.sh, locate/bigram.c, locate/code.c, locate/frcode.c, locate/locate.c, xargs/xargs.c:
+ Savannah bug 11517: find, xargs, locate, etc. should not hide write failures; patch from Jim Meyering
+
+ * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sv.po, po/tr.po:
+ changed .pot creation date
+
+ * THANKS, AUTHORS: Take into account the FSF copyright-assignments list
+
+ * doc/find.texi:
+ If -quit is used, the exit value can be nonzero if errors have occurred.
+
+ * find/find.1:
+ Removed incorrect comment about -H, -P and -follow in HISTORY.
+
+2005-01-09 James Youngman <jay@gnu.org>
+
+ * find/defs.h, find/find.c, find/parser.c, find/pred.c, lib/buildcmd.c, lib/buildcmd.h, xargs/xargs.c:
+ Initial implementation of -exec ..{} +, but currently disabled since not yet working
+
+2005-01-15 James Youngman <jay@gnu.org>
+
+ * find/testsuite/find.gnu/printf.exp, find/testsuite/find.gnu/printf.xo:
+ Added extra tests for more printf formats; patch by Andreas Metzler
+
+ * locate/locate.c:
+ Ensure that the new long options have a relevang short option too.
+ Also bring usage message into line with the options actually
+ supported. Thanks to Bas van Gompel for noticing this defect.
+
+ * locate/locate.1:
+ Escape "-" in SYNOPSIS. Thanks to Bas van Gompel for noticing this
+ defect.
+
+ * ChangeLog: Fixed typos.
+
+ * doc/find.texi:
+ Documented -execdir, and the "+" variants of -exec and -execdir.
+
+ * find/find.1: Documented -execdir.
+
+ * xargs/xargs.c:
+ Updated to bring into line with bc_*() interface changes
+
+ * ChangeLog: Updated with recent changes.
+
+ * find/defs.h, find/parser.c, find/pred.c, lib/buildcmd.c, lib/buildcmd.h:
+ Implemented -execdir and -okdir
+
+ * find/defs.h, find/find.c, find/fstype.c, find/parser.c, find/pred.c, lib/buildcmd.c, lib/buildcmd.h, xargs/xargs.c:
+ First working version of -exec ...+
+
+2005-01-16 James Youngman <jay@gnu.org>
+
+ * find/find.c, find/pred.c:
+ When completing incomplete multiple execs, use 'eval_tree' not 'predicates'
+
+ * lib/buildcmd.c:
+ Oops, initialise state->cmd_initial_argv_chars to zero.
+
+ * find/find.1:
+ Document the way that -execdir and -okdir will refuse to wqork if ">"
+ is on $PATH. Also document -okdir in the manpage.
+
+ * find/parser.c:
+ -execdir and -okdir are insecure if $PATH includes the current
+ directory, and so they refuse to work if the user has done that.
+
+ * find/pred.c:
+ Oops; for -exec ... {} +, pass arguments to bc_push_arg() in the right
+ order. Problem spotted by Geoff Clare.
+
+ * TODO: Removed items which have now been done.
+
+ * lib/buildcmd.c: Tidied up formatting of arg list for bc_do_insert
+
+2005-01-17 James Youngman <jay@gnu.org>
+
+ * ChangeLog: Brought up to date with recent changes.
+
+ * NEWS: Documented the changes so far.
+
+ * find/testsuite/find.gnu/exec-many-rtn-success.xo:
+ Expected output for exec-many-rtn-success.exp
+
+ * find/find.1:
+ Indicate that -quit still ensures that pending commands are invoked
+
+ * doc/find.texi:
+ Indicate that -quit still causes partial command lines to be invoked,
+ but there are some types of fatal error which leave such commands
+ uninvoked.
+
+ * find/defs.h, find/find.c, find/pred.c, find/testsuite/Makefile.am, find/testsuite/config/unix.exp:
+ Fixed savannah bug #11625 Wrong return status for -exec ... \; when command fails; also execute any pending commands when doing -quit
+
+ * find/testsuite/find.gnu/exec-many-rtn-failure.exp, find/testsuite/find.gnu/exec-many-rtn-failure.xo, find/testsuite/find.gnu/exec-many-rtn-success.exp, find/testsuite/find.gnu/exec-one-rtn-fail.exp, find/testsuite/find.gnu/exec-one-rtn-fail.xo, find/testsuite/find.gnu/exec-one-rtn-success.exp, find/testsuite/find.gnu/exec-one-rtn-success.xo:
+ Various test cases for succeeding and failing forms of -exec \; and -exec {} +
+
+ * find/pred.c: "-exec ... {} +" always returns "true".
+
+ * configure.in, find/defs.h, find/find.c, find/parser.c, find/pred.c, find/tree.c, find/util.c:
+ Implemented d_type optimisation but not working correctly, so currently disabled
+
+ * lib/savedirinfo.h, lib/savedirinfo.c:
+ Initial implementation (temporarily disabled).
+
+ * lib/Makefile.am: Resolved merge conflict.
+
+ * lib/Makefile.am:
+ Make sure nextelem.h is included in the list of sources.
+
+ * find/parser.c, lib/nextelem.c, lib/nextelem.h, locate/locate.c:
+ Use prototypes for next_element() to make sure it is called correctly.
+
+2005-01-18 James Youngman <jay@gnu.org>
+
+ * lib/savedirinfo.h: Added on d_type_optimisation also
+
+ * lib/savedirinfo.c: Added on branch d_type_optimisation also.
+
+ * find/pred.c: Added assert that we actually know the file type by
+ the time pred_type() is called
+
+ * find/find.c: Always initialise state.have_stat = false when
+ starting to work with a new file
+
+2005-01-21 James Youngman <jay@gnu.org>
+
+ * xargs/testsuite/Makefile.am: Added name of missing input file.
+
+ * find/testsuite/Makefile.am:
+ Distribute a few files that we had forgotten about
+
+ * xargs/testsuite/Makefile.am: Added some missing files.
+
+ * lib/Makefile.am: Also need buildcmd.h.
+
+ * xargs/testsuite/Makefile.am: Fixed a typo.
+
+ * NEWS: Indicate the d_type performance improvement
+
+2005-01-22 James Youngman <jay@gnu.org>
+
+ * NEWS, configure.in: Prepare for release of findutils-4.2.12
+
+ * ChangeLog: Brought up to date with recent changes.
+
+ * Makefile.am, import-gnulib.sh, po/Makefile.in.in, po/Makevars,
+ po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot,
+ po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po,
+ po/pl.po, po/pt_BR.po, po/remove-potcdate.sin, po/ru.po, po/sk.po,
+ po/sv.po, po/tr.po: Switch to using the gnulib gettext module, to
+ ensure that 'make distcheck' works with current xgettext,
+ autoconf, etc.
+
+ * find/testsuite/config/unix.exp:
+ Oops, we do need to clean up after all.
+
+2005-01-23 James Youngman <jay@gnu.org>
+
+ * configure.in:
+ Invoke gl_INCLUDED_REGEX directly to ensure successful compilation on
+ systems like Solaris, which lacks those functions in libc (fixes GNU
+ Savannah bug #11710).
+
+ * locate/locate.1: -S is a synonym for --statistics
+
+ * doc/find.texi: Documented the new -H, -L and -P options.
+
+ * locate/locate.1, locate/locate.c: Implement options -L
+ (default), -H and -P, which mean the same things as for find,
+ except for the fact that the default is -L rather than -P
+
+ * find/find.1: Corrected definition of the exit status for -quit.
+
+ * find/find.c, find/pred.c: If DEBUG_STAT is set, issue a debug
+ message when we call chdir() so that we can figure out what is
+ actually being stat()ed
+
+ * locate/updatedb.sh:
+ Removed spurious newline from help message (bug report from Karl
+ Berry).
+
+ * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot,
+ po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po,
+ po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sv.po, po/tr.po,
+ Makefile.am, NEWS, configure.in, find/defs.h, find/find.c,
+ find/parser.c, find/pred.c, find/tree.c, find/util.c,
+ import-gnulib.sh, lib/savedirinfo.c: Merged the d_type
+ optimisation code; this is disabled by default, and can be enabled
+ with 'configure --enable-d_type-optimisation'
+
+ * NEWS:
+ Updated optimisation NEWS item to indicate the effect on runtime.
+
+2005-01-24 James Youngman <jay@gnu.org>
+
+ * Makefile.am: Work around the fact that automake-1.7 actually
+ works, and correctly distributes regex.c; hence dist-hook should
+ only copy gnulib/lib/regex.c if this has not already been done.
+
+ * find/defs.h, find/find.c, find/pred.c,
+ find/testsuite/Makefile.am,
+ find/testsuite/find.gnu/printf-symlink.exp,
+ find/testsuite/find.gnu/printf-symlink.xo,
+ find/testsuite/find.gnu/xtype-symlink.exp,
+ find/testsuite/find.gnu/xtype-symlink.xo: Fixes for -xtype and
+ -printf %Y, which had been the wrong way around.
+
+ * NEWS: Avoid including the find.gnu subdirectory in the
+ distributed file more than once
+
+ * locate/locate.c:
+ Move the printing of the statistics into a new function, print_stats()
+
+ * find/testsuite/Makefile.am: Avoid including the find.gnu
+ subdirectory in the distributed file more than once
+
+ * import-gnulib.sh:
+ We need the regex module anyway, to allow compilation on Solaris
+
+2005-01-25 James Youngman <jay@gnu.org>
+
+ * NEWS, configure.in, po/da.po, po/de.po, po/es.po, po/et.po,
+ po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po,
+ po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po,
+ po/sv.po, po/tr.po: Preparing to release findutils-4.2.14
+
+2005-01-25 James Youngman <jay@gnu.org>
+
+ * configure.in: Bumped version no.
+
+ * doc/find.texi:
+ Document --mmap and --stdio as being synonyms of -m and -s.
+
+ * locate/locate.1:
+ Document --mmap and --stdio as synonyms of -m and -s.
+
+ * locate/locate.c:
+ Document -m and -s (both no-ops) in the usage message.
+
+ * doc/find.texi, locate/locate.1: Document -m and -s as no-ops.
+
+ * ChangeLog: Updated for release of findutils-4.2.14.
+
+ * NEWS, configure.in, po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sv.po, po/tr.po:
+ Preparing to release findutils-4.2.14
+
+2005-01-27 James Youngman <jay@gnu.org>
+
+ * doc/find.texi: Documented --regex.
+
+ * NEWS, locate/locate.1, locate/locate.c, locate/testsuite/Makefile.am, locate/testsuite/config/unix.exp, locate/testsuite/locate.gnu/regex1.exp:
+ Implemented locate --regex - but needs documenting in Texinfo manual.
+
+2005-01-28 James Youngman <jay@gnu.org>
+
+ * configure.in:
+ Make --enable-d_type-optimization and --enable-d_type-optimisation
+ both work.
+
+ * configure.in: Assume --enable-d_type-optimisation by default
+
+ * find/parser.c: Indicate which features are enabled/disabled
+
+ * locate/testsuite/config/unix.exp:
+ Clean up the files left behind by the locate_textonly test
+
+2005-01-29 James Youngman <jay@gnu.org>
+
+ * configure.in: No longer version 4.2.15 - we've changed the manual.
+
+ * doc/find.texi:
+ Clarified the txt about adding extra tests with post-processing via
+ xargs, and recommend -execdir instead for security reasons.
+
+ * doc/find.texi: Patch from Karl Berry:
+ - more entries for the dir file
+ - use @copying so the copyright ends up in the HTML etc. output.
+ (This is the only really important change.)
+ - put @contents after the title page, for conventional toc location.
+ - use @ifnottex to wrap the Top node instead of @ifinfo, for the sake of
+ HTML output, etc.
+
+ * NEWS, configure.in, po/da.po, po/de.po, po/es.po, po/et.po,
+ po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po,
+ po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po,
+ po/sv.po, po/tr.po: Prepared to release findutils-4.2.15
+
+ * ChangeLog: Updated from CVS log.
+
+2005-01-30 James Youngman <jay@gnu.org>
+
+ * doc/Makefile.am:
+ Added rules for extra targets that we buld to update the web site.
+
+2005-01-31 James Youngman <jay@gnu.org>
+
+ * find/find.c, lib/nextelem.c, lib/nextelem.h, locate/code.c,
+ locate/frcode.c, locate/testsuite/config/unix.exp,
+ xargs/testsuite/config/unix.exp, xargs/xargs.c: Updated/corrected
+ the email address for David MacKenzie, one of the original authors
+ of findutils
+
+ * doc/Makefile.am: The HTML version of the manual generated for
+ the GNU project website has each node in a separate file, not each
+ chapter in a separate file; adjust filenames accordingly
+
+ * find/parser.c, find/pred.c, lib/savedirinfo.c:
+ Removed some unused variables (patch from Dmitry V. Levin)
+
+ * find/find.c:
+ Patch from Dmitry V. Levin <ldv@altlinux.org>: Add subfs to the list
+ of filesystems which are likely to be automounted.
+
+ * m4/findlib.m4: Corrected typo (pointed out by Dmitry V. Levin).
+
+ * find/testsuite/config/unix.exp,
+ find/testsuite/find.gnu/name-period.xo,
+ find/testsuite/find.gnu/posix-dflt.xo,
+ find/testsuite/find.gnu/posix-h.xo,
+ find/testsuite/find.gnu/posix-l.xo,
+ find/testsuite/find.gnu/printf.exp,
+ find/testsuite/find.gnu/printf.xo: Systems differ in the order in
+ which filenames are returned by readdir. Hence sort the output of
+ 'find' before comparing against the expected-output file. We
+ therefore also have the lines in the .xo files ready-sorted.
+
+ * po/ca.po: Updated from Translation Project
+
+ * po/ChangeLog: Updated from CVS logs.
+
+ * po/de.po, es.po, et.po, fr.po, gl.po, id.po, it.po, ko.po, nl.po,
+ pl.po, pt_BR.po, ru.po, sk.po, sv.po, tr.po, da.po: Ran update-po
+
+ * po/be.po, ca.po, el.po, eo.po, fi.po, hr.po, hu.po, ja.po, lg.po,
+ ms.po, ro.po, sl.po, sr.po, zh_CN.po: Added new translation files
+ from the Translation Project web site
+
+ * po/da.po, de.po, es.po, et.po, fr.po, ga.po, gl.po, id.po, it.po,
+ ko.po, nl.po, pl.po, pt_BR.po, ru.po, sk.po, sv.po, tr.po: Updated
+ .po files from the Translation Project site
+
+2005-02-01 James Youngman <jay@gnu.org>
+
+ * ChangeLog: Updated from CVS log.
+
+2005-02-02 James Youngman <jay@gnu.org>
+
+ * find/pred.c:
+ To allow compilation on cygwin, use base_name(), not basename().
+
+ * po/tr.po: Updated Turkish translation from TP
+
+ * po/ro.po: Updated Romanian translation from TP
+
+ * po/da.po, po/et.po: Updated translations from MT project website
+
+2005-02-03 James Youngman <jay@gnu.org>
+
+ * doc/find.texi, find/pred.c: When state.curdepth is 0, our
+ working directory is not the directory containing the file we are
+ processing.
+
+2005-02-05 James Youngman <jay@gnu.org>
+
+ * THANKS:
+ Added thanks for Dimitry - has produced many patches, bugfixes and
+ suggestions.
+
+ * find/pred.c:
+ Fixed Savannah bug #11866: typo in pred_okdir() renders it useless
+
+ * find/pred.c:
+ Savannah bug #11861: undefined symbol 'basename' on IRIX 5.3
+
+ * NEWS, configure.in, po/be.po, po/ca.po, po/el.po, po/eo.po,
+ po/fi.po, po/ga.po, po/hr.po, po/hu.po, po/ja.po, po/lg.po,
+ po/ms.po, po/ro.po, po/sl.po, po/sr.po, po/zh_CN.po: Added new
+ translations
+
+ * ChangeLog: Updated from CVS prior to release of 4.2.16.
+
+ * po/ChangeLog: Updated from CVS.
+
+ * NEWS, configure.in: Preparing to release 4.2.16
+
+ * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot,
+ po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po,
+ po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sl.po, po/sv.po,
+ po/tr.po: make update-po prior to 'make distcheck'
+
+ * po/fetch-po-files: This is the first version we actually used.
+
+ * find/find.c: process_top_path() fixed compilation warning.
+
+ * find/find.c: process_top_path(): avoid processing this item if
+ we can't chdir to the basename of the named file.
+
+ * lib/Makefile.am: Always build forcefindlib.c
+
+ * locate/locate.c: Say 'base name' rather than 'basename' in comments
+
+ * find/pred.c, find/find.c: process_top_path(): Proper bugfix for
+ correct handling of items at depth 0 (i.e. specified on the
+ command line) - do an extra chdir to ensure that we're in the
+ directory containing the item before calling process_path().
+ Hnece also undo the previous 'quick fix' for the same problem
+
+ * doc/find.texi:
+ -execdir no longer has to treat anything as special, even at depth 0.
+
+2005-02-05 Dmitry V. Levin <ldv@altlinux.org>
+
+ * find/parser.c, find/pred.c: Additional tweaks for
+ -execdir/-okdir actions.
+
+ * find/parser.c (new_insert_exec_ok): Disable ignore_readdir_race
+ for -execdir/-okdir.
+
+ * find/pred.c (pred_execdir, pred_okdir): Use state.rel_pathname
+ instead of basename(pathname). Do not add "./" prefix for
+ absolute pathnames.
+
+ * find/find.c (process_top_path): Treat "/" similarly to ".".
+
+ * xargs/testsuite/xargs.posix/savannah-11865.exp,
+ xargs/testsuite/xargs.posix/savannah-11865.xo, xargs/xargs.c:
+ Fixed Savannah bug #11866 (not resetting number of used chars in
+ the command buffer) - reported by Dimitry V. Levin
+
+2005-02-06 James Youngman <jay@gnu.org>
+
+ * doc/find.texi:
+ -size: Clarification - -size gives a result consistent with 'wc -c'
+ for example.
+
+ * Makefile.am, find/testsuite/Makefile.am,
+ find/testsuite/find.gnu/execdir-root-only.exp,
+ find/testsuite/find.gnu/execdir-root-only.xo,
+ locate/testsuite/Makefile.am, xargs/testsuite/Makefile.am:
+ dist-hook: Ensure that we distribute all the .po files and all the
+ testsuite files
+
+ * po/pl.po: Updated Polish translation from TP website
+
+2005-02-07 James Youngman <jay@gnu.org>
+
+ * find/testsuite/Makefile.am:
+ New test, find/testsuite/find.gnu/follow-arg-parent-symlink.exp.
+
+ * find/testsuite/find.gnu/follow-arg-parent-symlink.exp,
+ find/testsuite/find.gnu/follow-arg-parent-symlink.xo, find/find.c:
+ Fix for starting point /foo/bar/baz where bar is a symlink but baz
+ is not - we should chdir into bar there even if it is a symbolic
+ link
+
+2005-02-07 James Youngman <jay@gnu.org>
+
+ * find/testsuite/config/unix.exp: Re-sort the .xo file using the
+ calling user's locale, because our 'pre-sorted' .so output file
+ may not be sorted with the same collating order as 'sort' used to
+ order the output of "find. Bug spotted by Vin Shelton and Dimitry
+ V. Levin.
+
+ * find/testsuite/Makefile.am:
+ New test, find/testsuite/find.gnu/follow-arg-parent-symlink.exp.
+
+ * find/testsuite/find.gnu/follow-arg-parent-symlink.exp,
+ find/testsuite/find.gnu/follow-arg-parent-symlink.xo, find/find.c:
+ Fix for starting point /foo/bar/baz where bar is a symlink but baz
+ is not - we should chdir into bar there even if it is a symbolic
+ link
+
+2005-02-08 James Youngman <jay@gnu.org>
+
+ * xargs/testsuite/Makefile.am: Distribute the .xe files also.
+
+ * Makefile.am: Check that we have the right number of .xe files in
+ the distribution also.
+
+ * ChangeLog, NEWS, configure.in
+ Preparing to release findutils-4.2.17
+
+2005-02-09 James Youngman <jay@gnu.org>
+
+ * find/find.1: Indicate that $TZ affects from printf-format
+ results, and add extra cross-references in the SEE ALSO section.
+
+2005-02-10 James Youngman <jay@gnu.org>
+
+ * doc/find.texi: Talk about the problem where find will not work
+ if you have a filesystem mounted from an unresponsive NFS server.
+
+2005-02-12 James Youngman <jay@gnu.org>
+
+ * configure.in, doc/find.texi, find/defs.h, find/find.c,
+ find/parser.c: Fix for Savannah bug #11879, that
+ init_mounted_dev_list() causes find to hang on systems which are
+ clients to dead NFS servers
+
+2005-02-13 Dmitry V. Levin <ldv@altlinux.org>
+
+ * find/find.c: remove test code snippet (time(NULL) was used to
+ place a marker for spotting with strace(), but was not actually
+ needed).
+
+ * find/find.c (safely_chdir_nofollow): must not fall back on
+ safely_chdir_lstat() because that will expose it to race condition
+ exploits, making it pointless.
+
+ * find/find.c (safely_chdir_lstat): Move
+ complete_pending_execdirs() up into safely_chdir(), because we
+ need to do that in either case.
+
+2005-02-13 James Youngman <jay@gnu.org>
+
+ * find/find.1: Miscellaneous small clarifications and improvements.
+
+ * doc/find.texi: Added Info nodes and menus under "Changing the
+ Current Working Directory" so that it doesn't generate such a huge
+ Info page.
+
+ * find/find.c: Parenthesise #if defined(...).
+
+2005-02-15 Aaron Hawley <Aaron.Hawley@uvm.edu>
+
+ * find/find.1: Notes about -H actually apply to -L. Said
+ paragraph is duplicated two paragraphs later. Also typos: nno,
+ ibmue, surrpounding
+
+2005-02-15 James Youngman <jay@gnu.org>
+
+ * ChangeLog: Updated with recent changes
+
+ * find/find.1:
+ Emphasise that -L causes find to recurse into subdirectories pointed
+ to by symbolic links.
+
+ * find/find.1:
+ Patch to find.1 from Aaron Hawley <Aaron.Hawley@uvm.edu>:
+
+ * Notes about -H actually apply to -L.
+ * Said paragraph is duplicated two paragraphs later.
+ * Typos: nno, ibmue, surrpounding
+
+2005-02-16 James Youngman <jay@gnu.org>
+
+ * NEWS, configure.in: Prepared for release of 4.2.18.
+
+ * ChangeLog: Updated prior to release of 4.2.18.
+
+ * find/testsuite/Makefile.am:
+ Distribute the test cases for the recent "find -depth" bug.
+
+ * find/testsuite/find.posix/depth1.exp, find/testsuite/find.posix/depth1.xo:
+ Added test case for find -depth bug reported by Joseph S. Myers
+
+ * find/find.c:
+ If -depth is in effect, processing of the subdirectories invalidates
+ the information in 'state'. Therefore once we get around to
+ processing the predicates, restore the information that we keep in
+ 'state' and in 'stat_buf'.
+
+2005-02-19 James Youngman <jay@gnu.org>
+
+ * NEWS: Corrected the summary of the "find -depth" bug.
+
+2005-02-20 James Youngman <jay@gnu.org>
+
+ * po/be.po, po/ca.po, po/da.po, po/de.po, po/el.po, po/eo.po,
+ po/es.po, po/et.po, po/fi.po, po/findutils.pot, po/fr.po,
+ po/ga.po, po/gl.po, po/hr.po, po/hu.po, po/id.po, po/it.po,
+ po/ja.po, po/ko.po, po/lg.po, po/ms.po, po/nl.po, po/pl.po,
+ po/pt_BR.po, po/ro.po, po/ru.po, po/sk.po, po/sl.po, po/sr.po,
+ po/sv.po, po/tr.po, po/zh_CN.po: Updated italian translation
+
+ * doc/find.texi: Corrected a typo.
+
+ * find/find.c:
+ Read the mounted device list afer parsing the command line, so that
+ for example "find --version" still works (in response to Savannah bug
+ #12044).
+
+ * configure.in: We've moved on from findutils-4.2.18.
+
+2005-02-21 James Youngman <jay@gnu.org>
+
+ * find/find.c: Fixed accidental C99 dependency.
+
+2005-02-22 James Youngman <jay@gnu.org>
+
+ * find/find.c:
+ Fixed Savannah bug #12099 (misinterpretation of system versions
+ leading to possible incorrect disabling of O_NOFOLLOW). Reported by
+ Dmitry V. Levin.
+
+ * find/pred.c:
+ For the %h format, don't bail out early as the format might contain
+ something else too.
+
+2005-02-23 James Youngman <jay@gnu.org>
+
+ * Makefile.am: Fix Savannah bug #12064 - 'make distclean' deletes
+ regex.c but should not.
+
+ * find/testsuite/Makefile.am,
+ find/testsuite/find.gnu/printf-h.exp,
+ find/testsuite/find.gnu/printf-h.xo: Added test case for Savannah
+ bug #12085 (-printf %h).
+
+ * NEWS, doc/find.texi, find/find.1, find/pred.c:
+ %h now expands to '.' instead of nothing.
+
+2005-02-25 James Youngman <jay@gnu.org>
+
+ * po/ga.po: Updated Irish po file
+
+2005-02-26 James Youngman <jay@gnu.org>
+
+ * po/sk.po, po/sl.po, po/sr.po, po/sv.po, po/tr.po, po/vi.po,
+ po/zh_CN.po, po/be.po, po/ca.po, po/da.po, po/de.po, po/el.po,
+ po/eo.po, po/es.po, po/et.po, po/fi.po, po/findutils.pot,
+ po/fr.po, po/gl.po, po/hr.po, po/hu.po, po/id.po, po/it.po,
+ po/ja.po, po/ko.po, po/lg.po, po/ms.po, po/nl.po, po/pl.po,
+ po/pt_BR.po, po/ro.po, po/ru.po: Added new Vietnamese translation
+
+ * configure.in: Added new Vietnamese translation.
+
+2005-02-27 James Youngman <jay@gnu.org>
+
+ * README: Indicate how the reader can verify the release.
+
+2005-02-28 James Youngman <jay@gnu.org>
+
+ * doc/find.texi: Typo: O_NOFOLLOW, not O_FOLLOW
+
+ * import-gnulib.sh:
+ Suggestion from Martin Buchholz; unset CDPATH to prevent "cd" echoing
+ the new directory.
+
+2005-03-01 James Youngman <jay@gnu.org>
+
+ * find/find.c, find/testsuite/find.posix/sv-bug-12181.exp,
+ find/testsuite/find.posix/sv-bug-12181.xo: Fixed SourceForge bug
+ 12181 (find -H symlink-to-dir reports 'Too many Symbolic links')
+ and bug 12044 (find still hangs on dead NFS filesystems on
+ Solaris)
+
+2005-03-03 James Youngman <jay@gnu.org>
+
+ * find/find.c:
+ safely_chdir_lstat(): if we didn't end up in the right place, and then
+ fchdir() fails, we can't return to the directory we started in.
+ Therefore, issue a fatal error message and exit.
+
+2005-03-04 James Youngman <jay@gnu.org>
+
+ * configure.in: Modernized the way we call AC_INIT and
+ AM_INIT_AUTOMAKE
+
+ * locate/locate.c, find/pred.c, find/find.c:
+ Eliminated some compiler warnings
+
+ * find/pred.c: Clarified the meaning of a comment.
+
+ * find/testsuite/Makefile.am: Added sizes.exp, sizes.xo.
+
+ * find/testsuite/find.posix/sizes.xo,
+ find/testsuite/find.posix/sizes.exp: Added tests for -size
+ predicate
+
+2005-03-06 James Youngman <jay@gnu.org>
+
+ * ChangeLog: Added latest changes.
+
+ * po/pt.po, configure.in: Added Portuguese translation
+
+2005-03-07 James Youngman <jay@gnu.org>
+
+ * Released findutils-4.2.19.
+
+ * find/testsuite/find.posix/sizes.exp:
+ Use 2>/dev/null instead of 2>&1, because Tcl understands the former
+ but not the latter.
+
+ * find/testsuite/Makefile.am: Also distribute sv-bug-12181.xo.
+
+ * find/testsuite/Makefile.am: Distribute sv-bug-12181.
+
+ * find/testsuite/Makefile.am: Distribute sv-bug-12230.
+
+ * NEWS: Updated with new news.
+
+ * ChangeLog: Brought up to date.
+
+ * lib/buildcmd.c, find/testsuite/find.gnu/sv-bug-12230.exp: Fixed
+ Savannah bug #12230, in which '-exec echo == {} +' is always run,
+ even if there were no matched files.
+
+2005-03-08 Bas van Gompel <patch-findutils.buzz@bavag.tmfweb.nl>
+
+ * import-gnulib.sh: Re-enable creation of gnulib/m4/Makefile.am.
+
+2005-03-10 James Youngman <jay@gnu.org>
+
+ * po/nl.po: Updated Dutch PO file
+
+2005-03-17 James Youngman <jay@gnu.org>
+
+ * configure.in: Preprare for release of 4.2.20.
+
+ * NEWS: Updated prior to release of 4.2.20.
+
+ * ChangeLog: Updated with recent changes.
+
+ * THANKS: Thank Bas van Gompel, but only once.
+
+ * THANKS: Thank Bas van Gompel and Aaron S. Hawley.
+
+ * po/vi.po: Updated Vietnamese PO file
+
+2005-03-22 James Youngman <jay@gnu.org>
+
+ * import-gnulib.sh: Include the new gnulib module stat-macros
+
+ * configure.in:
+ CVS code is (will shortly be) no longer identical to the 4.2.20 release
+
+2005-04-01 James Youngman <jay@gnu.org>
+
+ * locate/locate.1, locate/updatedb.1, xargs/xargs.1: Trivial
+ change from A Costa <agcosta@gis.net>, fixing typos in manual
+ pages for xargs, locate and updatedb; fixes Savannah bug #12500,
+ Debian bug #301934
+
+2005-04-04 James Youngman <jay@gnu.org>
+
+ * configure.in, import-gnulib.sh:
+ We no longer need gnulib/m4/Makefile.am
+
+ * po/vi.po: Updated Vietnamese translation
+
+ * locate/updatedb.sh:
+ Savannah bug #12491: Only use the "-s" option to "su" if it is
+ supported.
+
+2005-04-18 Bas van Gompel <patch-findutils.buzz@bavag.tmfweb.nl>
+
+ * doc/find.texi: Document locate --non-existing (-E).
+ * locate/locate.1: Ditto.
+ * locate/locate.c: Implement --non-existing (-E).
+
+2005-04-18 James Youngman <jay@gnu.org>
+
+ * Added test suite tests for Bas van Gompel's changes.
+
+2005-05-03 Dmitry V. Levin
+
+ * Added xargs test suite tests by Dmitry V. Levin, together with
+ bugfixes which ensure that the tests pass.
+
+2005-05-02 James Youngman <jay@gnu.org>
+
+ * AUTHORS:
+ Added Dimitry (his new test suite contribution required a copyright
+ assignment).
+
+2005-05-09 James Youngman <jay@gnu.org>
+
+ * find/parser.c:
+ The previous change fixed Savannah bug #12999. This change doesn't do
+ anything, it's only intended to be a place to record the Savannah bug
+ ID we've just fixed.
+
+ * find/parser.c:
+ Oops. Initialise the variable which indicates which regex syntax to
+ use. We use POSIX basic regular expressions.
+
+ * find/parser.c:
+ Suggestion by Ed Avis: point out that "-name foo/bar" will almost
+ always evaluate to false. Suggest to the user what alternatives they
+ might find useful.
+
+2005-05-16 James Youngman <jay@gnu.org>
+
+ * find/find.c, find/parser.c, find/pred.c, find/tree.c:
+ Trivial change: don't use i18n support for debug-only messages
+
+ * ChangeLog: Added ChangeLog entry crediting Dmitry
+
+2005-05-23 Paul Eggert <eggert@cs.ucla.edu>
+
+ Adjust to recent gnulib changes.
+ * import-gnulib.sh: Get config.rpath from gnulib/build-aux,
+ not gnulib/config.
+ * find/parser.c (parse_perm): Ignore umask when parsing
+ symbolic permissions. Adjust to new modechange API.
+
+2005-05-29 Bas van Gompel <patch-findutils.buzz@bavag.tmfweb.nl>
+
+ Add a ``--print'' (``-p'') option. (to cancel side-effects of -c/-S)
+ Allow ``--statistics'' in combination with non-options.
+ * doc/find.texi: Add documentation for locate --print (-p), and the
+ use of non-options with --statistics.
+ * locate/locate.1: ditto.
+ * locate/locate.c: Read each database only once.
+
+2005-05-30 James Youngman <jay@gnu.org>
+
+ * locate/locate.c: rename new_locate() to locate() since
+ old_locate() has gone the way of the dodo.
+
+2005-06-07 James Youngman <jay@gnu.org>
+
+ * NEWS: Updated with recent changes.
+
+ * mdate-sh: Use the mdate-sh from automake
+
+ * find/parser.c, find/pred.c, find/tree.c, find/util.c,
+ lib/Makefile.am, lib/forcefindlib.c, lib/listfile.c,
+ lib/listfile.h, locate/code.c, locate/locate.c, find/defs.h,
+ find/find.c: Fix Savannah bug #13324: Fix compiler warnings for
+ GCC-3.4
+
+ * locate/locate.c:
+ Fixed Savannah bug #13325: Quoting of output filenames in locate
+ should match find.
+
+ * find/parser.c:
+ Fixed Savannah bug #13319: C9X-ism in parser.c (declaration after
+ statements).
+
+ * find/pred.c, lib/Makefile.am, lib/listfile.c, lib/nextelem.c,
+ lib/printquoted.c, lib/printquoted.h, lib/qmark.c, NEWS,
+ doc/find.texi, find/defs.h, find/find.1, find/parser.c: Fixed
+ Savannah bug #13303, find should filter out non-printable
+ characters if outputting to tty
+
+2005-06-07 Bas van Gompel <patch-findutils.buzz@bavag.tmfweb.nl>
+
+ * locate/locate.c: Fold case once, only when needed.
+
+2005-06-07 James Youngman <jay@gnu.org>
+
+ * COPYING, debian/copyright, depcomp, doc/texinfo.tex,
+ find/defs.h, find/find.c, find/fstype.c, find/parser.c,
+ find/pred.c, find/testsuite/config/unix.exp, find/tree.c,
+ find/util.c, import-gnulib.sh, intl/Makefile.in,
+ intl/bindtextdom.c, intl/config.charset, intl/dcgettext.c,
+ intl/dcigettext.c, intl/dcngettext.c, intl/dgettext.c,
+ intl/dngettext.c, intl/explodename.c, intl/finddomain.c,
+ intl/gettext.c, intl/gettext.h, intl/gettextP.h,
+ intl/hash-string.h, intl/intl-compat.c, intl/l10nflist.c,
+ intl/libgettext.h, intl/libgnuintl.h, intl/loadinfo.h,
+ intl/loadmsgcat.c, intl/localcharset.c, intl/locale.alias,
+ intl/localealias.c, intl/ngettext.c, intl/plural.c, intl/plural.y,
+ intl/ref-add.sin, intl/ref-del.sin, intl/textdomain.c,
+ lib/buildcmd.c, lib/buildcmd.h, lib/extendbuf.c, lib/extendbuf.h,
+ lib/forcefindlib.c, lib/listfile.c, lib/listfile.h,
+ lib/modetype.h, lib/nextelem.c, lib/nextelem.h, lib/printquoted.c,
+ lib/printquoted.h, lib/qmark.c, lib/savedirinfo.c,
+ lib/savedirinfo.h, lib/strspn.c, lib/wait.h, lib/waitpid.c,
+ locate/bigram.c, locate/code.c, locate/frcode.c, locate/locate.c,
+ locate/locatedb.h, locate/testsuite/config/unix.exp,
+ locate/updatedb.sh, missing, po/fetch-po-files,
+ xargs/testsuite/config/unix.exp, xargs/xargs.c:
+ Updated the FSF's postal address
+
+ * ChangeLog: Corrected Bas's email address.
+
+ * locate/locate.c: Updated copyright years.
+
+2005-06-08 Bas van Gompel <patch-findutils.buzz@bavag.tmfweb.nl>
+
+ * NEWS, locate/locate.1, doc/find.texi: Document usage of `-'
+ to refer to stdin in database-path for locate.
+ * locate/locate.c: Change prototype for visitors and processors
+ throughout. Move reading the database and generating base_name
+ into visitors. Allow `-' to refer to stdin in database-path.
+
+ * lib/printquoted.h: Include stdio.h.
+
+2005-06-07 James Youngman <jay@gnu.org>
+
+ * ChangeLog, NEWS, configure.in: Updates prior to release
+
+ * config.rpath: Added file required for 'make dist'
+
+ * po/be.po, po/ca.po, po/da.po, po/de.po, po/el.po, po/eo.po,
+ po/es.po, po/et.po, po/fi.po, po/findutils.pot, po/fr.po,
+ po/ga.po, po/gl.po, po/hr.po, po/hu.po, po/id.po, po/it.po,
+ po/ja.po, po/ko.po, po/lg.po, po/ms.po, po/nl.po, po/pl.po,
+ po/pt.po, po/pt_BR.po, po/ro.po, po/ru.po, po/rw.po, po/sk.po,
+ po/sl.po, po/sr.po, po/sv.po, po/tr.po, po/vi.po, po/zh_CN.po:
+ updated the po files for release
+
+ * xargs/testsuite/Makefile.am:
+ Added in all the test files from Dmitry V. Levin.
+
+2005-06-08 James Youngman <jay@gnu.org>
+
+ * ChangeLog, NEWS, configure.in: Updated for recent changes
+
+ * doc/find.texi:
+ Explain that you should put the argument of -name in quotes.
+
+ * find/find.1:
+ Added a new "NON-BUGS" section pointing out things that look like bugs
+ but are caused by mistakes or misunderstandings.
+
+ * doc/find.texi, locate/locate.1: Applied Bas van Gompel's patch
+ which allows the database to be read from stdin.
+
+ * locate/locate.c:
+ Read the database in by using the "visitor" pattern. Modified file
+ header comment to indicate that we no longer use the efficient
+ algorith described in ;login:. Emit an error message if the
+ LOCATE_PATH variable implies that we should read stdin twice.
+ Most of this code is from Bas van Gompel.
+
+ * AUTHORS: Credit Bas van Gompel for his work on locate.
+
+ * lib/printquoted.h: Appled patch from Bas - fixing compiler warning.
+
+2005-06-09 James Youngman <jay@gnu.org>
+
+ * locate/testsuite/config/unix.exp:
+ Use the new normalize_dir procedure throughout.
+
+ * locate/testsuite/config/unix.exp: Move the normalisation into a
+ procedure. Don't rely on the "file normalize" command being
+ available (it's new in Tcl 8.4).
+
+2005-06-10 James Youngman <jay@gnu.org>
+
+ * find/find.c, lib/savedirinfo.c, lib/savedirinfo.h: Switch to a
+ new scheme for saving directory entry data which is extensible to
+ allow additional data to be saved.
+
+2005-06-11 James Youngman <jay@gnu.org>
+
+ * find/find.1: Corrected spelling error 'writeable' to 'writable'.
+
+ * find/find.1, locate/locate.1:
+ Fixed Savannah bug #13363, typos in manpages (tiny change)
+
+2005-06-12 James Youngman <jay@gnu.org>
+
+ * find/find.c, NEWS:
+ Savannah bug #13381 (Debian bug 313081): if we have O_NOFOLLOW,
+ safely_chdir() does not need to call stat(). However, process_dir()
+ used to rely on using that stat information. To work around this
+ problem, there is now an output parameter in safely_chdir() which
+ indicates if the stat buffer is valid.
+ This bug has possible security implications.
+
+ * find/find.1, doc/find.texi:
+ Applied patch from Andreas Metzler, improving the wording for the
+ documentation of the %k and %b format directives. This patch does
+ not require a copyright assignment as it consists of several
+ copies of the same small wording change.
+
+2005-06-12 Bas van Gompel <patch-findutils.buzz@bavag.tmfweb.nl>
+
+ * locate/locate.c: Implement --all (-A).
+
+ * NEWS, doc/find.texi, locate/locate.1: Document locate --all (-A)
+
+2005-06-18 Dmitry V. Levin <ldv@altlinux.org>
+
+ Additional documentation tweaks for -execdir/-okdir actions.
+ * find/parser.c (parse_help): Mention -execdir and -ordir options.
+ * doc/find.texi, find/find.1: Additionally document new options.
+
+2005-06-18 Martin Buchholz (tiny change)
+
+ * find/defs.h, find/find.c, find/parser.c, doc/find.texi: Fix
+ typos/spelling errors (mostly in source code comments).
+
+2005-06-18 James Youngman <jay@gnu.org>
+
+ * po/ga.po, tr.po: Updated Irish and Turkish translations.
+
+ * po/pl.po: Did update-po
+
+ * po/pl.po:
+ Updated Polish translation file from the Translation Project
+
+ * po/ca.po, da.po, de.po, el.po, eo.po, es.po, et.po, fi.po, findutils.pot, fr.po, ga.po, gl.po, hr.po, hu.po, id.po, it.po, ja.po, ko.po, lg.po, ms.po, nl.po, pl.po, pt.po, pt_BR.po, ro.po, ru.po, rw.po, sk.po, sl.po, sr.po, sv.po, tr.po, vi.po, zh_CN.po, be.po:
+ Did update-po
+
+2005-06-19 James Youngman <jay@gnu.org>
+
+ * ChangeLog: Indicate that we made (are making) a release.
+
+ * ChangeLog, NEWS, configure.in: Preparing to release 4.2.23
+
+ * doc/find.texi: Fixed Texinfo syntax error in previous change
+
+ * doc/find.texi, xargs/xargs.1:
+ Document the fact that the -i and -L options are currently
+ incompatible (Savannah bug 13041).
+
+ * locate/updatedb.1, locate/updatedb.sh: Fix Savannah bug 13411 -
+ reject trailing slashes in updatedb's --prunepaths, bacsue these
+ will never be matched
+
+ * NEWS: Released findutils-4.2.23.
+
+ * doc/find.texi, xargs/xargs.1:
+ Document the fact that the -i and -L options are currently
+ incompatible (Savannah bug 13041).
+
+ * locate/updatedb.1, locate/updatedb.sh: Fix Savannah bug 13411 -
+ reject trailing slashes in updatedb's --prunepaths, because these
+ will never be matched.
+
+2005-06-19 Dmitry V. Levin <ldv@altlinux.org>
+
+ * lib/savedirinfo.c: Fix two compilation warnings (which would
+ prevent compilation if "-Wall -Werror" is in effect).
+
+2005-06-20 James Youngman <jay@gnu.org>
+
+ * xargs/xargs.c:
+ Removed some code which had already been disabled via the preprocessor.
+
+2005-06-24 Bas van Gompel <patch-findutils.buzz@bavag.tmfweb.nl>
+
+ * locate/locate.c (visit_count, visit_limit): New functions.
+ (locate): Use visit_limit or visit_count. Simplify main loop.
+ (main) Bail out early when limit is reached.
+
+2005-06-27 James Youngman <jay@gnu.org>
+
+ * ChangeLog, locate/locate.c: Applied patch from Bas Van Gompel to
+ move match counting into a (new) visitor function
+
+ * NEWS, configure.in: No longer 4.2.23, as we're moving on now
+
+2005-06-29 James Youngman <jay@gnu.org>
+
+ * doc/find.texi: Applied patch from Aaron Hawley (Savannah patch
+ #3751: Typos and small suggestions to find.texi)
+
+2005-07-01 James Youngman <jay@gnu.org>
+
+ * doc/find.texi:
+ Aaron pointed out a potentially-confusing sentence. I fixed it.
+
+ * find/defs.h, find/find.1, find/find.c, find/parser.c,
+ find/pred.c, find/util.c: Allow consistency-checking of the
+ predicates, checking for example that actions all have side
+ effects
+
+2005-07-01 Jim Meyering <jim@meyering.net>
+
+ With `-fprint F' or `-fprintf F', don't write diagnostics
+ to F when stderr is closed.
+
+ * find/parser.c: Include "stdio-safer.h".
+ (open_output_file): Use fopen_safer, not fopen.
+ * import-gnulib.sh (findutils_modules): Add stdio-safer.
+
+2005-07-02 James Youngman <jay@gnu.org>
+
+ * configure.in, find/defs.h, find/fstype.c, find/parser.c,
+ intl/dcigettext.c, lib/buildcmd.c, lib/listfile.c,
+ lib/savedirinfo.c, locate/locate.c, xargs/xargs.c: Assume unistd.h
+ is present - avoid using HAVE_UNISTD_H
+
+2005-07-03 James Youngman <jay@gnu.org>
+
+ * find/Makefile.am: Don't need regexprops.c really...
+
+ * lib/regextype.c, lib/regextype.h:
+ New files for selecting regex type based on a keyword
+
+ * locate/locate.1: Documented the fact that we now use Emacs-style
+ regexps, not POSIX EREs, for compatibility with find -regex.
+
+ * lib/Makefile.am, locate/locate.c, doc/find.texi,
+ find/Makefile.am, find/defs.h, find/find.1, find/find.c,
+ find/parser.c: Fixed Savannah bug #13495: find now uses
+ Emacs-style regexps by default
+
+2005-07-04 James Youngman <jay@gnu.org>
+
+ * NEWS: *** empty log message ***
+
+ * doc/find.texi:
+ Added a "Worked Examples" section. It currently only contains a
+ (long) example about deleting files.
+
+ * .cvsignore: Some extra stuff to ignore.
+
+2005-07-06 James Youngman <jay@gnu.org>
+
+ * find/defs.h, find/find.c, find/parser.c, find/pred.c:
+ Fixed Savannah bug #13650; programs run by -exec cannot read stdin
+
+2005-07-10 James Youngman <jay@gnu.org>
+
+ * doc/find.texi:
+ Applied several documentation improvement patches from Aaron Hawley
+
+ * ChangeLog, NEWS: Updated with recent changes.
+
+ * NEWS: Recent gnulib changed have fixed -iregex
+
+ * doc/find.texi, xargs/xargs.1:
+ Tiny patch from Andreas Metzler: xargs -I is like xargs -i, but the latter is deprecated
+
+2005-07-14 James Youngman <jay@gnu.org>
+
+ * NEWS, doc/Makefile.am, doc/find.texi, lib/Makefile.am,
+ lib/regexprops.c, lib/regextype.c, lib/regextype.h: Added
+ --regextype and -regextype options to locate and find
+ respectively, and documented these
+
+ * doc/find.texi: We use GNU Emacs regexps by default now.
+
+ * doc/find.texi:
+ We require GNU sort in order for locate to handle newlines correctly,
+ not just GNU find.
+
+2005-07-15 James Youngman <jay@gnu.org>
+
+ * po/da.po: Updated Danish translation from translation project
+
+2005-07-16 James Youngman <jay@gnu.org>
+
+ * doc/find.texi: Updates following comments by Dave Gilbert.
+
+ * NEWS: Corrected a typo.
+
+ * doc/find.texi:
+ Added in the example about updating an aggregate timestamp file.
+
+2005-07-17 James Youngman <jay@gnu.org>
+
+ * find/find.1: (tiny change) Corrections by Greg Wooledge
+
+2005-07-22 James Youngman <jay@gnu.org>
+
+ * xargs/testsuite/xargs.posix/childfail.exp, xargs/xargs.c: Fix
+ Savannah bug #13878, in which xargs deals incorrectly with child
+ failure, returning 0 when it should return 123
+
+2005-07-24 James Youngman <jay@gnu.org>
+
+ * doc/Makefile.am: If the regexprops program has changed we should
+ re-run it, since it will probably now produce different output
+
+ * lib/regextype.h:
+ Allow the caller to detect if one regex type is identical to another.
+
+ * configure.in:
+ Define the preprocessor macro FINDUTILS for that code int he lib/
+ directory can be slightly more reusable.
+
+ * lib/regextype.c:
+ Allow the caller to detect if one regex type is identical to another.
+
+ * lib/regexprops.c:
+ Made Texinfo style corrections suggested by Karl Berry.
+
+2005-07-26 James Youngman <jay@gnu.org>
+
+ * lib/regexprops.c: Further small corrections from Karl.
+
+ * doc/find.texi:
+ Reordered the sections in the manual to put the "Common Tasks" and
+ "Worked Examples" chapters together.
+
+ * configure.in, find/find.c: Allow the leaf optimisation to be
+ disabled by default with the configure option
+ --disable-leaf-optimisation
+
+ * find/find.c: Removed old code for antuqie version of savedir().
+
+ * lib/regextype.c: Put the syntaxes in alphabetical order.
+
+ * lib/regexprops.c: Karl made some more readability suggestions.
+
+2005-07-27 James Youngman <jay@gnu.org>
+
+ * xargs/testsuite/Makefile.am: Added new test case 'childfail.exp'.
+
+ * doc/find.texi:
+ Updated the description of the safe-dir-change operation to reflect
+ what find now does on systems that lack O_NOFOLLOW.
+
+ * NEWS, find/parser.c: Indicate in the output of find --version if
+ the leaf optimisation is enabled or not
+
+ * find/find.c: Fixed typo.
+
+ * find/find.c: If the link count of a directory starts off less
+ than two, disable the leaf optimisation for this directory.
+
+2005-07-28 James Youngman <jay@gnu.org>
+
+ * find/find.1:
+ Say "other users" rather than "rest of the world" when talking about
+ Unix permissions. Fixes Savannah bug #4246.
+
+2005-07-29 James Youngman <jay@gnu.org>
+
+ * NEWS, configure.in
+ Prepared for the release of findutils-4.2.24
+
+ * ChangeLog: Updated with recent changes.
+
+ * NEWS, find/find.1, doc/find.texi:
+ Indicate that -ok and -okdir redirect stdin from /dev/null.
+
+ * NEWS: Explain the directory link count change more throroughly.
+
+ * NEWS: Fixed bug #13973.
+
+ * find/pred.c (pred_fprintf): Fix Savannah bug #13973: Modify the
+ handling of -printf %Y so that it no longer modifies stat_buf
+
+ * find/testsuite/find.gnu/printf-symlink.exp,
+ find/testsuite/find.gnu/printf-symlink.xo: Detect Savannah bug
+ #13973: pollution of stat_buf by the %Y directive (trivial change
+ from Andreas Metzler)
+
+ * INSTALL, depcomp, doc/texinfo.tex, install-sh, missing, mkinstalldirs:
+ Updated auxiliary files from the automake-1.9 distribution
+
+ * configure.in:
+ Introduce new Automake conditional, CROSS_COMPILING, true when we are corss compiling
+
+ * find/find.c:
+ If we decline to follow a symbolic link due to the safety check, issue a more self-explanatory warning message
+
+ * lib/Makefile.am: Don't build regexprops if we are cross compiling
+
+ * doc/Makefile.am:
+ Depend on the regex.h file rather than the 'regexprops' binary,
+ because the header file will always exist even if we are doing "make
+ dist". Otherwise "make distcheck" fails because it tries to rebuild
+ find.info while the source-directory is read-only.
+
+2005-07-30 James Youngman <jay@gnu.org>
+
+ * find/finddata.c, find/ftsfind.c, find/parser.c, find/pred.c,
+ find/util.c, m4/Makefile.am, m4/withfts.m4: Initial attempt to
+ convert find to use gnulib's fts()
+ [this change is currently on a branch only]
+
+ * find/finddata.c, find/ftsfind.c, m4/withfts.m4: New file.
+ [this change is currently on a branch only]
+
+ * NEWS, configure.in, find/Makefile.am, find/defs.h, find/find.c,
+ import-gnulib.sh: Initial attempt to convert find to use gnulib's
+ fts() [this change is currently on a branch only]
+
+2005-07-31 James Youngman <jay@gnu.org>
+
+ * find/testsuite/excuses.txt: We now have tests for -perm.
+
+ * NEWS, configure.in, find/parser.c,
+ find/testsuite/find.gnu/perm-slash.exp,
+ find/testsuite/find.gnu/perm-slash.xo: Fixed bug which caused find
+ -perm /440 to be treated the same as find -perm 440
+
+ * find/testsuite/Makefile.am:
+ Generic tests for -perm -NNN and -perm NNN
+
+ * find/testsuite/excuses.txt: New file - list of test cases that
+ still need to be written, along with excuses why they haven't been
+ done yet
+
+ * find/testsuite/find.posix/perm-vanilla.exp,
+ find/testsuite/find.posix/perm-vanilla.xo: Generic tests for -perm
+ -NNN and -perm NNN
+
+ * find/testsuite/find.gnu/inum.exp:
+ Ensure that the test would fail if -inum just always returned true
+
+ * find/testsuite/Makefile.am, find/testsuite/find.gnu/ilname.exp,
+ find/testsuite/find.gnu/ilname.xo,
+ find/testsuite/find.gnu/inum.exp, find/testsuite/find.gnu/inum.xo,
+ find/testsuite/find.gnu/lname.exp,
+ find/testsuite/find.gnu/lname.xo,
+ find/testsuite/find.gnu/xtype.exp,
+ find/testsuite/find.gnu/xtype.xo,
+ find/testsuite/find.posix/links.exp,
+ find/testsuite/find.posix/links.xo: New test cases for -ilname,
+ -inum, -lname, -xtype
+
+ * find/testsuite/Makefile.am, find/testsuite/find.gnu/delete.exp,
+ find/testsuite/find.gnu/delete.xo,
+ find/testsuite/find.gnu/iregex1.exp,
+ find/testsuite/find.gnu/iregex1.xo,
+ find/testsuite/find.gnu/regex1.exp,
+ find/testsuite/find.gnu/regex1.xo,
+ find/testsuite/find.gnu/regex2.exp,
+ find/testsuite/find.gnu/regex2.xo,
+ find/testsuite/find.gnu/samefile-copy.exp,
+ find/testsuite/find.gnu/samefile-copy.xo,
+ find/testsuite/find.gnu/samefile-link.exp,
+ find/testsuite/find.gnu/samefile-link.xo,
+ find/testsuite/find.gnu/samefile-same.exp,
+ find/testsuite/find.gnu/samefile-same.xo,
+ find/testsuite/find.gnu/samefile-symlink.exp,
+ find/testsuite/find.gnu/samefile-symlink.xo: Further test cases
+
+ * find/find.1: Indicate that -delete implies -depth (find.texi
+ already mentioned this).
+
+ * find/testsuite/Makefile.am:
+ Brought the list of .exp and .xo files in Makefile.am into sync with
+ the actual contents of the CVS repository.
+
+ * find/testsuite/Makefile.am, find/testsuite/find.gnu/depth-d.exp,
+ find/testsuite/find.gnu/depth-d.xo,
+ find/testsuite/find.gnu/empty.exp,
+ find/testsuite/find.gnu/empty.xo,
+ find/testsuite/find.gnu/execdir-one.exp,
+ find/testsuite/find.gnu/execdir-one.xo,
+ find/testsuite/find.gnu/false.exp,
+ find/testsuite/find.gnu/false.xo,
+ find/testsuite/find.gnu/follow-basic.exp,
+ find/testsuite/find.gnu/follow-basic.xo,
+ find/testsuite/find.gnu/gnu-or.exp,
+ find/testsuite/find.gnu/gnu-or.xo,
+ find/testsuite/find.gnu/gnuand.exp,
+ find/testsuite/find.gnu/gnuand.xo,
+ find/testsuite/find.gnu/gnunot.exp,
+ find/testsuite/find.gnu/gnunot.xo,
+ find/testsuite/find.gnu/iname.exp,
+ find/testsuite/find.gnu/iname.xo,
+ find/testsuite/find.gnu/ipath.exp,
+ find/testsuite/find.gnu/ipath.xo,
+ find/testsuite/find.gnu/iwholename.exp,
+ find/testsuite/find.gnu/iwholename.xo,
+ find/testsuite/find.gnu/path.exp, find/testsuite/find.gnu/path.xo,
+ find/testsuite/find.gnu/print0.exp,
+ find/testsuite/find.gnu/print0.xo,
+ find/testsuite/find.gnu/quit.exp, find/testsuite/find.gnu/quit.xo,
+ find/testsuite/find.gnu/true.exp, find/testsuite/find.gnu/true.xo,
+ find/testsuite/find.gnu/wholename.exp,
+ find/testsuite/find.gnu/wholename.xo,
+ find/testsuite/find.posix/and.exp,
+ find/testsuite/find.posix/and.xo,
+ find/testsuite/find.posix/exec-one.exp,
+ find/testsuite/find.posix/exec-one.xo,
+ find/testsuite/find.posix/grouping.exp,
+ find/testsuite/find.posix/grouping.xo,
+ find/testsuite/find.posix/name.exp,
+ find/testsuite/find.posix/name.xo,
+ find/testsuite/find.posix/posixnot.exp,
+ find/testsuite/find.posix/posixnot.xo,
+ find/testsuite/find.posix/prune.exp,
+ find/testsuite/find.posix/prune.xo: Added new test cases for many
+ of the actions and tests of find
+
+ * find/find.c (default_prints):
+ not a static function, so do not declare it as one.
+
+ * m4/withfts.m4: Fixed underquoted definition of FIND_WITH_FTS.
+ [this change is currently on a branch only]
+
+2005-08-01 James Youngman <jay@gnu.org>
+
+ * ABOUT-NLS, INSTALL, Makefile.am, configure.in, depcomp,
+ doc/texinfo.tex, install-sh, missing, mkinstalldirs: By adding the
+ missing AM_GNU_GETTEXT_VERSION call, allowed autopoint to update
+ those files of which it has updated copies.
+
+ * po/Makevars.template, po/Makefile.in.in, po/findutils.pot:
+ Using AM_GNU_GETTEXT_VERSION, allowed gettext to update the infrastructure
+
+ * po/Rules-quot, po/boldquot.sed, po/en@boldquot.header, po/en@quot.header, po/insert-header.sin, po/quot.sed:
+ Files added by autopoint now that we are using AM_GNU_GETTEXT_VERSION
+
+ * find/testsuite/Makefile.am: Added find.gnu./perm-slash.{exp,xo}.
+
+ * po/nl.po: Updated Dutch translation from Translation Project
+
+ * po/ga.po: Updated Irish translation from the Translation Project
+
+ * po/da.po: Updated Danish translation from the Translation Project
+
+ * po/ca.po: Updated Catalan translation from Translation Project
+
+2005-08-02 James Youngman <jay@gnu.org>
+
+ * po/tr.po, vi.po:
+ Updated Vietnamese and Turkish translations from Translation Project
+
+ * po/sl.po, sr.po, sv.po, tr.po, vi.po, zh_CN.po, be.po, ca.po, da.po, de.po, el.po, eo.po, es.po, fi.po, findutils.pot, fr.po, ga.po, gl.po, hr.po, hu.po, id.po, it.po, ja.po, ko.po, lg.po, ms.po, pl.po, pt.po, pt_BR.po, ru.po, rw.po:
+ Did update-po
+
+ * po/et.po, sk.po, ro.po:
+ Updated Romanian, Slovak and Estonian translations from Translation Project
+
+2005-08-07 James Youngman <jay@gnu.org>
+
+ * NEWS: Indicated that some test suite files have been renamed.
+
+ * xargs/testsuite/Makefile.am, xargs/testsuite/inputs/eof.xi,
+ xargs/testsuite/inputs/eof1.xi,
+ xargs/testsuite/xargs.sysv/eof.exp,
+ xargs/testsuite/xargs.sysv/eof.xo,
+ xargs/testsuite/xargs.sysv/eof1.exp,
+ xargs/testsuite/xargs.sysv/eof1.xo,
+ xargs/testsuite/xargs.posix/lc_l2.exp,
+ xargs/testsuite/xargs.posix/lc_l2.xo,
+ xargs/testsuite/xargs.sysv/l2.exp,
+ xargs/testsuite/xargs.sysv/l2.xo,
+ xargs/testsuite/xargs.sysv/lc_l2.exp,
+ xargs/testsuite/xargs.sysv/lc_l2.xo,
+ xargs/testsuite/xargs.posix/L2.exp,
+ xargs/testsuite/xargs.posix/l2.exp,
+ xargs/testsuite/xargs.posix/L2.xo,
+ xargs/testsuite/xargs.posix/l2.xo,
+ xargs/testsuite/xargs.posix/uc_L2.exp,
+ xargs/testsuite/xargs.posix/uc_L2.xo: Work around problems with
+ CVS clients on case-insentitive operating systems
+
+ * debian/Changelog: Removed Changelog file since changelog is the
+ one we should be using and having both files upsets Cygwin
+ systems which cannot tell the dirrerence between changelog and
+ Changelog
+
+ * find/ftsfind.c:
+ If DEBUG is defined, show the symbolic names fro fts_info values.
+
+ * find/ftsfind.c: Added additional diagnostics.
+
+2005-08-09 James Youngman <jay@gnu.org>
+
+ * NEWS: Indicate that regexprops.texi is built on Cygin now that
+ Savannah bug #14025 has been fixed.
+
+ * lib/Makefile.am, lib/regexprops.c: Fixed compilation failure on
+ Cygwin - Savannah Bug #14025 (tiny change, three lines), reported
+ and fixed by Eric Blake
+
+ * find/testsuite/Makefile.am,
+ find/testsuite/find.posix/sv-bug-14070.exp,
+ find/testsuite/find.posix/sv-bug-14070.xo: Added new test case for
+ SourceForge bug #14070
+
+ * find/testsuite/find.posix/sv-bug-14070.exp,
+ find/testsuite/find.posix/sv-bug-14070.xo: New file.
+
+ * find/defs.h, find/ftsfind.c, find/pred.c, find/util.c:
+ Ensure we can still build with --enable-debug
+
+ * find/testsuite/config/unix.exp,
+ find/testsuite/find.gnu/execdir-one.exp,
+ find/testsuite/find.gnu/execdir-root-only.exp,
+ find/testsuite/find.gnu/sv-bug-12230.exp: If . is on $PATH,
+ indicate that the -execdir tests cannot be carried out, as opposed
+ to indicating that those tests fail
+
+2005-08-11 James Youngman <jay@gnu.org>
+
+ * po/fr.po: Updated French translation and added new PO file zh_TW.po
+ for Chinese (traditional)
+
+2005-08-12 James Youngman <jay@gnu.org>
+
+ * NEWS: Corrected typo.
+
+2005-08-13 James Youngman <jay@gnu.org>
+
+ * find/find.1: Remind the user to quote the pattern argument to -iname.
+
+2005-08-24 James Youngman <jay@gnu.org>
+
+ * po/sl.po: Updated from Translation Project
+
+2005-08-30 James Youngman <jay@gnu.org>
+
+ * find/defs.h, find/find.c, find/fstype.c, find/pred.c:
+ Attempted fix for compilation when AFS is #defined
+
+2005-09-01 James Youngman <jay@gnu.org>
+
+ * doc/find.texi: Typo fix from Jim Meyering (tiny change)
+
+2005-09-01 Jim Meyering <jim@meyering.net>
+
+ * locate/locate.c (struct stringbuf) [soffs]: Remove unused member.
+ (locate): Remove initialization, too.
+
+2005-09-01 James Youngman <jay@gnu.org>
+
+ * po/ChangeLog, ChangeLog: Updated with recent changes.
+
+ * locate/locate.c: Removed unused struct stringbuf.soffs.
+
+ * doc/find.texi: Typo fix from Jim Meyering (tiny change)
+
+2005-09-02 James Youngman <jay@gnu.org>
+
+ * doc/find.texi, find/find.1:
+ Improved documentation in response to Savannah bug #14376
+
+2005-09-03 James Youngman <jay@gnu.org>
+
+ * find/testsuite/find.gnu/quit.exp: Fixed Savannah bug#14390, by
+ avoiding an accidental assumption in quit.exp that directory
+ entries are returned by readir() in any particular order
+
+ * NEWS, configure.in, doc/find.texi, xargs/testsuite/Makefile.am,
+ xargs/testsuite/inputs/helloworld.xi,
+ xargs/testsuite/xargs.gnu/delim-o.exp,
+ xargs/testsuite/xargs.gnu/delim-o.xo, xargs/xargs.1,
+ xargs/xargs.c: Added the --delimiter option to xargs, resolving
+ Savannah support request sr #102914
+
+ * ChangeLog, NEWS, configure.in: Released findutils-4.2.25
+
+ * po/sr.po, sv.po, tr.po, vi.po, zh_CN.po, zh_TW.po, sl.po, be.po,
+ ca.po, da.po, de.po, el.po, eo.po, es.po, et.po, fi.po,
+ findutils.pot, fr.po, ga.po, gl.po, hr.po, hu.po, id.po, it.po,
+ ja.po, ko.po, lg.po, ms.po, nl.po, pl.po, pt.po, pt_BR.po, ro.po,
+ ru.po, rw.po, sk.po: Did update-po
+
+2005-09-04 James Youngman <jay@gnu.org>
+
+ * find/defs.h, find/find.c, find/parser.c, find/pred.c,
+ Work around compilation failure with GCC 4 and AIX 5.1, in which
+ open is #defined to open64
+
+ * po/be.po, ca.po, da.po, de.po, el.po, eo.po, es.po, et.po, fi.po,
+ findutils.pot, fr.po, ga.po, gl.po, hr.po, hu.po, id.po, it.po,
+ ja.po, ko.po, lg.po, ms.po, nl.po, pl.po, pt.po, pt_BR.po, ro.po,
+ ru.po, rw.po, sk.po, sl.po, sr.po, sv.po, tr.po, vi.po, zh_CN.po,
+ zh_TW.po: Work around compilation failure with GCC 4 and AIX 5.1,
+ in which open is #defined to open64
+
+2005-09-06 James Youngman <jay@gnu.org>
+
+ * xargs/xargs.c: Typo in "IEEE" in a comment.
+
+2005-09-17 James Youngman <jay@gnu.org>
+
+ * NEWS: Corrections for find manual page - symbolic permissions.
+
+ * find/find.1:
+ Corrected an inaccuracy in the EXAMPLES section - in symbolic modes,
+ 'o' stands for 'others' and 'u' stands for 'user' (i.e. the owner).
+
+2005-09-17 A Costa <agcosta@gis.net> (tiny change)
+
+ docs/find.texi: Fixed typo
+ find/find.1: Fixed typo
+ xargs/xargs.1: Fixed typo
+
+2005-09-17 James Youngman <jay@gnu.org>
+
+ * xargs/xargs.c:
+ Fixed Savannah bug #14550 - if environment is too large to allow
+ exec() to work, we cannot even use "xargs --help".
+
+ * find/find.1:
+ Avoid the use of -perm +mode, using -perm /mode instead. From comment
+ by Andreas Metzler (though I didn't read the patch).
+
+ * ChangeLog, doc/find.texi, find/find.1, xargs/xargs.1:
+ Typo fix from A Costa (tiny change)
+
+ * NEWS: Corrections for find manual page - symbolic permissions.
+
+ * find/find.1:
+ Corrected an inaccuracy in the EXAMPLES section - in symbolic modes,
+ 'o' stands for 'others' and 'u' stands for 'user' (i.e. the owner).
+
+2005-09-20 James Youngman <jay@gnu.org>
+
+ * NEWS, configure.in, doc/find.texi, xargs/xargs.1, xargs/xargs.c:
+ Documentation clarification: -L and -I take a mandatory argument;
+ -l and -i do not
+
+2005-09-21 James Youngman <jay@gnu.org>
+
+ * xargs/xargs.1, xargs/xargs.c: Clarified the -E option
+
+2005-10-08 James Youngman <jay@gnu.org>
+
+ * find/find.c, lib/regextype.c: Fixed Savannah bug #14616, which
+ was that c99 code had crept in and it didn't compile on c89
+ compilers
+
+ * doc/find.texi: Savannah patch #4371 from Andreas Metzler; the
+ argument of -I is mandatory
+
+2005-10-31 James Youngman <jay@gnu.org>
+
+ * doc/find.texi:
+ Removed redundant additional description of "--regextype".
+
+2005-11-11 James Youngman <jay@gnu.org>
+
+ * NEWS, find/find.c, find/fstype.c: Savannah bug #14922: if we need the
+ list of mounted filesystems but it is not available, exit fatally
+ with a message. If it is not available but we don't need it,
+ there is no need for an error.
+
+ * po/ro.po, ru.po, rw.po, sk.po, sl.po, sr.po, sv.po, tr.po, vi.po,
+ zh_CN.po, zh_TW.po, ko.po, lg.po, ms.po, nl.po, pl.po, pt.po,
+ pt_BR.po, be.po, ca.po, da.po, de.po, el.po, eo.po, es.po, et.po,
+ fi.po, findutils.pot, fr.po, ga.po, gl.po, hr.po, hu.po, id.po,
+ it.po, ja.po: Updated Polish translation
+
+2005-11-18 Jim Meyering <jim@meyering.net> (tiny change)
+
+ * lib/buildcmd.c (bc_push_arg): When exec'ing, don't exceed
+ Linux's limit on the maximum number of command line arguments.
+
+2005-11-19 James Youngman <jay@gnu.org>
+
+ * doc/find.texi, find/find.1:
+ Applied edited form of Andreas Metzler's -perm /mode documentation
+ patch resolving Savannah bug #14619.
+
+ * lib/extendbuf.c:
+ In the success case, extendbuf() should preserve the previous value of
+ errno. Fixes Savannah bug #14842.
+
+ * xargs/testsuite/Makefile.am: Added new test files
+
+ * find/find.1:
+ Correctly indicate the default regular expression syntax (fixes
+ Savannah bug #14836).
+
+ * NEWS, configure.in: Released findutils-4.2.26
+
+ * ChangeLog, NEWS, lib/buildcmd.c,
+ xargs/testsuite/inputs/16383-ys.xi,
+ xargs/testsuite/inputs/32767-ys.xi,
+ xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp,
+ xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.xo,
+ xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp,
+ xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.xo: Applied
+ bugfix from Jim Meyering (tiny change), where many short arguments
+ would cause xargs (and probably find -exec .. {} +) to fail
+ because execve() returns E2BIG, which we should avoid
+
+ * xargs/testsuite/inputs/16383-ys.xi,
+ xargs/testsuite/inputs/32767-ys.xi,
+ xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp,
+ xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.xo,
+ xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp,
+ xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.xo: New file.
+
+ * po/be.po, ca.po, da.po, de.po, el.po, eo.po, es.po, et.po, fi.po,
+ findutils.pot, fr.po, ga.po, gl.po, hr.po, hu.po, id.po, it.po,
+ ja.po, ko.po, lg.po, ms.po, nl.po, pl.po, pt.po, pt_BR.po, ro.po,
+ ru.po, rw.po, sk.po, sl.po, sr.po, sv.po, tr.po, vi.po, zh_CN.po,
+ zh_TW.po: Updated Portuguese .po file and did update-po
+
+2005-11-20 James Youngman <jay@gnu.org>
+
+ * locate/locate.1, xargs/xargs.1: Escape '-' as '\-' where appropriate.
+
+ * find/find.1:
+ Escape '-' as '\-' where appropriate. Fixes last part of bug #14556.
+
+2005-11-21 James Youngman <jay@gnu.org>
+
+ * locate/testsuite/config/unix.exp:
+ Even if we expect locate to return a nonzero status, the test should
+ still fail if updatedb fails!
+
+ * locate/testsuite/locate.gnu/ignore_case2.exp:
+ Set the current directory for updatedb. This test case is supposed to
+ fail because the filename is not matched, not because updatedb fails!
+
+ * locate/updatedb.sh:
+ Check the binaries actually exist in the place we expect.
+
+2005-11-22 James Youngman <jay@gnu.org>
+
+ * ChangeLog: Updated with recent changes.
+
+2005-11-23 James Youngman <jay@gnu.org>
+
+ * NEWS: Bug #14921 has been fixed.
+
+ * find/fstype.c:
+ Savannah bug #14921: when a Linux bind filesystem is in use, find
+ would expand '-printf %F' to 'none' if a bind mount targeted the same
+ filesystem as the one containing the file to be described.
+
+ * NEWS: Updated to describe recent changes
+
+ * doc/find.texi, find/find.1: Documented find -printf %M
+
+ * lib/buildcmd.c, xargs/testsuite/Makefile.am,
+ xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp,
+ xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.xo,
+ xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp,
+ xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.xo:
+ Ensure that the test suite still passes even if the current
+ system's value of ARG_MAX is different from the development/test
+ system
+
+ * lib/buildcmd.c: reindent and untabify
+
+ * configure.in: The CVS code is moving on from the previous release.
+
+2005-11-24 James Youngman <jay@gnu.org>
+
+ * NEWS, lib/buildcmd.c, lib/buildcmd.h: Merge to trunk from 4.2.x fixes
+
+ * lib/buildcmd.h:
+ Deleted inaccurate comment about the default value of ctl->args_per_exec.
+
+ * NEWS, lib/buildcmd.c, lib/buildcmd.h:
+ Be more conservative about the total number of arguments we will
+ allow (to avoid exec limits on Linux/PPC)
+
+2005-11-29 James Youngman <jay@gnu.org>
+
+ * xargs/xargs.c:
+ Typo "Ilegal"; change to "Invalid" since this is not really illegal!
+ Bug report by Primoz Peterlin.
+
+ * lib/regexprops.c, xargs/xargs.c:
+ Prefer the word 'Invalid' or the phrase 'not allowed' over
+ 'Illegal', as per the GNU coding standards, and as per the
+ suggestion from Benno Schulenberg
+
+2005-11-30 James Youngman <jay@gnu.org>
+
+ * xargs/xargs.c:
+ Typo correction from Benno Schulenberg <benno@nietvergeten.nl>
+ (tiny change)
+
+2005-12-04 James Youngman <jay@gnu.org>
+
+ * doc/find.texi: Document --show-limits
+
+ * xargs/xargs.c:
+ Correctly display the size of the argument buffer we really allocated.
+
+ * doc/find.texi, find/find.1, find/parser.c, find/pred.c, NEWS:
+ Savannah bug #14748 (which this change does NOT fix): issue
+ warning of future changes in the behaviour of -perm /000
+
+2005-12-05 James Youngman <jay@gnu.org>
+
+ * doc/find.texi, find/find.1, locate/locate.1, xargs/xargs.1:
+ Savannah patch #3775 from Aaron Hawley: reconciling man pages
+ differences; did not apply the patch, but resolved all the
+ remaining issues manually by updating the documentation (mostly
+ the Texinfo documentation, which was missing a number of specific
+ technical statements about the behaviour of various options)
+
+2005-12-05 James Youngman <jay@gnu.org>
+
+ * Released findutils-4.2.27
+
+2005-12-08 James Youngman <jay@gnu.org>
+
+ * doc/find.texi: Typo and spelling corrections from Aaron Hawley
+
+2005-12-10 Andreas Metzler <gnu@downhill.at.eu.org>
+
+ * ChangeLog, NEWS, configure.in, find/defs.h, find/parser.c:
+ Applied patch from Andreas Metzler fixing Savannah bug #15181:
+ implicit declaration of parse_openparen
+
+2005-12-10 James Youngman <jay@gnu.org>
+
+ * doc/perm.texi:
+ Aaron Hawley: Updated perm.texi from the coreutils distribution
+
+ * find/parser.c:
+ Avoid using entries which have the same name as POSIX library
+ functions (fprintf, printf, exec) as the implementation is allowed to
+ #define these. That generates hard-to-grok compilation errors.
+
+2005-12-11 James Youngman <jay@gnu.org>
+
+ * ChangeLog, THANKS, xargs/xargs.c:
+ Fixed spelling errors in Bob Proulx's name. Sorry, Bob.
+
+2005-12-12 James Youngman <jay@gnu.org>
+
+ Release 4.3.0.
+
+ * find/testsuite/find.gnu/access.exp:
+ Don't leave junk files lying around the place
+
+ * README-CVS: Update the the instructions for getting gnulib; the
+ CVS arrangements at Savannah have changed.
+
+ * ChangeLog, NEWS, doc/find.texi, doc/perm.texi, find/defs.h, find/parser.c:
+ Merged changes from 4.2.x branch again
+
+ * NEWS, doc/find.texi, find/defs.h, find/find.c, find/ftsfind.c,
+ find/parser.c, find/pred.c, find/util.c, lib/listfile.c,
+ lib/listfile.h: Initial code to allow control over how -ls quote
+ (or does not quote) control characters; not enabled yet
+
+2005-12-16 James Youngman <jay@gnu.org>
+
+ * xargs/xargs.1, xargs/xargs.c: Fixed bug# 15211, that xargs
+ --show-limits is not documented in the manpage or in the usage
+ message
+
+2005-12-19 Eric Blake <ebb9@byu.net>
+
+ * find/testsuite/Makefile.am,
+ find/testsuite/find.posix/sv-bug-15235.xo,
+ find/testsuite/find.posix/sv-bug-15235.exp: New tests for Savannah
+ bug 15235.
+
+ * NEWS, find/find.1, doc/find.texi (Invoking find): Document bug
+ fix for Savannah bug 15235.
+
+2005-12-19 James Youngman <jay@gnu.org>
+
+ * find/testsuite/config/unix.exp:
+ Run every test twice, once with the old (non-fts) binary and once with
+ the new (fts-enabled) binary.
+
+2005-12-20 James Youngman <jay@gnu.org>
+
+ * find/defs.h, find/find.c, find/ftsfind.c,
+ find/testsuite/find.posix/bracket-depth.exp, find/util.c: Further
+ fix to bug# 15235: a leading comma is a filename not an expression
+
+ * find/defs.h, find/parser.c, find/testsuite/Makefile.am,
+ find/testsuite/find.posix/empty-parens.exp, find/tree.c: Accept
+ 'find ( -depth )' but reject 'find ( )'
+
+ * find/testsuite/find.gnu/delete.exp: Use the new find program,
+ and the new way of locating it ($OLDFIND/$FTSFIND instead of $FIND)
+
+ * find/testsuite/Makefile.am: Added bracket-depth.exp.
+
+ * NEWS, configure.in: We have moved on from 4.3.0
+
+ * find/defs.h, find/find.c, find/ftsfind.c,
+ find/testsuite/Makefile.am, find/testsuite/find.gnu/delete.exp,
+ find/testsuite/find.posix/files-not-expressions1.exp,
+ find/testsuite/find.posix/files-not-expressions1.xo,
+ find/testsuite/find.posix/files-not-expressions2.exp,
+ find/testsuite/find.posix/files-not-expressions2.xo,
+ find/testsuite/find.posix/files-not-expressions3.exp,
+ find/testsuite/find.posix/files-not-expressions3.xo, find/util.c:
+ Avoid getting confused by filename arguments of which the first
+ character looks like a predicate, for example ',x' or '!x' or '(x'
+ (Savannah bug #15235).
+
+2005-12-20 James Youngman <jay@gnu.org>
+
+ * NEWS, doc/find.texi, find/defs.h, find/find.1, find/find.c, find/ftsfind.c, find/testsuite/Makefile.am, find/testsuite/find.posix/sv-bug-15235.exp, find/testsuite/find.posix/sv-bug-15235.xo, find/tree.c, find/util.c:
+ Savannah bug #15195: more helpful error messages for 'find . ( )' or 'find . \!'
+
+ * ChangeLog: Added entries for recent changes.
+
+ * find/defs.h, find/find.c, find/ftsfind.c, find/testsuite/find.posix/bracket-depth.exp, find/util.c:
+ Further fix to bug# 15235: a leading comma is a filename not an expression
+
+ * find/defs.h, find/parser.c, find/testsuite/Makefile.am, find/testsuite/find.posix/empty-parens.exp, find/tree.c:
+ Accept 'find ( -depth )' but reject 'find ( )'
+
+ * po/be.po, po/ca.po, po/da.po, po/de.po, po/el.po, po/eo.po, po/es.po, po/et.po, po/fi.po, po/findutils.pot, po/fr.po, po/ga.po, po/gl.po, po/hr.po, po/hu.po, po/id.po, po/it.po, po/ja.po, po/ko.po, po/lg.po, po/ms.po, po/nl.po, po/pl.po, po/pt.po, po/pt_BR.po, po/ro.po, po/ru.po, po/rw.po, po/sk.po, po/sl.po, po/sr.po, po/sv.po, po/tr.po, po/vi.po, po/zh_CN.po, po/zh_TW.po:
+ did make dist
+
+ * find/testsuite/find.gnu/delete.exp:
+ Use the new find program, and the new way of locating it (/ instead of )
+
+ * find/testsuite/Makefile.am: Added bracket-depth.exp.
+
+ * NEWS, configure.in: We have moved on from 4.3.0
+
+ * find/defs.h, find/find.c, find/ftsfind.c, find/testsuite/Makefile.am, find/testsuite/find.gnu/delete.exp, find/testsuite/find.posix/files-not-expressions1.exp, find/testsuite/find.posix/files-not-expressions1.xo, find/testsuite/find.posix/files-not-expressions2.exp, find/testsuite/find.posix/files-not-expressions2.xo, find/testsuite/find.posix/files-not-expressions3.exp, find/testsuite/find.posix/files-not-expressions3.xo, find/util.c:
+ Avoid getting confused by filename arguments of which the first
+ character looks like a predicate, for example ',x' or '!x' or
+ '(x' (Savannah bug #15235).
+
+2005-12-23 James Youngman <jay@gnu.org>
+
+ * find/parser.c: Refactor of parse_[acm]time
+
+ * find/defs.h, find/find.c, find/finddata.c, find/ftsfind.c, find/tree.c, find/util.c:
+ last_pred can be a static in tree.c rather than a global variable
+
+ * find/tree.c, find/finddata.c:
+ Moved some global data out of finddata.o and into static variables in tree.c
+
+ * NEWS, find/find.c, find/fstype.c, find/ftsfind.c, find/parser.c, find/pred.c, lib/buildcmd.c, lib/buildcmd.h, lib/regexprops.c, lib/regextype.c, lib/regextype.h, lib/savedirinfo.c, locate/locate.c, xargs/xargs.c:
+ Fixed many compilation warnings
+
+ * find/find.c, find/ftsfind.c, find/util.c:
+ Evaluating the predicates can change the contents of the data structure (for example to add another exec item)
+
+ * find/defs.h, find/find.c, find/ftsfind.c, find/tree.c, find/util.c:
+ Re-factored a lot of common expression-handling code out of find.c and ftsfind.c, mainly into tree.c
+
+ * find/find.c, find/ftsfind.c, find/tree.c:
+ Savannah bug #15271: more helpful error messages for cases where there is a missing expression
+
+2006-01-04 James Youngman <jay@gnu.org>
+
+ * find/testsuite/find.posix/sizetype.exp, find/testsuite/find.posix/sizetype.xo, find/testsuite/find.posix/typesize.exp, find/testsuite/find.posix/typesize.xo:
+ Additional tests for -type -size and -size -type
+
+ * NEWS, doc/find.texi, find/defs.h, find/find.1, find/find.c, find/ftsfind.c, find/parser.c, find/pred.c, find/testsuite/Makefile.am, find/testsuite/config/unix.exp, find/testsuite/find.gnu/depth-d.exp, find/tree.c, find/util.c, po/be.po, po/ca.po, po/da.po, po/de.po, po/el.po, po/eo.po, po/es.po, po/et.po, po/fi.po, po/findutils.pot, po/fr.po, po/ga.po, po/gl.po, po/hr.po, po/hu.po, po/id.po, po/it.po, po/ja.po, po/ko.po, po/lg.po, po/ms.po, po/nl.po, po/pl.po, po/pt.po, po/pt_BR.po, po/ro.po, po/ru.po, po/rw.po, po/sk.po, po/sl.po, po/sr.po, po/sv.po, po/tr.po, po/vi.po, po/zh_CN.po, po/zh_TW.po:
+ Initial implementation of a cost-based optimiser
+
+2006-03-31 James Youngman <jay@gnu.org>
+
+ * po/hu.po: Updated Hungarian translation
+
+2006-04-01 James Youngman <jay@gnu.org>
+
+ * find/find.c:
+ Fixed Savannah bug #15800: "Hard link count is wrong" reports wrong
+ directory name.
+
+2006-06-14 James Youngman <jay@gnu.org>
+
+ * po/be.po, po/ca.po, po/da.po, po/de.po, po/el.po, po/eo.po, po/es.po, po/et.po, po/fi.po, po/findutils.pot, po/fr.po, po/ga.po, po/gl.po, po/hr.po, po/hu.po, po/id.po, po/it.po, po/ja.po, po/ko.po, po/lg.po, po/ms.po, po/nl.po, po/pl.po, po/pt.po, po/pt_BR.po, po/ro.po, po/ru.po, po/rw.po, po/sk.po, po/sl.po, po/sr.po, po/sv.po, po/tr.po, po/vi.po, po/zh_CN.po, po/zh_TW.po:
+ Updated translation files ga pl sv tr nl ca vi bg fr
+
+ * locate/updatedb.sh:
+ Fixed Savannah bug #16579 (su false should be su -c false)
+
+2006-06-15 James Youngman <jay@gnu.org>
+
+ * NEWS: Described recent changes
+
+ * configure.in: fix to how we invoke the gnulib regex module
+
+ * find/find.1:
+ Savannah bug #16269: avoid confusion over what type of quotes to use
+ in an example.
+
+ * find/parser.c: Option -nowarn should not itself produce a warning
+
+ * find/defs.h: Remoevd useless declaration of last_pred
+
+2006-08-05 James Youngman <jay@gnu.org>
+
+ * NEWS: Described more changes in 4.3.1.
+
+ * locate/testsuite/config/unix.exp:
+ Set the environment variable so that updatedb knows where to find it; it's not in BINDIR yet during 'make check'
+
+ * po/be.po, po/bg.po, po/ca.po, po/da.po, po/de.po, po/el.po, po/eo.po, po/es.po, po/et.po, po/fi.po, po/findutils.pot, po/fr.po, po/ga.po, po/gl.po, po/hr.po, po/hu.po, po/id.po, po/it.po, po/ja.po, po/ko.po, po/lg.po, po/ms.po, po/nl.po, po/pl.po, po/pt.po, po/pt_BR.po, po/ro.po, po/ru.po, po/rw.po, po/sk.po, po/sl.po, po/sr.po, po/sv.po, po/tr.po, po/vi.po, po/zh_CN.po, po/zh_TW.po:
+ Make dist changed all the po files again :)
+
+ * po/et.po, po/vi.po: UPdated the Estonian and Vietnamese translations
+
+ * NEWS, configure.in: Prepare for release of findutils-4.2.28
+
+ * po/sv.po, po/tr.po, po/vi.po, po/zh_CN.po, po/zh_TW.po, po/be.po, po/bg.po, po/ca.po, po/da.po, po/de.po, po/el.po, po/eo.po, po/es.po, po/et.po, po/fi.po, po/findutils.pot, po/fr.po, po/ga.po, po/gl.po, po/hr.po, po/hu.po, po/id.po, po/it.po, po/ja.po, po/ko.po, po/lg.po, po/ms.po, po/nl.po, po/pl.po, po/pt.po, po/pt_BR.po, po/ro.po, po/ru.po, po/rw.po, po/sk.po, po/sl.po, po/sr.po:
+ Make dist changed all the po files again :)
+
+ * configure.in: Added Bulgarian translation.
+
+ * po/bg.po: Include Bulgarian translation
+
+ * configure.in: Added Bulgarian translation.
+
+ * po/et.po, po/vi.po: Updated Estonian and Vietnamese translations
+
+ * NEWS: Removed spurious comma.
+
+ * NEWS: Listed the updated translations.
+
+ * find/parser.c, lib/buildcmd.c, lib/buildcmd.h, xargs/xargs.c:
+ Fixed Savannah bug#16738, find does not subtract environment size in find .. -exec {} +
+
+ * NEWS: Updated the list of bugfixes etc.
+
+2006-08-06 James Youngman <jay@gnu.org>
+
+ * locate/locate.c: Fixed a typo in a comment.
+
+ * NEWS, configure.in: Moving on towards 4.3.2...
+
+ Release 4.3.1.
+
+ * find/testsuite/config/unix.exp:
+ Check that we can see the find.o file in the right position relative
+ to $base_dir to ensure that we are indeed testing the program we just built.
+
+ * find/testsuite/config/unix.exp:
+ Be more paranoid about whether we're really checking the right version
+ of find.
+
+ * NEWS, configure.in: Prepare for release of 4.3.1
+
+ * doc/find.texi: Document the -O and -D options
+
+ * find/defs.h, find/find.1, find/util.c:
+ 'find -D help' now explains the available debugging options
+
+ * po/be.po, po/bg.po, po/ca.po, po/da.po, po/de.po, po/el.po, po/eo.po, po/es.po, po/et.po, po/fi.po, po/findutils.pot, po/fr.po, po/ga.po, po/gl.po, po/hr.po, po/hu.po, po/id.po, po/it.po, po/ja.po, po/ko.po, po/lg.po, po/ms.po, po/nl.po, po/pl.po, po/pt.po, po/pt_BR.po, po/ro.po, po/ru.po, po/rw.po, po/sk.po, po/sl.po, po/sr.po, po/sv.po, po/tr.po, po/vi.po, po/zh_CN.po, po/zh_TW.po:
+ Make dist changed all the po files again
+
+2006-08-07 James Youngman <jay@gnu.org>
+
+ * NEWS, locate/locate.c, locate/locatedb.h:
+ Added support for slocate database format
+
+ * xargs/xargs.c:
+ Removed unused code (tivial patch from Miloslav Trmac).
+
+ * xargs/xargs.c: Removed unused code.
+
+ * doc/find.texi:
+ Clarify that the output format for locate -S differs from BSD's.
+
+ * NEWS, find/find.1:
+ Savannah bug #15360: explain global vs. positional options more clearly in the manual page
+
+ * NEWS: Typo in subsection header (* should be **).
+
+ * NEWS, find/find.1:
+ Savannah bug #15360: explain global vs. positional options more clearly in the manual page
+
+ * doc/find.texi: Fixed some clumsy phrasing
+
+ * NEWS, configure.in:
+ Now diverging again from the released tarball, so change once more to -CVS version number suffixes
+
+2006-08-08 James Youngman <jay@gnu.org>
+
+ * locate/locatedb.h:
+ Automatically verify (at compile time) that the frcode datastream
+ cannot get desynchronised.
+
+ * find/ftsfind.c:
+ Fixed Savannah bug #10494 (-maxdepth does not yield the same stat savinf in ftsfind as oldfind)
+
+ * find/ftsfind.c: display fts_level for find -D search
+
+ * find/util.c: Support find -D search
+
+ * locate/locate.c:
+ If the user specified -E but the database is an slocate database, do
+ not produce a list of files they cannot stat. Issue an error message
+ explaining the problem.
+
+ * locate/locate.c:
+ Issue states messages in a way which indicates more clearly what's
+ happening when the numbers are reduced because not every filename
+ matched the pattern.
+
+ * locate/locate.c: Better error checking in drop_privs().
+
+2006-08-10 James Youngman <jay@gnu.org>
+
+ * find/pred.c, import-gnulib.sh, lib/listfile.c:
+ Updated callers of the gnnulib filemode module so that they work with the 2006-07-09 version of gnulib
+
+ * config.rpath: Updated config.rpath from autotools
+
+2006-08-11 James Youngman <jay@gnu.org>
+
+ * locate/frcode.c:
+ Avoid producing an invalid database if the first item begins with a space
+
+2006-08-19 James Youngman <jay@gnu.org>
+
+ * locate/testsuite/config/unix.exp, locate/testsuite/locate.gnu/bigprefix1.exp:
+ Explicit checks for parefixes which are within range of a short, but outside the one-byte range
+
+ * locate/testsuite/locate.gnu/bigprefix1.exp, locate/testsuite/locate.gnu/exceedshort.exp, locate/testsuite/locate.gnu/space1st.exp:
+ New file.
+
+ * locate/testsuite/Makefile.am, locate/testsuite/locate.gnu/exceedshort.exp, locate/testsuite/locate.gnu/space1st.exp:
+ Patch from Tavis Ormandy; check frcode handles initial space end encodes paths with more than 2^16 characters in the common prefix (tiny change)
+
+ * locate/frcode.c: Changes to avoid overflows
+
+2006-08-19 Paul Eggert <eggert@cs.ucla.edu>
+
+ Port to latest gnulib, and simplify the bootstrapping procedure.
+ * intl: Remove this directory and everything in it.
+ * depcomp, install-sh, missing, mkinstalldirs, doc/texinfo.tex:
+ Remove these files from CVS, as they are now gotten from gnulib.
+ * README-CVS: Don't recommend "autoreconf -i", as it doesn't work
+ for us.
+ * import-gnulib.sh (findutils_files): New var. Grab this stuff
+ from gnulib.
+ (findutils_modules): Add fopen-safer; remove stdio-safer. This
+ adjusts to latest gnulib.
+ (modules): Remove obsolete reference to intl_modules.
+ * .cvsignore: Remove stamp-h; add stamp-h1.
+ * doc/.cvsignore: Add regexprops.texi.
+ * find/.cvsignore: Add oldfind.
+ * lib/.cvsignore: Add .deps, regexprops.
+ * m4/.cvsignore: Add Makefile.
+ * po/.cvsignore: Add stamp-po.
+
+2006-08-20 Paul Eggert <eggert@cs.ucla.edu>
+
+ Port recent fixes for symbolic modes involving X from gnulib,
+ and clarify the documentation in this area.
+ * doc/find.texi: Use "file mode bits" when talking about
+ all the file mode bits (including setuid, setgid, and sticky),
+ and "permissions" when talking only about permissions bits
+ (read, write, execute/search). Use "execute/search" to
+ talk about the x bit, since it means both. You do not need
+ permission to the linked-to file to follow a symlink for
+ syscalls like "stat", but you do need search permission for
+ the directories you traverse. Clarify the explanation of
+ -perm. Use "that" instead of "which" when "which" isn't
+ quite correct English.
+ (Mode Bits): Renamed from Permissions. All uses changed.
+ * doc/perm.texi: Sync from coreutils 6.0.
+ * find/defs.h (struct perm_val.val): Now an array of two items,
+ one for non-directories, and one for directories. This is
+ to handle symbolic modes like +X correctly.
+ * find/parser.c (parse_perm): Likewise. Also, adjust to
+ latest gnulib interface for mode_adjust.
+ * find/pred.c (pred_perm): Likewise.
+ * find/testsuite/Makefile.am (EXTRA_DIST_XO): Add find.posix/perm-X.xo.
+ (EXTRA_DIST_EXP): Add find.posix/perm-X.exp.
+ * find/testsuite/find.posix/perm-X.exp: New file.
+ * find/testsuite/find.posix/perm-X.so: New file.
+
+2006-08-20 James Youngman <jay@gnu.org>
+
+ * find/parser.c: Merged the fix for the trailing % in "find -printf".
+
+2006-08-21 James Youngman <jay@gnu.org>
+
+ * find/parser.c, find/testsuite/Makefile.am, find/testsuite/find.gnu/sv-bug-17490.exp:
+ Fixed Savannah bug #17490, which was a coiredump when -regex ZZZ was the final test on the command line
+
+2006-10-15 James Youngman <jay@gnu.org>
+
+ * lib/buildcmd.c: Fixed Savannah bug #17782, in which "find
+ -execdir echo "foo {}" runs 'echo ./foo filename' instead of the
+ correct command 'echo foo ./filename'.
+
+ * po/hu.po, po/sl.po: Updated Hungarian and Slovenian po files
+
+2006-11-08 James Youngman <jay@gnu.org>
+
+ * find/testsuite/Makefile.am:
+ Oops, indicate the right directory for the new test files
+
+ * ChangeLog, depcomp, doc/texinfo.tex, find/ftsfind.c, find/testsuite/Makefile.am, find/testsuite/find.gnu/sv-bug-18222.exp, find/testsuite/find.gnu/sv-bug-18222.xo, install-sh:
+ Savannah bug#18222 - test case
+
+ * ChangeLog, lib/buildcmd.c:
+ Fixed Svannah bug #17782 ('./' prefix added at start of arg while it should be added at the start of the expansion of {})
+
+ * find/ftsfind.c (process_all_startpoints): Set
+ state.starting_path_length for every pathname argument.
+ This fixes Savannah bug #18222.
+
+ * find/pred.c (pred_prune): -prune should have an effect only if we are
+ currently considering a directory (Savannah bug #15531).
+
+2006-11-20 James Youngman <jay@gnu.org>
+
+ * po/et.po, po/bg.po, po/pl.po, po/nl.po, po/tr.po: Updated
+ translations for Bulgarian, Estonian, Dutch, Polish and Turkish.
+
+2006-11-25 James Youngman <jay@gnu.org>
+
+ Release 4.3.2.
+
+ * find/testsuite/Makefile.am: Added test case for Savannah bug #17782
+
+ * doc/textinfo.tex: Removed; we now use the version supplied
+ by automake.
+
+ * m4/mkinstalldirs.m4: Added this file. It's an excerpt from an
+ old version of gnulib's m4/nls.po file. The current version of
+ gnulib does not expand MKINSTALLDIRS, but gettext-0.14.6's version
+ of po/Makefile.in.in expects it to be expanded. This m4 file
+ fills the gap.
+
+2006-12-01 James Youngman <jay@gnu.org>
+
+ * NEWS, configure.in: Begin work on findutils 4.2.30
+
+ * find/find.c:
+ Fix compilation error for oldfind if --enable-debug was passed to configure
+
+ * NEWS, configure.in: Prepare for work on findutils-4.3.3
+
+2006-12-28 James Youngman <jay@gnu.org>
+
+ * NEWS: Document addition of %S.
+
+ * find/defs.h, find/find.1, find/parser.c, find/pred.c:
+ Implemented %S (sparseness) printf format, and general refactoring and cleanup of printf predicate
+
+2006-12-29 James Youngman <jay@gnu.org>
+
+ * find/testsuite/config/unix.exp:
+ Verify that find_start is invoked with wither a p (pass) or an f
+ (fail) argument.
+
+ * lib/listfile.c, lib/listfile.h:
+ define find_blocksize() and provide a declaration for get_link_name()
+
+ * find/testsuite/config/unix.exp: Updated copyright years.
+
+ * find/testsuite/find.gnu/execdir-one.exp, find/testsuite/find.gnu/execdir-root-only.exp, find/testsuite/find.gnu/sv-bug-12230.exp, find/testsuite/find.gnu/sv-bug-17782.exp, find/testsuite/config/unix.exp:
+ Avoid tests using -execdir if $PATH contains a relative directory
+
+ * find/parser.c:
+ Also flag $PATH values containing relative directories as being dangerous.
+
+ * find/parser.c, find/defs.h, find/util.c:
+ Instead of selecting the old or new exec handling code with the NEW_EXEC macro, just use the new code all the time
+
+ * locate/testsuite/config/unix.exp:
+ Fixed Savannah bug #13252, test suite failure caused by the fact that 'file normalize' is not available in Tcl 8.3
+
+ * NEWS, find/pred.c:
+ Fixed Savannah bug #18433, compilation failure with configure --enable-debug
+
+2007-01-07 James Youngman <jay@gnu.org>
+
+ * find/parser.c (parse_perm), find/testsuite/find.gnu/perm000.exp,
+ find/testsuite/find.gnu/perm000.xo: -perm /000 is now quivalent
+ to -perm -000, as dscussed in Savannah bug #14748. The warning
+ message we issue when the user does this now explains that the
+ definition changed as we promised it would in 2005.
+
+ * xargs/xargs.c (read_line): Correctly handle quoted empty
+ arguments occurring first or last on a line (by adding an empty
+ argument to the output). Fixes Savannah bug #18713.
+
+ * xargs/testsuite/xargs.sysv/sv-bug-18713.exp,
+ xargs/testsuite/xargs.sysv/sv-bug-18713.xo,
+ xargs/testsuite/input/empty.xi: Test case for Savannah bug #18713.
+
+
+2007-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * doc/find.texi: Fix some typos. (tiny change)
+
+2007-01-13 James Youngman <jay@gnu.org>
+
+ * lib/regexprops.c (describe_regex_syntax): fixed typo
+
+ * xargs/xargs.c (read_line): Fixed Savannah bug# 18714; VT and FF
+ are not separators, according to POSIX (in the POSIX locale).
+
+ * xargs/testsuite/Makefile.am,
+ xargs/testsuite/input/formfeeds.xi,
+ xargs/testsuite/input/verticaltabs.xi,
+ xargs/testsuite/xargs.posix/sv-bug-18714.exp,
+ xargs/testsuite/xargs.posix/sv-bug-18714.xo,
+ xargs/testsuite/xargs.posix/sv-bug-18714b.exp,
+ xargs/testsuite/xargs.posix/sv-bug-18714b.xo: Tests for Savannah
+ bug #18714.
+
+ * xargs/xargs.c (usage): Removed suprious "[" in --help output
+ (fixes Savannah bug #18384).
+
+ * locate/locate.c: Implement the option --max-database-age.
+ (main) Accept the option.
+ (set_max_db_age): Parse the argument.
+
+ * locate/locate.c (dolocate): If the database is more than N days
+ old, indicate its actual age in the warning message we produce.
+
+ * locate/locate.1, docs/find.texi: Document --max-database-age
+
+ * THANKS: Thank Dean Gaudet for the idea of -sparse.
+
+ * po/findutils.pot: Updated from Translation Project
+
+ * po/ga.po, po/pl.po, po/nl.po, po/tr.po, po/hu.po: Updated from
+ the Translation Project
+
+2007-01-15 James Youngman <jay@gnu.org>
+
+ * find/defs.h (time_val): define struct; use timespec to hold time
+ in the 'reftime' member.
+ (args): use struct timespec instead of time_t for predicates
+ -newer, -anewer, -cnewer. * find/parser.c (includes): include
+ stat-time.h.
+ (parse_anewer, parse_cnewer, parse_newer): use struct timespec to
+ hold timestamps. * find/pred.c (compare_ts): new function for
+ comparing timestamps in struct timespec.
+ (pred_anewer, pred_cnewer, pred_newer): use compare_ts() to
+ compare timestamps (hence takinng acoung of sub-second
+ granularity).
+ * find/ftsfind.c: Various improvements to comments.
+ (is_fts_enabled): Newline before function name to comply with GNU
+ coding standard.
+
+2007-01-16 James Youngman <jay@gnu.org>
+
+ (ctime_format): format the time manually (rather than using ctime)
+ in order to include the sub-second part of the time.
+ (weekdays, months): new static variables used by ctime_format.
+ (format_date): append a the sub-second part of the timestamp to
+ the seconds part of date/time output.
+
+2007-01-22 James Youngman <jay@gnu.org>
+
+ * .cvsignore (install-sh): Ignore, since the install-sh file is no
+ longer held in the findutils CVS repository.
+
+ * find/testsuite/config/unix.exp (find_start): allow a test to be
+ skipped for either the old or the new find executable.
+ * find/testsuite/find.gnu/execdir-pwd.exp,
+ find/testsuite/Makefile.am:
+ New test, covering Savannah bug #18466. This test currently fails
+ for the ftsfind binary and passes for the oldfind binary. Due to
+ a limitation in the way that we perform the test, we can't tell
+ the test suite to expect a failure in the new binary but not the
+ old. Therefore we skip the test for the old binary.
+
+ * lib/regeprops.c (describe_regex_syntax): fixed a typo in the text
+ * doc/find.texi (Multiple Files): fixed a typo
+
+2007-02-24 James Youngman <jay@gnu.org>
+
+ * find/parser.c (pred_sanity_check): define this function even for
+ _NDEBUG, but do nothing in that case.
+ (estimate_timestamp_success_rate): correct (invert) the sense of
+ the subtraction used to find the file's age.
+
+ * import-gnulib.sh (findutils_modules): Import Gnulib modules
+ xstrtod and timespec.
+
+ * find/parser.c (get_comp_type): Refactored out of get_num.
+ (get_num): call get_comp_type to find the comparison type.
+ (get_relative_timestamp): new function replacing get_num_days.
+ (get_num_days): Remove.
+ (do_parse_xmin): Support fractional arguments and
+ nanosecond timestamps.
+ (parse_used): ditto
+ (parse_time): ditto
+
+ * xargs/xargs.c (read_line): Give a warning message if a NUL is
+ found in the input (this function is called only when -0 is not in
+ effect).
+
+ * xargs/xargs.c (nullwarning_given): New variable indicating if
+ the NULL character warning had already been issued.
+
+ * doc/find.texi (Multiple Files): Describe how trailing blanks are
+ handled when -L is in effect.
+
+ * xargs/xargs.c (read_line): Use an enum rather than
+ preprocessor macro values for the lexer state.
+
+ * lib/savedirinfo.c (free_dirinfo): Fixed memory leak (trivial
+ patch from Supriya Kannery)
+
+2007-02-25 James Youngman <jay@gnu.org>
+
+ * find/find.c (process_dir): Removed duplicated (shadow)
+ declaration of did_stat. Assert that we did not use subdirs_left
+ if subdirs_unreliable is true.
+
+ * find/parser.c (parse_size): Removed unused variable rate.
+ (parse_time): Removed unused variable num_days_approx.
+ (get_num): Removed unused variables ok and suffixes.
+
+ * find/pred.c (do_fprintf): Indicate that the function needs a
+ return value (referring to Savannah bug #19146).
+
+ * find/tree.c (predlist_dump): Commented out unused function
+ (predlist_merge_nosort): Commented out unused function
+ (getrate): Returns type is float, so return 1.0f not 1.0.
+ (calculate_derived_rates): Removed unused variable rate. Use a
+ switch statement rater than ifs.
+
+ * find/util.c (usage): Removed unused variable i.
+
+ * lib/buildcmd.c (bc_do_insert): Removed unused variable
+ need_prefix.
+ (bc_init_controlinfo): annotate a line (with #warning) which is
+ probably a bug.
+
+ * locate/locate.c: #include <grp.h> for the benefit of the
+ setgroups() call in drop_privs.
+ (slocate_db_pathname): Commented out unused variable.
+ (set_max_db_age): error command has no format directive, so
+ remove the unused extra argument.
+ (looking_at_slocate_db): Removed unused variables magic and
+ lenwanted. Fix bug where result is indeterminate (due to falling
+ off the end of the function) if the first character is a nondigit.
+ (search_one_database): Eliminate (spurious) compiler warning
+ rlating to possible use before initialisation of slocate_seclevel.
+
+ * xargs/xargs.c (get_char_oct_or_hex_escape): Eliminate spurious
+ compiler warning on variable p.
+ (main): Removed unused varible env_too_big
+
+
+2007-02-28 James Youngman <jay@gnu.org>
+
+ * import-gnulib.config: New file. Specifies which version of
+ Gnulib we need to check out and build from.
+
+ * import-gnulib.sh: Use import-gnulib.config.
+
+ * README-CVS: Describe the new method of building from CVS.
+
+ * lib/gnulib-version.h, lib/gnulib-version.sh: New files; code for
+ reporting which version of Gnulib we built findutils from.
+
+ * lib/Makefile.am: Build gnulib-version.c out of
+ ./gnulib-version.config by using lib/gnulib-version.sh.
+
+ * Makefile.am: Ship import-gnulib.config and import-gnulib.sh.
+
+ * .cvsignore: Ignore gnulib-cvs
+
+ * lib/.cvsignore: Ignore gnulib-version.c
+
+ * find/parser.c, locate/code.c, locate/locate.c, xargs/xargs.c:
+ Report which version of Gnulib we were built from.
+
+2007-03-01 James Youngman <jay@gnu.org>
+
+ * doc/find.texi (Multiple Files): Document the construct
+ -exec sh -c 'cmd "$@" final-args' {} + - fixing Savannah bug
+ #18554.
+
+2007-03-03 James Youngman <jay@gnu.org>
+
+ * import-gnulib.sh: Pass --with-tests to gnulib-tool so that relevant
+ gnulib unit tests are built and are run for "make check".
+
+ * configure.in (AC_CONFIG_FILES): Add tests/Makefile (the makefile
+ for the gnulib unit tests).
+
+ * Makefile.am: Add 'tests' to SUBDIRS.
+
+ * .cvsignore: Add 'tests'.
+
+ * import-gnulib.config (modules): Also use Gnulib modules
+ mbscasestr and mbsstr in order to perform correct string searching
+ in multibyte strings, in order to fix Savannah bug #14535.
+
+ * locate/testsuite/locate.gnu/sv-bug-14535.exp: new test case for
+ Savannah bug #14535.
+
+ * locale/locate.c (visit_substring_match_nocasefold): Use mbsstr
+ rather than strstr, in order to correctly support multibyte
+ strings.
+ (visit_substring_match_casefold): Use mbscasestr rather than
+ strstr in order to correctly support case-folding in a multibyte
+ environment (e.g. with UTF-8 characters outside the normal ASCII
+ range). This fixes Savannah bug #14535.
+ (struct casefolder): No longer needed, removed
+ (visit_casefold): No longer needed, removed.
+ (lc_strcpy): No longer needed, removed.
+ (search_one_database): Removed redundant variable need_fold and
+ the code which used to set it. It had controlled the adding of
+ the visitor function visit_casefold, but that function itself is
+ no longer required. Also there is now no need to pass in a
+ lower-case argument to visit_substring_match_casefold, so don't
+ pass that in the context argument.
+
+ * locate/locate.c (usage): Fixed typo.
+
+2007-03-07 James Youngman <jay@gnu.org>
+
+ * import-gnulib.config: (gnulib_version): Use gnulib version
+ 2007-03-05
+ (modules): Added getdate
+
+ * find/Makefile.am (LDADD): Added @LIB_CLOCK_GETTIME@ for
+ clock_gettime(), if it is available.
+
+ * find/defs.h: (enum xval): New enumeration, representing the
+ value of X used in the -newerXY test. It is stored in the reftime
+ member of 'union args'.
+ (struct predicate): reftime is also used by -newerXY.
+ (enum arg_type): Added ARG_SPECIAL_PARSE for -newerXY, because the
+ parsing function needs to look at the name of the test.
+ (struct options): start_time is now a struct timespec, not a
+ time_t.
+
+ * find/parser.c: (parse_newerXY): New parsing function for
+ -newerXY, a feature copied from FreeBSD (also present other BSD
+ implementations too)
+ (get_stat_Ytime): New function; returns st_atime, st_mtime or
+ st_ctime from struct stat, as a timespec, as required according to
+ the value of Y in -newerXY.
+ (found_parser): Factored the tail out of find_parser.
+ (find_parser): Moved tail into found_parser. Add special handling
+ for -newerXY.
+ (do_parse_xmin): New argument xv, indicating the value to which
+ predicate->reftime.xval should be set.
+ (parse_amin): Pass XVAL_ATIME to do_parse_xmin.
+ (parse_cmin): Pass XVAL_CTIME to do_parse_xmin.
+ (parse_mmin): Pass XVAL_MTIME to do_parse_xmin.
+ (parse_newer): Set args.reftime.xval to XVAL_MTIME.
+
+ * find/pred.c (pred_table): added pred_XY.
+ (pred_fls): options.start_time is now a struct timespec, so just
+ pass the tv_sec member to list_file.
+ (pred_ls): ditto
+ (pred_newerXY): New function, implementing -newerXY.
+
+ * find/tree.c (costlookup): pred_newerXY needs stat information.
+ (build_expression_tree): For predicates of type ARG_SPECIAL_PARSE,
+ pass them in the name of the predicate (that is, don't advance
+ argc).
+
+ * find/util.c (now): New function for setting options.start_time.
+ Use nanoseconds where it is available.
+ (set_option_defaults): Use now() rather than time().
+
+2007-03-08 James Youngman <jay@gnu.org>
+
+ * find/find.1 (TESTS): Document -newerXY, indicate that reference
+ files are only examined once.
+ (HISTORY): Indicate when various features were added
+ (BUGS): Indicate that -ok ignores LC_COLLATE.
+
+2007-03-13 James Youngman <jay@gnu.org>
+
+ * find/parser.c (parse_quit): Estimated success rate of -quit is
+ 100%.
+
+2007-03-24 James Youngman <jay@gnu.org>
+
+ * import-gnulib.sh: Added option -d, allowing the user to use a
+ local version of gnulib, perhaps because they have local changes.
+
+2007-03-25 James Youngman <jay@gnu.org>
+
+ * xargs/xargs.c (main): For "xargs --show-limits" where stdin is a
+ terminal, warn the user that the program specified (or /bin/echo)
+ will be run at least once, if that is what will happen.
+
+2007-03-28 James Youngman <jay@gnu.org>
+
+ * find/defs.h (set_stat_placeholders): utility function for
+ initialising the struct stat fields that NetBSD doesn't always set
+ (like st_birthtime where the file is on a filesystem not
+ supporting birthtime).
+ * find/util.c: set_stat_placeholders(): new function
+ (get_statinfo): Call set_stat_placeholders().
+ (optionh_stat, optionl_stat, optionp_stat): ditto
+ * find/find.c (main, wd_sanity_check, safely_chdir_lstat,
+ process_dir): use set_stat_placeholders().
+ * find/parser.c (parse_anewer, parse_cnewer, parse_newer,
+ parse_newerXY): ditto.
+ (get_stat_Ytime): Support birth time ('B').
+ (parse_newerXY): Support st_birthtime.
+ * find/fstype.c (set_fstype_devno): Use set_stat_placeholders().
+ * find/pred.c (pred_xtype): Use set_stat_placeholders().
+ (pred_newerXY): Support birth time.
+ (pred_fprintf, format_date): ditto ("%Bx").
+
+2007-03-31 James Youngman <jay@gnu.org>
+
+ * find/tree.c (build_expression_tree): Issue more specific error
+ messages; distinguish the case where the predicate is invalid from
+ the cases where a required argument is missing, and a supplied
+ argument is invalid.
+
+ * import-gnulib.config (gnulib_version): Update to 2007-03-30
+ version of gnulib.
+
+2007-04-08 James Youngman <jay@gnu.org>
+
+ * configure.in: Set @AUXDIR@ (to the location of the build-aux
+ directory).
+ * build-aux/check-testfiles.sh: New script, which checks that all
+ the DejaGnu test files have been included in the distribution and
+ (more helpfully) lists any that are missing.
+ * Makefile.am (findutils-check-testfiles): Use
+ build-aux/check-testfiles.sh.
+ * locate/testsuite/Makefile.am (EXTRA_DIST_EXP): distribute
+ locate/testsuite/locate.gnu/sv-bug-14535.exp.
+
+ * config.rpath, depcomp, missing: Moved into build-aux/.
+ * configure.in(AC_CONFIG_AUX_DIR): Find aux files in $SRCDIR/build-aux,
+ not in $SRCDIR.
+
+2007-04-09 James Youngman <jay@gnu.org>
+
+ * doc/find.texi: Change fully-specified @node directives to
+ single-argument @node directives in order to accommodate the
+ inclusion of getdate.texi.
+
+ * doc/find.texi: Document -newerXY.
+
+ * doc/find.texi (Security Considerations): updated to describe
+ differences in the fts-based implementation.
+
+ * find/find.1: Indicate that testing the birth time where this is
+ not supported produces a negative result for files where the birth
+ time is not known (or a fatal error if the file of interest is a
+ reference file).
+
+2007-04-14 James Youngman <jay@gnu.org>
+
+ * doc/.cvsignore: Ignore getdate.texi
+
+ * find/defs.h: #include "buildcmd.h" near the top of the file, not
+ in the middle.
+
+ * all: Pass O_LARGEFILE when opening directories.
+
+ * all: Changes to allow us to use the FTS_CWDFD mode of fts().
+ These are quite extensive changes, and are detailed below.
+
+ * find/defs.h (struct exec_val): New member dirfd, the directory
+ in which the exec should take place.
+ (is_fts_enabled): Tell the caller which flags are passed to
+ fts_open().
+ (get_start_dirfd): New function. Returns value of start_desc.
+ (get_current_dirfd): New function. Returns the fd of the
+ directory fts is currently traversing. If this is the current
+ directory, AT_FDCWD is returned.
+ (complete_pending_execdirs): takes a new argument, indicating
+ where the exec is to take place. Ugh.
+ (get_info): the file name is taken from state.rel_pathname, so
+ we don't need it as a function argument.
+ (enum DebugOption): Added DebugExec ("-D exec").
+ (struct state): Added cwd_dir_fd, the directory we are examining
+ with fts(). If fts() is not in use, this is AT_FDCWD. Also added
+ execdirs_outstanding, which is a boolean which tells us if there
+ are any not-yet-execed -execdir or -okdir actions (with +). This
+ is not really used yet.
+ * find/ftsfind.c (set_close_on_exec): New function.
+ (get_current_dirfd): Return an fd open on the directory that fts()
+ is currently examining.
+ (left_dir): Signal that our previous ides of which dirctory fts is
+ searching is now out of date.
+ (inside_dir): Indicate which directory fts is now searching.
+ (complete_execdirs_cb): Callback for run_in_dir() to complete
+ pending execdirs in this directory.
+ (show_outstanding_execdirs): Supports "-D exec"
+ consider_visiting(): Do not allow building-up of pending execdirs,
+ as a workaround to Savannah bug #18466.
+ (ftsoptions): Make this a static module variable.
+ * find/parser.c (insert_exec_ok): New parameter describing which
+ directory the exec should occur in.
+ (parse_version): for FTS, add a list of options being used.
+ * find/pred.c (pred_and, pred_comma): No need to pass the relative
+ path name to get_info(), it can pull it from state.rel_pathname.
+ (pred_delete): use unlinkat().
+ (pred_empty): use openat().
+ (new_impl_pred_exec): Accept an fd parameter describing where the
+ exec is to take place.
+ (pred_executable, pred_writable, pred_readable): Use run_in_dir()
+ to ensure that access() is called in a working directory which is
+ suitable for the pathname we pass in.
+ (prep_child_for_exec): In the child process, change to the
+ appropriate directory becore the exec().
+ * find/util.c (debugassoc): Support "-D exec".
+ (get_info): No longer need to pass the relative path to
+ get_statinfo().
+ (do_complete_pending_execdirs): Refactored body of what used to be
+ complete_pending_execdirs().
+ (complete_pending_execdirs): Pull body out into
+ do_complete_pending_execdirs() and call that only if there is work
+ to do.
+ (fallback_stat, optionh_stat, optionp_stat, optionl_stat): Use fstatat().
+ (get_start_dirfd): New access function for starting_desc.
+ * find/testsuite/find.gnu/execdir-hier.exp: New test
+ * find/testsuite/find.gnu/execdir-hier.xo: Expected outut for new test
+ * lib/dircallback.c, lib/dircallback.h: New function,
+ run_in_dir(), which runs a callback function in a specified
+ directory.
+ * lib/listfile.c: Use run_in_dir() to call readlink() in the right
+ directory.
+ (get_link_name_at): Call get_link_name_cb via run_in_dir.
+ (get_link_name_cb): New callback function, wrappting
+ get_link_name().
+
+ * find/testsuite/find.gnu/execdir-pwd.exp: Since we have disabled
+ thebuilding-up of command lines for -execdir, Savannah bug #18466
+ has been neutralised (but not fixed - we just don't allow the
+ problem circumstance to occur).
+
+2007-04-15 James Youngman <jay@gnu.org>
+
+ Release 4.3.3.
+
+ * find/find.1: "-printf %b": blocks are 512 bytes. Fixes
+ Savannah bug #19596.
+
+ * doc/Makefile.am (regexprops.texi): Do not use $(RM) because many
+ versions od make do not set it, and so it expands to nothing.
+ This avoids suprious emission of the regexprops.texi file to stdout.
+
+ * find/find.c (main, safely_chdir_lstat, safely_chdir_nofollow):
+ Only use O_LARGEFILE if it is #defined (NetBSD-3.1 does not define
+ it).
+ * find/ftsfind.c (main): ditto
+ * find/pred.c (pred_empty, prep_child_for_exec): ditto
+
+
+ * import-gnulib.config: Update to gnuliv 2007-04-14.
+
+ * lib/Makefile.am, import-gnulib.sh: Create lib/gnulib-version.c
+ in import-gnulib.sh, not in lib/Makefile.
+
+ * build-aux/Makefile.am: New file; distribute check-tstfiles.sh.
+
+ * locate/Makefile.am: mkinstalldirs is now in build-aux.
+
+ * doc/Makefile.am: We also need getdate.texi.
+
+2007-04-17 James Youngman <jay@gnu.org>
+
+ * import-gnulib.config (gnulib_version): Use the 2007-04-17
+ version of gnulib to fix a compilation error on Cygwin. This
+ fixes Savannah bug #19619.
+
+ * find/testsuite/find.posix/sv-bug-19605.exp: New test, for
+ Savannah bug #19605.
+ * find/testsuite/find.posix/sv-bug-19617.exp: New test, for
+ Savannah bug #19617.
+ * find/ftsfind.c (consider_visiting): if fts_read() returns
+ enf->fts_info==FTS_NS, check for and diagnose a symbolic link
+ loop. This fixes Savannah bugs #19605 and #19617.
+
+ * find/find.c (process_path): collect the stat information for
+ directories even if we already have the mode information, because
+ we need to use the members st_nlink and st_rdev in for the leaf
+ optimisation and loop detection, respectively. This fixes
+ Savannah bug #19616.
+
+ * find/ftsfind.c (is_fts_enabled): Return a copy of ftsoptions,
+ not a copy of the (uninitialised) input argument. This fixes
+ Savannah bug #19615.
+
+ * find/ftsfind.c (consider_visiting): If fts_read() returned
+ FTS_NS, then remember that the stat information is not valid, and
+ therefore don't set state.have_type or state.have_stat. This
+ fixes Savannah bug #19613.
+
+ * find/testsuite/find.posix/sv-bug-91613.exp,
+ * find/testsuite/find.posix/sv-bug-91613.xo: New test for Savannah
+ bug 19613 (assertion failure on symbolic link loop).
+
+ * find/testsuite/config/unix.exp: Correctly diagnose a test case
+ which fails because find was expected to fail and instead
+ succeeded.
+ * find/testsuite/find.gnu/exec-many-rtn-failure.exp: The child
+ process in this test should return non-zero, not zero. Therefore
+ run "false" instead of "true".
+
+2007-04-19 James Youngman <jay@gnu.org>
+
+ * locate/updatedb.1 (--help): Option name should be bold, not
+ italic.
+
+ * find/testsuite/find.gnu/execdir-hier.exp: Avoid running
+ -execdir based tests if "." is on $PATH. Fixes Savannah bug
+ #19634.
+ * find/testsuite/find.gnu/execdir-in-unreadable.exp: ditto
+
+ * find/testsuite/config/unix.exp (touch): New procedure touch,
+ replacing "exec touch" for greater efficiency.
+ * find/testsuite/find.posix/depth1.exp: Change "exec touch" to
+ "touch".
+ * find/testsuite/find.posix/files-not-expressions1.exp: ditto
+ * find/testsuite/find.posix/files-not-expressions2.exp: ditto
+ * find/testsuite/find.posix/files-not-expressions3.exp: ditto
+ * find/testsuite/find.posix/links.exp: ditto
+ * find/testsuite/find.posix/perm-vanilla.exp: ditto
+ * find/testsuite/find.posix/sv-bug-15235.exp: ditto
+ * /find/testsuite/find.posix/sv-bug-19613.exp: ditto
+
+ * find/testsuite/find.gnu/access.exp: Fix savannah bug #18414 by
+ skipping the test if the user can read any file (e.g. is root or
+ is an Admin user under Cygwin).
+
+2007-04-19 Peter Breitenlohner <peb@mppmu.mpg.de> (tiny change)
+
+ * locate/bigram.c (main): Set the initial pathname to the empty
+ string, to avoid decompression problems if the initial pathname
+ begins with a space. This fixes Savannah bug #19484.
+ * locate/code.c (main): ditto
+
+2007-04-20 Maxim V. Dziumanenko <dziumanenko@gmail.com>
+
+ * po/uk.po: New Ukrainian translation.
+ * configure.in: Added "uk" for Ukranian.
+
+2007-04-21 James Youngman <jay@gnu.org>
+
+ * find/testuite/Makefile.am (EXTRA_DIST_EXP): added
+ find/testsuite/find.posix/sv-bug-19617.exp
+
+2007-04-21 James Youngman <jay@gnu.org>
+
+ Release 4.3.4.
+
+ * find/locate/locatedb.5: Clarifications to the description of the
+ LOCATE02 format. Organised the material under a number of
+ headings. Documented the slocate database format.
+
+2007-04-22 James Youngman <jay@gnu.org>
+
+ * doc/Makefile.am: When cross-compiling, 'make clean' should not
+ delete doc/regexprops.texi, becaue we can't regenerate it. Fixes
+ Savannah bug #19658.
+
+ * locate/Makefile.am (BUILT_SOURCES): Automatically generate
+ dblocation.texi, which records the default database location.
+ * doc/find.texi: Collect the default database location from
+ ../locate/dblocation.texi, and use LOCATE_DB in various places.
+ Document the fact that updatedb can generate slocate-compatible
+ databases. Document the --dbformat option of updatedb.
+ * locate/frcode.c (main): Implemented the -S option which allows the
+ generation of an slocate secure database.
+ * locate/updatedb.sh: New option --dbformat which selects which
+ database format to use.
+ * locate/updatedb.1 (--dbformat): Document the new option.
+
+
+ * find/testsuite/find.gnu/access.exp: fixed a typo which prevented
+ the test correctly being skipped when run as root. This re-fixes
+ Savannah bug# 18414, I hope.
+
+2007-04-22 Eric Blake <ebb9@byu.net>
+
+ * xargs/xargs.c (main): Don't assume LINE_MAX exists (i.e. is
+ #defined).
+
+ * locate/updatedb.sh (PRUNEPATHS): Exclude /proc by default.
+
+2007-04-23 James Youngman <jay@gnu.org>
+
+ * find/defs.h (struct predicate_performance_info): New data
+ structure for holding perofmance statistics.
+ (struct predicate: include predicate_performance_info
+ (apply_predicate): change from macro to function
+ (pred_is): new macro, for predicate identity testing
+ (enum DebugOption): Added DebugSuccessRates
+ * find/find.1: Document option "-D rates" which turns on
+ DebugSuccessRates.
+ * doc/find.texi: ditto
+ * find.c (main): Call show_success_rates() before exiting.
+ (apply_predicate): remove the macro defintion, declare equivalent
+ function in defs.h.
+ * find/ftsfind.c (main): Call show_success_rates() before
+ exiting. Use apply_predicate().
+ (show_outstanding_execdirs): use pred_is().
+
+
+
+2007-04-24 James Youngman <jay@gnu.org>
+
+ * lib/buildcmd.c: Added some comments outlining how we might
+ change the implementation to support figuring out the real ARG_MAX
+ limit.
+
+2007-04-25 James Youngman <jay@gnu.org>
+
+ * find/tree.c (predlist_dump, predlist_merge_nosort): These
+ functions were unused and commented out. Removed.
+ (mark_stat) No longer used. Removed.
+ (mark_type) No longer used. Removed.
+
+ * find/parser.c (new_insert_exec_ok): When checking for {} in the
+ arguments to -exec..., use mbsstr() rather than strstr() in order
+ to cope bettwe with multibyte locales.
+
+ * lib/buildcmd.c: Don't define mbsstr() locally. Instead, call
+ gnulib's mbsstr().
+
+2007-04-28 James Youngman <jay@gnu.org>
+
+ * find/testsuite/find.gnu/deletedir.exp,
+ find/testsuite/find.gnu/deletedir.xo: New test.
+ * find/testsuite/find.gnu/deletefile.exp,
+ find/testsuite/find.gnu/deletefile.xo: New test.
+ * find/testsuite/Makefile.am: Distribute the new tests
+ deletefile.exp and deletedir,exp, with their expected-output (.xo)
+ files too.
+ * find/testsuite/config/unix.exp (find_start): Add a new "setup"
+ parameter called just before each time find is invoked. This
+ allows last-minute tasks to be performed. This feature is
+ essential for find commands that modify the filesystem, since
+ otherwise we cannot use our strategy of invoking both binaries at
+ each optimisation level.
+
+ * find/util.c (optionh_stat, optionp_stat, optionl_stat): Assert
+ that state.cwd_dir_fd is valid.
+
+ * find/parser.c (parse_delete): Set need_stat to false, since we
+ don't need the stat information in pred_delete.
+ * find/pred.c (pred_delete): If unlinkat() with a zero flags
+ parameter fails with errno==EISDIR, just try again with
+ flags=AT_REMOVEDIR. That way we normally avoid the cost of a
+ stat. If we happen to have the stat information to hand anyway,
+ we make sure we get it right the first time.
+
+ * lib/buildcmd.c (bc_init_controlinfo): Eliminate confusing extra
+ variable arg_max. Add return value
+ BC_INIT_CANNOT_ACCOMODATE_HEADROOM for the case where the
+ environment itself is not too large, but the required headroom
+ cannot also be accomodated. The caller now passes in the amount
+ of headroom required.
+ (bc_use_sensible_arg_max): Use the environment size consistently;
+ this is accounted for already in posix_arg_size_max, so there is
+ no need to re-measure the size of the environment.
+ * lib/buildcmd.h: Define BC_INIT_CANNOT_ACCOMODATE_HEADROOM and
+ add the headroom parameter to the prototype of bc_init_controlinfo().
+ * xargs/xargs.c (main): Define XARGS_POSIX_HEADROOM as 2048 and
+ use that symbolic value. Pass XARGS_POSIX_HEADROOM to
+ bc_init_controlinfo(). Handle the case where
+ BC_INIT_CANNOT_ACCOMODATE_HEADROOM is returned by
+ bc_init_controlinfo().
+ * find/parser.c (new_insert_exec_ok): Pass the required headroom to
+ bc_init_controlinfo() and handle the error return
+ BC_INIT_CANNOT_ACCOMODATE_HEADROOM.
+
+ * xargs/xargs.1: Correct the description of the default value and
+ maximum value for the -s option of xargs.
+
+ * xargs/xargs.c (main): Modify the assertions not to assume that
+ bc_ctl.arg_max is 2KiB less than ARG_MAX, since sysconfig() may
+ have returned a value for _SC_ARG_MAX which is greater. For
+ example, AIX 5.3 can do this. This should fix Savannah bug
+ #19391.
+
+2007-04-29 Michael Haubenwallner <michael.haubenwallner@salomon.at> (tiny change)
+
+ * find/defs.h (pred_open) Rename to pred_openparen to avoid
+ problems with the macrtos which build the parser tabnles on
+ platforms where 'open' is in fact a macro which expands to
+ open64. The problem was that token pasting put pred_open64 into
+ the parser table, but the function was still defined as
+ parse_open. This fixes Savannah bug #19371.
+ (pred_close): ditto
+ * find/parser.c (parse_open, parse_close): ditto. Also change
+ repferences to pred_open and pred_close similarly.
+ * find/parser.c (parse_openparen, parse_closeparen): ditto
+
+2007-04-29 James Youngman <jay@gnu.org>
+
+ * find/defs.h: Declare fatal_file_error(), a function for
+ reporting immediately-fatal file errors, which appropriately
+ quotes the file name. The function does not return. Also define
+ ATTRIBUTE_NORETURN. Record the currently-required quoting style
+ in struct options.
+
+ * find/find.c, find/ftsfind.c, find/parser.c, find/pred.c,
+ find/util.c: Call fatal_file_error() for fatal file errors. Use
+ quotearg_n_style() to quote filenames which are used in error
+ message that aren't fatal. Use options.err_quoting_style as the
+ quoting style. This fixes Savannah bug #18203.
+ * locate/locate.c: ditto
+ * xargs/xargs.c: ditto
+
+ * lib/listfile.c: To use alloca, just #include <alloca.h>. Gnulib
+ handles the rest. Also these days, <stdlib.h> and <string.h> can
+ just be included unconditionally.
+ * lib/qmark.c: Fixed comment on first line describing the module.
+
+2007-04-30 James Youngman <jay@gnu.org>
+
+ * find/defs.h: Change all predicate functions to take a const
+ char* argument as the pathname, not a char*. Modify the parser
+ table definition accordingly.
+ * find/parser.c: Ditto
+ * find/pred.c: Ditto
+ * find/pred.c (do_fprintf): copy the pathname string for the %H
+ and %h cases, since we can no longer modify the string in place.
+ * lib/listfile.c (print_name, list_file,
+ print_name_without_quoting, print_name_with_quoting): Use const
+ char * param for pathname.
+ * lib/listfile.h (list_file): Use const char * param for
+ pathname.
+
+2007-05-01 James Youngman <jay@gnu.org>
+
+ * find/find.c (wd_sanity_check): corrected the type of %ld fprintf
+ arguments in error messages.
+ * find/fstype.c: include "error.h" for the declaratio of error().
+ * find/ftsfind.c: include "error.h" for the declaratio of
+ error(). Include dircallback.h for the correct declararion of
+ run_in_dir().
+ * find/parser.c: include getdate.h (for declaration of getdate)
+ and error.h (for the declaration of error).
+ (find_parser): Removed unused variable p.
+ * find/pred.c (pred_timewindow): Removed unused variable delta.
+ (do_fprintf): Removed unused variable cc.
+ * find/tree.c: Include error.h (for the declaration of error()).
+ (build_expression_tree): removed sourious extra arguments in call
+ to error().
+ * find/util.c: include error.h.
+ * lib/buildcmd.h (get_line_max): Comment out unused function.
+ * lib/listfile.c: Include dircallback.h.
+ * locate/code.c: Include errno.h, erorr.h, progname.h and
+ xlloc.h.
+ (inerr): New function for reporting read errors.
+ (outerr): New function for reporting output errors.
+ (main): Call inerror when fgets fails. Call outerr when fwrite
+ or putc or putw fails.
+ * locate/frcode.c (put_short): Return boolean value indicating
+ success.
+ (outerr): New function for reporting write errors.
+ (main): Call outerr if call to putc() or puts() or put_short()
+ fails.
+ * locate/locate.c (search_one_database): diagnose corruption if a
+ traditional-style database is too short to include a complete
+ bigram table.
+
+2007-05-05 James Youngman <jay@gnu.org>
+
+ Release 4.3.5.
+
+ * find/parser.c (parse_samefile): Hold a file descriptor open on
+ the reference file in order to prevent pred_samefile getting
+ fooled by inode reuse. Pay attention to race conditions on
+ systems lacking O_NOFOLLOW when the -P option is in force. This
+ fixes Savannah bug #19806.
+
+ * find/defs.h (struct samefile_file_id): New struct, like dir_id
+ but including a file descriptor on the reference file.
+
+ * find/pred.c (pred_type): -type should return false if the file
+ has mode 00000, as opposed to having an assertion failure. This
+ fixes Savannah bug #16378.
+
+ * find/ftsfind.c (consider_visiting): Issue a warning message if
+ none of the mode bits are set for a file (i.e. st_mode==00000).
+ * find/util.c (get_statinfo): ditto
+ * find/util.c (hook_fstatat): Introduced debug code (normally
+ disabled) for testing Savannah bug #16378.
+
+2007-05-06 James Youngman <jay@gnu.org>
+
+ * find/tree.c: (costlookup): Added pred_fls to the optimiser's
+ predicate cost lookup table.
+
+ * lib/printquoted.c (print_quoted): Change return value from void
+ to int, to allow the caller to detect failures.
+ * lib/printquoted.h (print_quoted): Change declaration
+ accordingly.
+
+ * find/defs.h (struct format_val): Incldue a 'filename' member so
+ that we can provide more useful error messages (e.g. when we fail
+ to flush or close an output file).
+ (nonfatal_file_error): declare new function.
+
+ * find/util.c (traverse_tree): Utility function which calls a
+ callback on every node of the parse tree.
+ (flush_and_close_output_files): Flush all output streams. Close
+ all output files. Report any errors.
+ (cleanup): Use traverse_tree() to invoke
+ complete_pending_execdirs().
+ (report_file_err): refactored error reporting function, extracted
+ from fatal_file_error.
+ (nonfatal_file_error): New function.
+
+ * find/pred.c (checked_fprintf): New function, which performa an
+ fprinf(), and checkes the result. If the operation resulted in an
+ error, a nonfatal error message is issued.
+ (checked_print_quoted): Ditto, for print_quoted rather than
+ fprintf.
+ (checked_fwrite): Ditto for fwrite instead of fprintf.
+ (checked_fflush): Ditto for fflush
+ (do_fprintf): Use the checked_*() functions rather than their
+ direct counterparts, to ensure that I/O errors are detected. This
+ fixes Savannah bug #19416.
+ (pred_fls): Use args.printf_vec instead of args.stream, which has
+ now been removed.
+ (pred_ls): just call pred_fls.
+ (pred_fprint0): use args.printf_vec, instead of the now removed
+ args.stream.
+ (pred_print0): just call pred_fprint0
+
+ * find/parser.c: (insert_fprintf): Make the caller collect the
+ format argument from the argument list.
+ (open_output_file): Enhance to set up defaults in
+ our_pred->args.printf_vec as well as opening the output file.
+ Also record the filename for possible later use in an error
+ message.
+ (collect_arg): Convenience function for collecting an argument
+ from the argument list.
+ (insert_fls): Refactored the body of parse_fls out so that
+ parse_ls can use it.
+ (parse_fls): call insert_fls.
+ (parse_ls): ditto
+ (parse_fprint): Instead of setting up our_pred->args.printf_vec
+ manually, call open_output_file() to do it.
+ (parse_print): Same, but by calling open_stdout().
+ (insert_fprint): Make the caller collect the filename argument,
+ and delegate the setup of our_pred->args.printf_vec to either
+ open_output_file() (for parse_fprint and parse_fprint0) or
+ open_stdout (parse_print0).
+ (parse_fprint0): Use collect_arg().
+ (parse_print0): Use insert_fprint(), just like parse_fprint0.
+ (parse_printf): Use collect_arg().
+ (parse_fprintf): Use collect_arg().
+
+2007-05-08 James Youngman <jay@gnu.org>
+
+ * find/defs.h (struct predicate.args): str is now const.
+
+ * find/parser.c (get_comp_type): get_comp_type now takes a const
+ char* parameter.
+ (get_num): ditto
+ (get_relative_timestamp): ditto. Also use collect_arg().
+ (collect_arg_stat_info): New function; collects a command-line
+ argument and returns its xstat information, in one go.
+ error(1,...) is called if the stat fails.
+ (parse_anewer): Use collect_arg().
+ (parse_cnewer): ditto
+ (parse_fprint): ditto
+ (parse_fstype): ditto
+ (parse_group): ditto
+ (parse_ilname): ditto
+ (parse_iname): ditto
+ (parse_iwholename): ditto
+ (parse_lname): ditto
+ (insert_depthspec): ditto
+ (parse_name): ditto
+ (parse_newer): ditto
+ (parse_wholename): ditto
+ (parse_perm): ditto
+ (parse_regextype): ditto
+ (insert_regex): ditto
+ (parse_samefile): ditto
+ (parse_used): ditto
+ (parse_user): ditto
+ (insert_type): ditto
+ (parse_time): ditto
+ (parse_size): When the size argument is invalid but consists only
+ of a valid suffix char, avoid issuing an error message about a
+ blank argument. Append the suffix letter again.
+ (parse_xdev, parse_ignore_race, parse_noignore_race, parse_warn,
+ parse_xtype): Remove casts to void for some function parameters
+ that were, in fact, used.
+
+ * find/testsuite/find.gnu/fprint-unwritable.exp: new test
+ * find/testsuite/find.gnu/fprint0_stdout.exp: new test
+ * find/testsuite/find.gnu/fprint0_stdout.xo: new test
+ * find/testsuite/find.gnu/mindepth-arg.exp: new test
+ * find/testsuite/find.gnu/mindepth-arg.xo: new test
+ * find/testsuite/find.gnu/mindepth-badarg.exp: new test
+ * find/testsuite/find.gnu/print_stdout.exp: new test
+ * find/testsuite/find.gnu/print_stdout.xo: new test
+ * find/testsuite/find.gnu/samefile-missing.exp: new test
+ * find/testsuite/find.gnu/samefile-p-brokenlink.exp: new test
+ * find/testsuite/find.gnu/samefile-p-brokenlink.xo: new test
+ * find/testsuite/find.gnu/used-invarg.exp: new test
+ * find/testsuite/find.gnu/used-missing.exp: new test
+ * find/testsuite/find.gnu/user-invalid.exp: new test
+ * find/testsuite/find.posix/group-empty.exp: new test
+ * find/testsuite/find.posix/group-missing.exp: new test
+ * find/testsuite/find.posix/name-missing.exp: new test
+ * find/testsuite/find.posix/size-invalid.exp: new test
+ * find/testsuite/find.posix/size-missing.exp: new test
+ * find/testsuite/find.posix/typearg.exp: new test
+ * find/testsuite/find.posix/user-empty.exp: new test
+ * find/testsuite/find.posix/user-missing.exp: new test
+
+2007-05-19 James Youngman <jay@gnu.org>
+
+ * find/find.1: Spurious .R directives (.R is not a directive)
+ should be .B. This fixes Savannah bug #19871.
+ * build-aux/man-lint.sh: New file; verifies that the specified
+ manual pages do not provoke error messages from troff. This is
+ used to detect further occurrences of Savannah bug #19871.
+ * find/Makefile.am (dist-hook): Run findutils-check-manpages,
+ which invokes man-lint.sh.
+ * locate/Makefile.am (dist-hook): ditto
+ * xargs/Makefile.am (dist-hook): ditto
+
+ * .cvsignore: Ignore ylwrap, which automake-1.10 wants us to have
+ a copy of for some reason
+
+ * import-gnulib.sh (main): New option -a which just runs the
+ autotools without reimporting gnulib.
+
+ * Makefile.am (jy-regex-fix): The previous explanatory comment
+ refers to the jy-regex-fix target, not to dist-hook, so it has
+ been moved.
+
+2007-05-21 James Youngman <jay@gnu.org>
+
+ Release 4.3.6.
+
+ * build-aux/Makefile.am (EXTRA_DIST): Added man-lint.sh.
+
+ * locate/locate.c (drop_privs): pass the correct list of groups to
+ setgroups(). Previously, if root invoked locate, their group ID
+ would have been set to a random value. The same bug also caused
+ an array overrun past the end of the local array groups[]. The
+ variable which gets overwritten by the buffer overrun on x86 is
+ 'what'. The value of that variable is always changed before it is
+ used, and so I believe that this buffer overrun will not cause a
+ crash. The only effect of the bug therefore would be for locate
+ to change group to a random group ID since groups[0] is
+ uninitialised. On my test system this random group ID is 0
+ anyway. The effect does not depend on any externally-controllable
+ information, so it is unlikely this is exploitable. This bug is
+ detailed as bug# 19923.
+
+2007-05-24 James Youngman <jay@gnu.org>
+
+ * find/util.c (check_nofollow): If O_NOFOLLOW is defined but 0,
+ act as if it is undefined. This should prevent a runtime
+ assertion failure on IRIX 6.5. This fixes Savannah bug #19948,
+ reported by Nelson Beebe.
+
+ * m4/noreturn.m4: New file, testing for support of __attribute__
+ ((__noreturn__)). Defines jy_AC_ATTRIBUTE_NORETURN and sets
+ HAVE_ATTRIBUTE_NORETURN.
+ * configure.in: Call jy_AC_ATTRIBUTE_NORETURN.
+ * find/defs.h (ATTRIBUTE_NORETURN): Define to nothing if
+ HAVE_ATTRIBUTE_NORETURN is not set in config.h. This should fix a
+ compilation error with non-GCC compilers. This is Savannah bug
+ #19967, reported by Nelson Beebe.
+
+ * configure.in (FINDLIBS): Update FINDLIBS to link against -lm for
+ modf. This fixed a link error on HP-UX. This fixes Savannah
+ bug #19966, reported by Nelson Beebe.
+ * find/Makefile.am (LDADD): Use @FINDLIBS@
+
+2007-05-26 James Youngman <jay@gnu.org>
+
+ Code refactoring in locate.
+ * locate/locate.c (visit): New function, into which we factor out
+ the traversal of the inspector list.
+ (process_simple): Use visit().
+ (process_or): Use visit().
+ (process_and): Use visit().
+
+ Speed improvements in locate for unibyte locales.
+ * locate/locate.c (visit_substring_match_nocasefold_wide): Renamed
+ from visit_substring_match_nocasefold.
+ (visit_substring_match_casefold_wide): Renamed from
+ visit_substring_match_casefold.
+ (visit_substring_match_casefold_narrow): Special case of
+ visit_substring_match_casefold_wide which we use for unibyte
+ locales; we use strcasestr() rather than mbscasestr().
+ (visit_substring_match_nocasefold_narrow): Ditto, using strstr()
+ instead of mbsstr().
+
+ * find/parser.c (parse_gid): Return an explicit boolean constant
+ rather than automatically converting from a pointer, because the
+ gnulib substitute for bool (or _Bool) in c89 environments lacking
+ bool does not support that conversion. One affected system is Sun
+ WorkShop Compilers 5.0 98/12/15 C 5.0 on Solaris 7. This is
+ Savannah bug #19970, reported by Nelson Beebe.
+ (parse_inum): Ditto.
+ (parse_links): Ditto.
+ (parse_uid): Ditto.
+ (check_path_safety): declarations need to go before code, not
+ interspersed. Move declaration of char* s.
+
+ * xargs/testsuite/xargs.posix/rc-125.exp: Explain Savannah bug
+ #19969. This bug is not yet fixed.
+
+ * find/defs.h: #include <stdint_.h>, for uintmax_t. This should
+ fix a compilation error on DEC C V5.9-005 on Digital UNIX V4.0F
+ (Rev. 1229). This is Savannah bug #19965, reported by Nelson
+ Beebe.
+
+ * find/defs.h: Don't include <errno.h>, since it is not needed in
+ the header file itself. The "extern int errno;" declaration is
+ now obsolete.
+ * find/parser.c: Include <errno.h>
+ * find/pred.c: Dito
+ * find/util.c: Ditto
+
+2007-05-27 James Youngman <jay@gnu.org>
+
+ * import-gnulib.config (modules): Import sys_stat.
+ (gnulib_version): Update to 2007-05-26. This fixes a compilation
+ error in stdlib.h with the DEC C compiler. This fixes Savannah
+ bug# 19983.
+
+ * find/parser.c (safe_atoi): New function, like atoi, but which
+ calls error(1, ...) when the argument is invalid or out of range.
+ (parse_group): Use safe_atoi.
+ (insert_depthspec): Use safe_atoi
+ (parse_user): Use safe_atoi
+
+ * configure.in: Check for fabs in libm (fixing a compilation error
+ on Solaris).
+
+ * import-gnulib.config (modules): Import the wcwidth module to
+ provide it on those systems (such as BeOS) which lack it.
+
+ * find/pred.c (file_sparseness): If st_blocks is not present in
+ struct stat, the file has a sparseness of 1.0.
+
+ * doc/find.texi (Size Directives): Document the %S format
+ directive for -printf.
+
+ * find/pred.c (mode_to_filetype): Don't use S_IFSOCK on systems
+ which lack that macro. POSIX systems are allowed to lack
+ sockets (it's an XSI extension).
+ (file_sparseness): If struct stat lacks st_blocks, assume all
+ files have a spearseness of 1.0.
+
+ * import-gnulib.config (modules): Import fchdir inorder to fix an
+ undefined-symbol error for fchdir on BeOS.
+
+2007-05-31 Jakub Bogusz <qboosh@pld-linux.org> (tiny change)
+
+ * find/parser.c (parse_group): Correct typo in error message.
+ (check_path_safety): same
+
+2007-05-31 James Youngman <jay@gnu.org>
+
+ * find/parser.c (parse_time): Once we have determined the
+ comparison type, restore the original time argument since
+ get_relative_timestamp() also wants to see it. This fixes
+ Savannah bug #20005.
+
+ * po/findutils.pot, ga.po, pt.po, tr.po, pl.po: updated from the TP
+ website.
+
+2007-06-03 James Youngman <jay@gnu.org>
+
+ * locate/locate.c (visit_old_format, extend, toolong): Extend the
+ buffer used to build the current pathname when reading an
+ old-format database. The new function extend is called to do
+ this. The new function toolong is called to report a fatal error
+ when the buffer size would otherwise exceed SIZE_MAX. This fixes
+ Savannah bug #20014, which is a security-related problem with the
+ CVE identifier CVE-2007-2452.
+
+ * configure.in: Determine if the setgroups function is available,
+ and set HAVE_SETGROUPS if so.
+ * locate/locate.c (drop_privs): Call setgroups() only if
+ HAVE_SETGROUPS indicates that it is available. This fixes
+ Savannah bug #19981.
+
+ * po/vi.po: Updated Vietnamese translation
+
+2007-06-04 James Youngman <jay@gnu.org>
+
+ * locate/testsuite/Makefile.am (EXTRA_DIST_XO, EXTRA_DIST_EXP):
+ Added old_prefix.exp and old_prefix.xo, a new test case for long
+ shared rpefixes with the old database format.
+
+ * locate/locate.c (visit_old_format): Use getword() from word_io.c
+ instead of getw(), because getw() is not in POSIX.
+ * locate/word_io.c: New file, providing replacement for getw().
+ * locate/locatedb.h: Declare getword()
+ * locate/Makefile.am (locate_SOURCES): Added word_io.c
+
+ * locate/testsuite/config/unix.exp (locate_start): Make the
+ failure messages slightly more explicit; indicate what went wrong
+ when a test fails.
+
+2007-06-05 James Youngman <jay@gnu.org>
+
+ Guess the byte-order of old-format locate databases.
+ * locate/word_io.c (getword): Make the endian_state_flag parameter
+ an enum rather than an int. If we are in the initial ("don't
+ know") byte-order guessing state and the swapped value is out of
+ range, use this as evidence that the byte order is native.
+ * locate/locatedb.h: Declare getword accordingly.
+ * locate/locate.c (struct process_data): Added endian_state
+ member, which remembers for us what the big/little endian order
+ guessing state is when we read an old-format database.
+ (visit_old_format): Use the procdata.endian_state rather than a
+ local variable, so that the information can persist across calls.
+ (i_am_little_endian): Locate figures out if we needed to byteswap
+ the words in an old-format database, but that is an implementation
+ detail. Therefore we figure out our own byte order so that we can
+ produce a more relevant message for --statistics. The
+ i_am_little_endian() returns nonzero if the current host has
+ little-endian byte order.
+ (search_one_database): Report the byte-order of old-format
+ databases.
+
+2007-06-09 James Youngman <jay@gnu.org>
+
+ Release 4.3.7.
+
+ Check that we can correctly read old-format databases which are
+ big-endian or little endian.
+ * locate/testsuite/config/unix.exp (locate_from_db): New function;
+ supports testing locate against a provided database.
+ * locate/testsuite/locate.gnu/bigendian.exp: New test; make sure
+ we can read an old-format big-endian database.
+ * locate/testsuite/locate.gnu/bigendian.xo: Expected output from
+ bigendian.exp test.
+ * locate/testsuite/locate.gnu/littleendian.exp: New test; make sure
+ we can read an old-format little-endian database.
+ * locate/testsuite/locate.gnu/locateddb.old.powerpc.xi: Old format
+ big endian database file, for supporting bigendian.exp.
+ * locate/testsuite/locate.gnu/littleendian.xo: Expected output from
+ littleendian.exp test.
+ * locate/testsuite/locate.gnu/locateddb.old.x86.xi: Old format
+ little endian database file, for supporting littleendian.exp.
+ * locate/testsuite/Makefile.am: Distribute littleendian.exp,
+ bigendian.exp and related .xi and .xo files.
+
+
+ * doc/find.texi (Size Directives): Compare %b with %s/512, not
+ %s/1024. This fixes (again) Savannah bug #19596.
+ * NEWS: mention the fix.
+
+ Avoid using the non-portable function putw().
+ * locate/locatedb.h: Declare putword().
+ * locate/frcode.c: Include <stdbool.h> as locatedb.h now requires
+ it.
+ * locate/code.c (main): Use putword() rather than putw(), because
+ the latter was removed from SUSv3. This fixes Savannah bug #19980.
+ Also include <stdbool.h> as locatedb.h now requires this.
+ * locate/word_io.c (putword): Define the new function putword.
+
+ Ensure that <config.h> is included before any system header
+ * find/defs.h: Do not include <config.h> from "defs.h". Instead
+ just complain if it was not already included, since it needs to
+ be included first of all, even before system headers (in case
+ gnulib had replaced a system header). Check
+ ALREADY_INCLUDED_CONFIG_H to determine this.
+ * configure.in: Always define ALREADY_INCLUDED_CONFIG_H in
+ config.h.
+ * find/find.c: Include config.h before defs.h.
+ * find/finddata.c: ditto.
+ * find/fstfind.c: ditto.
+ * find/parser.c: ditto.
+ * find/pred.c: ditto.
+ * find/util.c: ditto
+ * find/tree.c: ditto (fixing Savannah bug #20128).
+
+ * m4/noreturn.m4 (jy_AC_ATTRIBUTE_NORETURN): Use AC_LANG_PROGRAM
+ inside AC_COMPILE_IFELSE.
+
+ * doc/find.texi (Security Considerations for locate): Discuss in
+ detail the buffer overrun when reading old-format locate
+ databases. This is CVE reference CVE-2007-2452.
+
+2007-06-12 James Youngman <jay@gnu.org>
+
+ Make the test suite work when run as root.
+ * find/testsuite/config/unix.exp (fs_superuser): Abstract out the
+ check which discovers if we have superuser privileges on the
+ filesystem (taken from access.exp).
+ * find/testsuite/find.gnu/access.exp: Call fs_superuser.
+ * find/testsuite/find.gnu/fprint-unwritable.exp: Use fs_superuser.
+
+ * po/vi.po, ga.po, nl.po: Updated translations
+ * po/findutils.pot: Updated template file
+
+2007-06-12 Nix <nix@esperi.org.uk> (tiny change)
+
+ * locate/locate.c (drop_privs): Use groups[0] rather than
+ groups[1], since groups[] is a one-element array. This is a
+ buffer overrun affecting root only. In theory it could affect
+ setuid installations, but I (James Youngman) cannot find an explot
+ mechanism for it. This fixes Savannah bug#20157.
+ * NEWS: Mention this fix.
+
+2007-06-12 James Youngman <jay@gnu.org>
+
+ Release 4.3.8.
+
+ * find/find.1 (HISTORY): Document when the find tests -readable,
+ -writable, -executable and the option -regextype were introduced.
+
+2007-06-13 James Youngman <jay@gnu.org>
+
+ * po/pl.po: Updated Polish translation.
+
+2007-06-14 James Youngman <jay@gnu.org>
+
+ * find/parser.c (parse_time): Use the variable comp, which holds
+ the planned comparison type, rather than the structure tval, which
+ has not been initialised yet and contains a random value. This
+ fixes Savannah bug #20139.
+ * NEWS: Mention the bugfix.
+
+2007-06-19 Eric Blake <ebb9@byu.net>
+
+ Fix compilation on cygwin, Savannah bug #20210.
+ * import-gnulib.config (gnulib_version): Import strcasestr and
+ updated canonicalize-lgpl-tests.
+ * lib/dircallback.c (includes): Track gnulib changes.
+
+2007-06-21 Eric Blake <ebb9@byu.net>
+
+ * locate/.cvsignore: Ignore dblocation.texi.
+ * build-aux/.cvsignore: Ignore Makefile.
+ * locate/locate.c (set_max_db_age): Fix typo in error message.
+
+2007-06-22 James Youngman <jay@gnu.org>
+
+ Better documentation for the fractional part of seconds fields for
+ -printf and similar actions.
+ * doc/find.texi (Time Components): Point out that the seconds
+ field of the timestamp is often printed out with a fractional part
+ of unspecified length and precision. The '%Tc' field has no
+ seconds part.
+ (Combined Time Formats): Point out the same thing for '%T@'.
+ * find/find.1 (%A): Point out the same thing.
+ * NEWS: Mention these changes.
+
+ Fix various lint-type complaints taken from the rules in the
+ coreutils Makefile.maint file (see build-aux/src-sniff.py).
+ * xargs/xargs.c: Removed unnecessary parentheses in "#if defined"
+ checks.
+ (main): Don't cast the return value of xmalloc.
+ (add_proc): Don't cast the return value of xmalloc.
+ * lib/regextype.c: Don't include quotearg.h, we don't need it.
+ * lib/dircallback.c, lib/nextelem.c, lib/prontquoted.c,
+ lib/qmark.c, lib/strspn.c, lib/waitpid.c: Assume config.h is available.
+ * lib/extendbuf.c: Ditto
+ * lib/listfile.c: Ditto. Also removed unnecessary parentheses in
+ "#if defined" checks.
+ (get_link_name): Don't cast the result of xmalloc.
+ * lib/bigram.c: Removed unnecessary parentheses in "#if defined"
+ checks.
+ * lib/savedirinfo.c: Assume config.h is available. Also removed
+ unnecessary parentheses in "#if defined" checks.
+ * lib/buildcmd.c (bc_do_insert): Don'tcast the result of xmalloc().
+ * find/tree.c (build_expression_tree): Don't cast the argument to free().
+ * find/ftsfind.c (set_close_on_exec): Removed unnecessary
+ parentheses in "#if defined" checks. Also changed "filesystem" ->
+ "file system"
+ * find/util.c (check_nofollow): Removed unnecessary parentheses in
+ "#if defined" checks.
+ * find/parser.c (estimate_fstype_success_rate): ditto.
+ (insert_regex): Do not cast the result of xmaloc(). Removed unnecessary
+ parentheses in "#if defined" checks. Also changed "filesystem" ->
+ "file system"
+ * find/pred.c: ditto
+ * find/find.c: "the the" -> "the", "filesystem" -> "file system"
+ * find/fstype.c: "filesystem" -> "file system" (in comments and
+ static functions)
+ * locate/frcode.c: Removed unnecessary parentheses in "#if
+ defined" checks.
+ * locate/locate.c (search_one_database): Don't cast the return
+ value of xmalloc.
+ (dolocate): Mark error message for translation.
+
+2007-06-23 James Youngman <jay@gnu.org>
+
+ * doc/find.texi (Introduction): Recommend that people check they
+ are using the latest version before reporting a bug.
+
+2007-06-24 James Youngman <jay@gnu.org>
+
+ * build-aux/.gitignore, debian/.gitignore, doc/.gitignore,
+ find/.gitignore, find/testsuite/.gitignore, .gitignore,
+ lib/.gitignore, locate/.gitignore, locate/testsuite/.gitignore,
+ m4/.gitignore, po/.gitignore, xargs/.gitignore,
+ xargs/testsuite/.gitignore: New files to make it more painless to
+ track findutils sources with git.
+
+ * NEWS: Mention the previous change to doc/find.texi.
+
+2007-06-25 James Youngman <jay@gnu.org>
+
+ * po/sv.po: Updated Swedish translation.
+
+2007-06-26 James Youngman <jay@gnu.org>
+
+ * README-alpha: Mention the findutils-patches mailng list and the
+ archives for findutils-patches and bug-findutils.
+
+ * po/bg.po: Updated from Translation Project.
+
+2007-06-26 James Youngman <jay@gnu.org>
+
+ * build-aux/src-sniff.py: Detect uses of struct stat where the
+ header file was not included.
+ * find/find.c: Fix this, and uses of assert without a following
+ space (the coding standard requires a space, but there are still
+ a number of cases where other functions are called with no
+ following space).
+ * find/fstype.c: Ditto.
+ * find/ftsfind.c: Ditto.
+ * find/parser.c: Ditto.
+ * find/pred.c: Ditto.
+ * find/tree.c: Ditto.
+ * find/util.c: Ditto.
+ * lib/buildcmd.c: Ditto.
+ * lib/buildcmd.h: Ditto.
+ * lib/extendbuf.c: Ditto.
+ * locate/frcode.c: Ditto.
+ * locate/locate.c: Ditto.
+ * locate/word_io.c: Ditto.
+ * xargs/xargs.c: Ditto.
+
+ * find/tree.c (cost_table_comparison): Avoid < comparison between
+ function pointer types. Instead cast the function pointers to
+ (const void*). Both alternatives are undefined C, but the former
+ actually fails to compile on some systems. This fixes Savannah
+ bug #20263.
+ * NEWS: mention the fix
+
+ * find/tree.c (calculate_derived_rates): Removed assignment to
+ rate variable following an assert(0) call, which had been added to
+ silence a "used before initialised" warning, and replace it with a
+ call to abort, which (a) correctly halts execution if _NDEBUG is
+ defined and (b) more accurately documents what's happening.
+
+ * find/parser.c (get_stat_Ytime): Removed redundant call to abort.
+
+ * find/util.c (debug_stat): For consistency, use assert (0) rather
+ than assert (false).
+
+2007-06-26 Eric Blake <ebb9@byu.net>
+
+ * import-gnulib.config (modules): Allow ./configure
+ --disable-assert.
+
+2007-06-27 James Youngman <jay@gnu.org>
+
+ Added a maintenance manual.
+ * doc/find-maint.texi: New file.
+ * doc/Makefile.am (info_TEXINFOS): Added doc/find-main.texi.
+ * doc/find.texi (Introduction): Fixed typo.
+
+2007-06-28 Eric Blake <ebb9@byu.net>
+
+ * import-gnulib.sh (run_gnulib_tool): Speed operation when
+ updating an existing tree.
+
+ Allow 'make check' to work without prior 'make all'.
+ * find/Makefile.am (SUBDIRS): Build in . before testsuite.
+ * locate/Makefile.am (SUBDIRS): Likewise.
+ * xargs/Makefile.am (SUBDIRS): Likewise.
+
+ Fix Savannah bug #20273, xargs -E with seekable stdin.
+ * import-gnulib.config (modules): Sort, add closein.
+ * xargs/testsuite/Makefile.am (EXTRA_DIST_EXP, EXTRA_DIST_XO)
+ (EXTRA_DIST_XI): Add new test.
+ * xargs/testsuite/config/unix.exp (xargs_start): Support optional
+ argument to allow test to run a subshell.
+ * xargs/testsuite/inputs/sv-bug-20273.xi: New file.
+ * xargs/testsuite/xargs.posix/sv-bug-20273.xo: Likewise.
+ * xargs/testsuite/xargs.posix/sv-but-20273.exp: Likewise.
+ * xargs/xargs.c (main): Use close_stdin, not close_stdout.
+ * NEWS: Document the fix.
+
+2007-06-30 James Youngman <jay@gnu.org>
+
+ * find/find.1 (EXAMPLES): Added an example of using find and cpio -p
+ to copy a directory tree, with pruning and omitted files.
+
+ * find/pred.c (format_date): Use verify_true for constant
+ conditions rather than assert.
+ * xargs/xargs.c (main): Ditto.
+
+ Enhancements to the code smell detector.
+ * Makefile.am (findutils-check-smells): Automate the calling of
+ build-aux/src-sniff.py.
+ * build-aux/src-sniff.py: Rework to use a list of regex-based
+ sniffers, to allow checking types of file other than C. Allow
+ file-based regex sniffers to give an indication of the line number
+ where they think the problem (or part of the problem) exists.
+ Added code smell detectors for a sample Bourne shell problem and
+ for out-of-date FSF addresses.
+
+ * find/tree.c (get_pred_cost): Eliminate unused variable.
+
+ Fix Savannah bug #20263 in a more portable way.
+ * find/tree.c (cost_table_comparison): Avoid casting function
+ pointers to poiter-to-object, since this is not portable (or
+ of course conforming). Instead, use memcmp().
+
+2007-06-30 Eric Blake <ebb9@byu.net>
+
+ * find/pred.c (pred_timewindow): Avoid gcc warnings.
+ (format_date): Likewise.
+ * find/tree.c (calculate_derived_rates): Likewise.
+ * locate/word_io.c (getword): Likewise.
+
+2007-07-02 James Youngman <jay@gnu.org>
+
+ * import-gnulib.sh: (run_gnulib_tool): Don't pass --gpl3 to
+ gnulib-tool, since the program does not have that option (that was
+ a local change which proved not to be necessary).
+
+ GPL3 migration.
+ * COPYING: Migrate to version 3 of the GNU General Public license.
+ * Makefile.am: ditto
+ * build-aux/check-testfiles.sh: ditto
+ * build-aux/src-sniff.py: ditto
+ * debian/copyright: ditto
+ * doc/find-maint.texi: ditto
+ * find/defs.h: ditto
+ * find/find.c: ditto
+ * find/finddata.c: ditto
+ * find/fstype.c: ditto
+ * find/ftsfind.c: ditto
+ * find/parser.c: ditto
+ * find/pred.c: ditto
+ * find/testsuite/config/unix.exp: ditto
+ * find/tree.c: ditto
+ * find/util.c: ditto
+ * import-gnulib.config: ditto
+ * import-gnulib.sh: ditto
+ * lib/buildcmd.c: ditto
+ * lib/buildcmd.h: ditto
+ * lib/dircallback.c: ditto
+ * lib/dircallback.h: ditto
+ * lib/extendbuf.c: ditto
+ * lib/extendbuf.h: ditto
+ * lib/forcefindlib.c: ditto
+ * lib/gnulib-version.h: ditto
+ * lib/listfile.c: ditto
+ * lib/listfile.h: ditto
+ * lib/modetype.h: ditto
+ * lib/nextelem.c: ditto
+ * lib/nextelem.h: ditto
+ * lib/printquoted.c: ditto
+ * lib/printquoted.h: ditto
+ * lib/qmark.c: ditto
+ * lib/regexprops.c: ditto
+ * lib/regextype.c: ditto
+ * lib/regextype.h: ditto
+ * lib/savedirinfo.c: ditto
+ * lib/savedirinfo.h: ditto
+ * lib/strspn.c: ditto
+ * lib/wait.h: ditto
+ * lib/waitpid.c: ditto
+ * locate/bigram.c: ditto
+ * locate/code.c: ditto
+ * locate/frcode.c: ditto
+ * locate/locate.c: ditto
+ * locate/locatedb.h: ditto
+ * locate/testsuite/config/unix.exp: ditto
+ * locate/updatedb.sh: ditto
+ * locate/word_io.c: ditto
+ * po/fetch-po-files: ditto
+ * xargs/testsuite/config/unix.exp: ditto
+ * xargs/xargs.c: ditto
+
+ Typo fixes.
+ * doc/find.texi (Deleting Files): Fixed a typo.
+ (Deleting Files): Likewise.
+
+ New worked example for find.
+ * doc/find.texi (Copying A Subset of Files): Added a new worked
+ example.
+
+ * doc/find.texi (Updating A Timestamp File): Indicate that %A@ now
+ includes a sub-second part on many systems.
+
+ Include <fcntl.h> unconditionally.
+ * import-gnulib.config (modules): Also use the fcntl module.
+ * find/find.c: #include <fcntl.h> unconditionally, since
+ gnulib provides it if it is absent.
+ * find/fstype.c: Likewise.
+ * find/ftsfind.c: Likewise.
+ * find/parser.c: Likewise.
+ * find/util.c: Likewise.
+ * locate/locate.c: Likewise.
+
+2007-07-03 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #20310.
+ * m4/nullsort.m4: If we are cross compiling, assume "sort -z" does
+ not work on the target.
+
+ Manpage improvements.
+ * find/find.1: More consistent use of quotation marks.
+ * locate/locate.1 (HISTORY): New section.
+
+2007-07-04 James Youngman <jay@gnu.org>
+
+ * NEWS: Fixed typos in description of bugfix for bug #20310.
+
+2007-07-06 James Youngman <jay@gnu.org>
+
+ * po/uk.po, po/nl.po, po/vi.po: Updated from Translation Project.
+
+2007-07-14 Eric Blake <ebb9@byu.net>
+
+ * import-gnulib.config (gnulib_version): Bump date, to pick
+ up fix in canonicalize module testing.
+
+2007-07-17 Eric Blake <ebb9@byu.net>
+
+ Ensure 'make distcheck' can pass on cygwin.
+ * configure.in: Rename...
+ * configure.ac: ...to this, to match automake recommendations.
+ * NEWS: Add release dates.
+ * doc/find-maint.texi: Remove trailing whitespace.
+ (Documentation): Document where release dates are usefully
+ recorded.
+ * locate/Makefile.am (AM_INSTALLCHECK_STD_OPTIONS_EXEMPT): Be
+ aware of .exe.
+ * .cvsignore: Ignore 'make dist' files.
+ * po/.cvsignore: Ignore remove-potcdate.sed.
+
+2007-07-19 Eric Blake <ebb9@byu.net>
+
+ * po/POTFILES.in: Update to reflect current location of
+ translatable strings.
+
+2007-07-22 James Youngman <jay@gnu.org>
+
+ * find/find.1: Corrected a number of typos and fixed up the
+ alphabetical section ordering. This fixes Savannah bug #20552.
+
+ Version banners now comply with the GNU coding standard.
+ * find/parser.c (parse_version): Use display_findutils_version()
+ instead of printing the information manually. Don't include
+ gnulib-version.h since we no longer directly use that header.
+ * lib/findutils-version.c: Added
+ * lib/findutils-version.h: Added
+ * import-gnulib.config (modules): Added version-etc and
+ version-etc-fsf.
+ * lib/Makefile.am (libfind_a_SOURCES): added findutils-version.c.
+ * find/version.c: Removed
+ * find/Makefile.am: Remove version.c
+ * locate/Makefile.am: Don't link ../find/version.o
+ * xargs/Makefile.am: Ditto
+ * xargs/xargs.c (main): Use display_findutils_version()
+ * locate/code.c (main): Ditto
+ * locate/frcode.c (main): Ditto
+ * locate/locate.c (dolocate): Ditto
+ * locate/updatedb.sh (version): Display copyright information in
+ the right format. Also ensure that we exit with a nonzero status
+ if there was an output error for --help and --version.
+ * find/testsuite/config/unix.exp (find_version): Adjust for
+ --version format change
+ * locate/testsuite/config/unix.exp (locate_version): Ditto
+ * xargs/testsuite/config/unix.exp (xargs_version): Ditto
+ * NEWS: Mention the change
+
+2007-07-22 Eric Blake <ebb9@byu.net>
+
+ * po/POTFILES.in: Add lib/findutils-version.c.
+
+2007-07-23 Eric Blake <ebb9@byu.net>
+
+ * find/parser.c (parse_version): Avoid compiler warning.
+ * locate/code.c (includes): Likewise.
+
+2007-07-26 Eric Blake <ebb9@byu.net>
+
+ * doc/.cvsignore: Ignore more generated documentation.
+
+2007-07-29 James Youngman <jay@gnu.org>
+
+ * po/tr.po: Updated from Translation Project.
+
+2007-07-31 Eric Blake <ebb9@byu.net>
+
+ Allow choice of default arg size, Savannah bug #20594.
+ * configure.ac (DEFAULT_ARG_SIZE): Check environment for a default
+ size override.
+ * lib/buildcmd.c (bc_use_sensible_arg_max): Use default size from
+ configure, if requested.
+ * README (DEFAULT_ARG_SIZE): Mention the ability to tune this at
+ configure time.
+ * NEWS: Document the change.
+
+2007-08-05 Eric Blake <ebb9@byu.net>
+
+ Fix Savannah bugs #20662, #20688.
+ * find/find.c (at_top): Avoid memory leak.
+ * find/pred.c (do_fprintf, pred_iname, pred_name): Likewise.
+ (pred_name_common): New function, factored from pred_iname and
+ pred_name.
+ * find/parser.c (check_name_arg): Let -nowarn silence -name /.
+ * locate/locate.c (visit_basename): Avoid memory leak.
+ * NEWS: Document the changes.
+ * doc/find.texi (Warning Messages): Document -nowarn's effect on
+ -name and -iname.
+ * find/testsuite/find.gnu/name-slash.exp: New test, to ensure
+ 20662 doesn't regress on '-name /', and that 20688 silences the
+ warning.
+ * find/testsuite/find.gnu/printf-slash.exp: Likewise.
+ * find/testsuite/find.gnu/name-slash.xo: Expected results.
+ * find/testsuite/find.gnu/printf-slash.xo: Likewise.
+ * find/testsuite/Makefile.am (EXTRA_DIST_XO, EXTRA_DIST_EXP):
+ Distribute new tests.
+
+2007-08-18 Eric Blake <ebb9@byu.net>
+
+ Fix Savannah bug #20751.
+ * lib/listfile.c (list_file): Accommodate gnulib change of 3 Jul
+ 2006.
+ * NEWS: Document this.
+ Reported by Nigel Stepp.
+ * THANKS: Sort and update.
+ * AUTHORS: Add myself.
+
+2007-08-20 James Youngman <jay@gnu.org>
+
+ * doc/find.texi (Directories): Clarify that built commands which
+ have not been executed yet will be executed before find quits,
+ even with -quit. Also clarify the difference between -prune and
+ -quit.
+
+2007-08-20 Paul Eggert <eggert@cs.ucla.edu>
+ and Eric Blake <ebb9@byu.net>
+
+ Improve translation of xstrtol messages.
+ * import-gnulib.config (destdir): Upgrade gnulib to 2007-08-11.
+ * locate/locate.c (dolocate): Adjust to API change of xstrtol
+ gnulib module.
+ * po/POTFILES.in: Likewise.
+ * NEWS: Document the enhancement.
+
+2007-08-21 Eric Blake <ebb9@byu.net>
+
+ Fix for Savannah bug #20273, find -ok with seekable stdin.
+ * find/find.c (main): Use close_stdin, not close_stdout.
+ * import-gnulib.config (gnulib_version): Pick up yesno tests.
+ * NEWS: Document the change.
+ * build-aux/.cvsignore: Ignore compile.
+
+2007-08-22 Eric Blake <ebb9@byu.net>
+
+ Fix Savannah bug #20871.
+ * find/find.c (main): Remove bogus assertion.
+ * NEWS: Document the fix.
+
+ Update to recent gnulib addition of idcache.h.
+ * lib/listfile.c (getuser, getgroup): Use header rather than
+ declaring things ourself.
+ * po/POTFILES.in (locate/frcode.c): Add missing file.
+
+2007-08-22 James Youngman <jay@gnu.org>
+
+ * find/parser.c (parse_path): This is the 'canonical' name once
+ again.
+ (parse_wholename): This is not.
+ (parse_ipath): No longer deprecated.
+ * NEWS: Mention this.
+
+2007-08-23 James Youngman <jay@gnu.org>
+
+ * po/nl.po: Updated from Translation Project
+
+ * find/parser.c (check_path_safety): Assume the path is safe is
+ $PATH is not set. This avoids a segfault in that situation
+ and thus fixes Savannah bug #20834.
+
+2007-08-23 Eric Blake <ebb9@byu.net>
+
+ Pick up gnulib change to getline module.
+ * import-gnulib.config (gnulib_version): Bump date.
+ * locate/bigram.c: Use <stdio.h>, not getline.h.
+ * locate/code.c: Likewise.
+ * locate/frcode.c: Likewise.
+ * locate/locate.c: Likewise.
+
+ * po/ChangeLog: Delete, merge into this file.
+
+2007-09-08 James Youngman <jay@gnu.org>
+
+ Better documentation on $PATH security checks.
+ * doc/find.texi (Single File): Better explanation of what makes
+ certain values of $PATH insecure. This fixes Savannah bug
+ #20951.
+ * find/find.1 (-execdir): Likewise.
+
+ Document interaction of -depth/-delete/-prune.
+ * doc/find.texi (Directories): Mention that "-prune ... -delete"
+ will not do what you want and will cause the deletion of more
+ files than you probably intended.
+ (Delete Files): Likewise, suggest using "-depth" when testing
+ command lines you plan to eventually add "-delete" to.
+ (Cleaning Up): Add -depth explicitly to an example which uses
+ -delete.
+ * find/find.1 (-depth): Mention that -delete also implies -depth.
+ (-delete): Warn against putting -delete first.
+ (-prune): Also warn against -prune ... -delete.
+ NEWS: Mention these changes.
+
+2007-11-11 James Youngman <jay@gnu.org>
+
+
+ * configure.ac: Prepared for release of findutils-4.3.9.
+ * NEWS: Likewise.
+
+ * po/POTFILES.in: Use gnulib/lib/getdate.y rather than
+ gnulib/lib/getdate.c, because the former is the source file, and
+ because without this change the update-po target of po/Makefile
+ fails.
+
+ * import-gnulib.config (gnulib_version): Move to gnulib
+ 2007-11-10.
+
+ * po/hu.po, po/nl.po: Updated from Translation Project.
+
+2007-11-13 James Youngman <jay@gnu.org>
+
+ * NEWS, configure.ac: Prepare for the release of findutils-4.3.10.
+
+ * import-gnulib.sh (usage): If the existing CVS working tree for
+ gnulib in the source tree does not yet point at the
+ git-cvs-pserver repository, move the old gnulib working tree out
+ of the way and do a fresh checkout. This fixes Savannah bug
+ #21568.
+
+2007-11-22 James Youngman <jay@gnu.org>
+
+ POSIXLY_CORRECT turns off warnings.
+ * find/defs.h (struct options): Added member posixly_correct.
+ This is set when the POSIXLY_CORRECT environment variable is set.
+ * find/util.c (set_option_defaults): Set options.posixly_correct
+ if the POSIXLY_CORRECT environment variable is set.
+ (set_option_defaults): Turn off warnings when POSIXLY_CORRECT is
+ in force.
+ * find/find.1: Document this.
+ (Environment Variables): Likewise.
+ (Warning Messages): Likewise.
+
+ Non-POSIX compliant arguments to -perm generate an error when
+ POSIXLY_CORRECT is set.
+ * find/parser.c (parse_table): Indicate which primaries are
+ defined by POSIX.
+ (non_posix_mode): New function; issues an error message when a
+ non-POSIX-compliant argument to -perm is used (and POSIXLY_CORRECT
+ is in force).
+ (parse_perm): Call non_posix_mode when a non-POSIX-compliant mode
+ argument is seen.
+ * find/testsuite/find.gnu/posix-perminvalid.exp: New file; tests
+ invalid arguments to -perm.
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP): Add
+ posix-perminvalid.exp.
+ * find/find.1: Document this.
+ * doc/find.texi (Mode Bits): Likewise
+ (Environment Variables): Likewise
+
+
+ * xargs/xargs.1: Options should be bold, not italic; filenames
+ should also be italic. OPTIONS should be a section, not a
+ subsection. In the description of --max-lines, "max-args" was
+ corrected to "max-lines". Turn off hyphenation in the SYNOPSIS
+ section. This fixes Savannah bug #21270.
+
+2007-11-24 James Youngman <jay@gnu.org>
+
+ * doc/find.texi (Mode Bits): Correct the warning about the change
+ in behaviour of -perm /000 to indicate that the change has
+ happened now. This fixes Savannah bug #21628.
+ * NEWS: Mention this.
+
+2007-11-25 James Youngman <jay@gnu.org>
+
+ * Makefile.am (jy-regex-fix): Comment that the regex.c fix needs
+ to stay until we no longer support Automate-1.9.
+
+ * doc/perm.texi (Mode Structure): Fix setgid/setuid typo.
+
+2007-11-26 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #20970, handling of trailing slashes with -name.
+ * find/pred.c (pred_name_common): Strip trailing slashes from the
+ pathname before applying fnmatch() to it. This fixes Savannah bug
+ #20970.
+ * find/testsuite/find.posix/nameslash.exp: Test case for bug #20970.
+ * find/testsuite/find.posix/nameslash.xo: Expected output file for
+ same.
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP): Added nameslash.exp.
+ (EXTRA_DIST_XO): Added nameslash.xo.
+
+ Fix Savannah bug #21634, No copy of FDL1.2 included in source
+ code.
+ * doc/find.texi: Change license to the GNU Free Documentation
+ License 1.2.
+ (GNU Free Documentation License): Include fdl.texi
+ * doc/find-maint.texi (GNU Free Documentation License): Include a
+ copy of the FDL (it was already under this license).
+ * doc/Makefile.am (find_maint_TEXINFOS): Include fdl.texi
+ (find_TEXINFOS): Include fdl.texi
+ * import-gnulib.config (modules): Include gpl-3.0 and fdl.
+
+ * doc/perm.texi: Added copyright license, following the license of
+ the original source document (perm.texi from coreutils).
+
+2007-11-27 James Youngman <jay@gnu.org>
+
+ * find/pred.c (pred_prune): Always return true. This fixes
+ Savannah bug #20803.
+ * doc/find.texi (Directories): Document the change to -prune.
+ * find/find.1: Document the change.
+ * NEWS: Mention the fix.
+
+2007-11-29 James Youngman <jay@gnu.org>
+
+ Support the generation of regexprops-generic.texi.
+ * lib/regextype.h (get_regex_type_context): Used to indicate if a
+ particular type of regular expression is of interest for
+ regexprops.texi (which is findutils-specific) or
+ regexprops-generic.texi (which is not). The "context" is simply
+ a flag set in a word.
+ * lib/regextype.c (get_regex_type_context): Implement this.
+ (regex_map): Assign a context to each regular expression type.
+ * lib/regexprops.c: Use the context information from regextype.c
+ to decide which regular expression types to docuemnt in the
+ output. The selection is indicated on the command line; "generic"
+ and "findutils" are supported.
+ (copying): New function, which emits a copyright header into the
+ output.
+ (comment): New function for emitting a comment.
+ (ignore): New function which returns nonzero when the indicated
+ type of regular expression is not of interest for this version of
+ the document.
+ (menu): Miss out the non-interesteing regex types.
+ (get_next): Returns the regex type name for the "next" pointer,
+ taking into account which regex types are ignored.
+ (describe_all): Take into account which regex types are ignored,
+ and emit a copying header also. Include a comment indicating
+ which "context" was of interest when generating the output.
+ * doc/Makefile.am: Add regexprops-generic.texi. Generate this
+ file from regexprops.c.
+
+ Check gnulib out with native git, rather than git-cvspserver.
+ This fixes Savannah bug #21568, for the second time.
+ * import-gnulib.config (gnulib_version): Switch to using a git
+ commit id and native git, since git-cvspserver silently fails to
+ support "cvs update -D".
+ * import-gnulib.sh (do_checkout): Check gnulib out with git rather
+ than CVS.
+ (main): Require 'git' to be available.
+ (move_cvsdir): Remove any pre-existing gnulib-cvs directory.
+ * doc/find-maint.texi (Using the GNU Portability Library): Desribe
+ how we now obtain gnulib. Update the instructions on how we patch
+ gnulib.
+ * .gitignore: Ignore gnulib-git, not gnulib-cvs
+ * .cvsignore: Ditto
+ * Makefile.am (findutils-check-smells): Change from gnulib-cvs to
+ gnulib-git.
+ * README-CVS: Mention the extra dependency on git.
+ * NEWS: Mention this change.
+
+ Add test case for Savannah bug #20803 (-prune return value).
+ * find/testsuite/find.posix/prune-result.exp: New test for
+ Savannah bug #20803.
+ * find/testsuite/find.posix/prune-result.xo: Expected otuput for
+ new test prune-result.exp.
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP): Added
+ find.posix/prune-result.exp
+ (EXTRA_DIST_XO): Added find.posix/prune-result.xo
+
+2007-11-30 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #20865 (-prune -delete without an explicit
+ -depth is now an error).
+ * find/parser.c (check_option_combinations): Diagnose the
+ situation where -delete and -prune are both used, because -delete
+ turns on -depth and -depth makes -prune do nothing.
+ * find/tree.c (build_expression_tree): call
+ check_option_combinations().
+ * find/defs.h (struct options): Add new boolean field
+ explicit_depth.
+ Also declare check_option_combinations.
+ * find/util.c (set_option_defaults): Initialise explicit_depth.
+ * NEWS: Mention this fix.
+
+2007-12-02 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #20802, find -delete anomalies
+ * find/pred.c (pred_delete): Set find's exit status to nonzero if
+ -delete fails.
+ * find/find.1 (-delete): Document this.
+ * doc/find.texi (Delete Files): Document this.
+ * NEWS: Mention the fix.
+
+2007-12-04 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #15384, find misbehaves when parent directory is
+ not readable.
+ * find/testsuite/find.posix/parent.exp: New test
+ * find/testsuite/find.posix/parent.xo: New test
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP, EXTRA_DIST_XO):
+ Added parent.exp, parent.xo.
+ * find/find.c (safely_chdir): If safely_chdir_nofollow fails with
+ SafeChdirFailDestUnreadable, fall back on safely_chdir_lstat.
+
+ * find/find.1: Formatting fixes; options should be in bold.
+
+2007-12-08 James Youngman <jay@gnu.org>
+
+ * xargs/xargs.1: Added examples on stdin handling and more
+ efficient core file deletion.
+ * NEWS: Mention this.
+
+ * doc/.cvsignore: Ignore regexprops-generic.texi.
+ * doc/.gitignore: ditto
+
+2007-12-09 James Youngman <jay@gnu.org>
+
+ * doc/perm.texi: Updated from the upstream source.
+
+ * po/nl.po, po/pt.po: Updated from the Translation Project.
+
+2007-12-13 Eric Blake <ebb9@byu.net>
+
+ Allow bootstrapping with autoconf 2.61a.
+ * configure.ac (AC_AIX, AC_ISC_POSIX): Delete, now that gnulib
+ takes care of this.
+ (jy_AC_TYPE_INTMAX_T): Delete, now that gnulib stdint module takes
+ care of this.
+
+2007-12-19 James Youngman <jay@gnu.org>
+
+ * po/nl.po: Updated Dutch translation from the Translation project.
+ * po/pl.po: Likewise for the Polish translation.
+ * po/sv.po: Likewise for the Swedish translation.
+ * po/vi.po: Likewise for the Vietnamese translation.
+
+2007-12-19 Benno Schulenberg <coordinator@translationproject.org> (tiny change)
+
+ * find/find.1: Corrected two typos.
+
+2007-12-19 James Youngman <jay@gnu.org>
+
+ * find/find.c (ngettext): Introduce a new macro to help with
+ internationalising plurals. Use it with positional parameters in
+ order to allow better translations of format strings.
+ * find/fstype.c, find/ftsfind.c, find/parser.c, find/pred.c,
+ find/tree.c, lib/regextype.c, locate/locate.c, xargs/xargs.c: Likewise.
+
+2007-12-20 James Youngman <jay@gnu.org>
+
+ * configure.ac: Advance the version number, as we are moving on
+ from 4.3.12.
+ * NEWS: Likewise
+
+2007-12-20 Clytie Siddall <clytie@riverland.net.au> (tiny change)
+
+ * find/find.c (wd_sanity_check): Corrected typo in the format
+ string for an error message, which might cause a crash in
+ "oldfind" if a directory we moved into turned out to be a symbolic
+ link that moved while we were trying to change directory.
+
+2007-12-20 Jakub Bogusz <qboosh@pld-linux.org> (tiny change)
+
+ * xargs/xargs.c (parse_num): Corrected typo in format string
+ message.
+
+2007-12-20 James Youngman <jay@gnu.org>
+
+ * find/fstype.c, find/ftsfind.c, find/parser.c, find/pred.c,
+ find/tree.c, lib/regextype.c, locate/locate.c, xargs/xargs.c,
+ find.c: Backed out positional paremeter change, as the use of
+ positional parameters was over-complex and unnecessary. We'll
+ re-apply the pluralisation support change soon, but without the
+ positional parameters.
+
+2008-01-07 James Youngman <jay@gnu.org>
+
+ * xargs/xargs.c: (main): Standardise on "Warning" instead of
+ "warning" in messages.
+
+ * xargs/xargs.c: (add_proc): Use x2nrealloc to extend the pids
+ array, rather than doubling the size of the buffer (since the old
+ aproach was vulnerable to overflow).
+
+ Reap all available child processes before every fork. This fixes
+ Savannah bug #21960.
+ * xargs/xargs.c: (proc_max): since this is a non-negative
+ quantity, make it unsigned.
+ (procs_executing): Likewise.
+ (pids_alloc): Likewise (using size_t).
+ (procs_executed): In order to prevent possible overflow, make this
+ a boolean, not a count. We only cared if the previous counter was
+ zero or not, anwyay.
+ (add_proc): Set procs_executed to true rather than incrementing it.
+ (wait_for_proc): When called, always reap all available children.
+ Add an extra argument which is the minimum number of children we
+ must reap before returning.
+ (wait_for_proc_all): Pass the new extra argument.
+ (xargs_do_exec): Call wait_for_proc() to reap all available
+ children before forking a new child. Modify other calls to
+ wait_for_proc to pass the new extra argument.
+ * NEWS: Mention this change.
+
+2008-02-09 James Youngman <jay@gnu.org>
+
+ * doc/find.texi (xargs options): Moved documentation of xargs'
+ options into this new section.
+ (Invoking the shell from xargs): New section providing examples
+ about "xargs sh -c '...'".
+
+ * xargs/xargs.1: Indicate that the "sh -c" trick with xargs
+ achieves the same thing as BSD's "xargs -o", but in a more
+ flexible way.
+
+ * locate/updatedb.sh: Actually rename the old database to the new
+ one atomically, instead of just claiming the rename is atomic in a
+ comment :) This fixes Savannah bug #22057.
+
+ * find/find.c (ngettext): Introduce a new macro to help with
+ internationalising plurals. Use it to allow better
+ translations of format strings.
+ * locate/locate.c: Likewise.
+
+2008-02-12 James Youngman <jay@gnu.org>
+
+ Updated translations: German, Irish, Dutch, Polish, Vietnamese.
+ * po/de.po, po/ga.po, po/nl.po, po/pl.po, po/vi.po: Updated from
+ the Translation Project.
+
+ Fix Savannah bug #22056, -Xtime tests are off by one second.
+ * find/defs.h (struct options): Change cur_day_start from time_t
+ to strct timespec.
+ * find/util.c (set_option_defaults): Likewise.
+ * find/parser.c (get_relative_timestamp): Change the origin
+ argument from time_t to struct timespec.
+ (estimate_timestamp_success_rate): Ignore the nanoseconds field of
+ the timestamp when estimating the probable success rate.
+ (parse_daystart): Handle the nanoseconds field too.
+ (do_parse_xmin): The origin argument to get_relative_timestamp()
+ is of type struct timespec, not time_t.
+ (parse_used): Likewise.
+ (parse_time): Likewise.
+ * find/pred.c (pred_timewindow): in the COMP_EQ case, accept times
+ exactly at the end of the window and do not accept times exactly
+ at the start (reversing the previous treatment of the bounds).
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP): Added test for
+ -mtime 0; find.posix/mtime0.{exp,xo}.
+ * NEWS: mention this bugfix.
+
+2008-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change)
+
+ * import-gnulib.config: Add progname.
+
+ * lib/Makefile.am (LDADD): Use @LIBINTL@ instead of @INTLLIBS@.
+
+ * xargs/xargs.1: Fix a couple of typos.
+
+2008-02-15 James Youngman <jay@gnu.org>
+
+ * README-CVS: Explain how to update the translations from the
+ translation project.
+
+ * NEWS, configure.ac: Change release number to 4.3.14-CVS.
+
+2008-02-15 Eric Blake <ebb9@byu.net>
+
+ Avoid compiler warnings.
+ * find/pred.c (pred_name_common): Remove unused variable.
+ * locate/locate.c (print_stats): Avoid undefined format string.
+
+2008-03-08 Jim Meyering <meyering@redhat.com>
+
+ Fix doc typos.
+ * doc/find-maint.texi (Security): s/ongest/longest/
+ (Making Releases): s/the the/the/
+
+ Avoid link failure with gcc -fno-common.
+ * find.c (program_name, starting_desc): Declare "extern".
+
+2008-03-09 James Youngman <jay@gnu.org>
+
+ Fix (documentation) bug #20873, / and . in file names for -path.
+ * doc/find.texi (Full Name Patterns): Mention that * in the "find
+ -path" pattern will match both / and leading dots.
+
+2008-03-10 Jim Meyering <meyering@redhat.com>
+
+ Rename local and member "dirfd" to avoid shadowing the function.
+ This avoids many warnings from gcc -Wshadow:
+ * lib/buildcmd.h (struct buildcmd_state) [dir_fd]: Rename member
+ from dirfd.
+ * find/defs.h (struct exec_val) [dir_fd]: Likewise.
+ Rename parameter in prototype.
+ * find/ftsfind.c (inside_dir): Rename parameter: s/dirfd/dir_fd/
+ * find/parser.c (new_insert_exec_ok, insert_exec_ok): Likewise.
+ * find/pred.c (new_impl_pred_exec, prep_child_for_exec, launch):
+ s/dirfd/dir_fd/
+ * find/util.c (do_complete_pending_execdirs): Likewise.
+ (complete_pending_execdirs): Likewise
+ * lib/buildcmd.c (bc_init_state, bc_clear_args): Likewise.
+ * lib/dircallback.c (run_in_dir): Likewise.
+ * lib/dircallback.h (DIRCALLBACK_H): Likewise.
+ * lib/listfile.c (list_file, get_link_name_at): Likewise.
+ * lib/listfile.h (LISTFILE_H): Likewise.
+
+ Avoid link failure with -fno-common.
+ * locate/code.c (program_name): Declare "extern".
+
+2008-03-10 Eric Blake <ebb9@byu.net>
+
+ Don't truncate printed ino values. Fixes Savannah bug #15472.
+ * find/find.c (wd_sanity_check): Use PRIuMAX for platforms with
+ 64-bit ino_t.
+ * NEWS: Document this.
+
+2008-03-10 Justin Pryzby <justinpryzby@users.sourceforge.net> (tiny change)
+
+ * doc/find.texi: Various typo corrections.
+
+2008-03-16 James Youngman <jay@gnu.org>
+
+ Update gnulib.
+ * import-gnulib.config (gnulib_version): Update to a newer version
+ of gnulib.
+
+ Find optimises at -O2 by default.
+ * find/util.c (set_option_defaults): Use a default optimisation
+ level of 2 rather than 0.
+ * NEWS: Mention this change.
+
+ Begin work on findutils-4.5.x.
+ * configure.ac: We're now working on the 4.5.x release series, so
+ change the version number.
+ * NEWS: Likewise.
+
+2008-03-21 James Youngman <jay@gnu.org>
+
+ * find/testsuite/find.gnu/xtype-symlink.exp: Removed unnecessary
+ test code which created a insecure tempfile.
+
+2008-04-25 Eric Blake <ebb9@byu.net>
+
+ Support cygwin 1.7.0.
+ * find/parser.c (parse_newerXY)
+ [HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC]: Add support for another
+ form of birthtime.
+ * import-gnulib.config (gnulib_version): Update to pick up change
+ necessary for cygwin fstatat.
+
+2008-05-18 James Youngman <jay@gnu.org>
+
+ Update gnulib.
+ * import-gnulib.config (gnulib_version): Update to current head
+ version of gnulib.
+
+ Document effect of gnulib update, mainly on yesno().
+ * doc/find.texi (Unusual Characters in File Names): Explain that
+ the LC_CTYPE variable affects which characters are considered to
+ be printable by -printf %p, -print and -fprint.
+ (Querying): Explain in more detail how environment variables
+ affect the interpretation of the response to -ok and -okdir.
+ (Regular Expressions): Indicate that the locale configuration
+ affects the interpretation of regular expressions.
+ (Environment Variables): Describe how LC_COLLATE and LC_CTYPE
+ affect the interpretation of regular expressions. Indicate that
+ LC_MESSAGES affects the interpretation of the response to -ok.
+ * find/find.1 (-ok): Describe the effect of POSIXLY_CORRECT,
+ LC_CTYPE and LC_COLLATE.
+ (-okdir): Likewise.
+ (UNUSUAL FILENAMES): Describe how LC_CTYPE affects -printf %p,
+ -print, -fprint.
+ (STANDARDS CONFORMANCE): -ok and -okdir now obey the system's
+ definition of yes/no if POSIXLY_CORRECT is set. In any case,
+ LC_CTYPE and LC_COLLATE may have some effect. Point out that
+ the setting of LC_MESSAGES deternmines what pattern is used to
+ interpret the user's response to -ok/-okdir.
+ * find/parser.c: Remove definition of ISUPPER, which we no longer
+ need.
+ * NEWS: mention these changes.
+
+2008-05-28 James Youngman <jay@gnu.org>
+
+ Bugfix to the code that was previously supposed to fix bug #22662
+ in 4.5.0.
+ * find/pred.c (scan_for_digit_differences): Remember that wesaw
+ the first differing digit and also get the order of the
+ subtractionoperands right.
+ (do_time_format): Off by one error on checking for a nondigit
+ after the sequence of changed digits.
+ * NEWS: Mention this change.
+
+2008-06-19 James Youngman <jay@gnu.org>
+
+ * po/lt.po: New Lithuanian translation.
+ * NEWS: Mention this change.
+ * configure.ac: Add "lt" to ALL_LINGUAS.
+
+2008-06-19 Stepan Kasal <skasal@redhat.com>
+
+ * doc/find.texi (Cleaning Up): Move the note about -depth up.
+
+2008-06-19 James Youngman <jay@gnu.org>
+
+ * po/zh_CN.po: Updated the Chinese (simplified) translation.
+ * NEWS: Mention this change.
+
+2008-06-19 Per Starbäck <starback@stp.lingfil.uu.se> (tiny change)
+
+ * doc/find.texi (Unusual characters in filenames): Directory
+ separator is the slash, not the backslash.
+
+2008-06-20 RB <aoz.syn@gmail.com>
+
+ * doc/find.texi (Finding the Shallowest Instance): Add worked
+ example explaining how to efficiently locate the shallowest
+ instances of '.svn' or 'CVS' in a forest of project trees.
+ * find/find.1 (EXAMPLES): Add the same example here (with slightly
+ briefer wording).
+
+2008-06-21 James Youngman <jay@gnu.org>
+
+ * import-gnulib.config (gnulib_version): Updated to current HEAD
+ gnulib.
+
+ Fix Savannah bug #23663, crash in some locales for %AX.
+ * find/pred.c (do_time_format): Fix off-by-one error in handling
+ of the buffer used to print timestamps. This caused a crash in
+ some locales when handling the %AX format specifier.
+ * NEWS: Mention this bugfix.
+
+2008-06-28 James Youngman <jay@gnu.org>
+
+ Fix savannah bug #23070 (find.1 needs update for -perm /000)
+ * find/find.1 (-perm /mode): The all-bits-zero behaviour has
+ already changed.
+ * NEWS: Mention the fix.
+
+2008-08-04 James Youngman <jay@gnu.org>
+
+ * find/find.1: correct typo seach->seach (reported by Bobby
+ R. Ward).
+ * locate/updatedb.1: correct typo Any -> any (reported by Reuben
+ Thomas).
+
+2008-08-31 James Youngman <jay@gnu.org>
+
+ New Czech translation.
+ * po/cs.po: New Czech translation.
+ * configure.ac: Added cs (Czech) to ALL_LINGUAS.
+
+ Fix Savannah bug #24169 (-neweraa without following arg coredumps).
+ * find/parser.c (parse_newerXY): Issue a fatal error message if
+ there is no following argument.
+ * find/testsuite/find.gnu/sv-bug-24169.exp: Test case for this
+ bug.
+ * find/testsuite/Makefile.am (EXTRA_DIST_EXP): Also distribute
+ this new test file.
+ * NEWS: Mention this change.
+
+2008-09-07 James Youngman <jay@gnu.org>
+
+ Fix bug #23996 (integer overflow when parsing "-used 3").
+ * find/parser.c (get_relative_timestamp): Check for overflow after
+ the fact by comparing the relative sizes of the result and the
+ operands. This prevents an incorrect diagnosis of overflow when
+ the resulting tv_sec is correctly negative (as is normally the
+ case for -used).
+
+2008-11-08 Jim Meyering <meyering@redhat.com>
+
+ * README-CVS: tiny typo fix (s/fileutils/findutils/).
+
+2008-11-08 James Youngman <jay@gnu.org>
+
+ * import-gnulib.config (gnulib_version): Update version of gnulib,
+ mainly in order to pull in Jim Meyering's efficiency improvements
+ to fts. See http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commit;h=2f2978ede97205c49d3e568ccffa5a04fb53326b
+ * lib/dircallback.c: gnulib's lstat.h is now gone, instead it
+ provides <sys/stat.h> where that is needed.
+
+2008-11-30 Jim Meyering <meyering@redhat.com>
+
+ Pass file type information in dirent.d_type from fts to find.
+ * find/ftsfind.c (consider_visiting): When fts provides usable
+ dirent.d_type information, and the only stat information required
+ by find's predicates is the file-type information normally found
+ in stat.st_mode (that is, not the permissions information), skip
+ the now-redundant stat calls. This change is useful only with the
+ very latest version of fts.c from gnulib. Requires gnulib version
+ d4b129b8e5f8a8d1198020fd6fc79310d305936c or later.
+ * find/ftsfind.c (find): Set state.have_type if fts returned type
+ information.
+
+2008-12-01 Geoff Gole <geoffgole@gmail.com>
+
+ * xargs/xargs.1 (STANDARDS CONFORMANCE): Fix typo.
+
+2008-12-01 James Youngman <jay@gnu.org>
+
+ * po/fr.po: Updated French translation.
+
+ * po/id.po: Updated Indonesian translation.
+
+2008-12-21 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #25144: Misleading message for find -user unknown.
+ * find/parser.c (parse_user): If there is no known group for the
+ specified user (and it does not appear to be a uid), issue a
+ fatal error message instead of returning false, because the error
+ message that results from a return of false is "invalid argument",
+ which is misleading in this case. Similarly for a missing or an
+ empty argument.
+
+2008-12-23 James Youngman <jay@gnu.org>
+
+ Fix Savannah bug #25154: Failure to compile with GCC-2.95.4
+ * find/parser.c (do_parse_xmin): Move declaration of struct
+ timespec origin before the statements; declarations after
+ statements are a GCC extension we were accidentally relying on.
+
+2008-12-26 Jim Meyering <meyering@redhat.com>
+
+ find: avoid using undefined statbuf
+ * /ftsfind.c (consider_visiting): Use local variable, mode,
+ rather than possibly undefined statbuf.st_mode.
+
+2009-01-17 Thien-Thi Nguyen <ttn@gnuvola.org>
+
+ find: Fix -regexptype parse specification bug: declare as POSOPT.
+ * find/parser.c (parse_table): Parse -regextype as POSOPT.
+
+1987-02-21 Eric B. Decker <cire@soe.ucsc.edu>
+
+ * defs.h: added global convert_glob for name
+
+ -----
+
+ Copyright (C) 1987, 1990, 1991, 1992, 1993, 1994, 1996, 1997,
+ 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007, 2008,
+ 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
+
+ Copying and distribution of this file, with or without
+ modification, are permitted provided the copyright notice
+ and this notice are preserved.