Use a better way of locating any exp files (or other test files) that are missing...
[findutils.git] / ChangeLog
blob904ec7275e08e34fce3fbf8e27a6f40a47480804
1 2007-04-08  James Youngman  <jay@gnu.org>
3         * configure.in: Set @AUXDIR@ (to the location of the build-aux
4         directory).
5         * build-aux/check-testfiles.sh: New script, which checks that all
6         the DejaGnu test files have been included in the distribution and
7         (more helpfully) lists any that are missing.
8         * Makefile.am (findutils-check-testfiles): Use
9         build-aux/check-testfiles.sh.
10         * locate/testsuite/Makefile.am (EXTRA_DIST_EXP): distribute 
11         locate/testsuite/locate.gnu/sv-bug-14535.exp. 
13         * config.rpath, depcomp, missing: Moved into build-aux/.
14         * configure.in(AC_CONFIG_AUX_DIR): Find aux files in $SRCDIR/build-aux,
15         not in $SRCDIR.
17 2007-03-31  James Youngman  <jay@gnu.org>
19         * find/tree.c (build_expression_tree): Issue more specific error
20         messages; distinguish the case where the predicate is invalid from
21         the cases where a required argument is missing, and a supplied
22         argument is invalid.
24         * import-gnulib.config (gnulib_version): Update to 2007-03-30
25         version of gnulib.
27 2007-03-28  James Youngman  <jay@gnu.org>
29         * find/defs.h (set_stat_placeholders): utility function for
30         initialising the sturct stat fields that NetBSD doesn't always set
31         (like st_birthtime where the file is on a filesystem not
32         supporting birthtime).
33         * find/util.c: set_stat_placeholders(): new function
34         (get_statinfo): Call set_stat_placeholders().
35         (optionh_stat, optionl_stat, optionp_stat): ditto
36         * find/find.c (main, wd_sanity_check, safely_chdir_lstat,
37         process_dir): use set_stat_placeholders().
38         * find/parser.c (parse_anewer, parse_cnewer, parse_newer,
39         parse_newerXY): ditto.
40         (get_stat_Ytime): Support birth time ('B').
41         (parse_newerXY): Support st_birthtime.
42         * find/fstype.c (set_fstype_devno): Use set_stat_placeholders().
43         * find/pred.c (pred_xtype): Use set_stat_placeholders().
44         (pred_newerXY): Support birth time.
45         (pred_fprintf, format_date): ditto ("%Bx").
47 2007-03-25  James Youngman  <jay@gnu.org>
49         * xargs/xargs.c (main): For "xargs --show-limits" where stdin is a
50         terminal, warn the user that the program specified (or /bin/echo)
51         will be run at least once, if that is what will happen.
53 2007-03-24  James Youngman  <jay@gnu.org>
55         * import-gnulib.sh: Added option -d, allowing the user to use a
56         local version of gnulib, perhaps because they have local changes.
57         
58 2007-03-13  James Youngman  <jay@gnu.org>
60         * find/parser.c (parse_quit): Estimated success rate of -quit is
61         100%.
63 2007-03-08  James Youngman  <jay@gnu.org>
65         * find/find.1 (TESTS): Document -newerXY, indicate that reference
66         files are only examined once.
67         (HISTORY): Indicate when various features were added
68         (BUGS): Indicate that -ok ignores LC_COLLATE.
70 2007-03-07  James Youngman  <jay@gnu.org>
72         * import-gnulib.config: (gnulib_version): Use gnulib version
73         2007-03-05
74         (modules): Added getdate
76         * find/Makefile.am (LDADD): Added @LIB_CLOCK_GETTIME@ for
77         clock_gettime(), if it is available.
79         * find/defs.h: (enum xval): New enumeration, representing the
80         value of X used in the -newerXY test.  It is stored in the reftime
81         member of 'union args'.
82         (struct predicate): reftime is also used by -newerXY.
83         (enum arg_type): Added ARG_SPECIAL_PARSE for -newerXY, because the
84         parsing function needs to look at the name of the test.
85         (struct options): start_time is now a struct timespec, not a
86         time_t. 
88         * find/parser.c: (parse_newerXY): New parsing function for
89         -newerXY, a feature copied from FreeBSD (also present other BSD
90         implementations too)
91         (get_stat_Ytime): New function; returns st_atime, st_mtime or
92         st_ctime from struct stat, as a timespec, as required according to
93         the value of Y in -newerXY.
94         (found_parser): Factored the tail out of find_parser.
95         (find_parser): Moved tail into found_parser.  Add special handling
96         for -newerXY.
97         (do_parse_xmin): New argument xv, indicating the value to which
98         predicate->reftime.xval should be set.
99         (parse_amin): Pass XVAL_ATIME to do_parse_xmin.
100         (parse_cmin): Pass XVAL_CTIME to do_parse_xmin.
101         (parse_mmin): Pass XVAL_MTIME to do_parse_xmin.
102         (parse_newer): Set args.reftime.xval to XVAL_MTIME.
103         
104         * find/pred.c (pred_table): added pred_XY.
105         (pred_fls): options.start_time is now a struct timespec, so just
106         pass the tv_sec member to list_file.
107         (pred_ls): ditto
108         (pred_newerXY): New function, implementing -newerXY.
110         * find/tree.c (costlookup): pred_newerXY needs stat information.
111         (build_expression_tree): For predicates of type ARG_SPECIAL_PARSE,
112         pass them in the name of the predicate (that is, don't advance
113         argc).
115         * find/util.c (now): New function for setting options.start_time.
116         Use nanoseconds where it is available.
117         (set_option_defaults): Use now() rather than time().
119 2007-03-03  James Youngman  <jay@gnu.org>
121         * import-gnulib.sh: Pass --with-tests to gnulib-tool so that relevant
122         gnulib unit tests are built and are run for "make check".  
124         * configure.in (AC_CONFIG_FILES): Add tests/Makefile (the makefile
125         for the gnulib unit tests).
127         * Makefile.am: Add 'tests' to SUBDIRS.
129         * .cvsignore: Add 'tests'.
130         
131         * import-gnulib.config (modules): Also use Gnulib modules
132         mbscasestr and mbsstr in order to perform correct string searching
133         in multibyte strings, in order to fix Savannah bug #14535.
135         * locate/testsuite/locate.gnu/sv-bug-14535.exp: new test case for
136         Savannah bug #14535.
137         
138         * locale/locate.c (visit_substring_match_nocasefold): Use mbsstr
139         rather than strstr, in order to correctly support multibyte
140         strings.  
141         (visit_substring_match_casefold): Use mbscasestr rather than
142         strstr in order to correctly support case-folding in a multibyte
143         environment (e.g. with UTF-8 characters outside the normal ASCII
144         range).  This fixes Savannah bug #14535.
145         (struct casefolder): No longer needed, removed
146         (visit_casefold): No longer needed, removed.
147         (lc_strcpy): No longer needed, removed.
148         (search_one_database): Removed redundant variable need_fold and
149         the code which used to set it.  It had controlled the adding of
150         the visitor function visit_casefold, but that function itself is
151         no longer required.  Also there is now no need to pass in a
152         lower-case argument to visit_substring_match_casefold, so don't
153         pass that in the context argument.
155         * locate/locate.c (usage): Fixed typo.
156         
157 2007-03-01  James Youngman  <jay@gnu.org>
159         * doc/find.texi (Multiple Files): Document the construct
160         -exec sh -c 'cmd "$@" final-args' {} + - fixing Savannah bug
161         #18554.
162         
163 2007-02-28  James Youngman  <jay@gnu.org>
165         * import-gnulib.config: New file.  Specifies which version of
166         Gnulib we need to check out and build from.
167         
168         * import-gnulib.sh: Use import-gnulib.config.
169         
170         * README-CVS: Describe the new method of building from CVS.
171         
172         * lib/gnulib-version.h, lib/gnulib-version.sh: New files; code for
173         reporting which version of Gnulib we built findutils from.
174         
175         * lib/Makefile.am: Build gnulib-version.c out of
176         ./gnulib-version.config by using lib/gnulib-version.sh.
177         
178         * Makefile.am: Ship import-gnulib.config and import-gnulib.sh.
179         
180         * .cvsignore: Ignore gnulib-cvs
181         
182         * lib/.cvsignore: Ignore gnulib-version.c
183         
184         * find/parser.c, locate/code.c, locate/locate.c, xargs/xargs.c:
185         Report which version of Gnulib we were built from.
187 2007-02-25  James Youngman  <jay@gnu.org>
189         * find/find.c (process_dir): Removed duplicated (shadow)
190         declaration of did_stat.  Assert that we did not use subdirs_left
191         if subdirs_unreliable is true.
193         * find/parser.c (parse_size): Removed unused variable rate.
194         (parse_time): Removed unused variable num_days_approx.
195         (get_num): Removed unused variables ok and suffixes.
197         * find/pred.c (do_fprintf): Indicate that the function needs a
198         return value (referring to Savannah bug #19146).
200         * find/tree.c (predlist_dump): Commented out unused function
201         (predlist_merge_nosort): Commented out unused function
202         (getrate): Returns type is float, so return 1.0f not 1.0.
203         (calculate_derived_rates): Removed unused variable rate.  Use a
204         switch statement rater than ifs.
206         * find/util.c (usage): Removed unused variable i.
208         * lib/buildcmd.c (bc_do_insert): Removed unused variable
209         need_prefix.
210         (bc_init_controlinfo): annotate a line (with #warning) which is
211         probably a bug.
213         * locate/locate.c: #include <grp.h> for the benefit of the
214         setgroups() call in drop_privs.
215         (slocate_db_pathname): Commented out unused variable.
216         (set_max_db_age): error command has no format directive, so
217         remove the unused extra argument.
218         (looking_at_slocate_db): Removed unused variables magic and
219         lenwanted.  Fix bug where result is indeterminate (due to falling
220         off the end of the function) if the first character is a nondigit.
221         (search_one_database): Eliminate (spurious) compiler warning
222         rlating to possible use before initialisation of slocate_seclevel.
224         * xargs/xargs.c (get_char_oct_or_hex_escape): Eliminate spurious
225         compiler warning on variable p.
226         (main): Removed unused varible env_too_big
229 2007-02-24  James Youngman  <jay@gnu.org>
231         * find/parser.c (pred_sanity_check): define this function even for
232         _NDEBUG, but do nothing in that case.
233         (estimate_timestamp_success_rate): correct (invert) the sense of
234         the subtraction used to find the file's age.
236         * import-gnulib.sh (findutils_modules): Import Gnulib modules
237         xstrtod and timespec.
239         * find/parser.c (get_comp_type): Refactored out of get_num.
240         (get_num): call get_comp_type to find the comparison type.
241         (get_relative_timestamp): new function replacing get_num_days.
242         (get_num_days): Remove.
243         (do_parse_xmin): Support fractional arguments and
244         nanosecond timestamps.
245         (parse_used): ditto
246         (parse_time): ditto
248         * xargs/xargs.c (read_line): Give a warning message if a NUL is
249         found in the input (this function is called only when -0 is not in
250         effect).
252         * xargs/xargs.c (nullwarning_given): New variable indicating if
253         the NULL character warning had already been issued.
255         * doc/find.texi (Multiple Files): Describe how trailing blanks are
256         handled when -L is in effect.
257         
258         * xargs/xargs.c (read_line): Use an enum rather than
259         preprocessor macro values for the lexer state.
261         * lib/savedirinfo.c (free_dirinfo): Fixed memory leak (trivial
262         patch from Supriya Kannery)
264 2007-01-22  James Youngman  <jay@gnu.org>
266         * .cvsignore (install-sh): Ignore, since the install-sh file is no
267         longer held in the findutils CVS repository.
268         
269         * find/testsuite/config/unix.exp (find_start): allow a test to be
270         skipped for either the old or the new find executable.
271         * find/testsuite/find.gnu/execdir-pwd.exp,
272         find/testsuite/Makefile.am: 
273         New test, covering Savannah bug #18466.  This test currently fails 
274         for the ftsfind binary and passes for the oldfind binary.  Due to 
275         a limitation in  the way that we perform the test, we can't tell
276         the test suite to expect a failure in the new binary but not the
277         old.  Therefore we skip the test for the old binary. 
279         * lib/regeprops.c (describe_regex_syntax): fixed a typo in the text
280         * doc/find.texi (Multiple Files): fixed a typo
282 2007-01-16  James Youngman  <jay@gnu.org>
284         (ctime_format): format the time manually (rather than using ctime)
285         in order to include the sub-second part of the time.
286         (weekdays, months): new static variables used by ctime_format.
287         (format_date): append a the sub-second part of the timestamp to
288         the seconds part of date/time output.
289         
290 2007-01-15  James Youngman  <jay@gnu.org>
292         * find/defs.h (time_val): define struct; use timespec to hold time
293         in the 'reftime' member.
294         (args): use struct timespec instead of time_t for predicates
295         -newer, -anewer, -cnewer.  * find/parser.c (includes): include
296         stat-time.h.
297         (parse_anewer, parse_cnewer, parse_newer): use struct timespec to
298         hold timestamps.  * find/pred.c (compare_ts): new function for
299         comparing timestamps in struct timespec.
300         (pred_anewer, pred_cnewer, pred_newer): use compare_ts() to
301         compare timestamps (hence takinng acoung of sub-second
302         granularity).
303         * find/ftsfind.c: Various improvements to comments.
304         (is_fts_enabled): Newline before function name to comply with GNU
305         coding standard.
307 2007-01-13  James Youngman  <jay@gnu.org>
309         * lib/regexprops.c (describe_regex_syntax): fixed typo
310         
311         * xargs/xargs.c (read_line): Fixed Savannah bug# 18714; VT and FF
312         are not separators, according to POSIX (in the POSIX locale).
314         * xargs/testsuite/Makefile.am,
315           xargs/testsuite/input/formfeeds.xi, 
316           xargs/testsuite/input/verticaltabs.xi, 
317           xargs/testsuite/xargs.posix/sv-bug-18714.exp, 
318           xargs/testsuite/xargs.posix/sv-bug-18714.xo, 
319           xargs/testsuite/xargs.posix/sv-bug-18714b.exp, 
320           xargs/testsuite/xargs.posix/sv-bug-18714b.xo: Tests for Savannah
321           bug #18714.
323         * xargs/xargs.c (usage): Removed suprious "[" in --help output
324         (fixes Savannah bug #18384).
326         * locate/locate.c: Implement the option --max-database-age.
327         (main) Accept the option. 
328         (set_max_db_age): Parse the argument.
330         * locate/locate.c (dolocate): If the database is more than N days
331         old, indicate its actual age in the warning message we produce.
333         * locate/locate.1, docs/find.texi: Document --max-database-age
335         * THANKS: Thank Dean Gaudet for the idea of -sparse.
337         * po/findutils.pot: Updated from Translation Project
339         * po/ga.po, po/pl.po, po/nl.po, po/tr.po, po/hu.po: Updated from
340         the Translation Project
342 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> 
344         * doc/find.texi: Fix some typos. (trivial change)
346 2007-01-07  James Youngman  <jay@gnu.org>
348         * find/parser.c (parse_perm), find/testsuite/find.gnu/perm000.exp,
349           find/testsuite/find.gnu/perm000.xo: -perm /000 is now quivalent
350           to -perm -000, as dscussed in Savannah bug #14748.  The warning
351           message we issue when the user does this now explains that the
352           defintion changed as we promised it would in 2005.
354         * xargs/xargs.c (read_line): Correctly handle quoted empty
355         arguments occurring first or last on a line (by adding an empty
356         argument to the output).  Fixes Savannah bug #18713.
358         * xargs/testsuite/xargs.sysv/sv-bug-18713.exp,
359         xargs/testsuite/xargs.sysv/sv-bug-18713.xo,
360         xargs/testsuite/input/empty.xi: Test case for Savannah bug #18713.
361          
363 2006-12-29  James Youngman  <jay@gnu.org>
365         * find/testsuite/config/unix.exp:
366         Verify that find_start is invoked with wither a p (pass) or an f
367         (fail) argument.
369         * lib/listfile.c, lib/listfile.h:
370         define find_blocksize() and provide a declaration for get_link_name()
372         * find/testsuite/config/unix.exp: Updated copyright years.
374         * 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:
375         Avoid tests using -execdir if $PATH contains a relative directory
377         * find/parser.c:
378         Also flag $PATH values containing relative directories as being dangerous.
380         * find/parser.c, find/defs.h, find/util.c:
381         Instead of selecting the old or new exec handling code with the NEW_EXEC macro, just use the new code all the time
383         * locate/testsuite/config/unix.exp:
384         Fixed Savannah bug #13252, test suite failure caused by the fact that 'file normalize' is not available in Tcl 8.3
386         * NEWS, find/pred.c:
387         Fixed Savannah bug #18433, compilation failure with configure --enable-debug
389 2006-12-28  James Youngman  <jay@gnu.org>
391         * NEWS: Document addition of %S.
393         * find/defs.h, find/find.1, find/parser.c, find/pred.c:
394         Implemented %S (sparseness) printf format, and general refactoring and cleanup of printf predicate
396 2006-12-01  James Youngman  <jay@gnu.org>
398         * NEWS, configure.in: Begin work on findutils 4.2.30
400         * find/find.c:
401         Fix compilation error for oldfind if --enable-debug was passed to configure
403         * NEWS, configure.in: Prepare for work on findutils-4.3.3
405 2006-11-25  James Youngman  <jay@gnu.org>
407         * find/testsuite/Makefile.am: Added test case for Savannah bug #17782
409         * doc/textinfo.tex: Removed; we now use the version supplied 
410         by automake.
411         
412         * m4/mkinstalldirs.m4: Added this file.  It's an excerpt from an
413         old version of gnulib's m4/nls.po file.  The current version of
414         gnulib does not expand MKINSTALLDIRS, but gettext-0.14.6's version
415         of po/Makefile.in.in expects it to be expanded.  This m4 file
416         fills the gap.
418 2006-11-20  James Youngman  <jay@gnu.org>
420         * po/et.po, po/bg.po, po/pl.po, po/nl.po, po/tr.po: Updated
421         translations for Bulgarian, Estonian, Dutch, Polish and Turkish.
423 2006-11-08  James Youngman <jay@gnu.org>
425         * find/testsuite/Makefile.am:
426         Oops, indicate the right directory for the new test files
428         * 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:
429         Savannah bug#18222 - test case
431         * ChangeLog, lib/buildcmd.c:
432         Fixed Svannah bug #17782 ('./' prefix added at start of arg while it should be added at the start of the expansion of {})
434         * find/ftsfind.c (process_all_startpoints): Set
435         state.starting_path_length for every pathname argument.
436         This fixes Savannah bug #18222.
438         * find/pred.c (pred_prune): -prune should have an effect only if we are
439          currently considering a directory (Savannah bug #15531).
440         
441 2006-10-15  James Youngman <jay@gnu.org>
443         * lib/buildcmd.c: Fixed Savannah bug #17782, in which "find
444         -execdir echo "foo {}" runs 'echo ./foo filename' instead of the
445         correct command 'echo foo ./filename'.
446         
447         * po/hu.po, po/sl.po: Updated Hungarian and Slovenian po files
449 2006-08-21  James Youngman <jay@gnu.org>
451         * find/parser.c, find/testsuite/Makefile.am, find/testsuite/find.gnu/sv-bug-17490.exp:
452         Fixed Savannah bug #17490, which was a coiredump when -regex ZZZ was the final test on the command line
454 2006-08-20  James Youngman <jay@gnu.org>
456         * find/parser.c: Merged the fix for the trailing % in "find -printf".
458 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
460         Port recent fixes for symbolic modes involving X from gnulib,
461         and clarify the documentation in this area.
462         * doc/find.texi: Use "file mode bits" when talking about
463         all the file mode bits (including setuid, setgid, and sticky),
464         and "permissions" when talking only about permissions bits
465         (read, write, execute/search).  Use "execute/search" to
466         talk about the x bit, since it means both.  You do not need
467         permission to the linked-to file to follow a symlink for
468         syscalls like "stat", but you do need search permission for
469         the directories you traverse.  Clarify the explanation of
470         -perm.  Use "that" instead of "which" when "which" isn't
471         quite correct English.
472         (Mode Bits): Renamed from Permissions.  All uses changed.
473         * doc/perm.texi: Sync from coreutils 6.0.
474         * find/defs.h (struct perm_val.val): Now an array of two items,
475         one for non-directories, and one for directories.  This is
476         to handle symbolic modes like +X correctly.
477         * find/parser.c (parse_perm): Likewise.  Also, adjust to
478         latest gnulib interface for mode_adjust.
479         * find/pred.c (pred_perm): Likewise.
480         * find/testsuite/Makefile.am (EXTRA_DIST_XO): Add find.posix/perm-X.xo.
481         (EXTRA_DIST_EXP): Add find.posix/perm-X.exp.
482         * find/testsuite/find.posix/perm-X.exp: New file.
483         * find/testsuite/find.posix/perm-X.so: New file.
485 12006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
487         Port to latest gnulib, and simplify the bootstrapping procedure.
488         * intl: Remove this directory and everything in it.
489         * depcomp, install-sh, missing, mkinstalldirs, doc/texinfo.tex:
490         Remove these files from CVS, as they are now gotten from gnulib.
491         * README-CVS: Don't recommend "autoreconf -i", as it doesn't work
492         for us.
493         * import-gnulib.sh (findutils_files): New var.  Grab this stuff
494         from gnulib.
495         (findutils_modules): Add fopen-safer; remove stdio-safer.  This
496         adjusts to latest gnulib.
497         (modules): Remove obsolete reference to intl_modules.
498         * .cvsignore: Remove stamp-h; add stamp-h1.
499         * doc/.cvsignore: Add regexprops.texi.
500         * find/.cvsignore: Add oldfind.
501         * lib/.cvsignore: Add .deps, regexprops.
502         * m4/.cvsignore: Add Makefile.
503         * po/.cvsignore: Add stamp-po.
505 2006-08-19  James Youngman <jay@gnu.org>
507         * locate/testsuite/config/unix.exp, locate/testsuite/locate.gnu/bigprefix1.exp:
508         Explicit checks for parefixes which are within range of a short, but outside the one-byte range
510         * locate/testsuite/locate.gnu/bigprefix1.exp, locate/testsuite/locate.gnu/exceedshort.exp, locate/testsuite/locate.gnu/space1st.exp:
511         New file.
513         * locate/testsuite/Makefile.am, locate/testsuite/locate.gnu/exceedshort.exp, locate/testsuite/locate.gnu/space1st.exp:
514         Patch from Tavis Ormandy; check frcode handles initial space end encodes paths with more than 2^16 characters in the common prefix (trivial change)
516         * locate/frcode.c: Changes to avoid overflows
518 2006-08-11  James Youngman <jay@gnu.org>
520         * locate/frcode.c:
521         Avoid producing an invalid database if the first item begins with a space
523 2006-08-10  James Youngman <jay@gnu.org>
525         * find/pred.c, import-gnulib.sh, lib/listfile.c:
526         Updated callers of the gnnulib filemode module so that they work with the 2006-07-09 version of gnulib
528         * config.rpath: Updated config.rpath from autotools
530 2006-08-08  James Youngman <jay@gnu.org>
532         * locate/locatedb.h:
533         Automatically verify (at compile time) that the frcode datastream
534         cannot get desynchronised.
536         * find/ftsfind.c:
537         Fixed Savannah bug #10494 (-maxdepth does not yield the same stat savinf in ftsfind as oldfind)
539         * find/ftsfind.c: display fts_level for find -D search
541         * find/util.c: Support find -D search
543         * locate/locate.c:
544         If the user specified -E but the database is an slocate database, do
545         not produce a list of files they cannot stat.  Issue an error message
546         explaining the problem.
548         * locate/locate.c:
549         Issue states messages in a way which indicates more clearly what's
550         happening when the numbers are reduced because not every filename
551         matched the pattern.
553         * locate/locate.c: Better error checking in drop_privs().
555 2006-08-07  James Youngman <jay@gnu.org>
557         * NEWS, locate/locate.c, locate/locatedb.h:
558         Added support for slocate database format
560         * xargs/xargs.c:
561         Removed unused code (tivial patch from Miloslav Trmac).
563         * xargs/xargs.c: Removed unused code.
565         * doc/find.texi:
566         Clarify that the output format for locate -S differs from BSD's.
568         * NEWS, find/find.1:
569         Savannah bug #15360: explain global vs. positional options more clearly in the manual page
571         * NEWS: Typo in subsection header (* should be **).
573         * NEWS, find/find.1:
574         Savannah bug #15360: explain global vs. positional options more clearly in the manual page
576         * doc/find.texi: Fixed some clumsy phrasing
578         * NEWS, configure.in:
579         Now diverging again from the released tarball, so change once more to -CVS version number suffixes
581 2006-08-06  James Youngman <jay@gnu.org>
583         * locate/locate.c: Fixed a typo in a comment.
585         * NEWS, configure.in: Moving on towards 4.3.2...
587         * find/testsuite/config/unix.exp:
588         Check that we can see the find.o file in the right position relative
589         to $base_dir to ensure that we are indeed testing the program we just built.
591         * find/testsuite/config/unix.exp:
592         Be more paranoid about whether we're really checking the right version
593         of find.
595         * NEWS, configure.in: Prepare for release of 4.3.1
597         * doc/find.texi: Document the -O and -D options
599         * find/defs.h, find/find.1, find/util.c:
600         'find -D help' now explains the available debugging options
602         * 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:
603         Make dist changed all the po files again
605 2006-08-05  James Youngman <jay@gnu.org>
607         * NEWS: Described more changes in 4.3.1.
609         * locate/testsuite/config/unix.exp:
610         Set the  environment variable so that updatedb knows where to find it; it's not in BINDIR yet during 'make check'
612         * 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:
613         Make dist changed all the po files again :)
615         * po/et.po, po/vi.po: UPdated the Estonian and Vietnamese translations
617         * NEWS, configure.in: Prepare for release of findutils-4.2.28
619         * 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:
620         Make dist changed all the po files again :)
622         * configure.in: Added Bulgarian translation.
624         * po/bg.po: Include Bulgarian translation
626         * configure.in: Added Bulgarian translation.
628         * po/et.po, po/vi.po: Updated Estonian and Vietnamese translations
630         * NEWS: Removed spurious comma.
632         * NEWS: Listed the updated translations.
634         * find/parser.c, lib/buildcmd.c, lib/buildcmd.h, xargs/xargs.c:
635         Fixed Savannah bug#16738, find does not subtract environment size in find .. -exec {} +
637         * NEWS: Updated the list of bugfixes etc.
639 2006-06-15  James Youngman <jay@gnu.org>
641         * NEWS: Described recent changes
643         * configure.in: fix to how we invoke the gnulib regex module
645         * find/find.1:
646         Savannah bug #16269: avoid confusion over what type of quotes to use
647         in an example.
649         * find/parser.c: Option -nowarn should not itself produce a warning
651         * find/defs.h: Remoevd useless declaration of last_pred
653 2006-06-14  James Youngman <jay@gnu.org>
655         * 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:
656         Updated translation files ga pl sv tr nl ca vi bg fr
658         * locate/updatedb.sh:
659         Fixed Savannah bug #16579 (su false should be su -c false)
661 2006-04-01  James Youngman <jay@gnu.org>
663         * find/find.c:
664         Fixed Savannah bug #15800: "Hard link count is wrong" reports wrong
665         directory name.
667 2006-03-31  James Youngman <jay@gnu.org>
669         * po/hu.po: Updated Hungarian translation
671 2006-01-04  James Youngman <jay@gnu.org>
673         * find/testsuite/find.posix/sizetype.exp, find/testsuite/find.posix/sizetype.xo, find/testsuite/find.posix/typesize.exp, find/testsuite/find.posix/typesize.xo:
674         Additional tests for -type -size and -size -type
676         * 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:
677         Initial implementation of a cost-based optimiser
679 2005-12-23  James Youngman <jay@gnu.org>
681         * find/parser.c: Refactor of parse_[acm]time
683         * find/defs.h, find/find.c, find/finddata.c, find/ftsfind.c, find/tree.c, find/util.c:
684         last_pred can be a static in tree.c rather than a global variable
686         * find/tree.c, find/finddata.c:
687         Moved some global data out of finddata.o and into static variables in tree.c
689         * 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:
690         Fixed many compilation warnings
692         * find/find.c, find/ftsfind.c, find/util.c:
693         Evaluating the predicates can change the contents of the data structure (for example to add another exec item)
695         * find/defs.h, find/find.c, find/ftsfind.c, find/tree.c, find/util.c:
696         Re-factored a lot of common expression-handling code out of find.c and ftsfind.c, mainly into tree.c
698         * find/find.c, find/ftsfind.c, find/tree.c:
699         Savannah bug #15271: more helpful error messages for cases where there is a missing expression
701 2005-12-20  James Youngman <jay@gnu.org>
703         * 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:
704         Savannah bug #15195: more helpful error messages for 'find . ( )' or 'find . \!'
706         * ChangeLog: Added entries for recent changes.
708         * find/defs.h, find/find.c, find/ftsfind.c, find/testsuite/find.posix/bracket-depth.exp, find/util.c:
709         Further fix to bug# 15235: a leading comma is a filename not an expression
711         * find/defs.h, find/parser.c, find/testsuite/Makefile.am, find/testsuite/find.posix/empty-parens.exp, find/tree.c:
712         Accept 'find ( -depth )' but reject 'find ( )'
714         * 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:
715         did make dist
717         * find/testsuite/find.gnu/delete.exp:
718         Use the new find program, and the new way of locating it (/ instead of )
720         * find/testsuite/Makefile.am: Added bracket-depth.exp.
722         * NEWS, configure.in: We have moved on from 4.3.0
724         * 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:
725         Avoid getting confused by filename arguments of which the first
726         character looks like a predicate, for example ',x' or '!x' or
727         '(x' (Savannah bug #15235).
729 2005-12-20  James Youngman <jay@gnu.org>
731         * find/defs.h, find/find.c, find/ftsfind.c,
732         find/testsuite/find.posix/bracket-depth.exp, find/util.c: Further
733         fix to bug# 15235: a leading comma is a filename not an expression
735         * find/defs.h, find/parser.c, find/testsuite/Makefile.am,
736         find/testsuite/find.posix/empty-parens.exp, find/tree.c: Accept
737         'find ( -depth )' but reject 'find ( )'
739         * find/testsuite/find.gnu/delete.exp: Use the new find program,
740         and the new way of locating it ($OLDFIND/$FTSFIND instead of $FIND)
742         * find/testsuite/Makefile.am: Added bracket-depth.exp.
744         * NEWS, configure.in: We have moved on from 4.3.0
746         * find/defs.h, find/find.c, find/ftsfind.c,
747         find/testsuite/Makefile.am, find/testsuite/find.gnu/delete.exp,
748         find/testsuite/find.posix/files-not-expressions1.exp,
749         find/testsuite/find.posix/files-not-expressions1.xo,
750         find/testsuite/find.posix/files-not-expressions2.exp,
751         find/testsuite/find.posix/files-not-expressions2.xo,
752         find/testsuite/find.posix/files-not-expressions3.exp,
753         find/testsuite/find.posix/files-not-expressions3.xo, find/util.c:
754         Avoid getting confused by filename arguments of which the first
755         character looks like a predicate, for example ',x' or '!x' or '(x'
756         (Savannah bug #15235).
758 2005-12-19  James Youngman <jay@gnu.org>
760         * find/testsuite/config/unix.exp:
761         Run every test twice, once with the old (non-fts) binary and once with
762         the new (fts-enabled) binary.
764 2005-12-19 Eric Blake <ebb9@byu.net>
766         * find/testsuite/Makefile.am,
767         find/testsuite/find.posix/sv-bug-15235.xo, 
768         find/testsuite/find.posix/sv-bug-15235.exp: New tests for Savannah
769         bug 15235.
770         
771         * NEWS, find/find.1, doc/find.texi (Invoking find): Document bug
772         fix for Savannah bug 15235.
774 2005-12-16  James Youngman <jay@gnu.org>
776         * xargs/xargs.1, xargs/xargs.c: Fixed bug# 15211, that xargs
777         --show-limits is not documented in the manpage or in the usage
778         message
780 2005-12-12  James Youngman <jay@gnu.org>
782         * find/testsuite/find.gnu/access.exp:
783         Don't leave junk files lying around the place
785         * README-CVS: Update the the instructions for getting gnulib; the
786         CVS arrangements at Savannah have changed.
788         * ChangeLog, NEWS, doc/find.texi, doc/perm.texi, find/defs.h, find/parser.c:
789         Merged changes from 4.2.x branch again
791         * NEWS, doc/find.texi, find/defs.h, find/find.c, find/ftsfind.c,
792         find/parser.c, find/pred.c, find/util.c, lib/listfile.c,
793         lib/listfile.h: Initial code to allow control over how -ls quote
794         (or does not quote) control characters; not enabled yet
796 2005-12-11  James Youngman <jay@gnu.org>
798         * ChangeLog, THANKS, xargs/xargs.c:
799         Fixed spelling errors in Bob Proulx's name.  Sorry, Bob.
801 2005-12-10  James Youngman <jay@gnu.org>
803         * doc/perm.texi:
804         Aaron Hawley: Updated perm.texi from the coreutils distribution
806         * find/parser.c:
807         Avoid using entries which have the same name as POSIX library
808         functions (fprintf, printf, exec) as the implementation is allowed to
809         #define these.  That generates hard-to-grok compilation errors.
811 2005-12-10  Andreas Metzler <gnu@downhill.at.eu.org>
813         * ChangeLog, NEWS, configure.in, find/defs.h, find/parser.c:
814         Applied patch from Andreas Metzler fixing Savannah bug #15181:
815         implicit declaration of parse_openparen
817 2005-12-08  James Youngman  <jay@gnu.org>
819         * doc/find.texi: Typo and spelling corrections from Aaron Hawley
821 2005-12-05  James Youngman  <jay@gnu.org>
823         * Released findutils-4.2.27
825 2005-12-05  James Youngman  <jay@gnu.org>
827         * doc/find.texi, find/find.1, locate/locate.1, xargs/xargs.1:
828         Savannah patch #3775 from Aaron Hawley: reconciling man pages
829         differences; did not apply the patch, but resolved all the
830         remaining issues manually by updating the documentation (mostly
831         the Texinfo documentation, which was missing a number of specific
832         technical statements about the behaviour of various options)
834 2005-12-04  James Youngman  <jay@gnu.org>
836         * doc/find.texi: Document --show-limits
838         * xargs/xargs.c:
839         Correctly display the size of the argument buffer we really allocated.
841         * doc/find.texi, find/find.1, find/parser.c, find/pred.c, NEWS:
842         Savannah bug #14748 (which this change does NOT fix): issue
843         warning of future changes in the behaviour of -perm /000
845 2005-11-30  James Youngman  <jay@gnu.org>
847         * xargs/xargs.c:
848         Typo correction from Benno Schulenberg <benno@nietvergeten.nl>
849         (trivial change)
851 2005-11-29  James Youngman  <jay@gnu.org>
853         * xargs/xargs.c:
854         Typo "Ilegal"; change to "Invalid" since this is not really illegal!
855         Bug report by Primoz Peterlin.
857         * lib/regexprops.c, xargs/xargs.c:
858         Prefer the word 'Invalid' or the phrase 'not allowed' over
859         'Illegal', as per the GNU coding standards, and as per the
860         suggestion from Benno Schulenberg
862 2005-11-24  James Youngman  <jay@gnu.org>
864         * NEWS, lib/buildcmd.c, lib/buildcmd.h: Merge to trunk from 4.2.x fixes
866         * lib/buildcmd.h:
867         Deleted inaccurate comment about the default value of ctl->args_per_exec.
869         * NEWS, lib/buildcmd.c, lib/buildcmd.h:
870         Be more conservative about the total number of arguments we will
871         allow (to avoid exec limits on Linux/PPC)
873 2005-11-23  James Youngman  <jay@gnu.org>
875         * NEWS: Bug #14921 has been fixed.
877         * find/fstype.c:
878         Savannah bug #14921: when a Linux bind filesystem is in use, find
879         would expand '-printf %F' to 'none' if a bind mount targetted the same
880         filesystem as the one containing the file to be described.
882         * NEWS: Updated to describe recent changes
884         * doc/find.texi, find/find.1: Documented find -printf %M
886         * lib/buildcmd.c, xargs/testsuite/Makefile.am,
887         xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp,
888         xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.xo,
889         xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp,
890         xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.xo:
891         Ensure that the test suite still passes even if the current
892         system's value of ARG_MAX is different from the development/test
893         system
895         * lib/buildcmd.c: reindent and untabify
897         * configure.in: The CVS code is moving on from the previous release.
899 2005-11-22  James Youngman  <jay@gnu.org>
901         * ChangeLog: Updated with recent changes.
903 2005-11-21  James Youngman  <jay@gnu.org>
905         * locate/testsuite/config/unix.exp:
906         Even if we expect locate to return a nonzero status, the test should
907         still fail if updatedb fails!
909         * locate/testsuite/locate.gnu/ignore_case2.exp:
910         Set the current directory for updatedb.  This test case is supposed to
911         fail because the filename is not matched, not because updatedb fails!
913         * locate/updatedb.sh:
914         Check the binaries actually exist in the place we expect.
916 2005-11-20  James Youngman  <jay@gnu.org>
918         * locate/locate.1, xargs/xargs.1: Escape '-' as '\-' where appropriate.
920         * find/find.1:
921         Escape '-' as '\-' where appropriate.   Fixes last part of bug #14556.
923 2005-11-19  James Youngman  <jay@gnu.org>
925         * doc/find.texi, find/find.1:
926         Applied edited form of Andreas Metzler's -perm /mode documentation
927         patch resolving Savannah bug #14619.
929         * lib/extendbuf.c:
930         In the success case, extendbuf() should preserve the previous value of
931         errno.  Fixes Savannah bug #14842.
933         * xargs/testsuite/Makefile.am: Added new test files
935         * find/find.1:
936         Correctly indicate the default regular expression syntax (fixes
937         Savannah bug #14836).
939         * NEWS, configure.in: Released findutils-4.2.26
941         * ChangeLog, NEWS, lib/buildcmd.c,
942         xargs/testsuite/inputs/16383-ys.xi,
943         xargs/testsuite/inputs/32767-ys.xi,
944         xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp,
945         xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.xo,
946         xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp,
947         xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.xo: Applied
948         bugfix from Jim Meyering (tiny change), where many short arguments
949         would cause xargs (and probably find -exec .. {} +) to fail
950         because execve() returns E2BIG, which we should avoid
952         * xargs/testsuite/inputs/16383-ys.xi,
953         xargs/testsuite/inputs/32767-ys.xi,
954         xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp,
955         xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.xo,
956         xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp,
957         xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.xo: New file.
959 2005-11-18  Jim Meyering  <jim@meyering.net> (tiny change)
961         * lib/buildcmd.c (bc_push_arg): When exec'ing, don't exceed
962         Linux's limit on the maximum number of command line arguments.
964 2005-11-11  James Youngman  <jay@gnu.org>
966         * NEWS, find/find.c, find/fstype.c: Savannah bug #14922: if we need the
967         list of mounted filesystems but it is not available, exit fatally
968         with a message.  If it is not available but we don't need it,
969         there is no need for an error.
971 2005-10-31  James Youngman  <jay@gnu.org>
973         * doc/find.texi:
974         Removed redundant additional description of "--regextype".
976 2005-10-08  James Youngman  <jay@gnu.org>
978         * find/find.c, lib/regextype.c: Fixed Savannah bug #14616, which
979         was that c99 code had crept in and it didn't compile on c89
980         compilers
982         * doc/find.texi: Savannah patch #4371 from Andreas Metzler; the
983         argument of -I is mandatory
985 2005-09-21  James Youngman  <jay@gnu.org>
987         * xargs/xargs.1, xargs/xargs.c: Clarified the -E option
989 2005-09-20  James Youngman  <jay@gnu.org>
991         * NEWS, configure.in, doc/find.texi, xargs/xargs.1, xargs/xargs.c:
992         Documentation clarification: -L and -I take a mandatory argument;
993         -l and -i do not
995 2005-09-17  James Youngman  <jay@gnu.org>
997         * xargs/xargs.c:
998         Fixed Savannah bug #14550 - if environment is too large to allow
999         exec() to work, we cannot even use "xargs --help".
1001         * find/find.1:
1002         Avoid the use of -perm +mode, using -perm /mode instead.  From comment
1003         by Andreas Metzler (though I didn't read the patch).
1005         * ChangeLog, doc/find.texi, find/find.1, xargs/xargs.1:
1006         Typo fix from A Costa (tiny change)
1008         * NEWS: Corrections for find manual page - symbolic permissions.
1010         * find/find.1:
1011         Corrected an inaccuracy in the EXAMPLES section - in symbolic modes,
1012         'o' stands for 'others' and 'u' stands for 'user' (i.e. the owner).
1014 2005-09-17  A Costa <agcosta@gis.net>  (tiny change)
1016         docs/find.texi: Fixed typo
1017         find/find.1: Fixed typo
1018         xargs/xargs.1: Fixed typo
1019         
1020 2005-09-17  James Youngman  <jay@gnu.org>
1022         * NEWS: Corrections for find manual page - symbolic permissions.
1024         * find/find.1:
1025         Corrected an inaccuracy in the EXAMPLES section - in symbolic modes,
1026         'o' stands for 'others' and 'u' stands for 'user' (i.e. the owner).
1028 2005-09-06  James Youngman  <jay@gnu.org>
1030         * xargs/xargs.c: Typo in "IEEE" in a comment.
1032 2005-09-04  James Youngman  <jay@gnu.org>
1034         * find/defs.h, find/find.c, find/parser.c, find/pred.c, 
1035         Work around compilation failure with GCC 4 and AIX 5.1, in which
1036         open is #defined to open64
1038 2005-09-03  James Youngman  <jay@gnu.org>
1040         * find/testsuite/find.gnu/quit.exp: Fixed Savannah bug#14390, by
1041         avoiding an accidental assumption in quit.exp that directory
1042         entries are returned by readir() in any particular order
1044         * NEWS, configure.in, doc/find.texi, xargs/testsuite/Makefile.am,
1045         xargs/testsuite/inputs/helloworld.xi,
1046         xargs/testsuite/xargs.gnu/delim-o.exp,
1047         xargs/testsuite/xargs.gnu/delim-o.xo, xargs/xargs.1,
1048         xargs/xargs.c: Added the --delimiter option to xargs, resolving
1049         Savannah support request sr #102914
1051         * ChangeLog, NEWS, configure.in: Released findutils-4.2.25
1054 2005-09-02  James Youngman  <jay@gnu.org>
1056         * doc/find.texi, find/find.1:
1057         Improved documentation in response to Savannah bug #14376
1059 2005-09-01  James Youngman  <jay@gnu.org>
1061         * po/ChangeLog, ChangeLog: Updated with recent changes.
1063         * locate/locate.c: Removed unused struct stringbuf.soffs.
1065         * doc/find.texi: Typo fix from Jim Meyering (trivial change)
1067 2005-09-01  Jim Meyering  <jim@meyering.net>
1069         * locate/locate.c (struct stringbuf) [soffs]: Remove unused member.
1070         (locate): Remove initialization, too.
1072 2005-09-01  James Youngman  <jay@gnu.org>
1074         * doc/find.texi: Typo fix from Jim Meyering (trivial change)
1076 2005-08-30  James Youngman  <jay@gnu.org>
1078         * find/defs.h, find/find.c, find/fstype.c, find/pred.c:
1079         Attempted fix for compilation when AFS is #defined
1081 2005-08-13  James Youngman  <jay@gnu.org>
1083         * find/find.1: Remind the user to quote the pattern argument to -iname.
1085 2005-08-12  James Youngman  <jay@gnu.org>
1087         * NEWS: Corrected typo.
1089 2005-08-09  James Youngman  <jay@gnu.org>
1091         * NEWS: Indicate that regexprops.texi is built on Cygin now that
1092         Savannah bug #14025 has been fixed.
1094         * lib/Makefile.am, lib/regexprops.c: Fixed compilation failure on
1095         Cygwin - Savannah Bug #14025 (tiny change, three lines), reported
1096         and fixed by Eric Blake
1098         * find/testsuite/Makefile.am,
1099         find/testsuite/find.posix/sv-bug-14070.exp,
1100         find/testsuite/find.posix/sv-bug-14070.xo: Added new test case for
1101         SourceForge bug #14070
1103         * find/testsuite/find.posix/sv-bug-14070.exp,
1104         find/testsuite/find.posix/sv-bug-14070.xo: New file.
1106         * find/defs.h, find/ftsfind.c, find/pred.c, find/util.c:
1107         Ensure we can still build with --enable-debug
1109         * find/testsuite/config/unix.exp,
1110         find/testsuite/find.gnu/execdir-one.exp,
1111         find/testsuite/find.gnu/execdir-root-only.exp,
1112         find/testsuite/find.gnu/sv-bug-12230.exp: If . is on $PATH,
1113         indicate that the -execdir tests cannot be carried out, as opposed
1114         to indicating that those tests fail
1116 2005-08-07  James Youngman  <jay@gnu.org>
1118         * NEWS: Indicated that some test suite files have been renamed.
1120         * xargs/testsuite/Makefile.am, xargs/testsuite/inputs/eof.xi,
1121         xargs/testsuite/inputs/eof1.xi,
1122         xargs/testsuite/xargs.sysv/eof.exp,
1123         xargs/testsuite/xargs.sysv/eof.xo,
1124         xargs/testsuite/xargs.sysv/eof1.exp,
1125         xargs/testsuite/xargs.sysv/eof1.xo,
1126         xargs/testsuite/xargs.posix/lc_l2.exp,
1127         xargs/testsuite/xargs.posix/lc_l2.xo,
1128         xargs/testsuite/xargs.sysv/l2.exp,
1129         xargs/testsuite/xargs.sysv/l2.xo,
1130         xargs/testsuite/xargs.sysv/lc_l2.exp,
1131         xargs/testsuite/xargs.sysv/lc_l2.xo,
1132         xargs/testsuite/xargs.posix/L2.exp,
1133         xargs/testsuite/xargs.posix/l2.exp,
1134         xargs/testsuite/xargs.posix/L2.xo,
1135         xargs/testsuite/xargs.posix/l2.xo,
1136         xargs/testsuite/xargs.posix/uc_L2.exp,
1137         xargs/testsuite/xargs.posix/uc_L2.xo: Work around problems with
1138         CVS clients on case-insentitive operating systems
1140         * debian/Changelog: Removed Changelog file since changelog is the
1141         one we should be using and having both files upsets Cygwin
1142         systems which cannot tell the dirrerence between changelog and
1143         Changelog
1145         * find/ftsfind.c:
1146         If DEBUG is defined, show the symbolic names fro fts_info values.
1148         * find/ftsfind.c: Added additional diagnostics.
1150 2005-08-01  James Youngman  <jay@gnu.org>
1152         * ABOUT-NLS, INSTALL, Makefile.am, configure.in, depcomp,
1153         doc/texinfo.tex, install-sh, missing, mkinstalldirs: By adding the
1154         missing AM_GNU_GETTEXT_VERSION call, allowed autopoint to update
1155         those files of which it has updated copies.
1157         * po/Makevars.template, po/Makefile.in.in, po/findutils.pot:
1158         Using AM_GNU_GETTEXT_VERSION, allowed gettext to update the infrastructure
1160         * po/Rules-quot, po/boldquot.sed, po/en@boldquot.header, po/en@quot.header, po/insert-header.sin, po/quot.sed:
1161         Files added by autopoint now that we are using AM_GNU_GETTEXT_VERSION
1163         * find/testsuite/Makefile.am: Added find.gnu./perm-slash.{exp,xo}.
1165 2005-07-31  James Youngman  <jay@gnu.org>
1167         * find/testsuite/excuses.txt: We now have tests for -perm.
1169         * NEWS, configure.in, find/parser.c,
1170         find/testsuite/find.gnu/perm-slash.exp,
1171         find/testsuite/find.gnu/perm-slash.xo: Fixed bug which caused find
1172         -perm /440 to be treated the same as find -perm 440
1174         * find/testsuite/Makefile.am:
1175         Generic tests for -perm -NNN and -perm NNN
1177         * find/testsuite/excuses.txt: New file - list of test cases that
1178         still need to be written, along with excuses why they haven't been
1179         done yet
1181         * find/testsuite/find.posix/perm-vanilla.exp,
1182         find/testsuite/find.posix/perm-vanilla.xo: Generic tests for -perm
1183         -NNN and -perm NNN
1185         * find/testsuite/find.gnu/inum.exp:
1186         Ensure that the test would fail if -inum just always returned true
1188         * find/testsuite/Makefile.am, find/testsuite/find.gnu/ilname.exp,
1189         find/testsuite/find.gnu/ilname.xo,
1190         find/testsuite/find.gnu/inum.exp, find/testsuite/find.gnu/inum.xo,
1191         find/testsuite/find.gnu/lname.exp,
1192         find/testsuite/find.gnu/lname.xo,
1193         find/testsuite/find.gnu/xtype.exp,
1194         find/testsuite/find.gnu/xtype.xo,
1195         find/testsuite/find.posix/links.exp,
1196         find/testsuite/find.posix/links.xo: New test cases for -ilname,
1197         -inum, -lname, -xtype
1199         * find/testsuite/Makefile.am, find/testsuite/find.gnu/delete.exp,
1200         find/testsuite/find.gnu/delete.xo,
1201         find/testsuite/find.gnu/iregex1.exp,
1202         find/testsuite/find.gnu/iregex1.xo,
1203         find/testsuite/find.gnu/regex1.exp,
1204         find/testsuite/find.gnu/regex1.xo,
1205         find/testsuite/find.gnu/regex2.exp,
1206         find/testsuite/find.gnu/regex2.xo,
1207         find/testsuite/find.gnu/samefile-copy.exp,
1208         find/testsuite/find.gnu/samefile-copy.xo,
1209         find/testsuite/find.gnu/samefile-link.exp,
1210         find/testsuite/find.gnu/samefile-link.xo,
1211         find/testsuite/find.gnu/samefile-same.exp,
1212         find/testsuite/find.gnu/samefile-same.xo,
1213         find/testsuite/find.gnu/samefile-symlink.exp,
1214         find/testsuite/find.gnu/samefile-symlink.xo: Further test cases
1216         * find/find.1: Indicate that -delete implies -depth (find.texi
1217         already mentioned this).
1219         * find/testsuite/Makefile.am:
1220         Brought the list of .exp and .xo files in Makefile.am into sync with
1221         the actual contents of the CVS repository.
1223         * find/testsuite/Makefile.am, find/testsuite/find.gnu/depth-d.exp,
1224         find/testsuite/find.gnu/depth-d.xo,
1225         find/testsuite/find.gnu/empty.exp,
1226         find/testsuite/find.gnu/empty.xo,
1227         find/testsuite/find.gnu/execdir-one.exp,
1228         find/testsuite/find.gnu/execdir-one.xo,
1229         find/testsuite/find.gnu/false.exp,
1230         find/testsuite/find.gnu/false.xo,
1231         find/testsuite/find.gnu/follow-basic.exp,
1232         find/testsuite/find.gnu/follow-basic.xo,
1233         find/testsuite/find.gnu/gnu-or.exp,
1234         find/testsuite/find.gnu/gnu-or.xo,
1235         find/testsuite/find.gnu/gnuand.exp,
1236         find/testsuite/find.gnu/gnuand.xo,
1237         find/testsuite/find.gnu/gnunot.exp,
1238         find/testsuite/find.gnu/gnunot.xo,
1239         find/testsuite/find.gnu/iname.exp,
1240         find/testsuite/find.gnu/iname.xo,
1241         find/testsuite/find.gnu/ipath.exp,
1242         find/testsuite/find.gnu/ipath.xo,
1243         find/testsuite/find.gnu/iwholename.exp,
1244         find/testsuite/find.gnu/iwholename.xo,
1245         find/testsuite/find.gnu/path.exp, find/testsuite/find.gnu/path.xo,
1246         find/testsuite/find.gnu/print0.exp,
1247         find/testsuite/find.gnu/print0.xo,
1248         find/testsuite/find.gnu/quit.exp, find/testsuite/find.gnu/quit.xo,
1249         find/testsuite/find.gnu/true.exp, find/testsuite/find.gnu/true.xo,
1250         find/testsuite/find.gnu/wholename.exp,
1251         find/testsuite/find.gnu/wholename.xo,
1252         find/testsuite/find.posix/and.exp,
1253         find/testsuite/find.posix/and.xo,
1254         find/testsuite/find.posix/exec-one.exp,
1255         find/testsuite/find.posix/exec-one.xo,
1256         find/testsuite/find.posix/grouping.exp,
1257         find/testsuite/find.posix/grouping.xo,
1258         find/testsuite/find.posix/name.exp,
1259         find/testsuite/find.posix/name.xo,
1260         find/testsuite/find.posix/posixnot.exp,
1261         find/testsuite/find.posix/posixnot.xo,
1262         find/testsuite/find.posix/prune.exp,
1263         find/testsuite/find.posix/prune.xo: Added new test cases for many
1264         of the actions and tests of find
1266         * find/find.c (default_prints):
1267         not a static function, so do not declare it as one.
1269         * m4/withfts.m4: Fixed underquoted definition of FIND_WITH_FTS.
1270         [this change is currently on a branch only]
1272 2005-07-30  James Youngman  <jay@gnu.org>
1274         * find/finddata.c, find/ftsfind.c, find/parser.c, find/pred.c,
1275         find/util.c, m4/Makefile.am, m4/withfts.m4: Initial attempt to
1276         convert find to use gnulib's fts()
1277         [this change is currently on a branch only]
1278         
1279         * find/finddata.c, find/ftsfind.c, m4/withfts.m4: New file.
1280         [this change is currently on a branch only]
1281         
1282         * NEWS, configure.in, find/Makefile.am, find/defs.h, find/find.c,
1283         import-gnulib.sh: Initial attempt to convert find to use gnulib's
1284         fts() [this change is currently on a branch only]
1286 2005-07-29  James Youngman  <jay@gnu.org>
1288         * NEWS, configure.in
1289         Prepared for the release of findutils-4.2.24
1291         * ChangeLog: Updated with recent changes.
1293         * NEWS, find/find.1, doc/find.texi:
1294         Indicate that -ok and -okdir redirect stdin from /dev/null.
1296         * NEWS: Explain the directory link count change more throroughly.
1298         * NEWS: Fixed bug #13973.
1300         * find/pred.c (pred_fprintf): Fix Savannah bug #13973: Modify the
1301         handling of -printf %Y so that it no longer modifies stat_buf
1303         * find/testsuite/find.gnu/printf-symlink.exp,
1304         find/testsuite/find.gnu/printf-symlink.xo: Detect Savannah bug
1305         #13973: pollution of stat_buf by the %Y directive (trivial change
1306         from Andreas Metzler)
1308         * INSTALL, depcomp, doc/texinfo.tex, install-sh, missing, mkinstalldirs:
1309         Updated auxilliary files from the automake-1.9 distribution
1311         * configure.in:
1312         Introduce new Automake conditional, CROSS_COMPILING, true when we are corss compiling
1314         * find/find.c:
1315         If we decline to follow a symbolic link due to the safety check, issue a more self-explanatory warning message
1317         * lib/Makefile.am: Don't build regexprops if we are cross compiling
1319         * doc/Makefile.am:
1320         Depend on the regex.h file rather than the 'regexprops' binary,
1321         because the header file will always exist even if we are doing "make
1322         dist".  Otherwise "make distcheck" fails because it tries to rebuild
1323         find.info while the source-directory is read-only.
1325 2005-07-28  James Youngman  <jay@gnu.org>
1327         * find/find.1:
1328         Say "other users" rather than "rest of the world" when talking about
1329         Unix permissions.  Fixes Savannah bug #4246.
1331 2005-07-27  James Youngman  <jay@gnu.org>
1333         * xargs/testsuite/Makefile.am: Added new test case 'childfail.exp'.
1335         * doc/find.texi:
1336         Updated the description of the safe-dir-change operation to reflect
1337         what find now does on systems that lack O_NOFOLLOW.
1339         * NEWS, find/parser.c: Indicate in the output of find --version if
1340         the leaf optimisation is enabled or not
1342         * find/find.c: Fixed typo.
1344         * find/find.c: If the link count of a directory starts off less
1345         than two, disable the leaf optimisation for this directory.
1347 2005-07-26  James Youngman  <jay@gnu.org>
1349         * lib/regexprops.c: Further small corrections from Karl.
1351         * doc/find.texi:
1352         Reordered the sections in the manual to put the "Common Tasks" and
1353         "Worked Examples" chapters together.
1355         * configure.in, find/find.c: Allow the leaf optimisation to be
1356         disabled by default with the configure option
1357         --disable-leaf-optimisation
1359         * find/find.c: Removed old code for antuqie version of savedir().
1361         * lib/regextype.c: Put the syntaxes in alphabetical order.
1363         * lib/regexprops.c: Karl made some more readability suggestions.
1365 2005-07-24  James Youngman  <jay@gnu.org>
1367         * doc/Makefile.am: If the regexprops program has changed we should
1368         re-run it, since it will probably now produce different output
1370         * lib/regextype.h:
1371         Allow the caller to detect if one regex type is identical to another.
1373         * configure.in:
1374         Define the preprocessor macro FINDUTILS for that code int he lib/
1375         directory can be slightly more reusable.
1377         * lib/regextype.c:
1378         Allow the caller to detect if one regex type is identical to another.
1380         * lib/regexprops.c:
1381         Made Texinfo style corrections suggested by Karl Berry.
1383 2005-07-22  James Youngman  <jay@gnu.org>
1385         * xargs/testsuite/xargs.posix/childfail.exp, xargs/xargs.c: Fix
1386         Savannah bug #13878, in which xargs deals incorrectly with child
1387         failure, returning 0 when it should return 123
1389 2005-07-17  James Youngman  <jay@gnu.org>
1391         * find/find.1: (tiny change) Corrections by Greg Wooledge
1393 2005-07-16  James Youngman  <jay@gnu.org>
1395         * doc/find.texi: Updates following comments by Dave Gilbert.
1397         * NEWS: Corrected a typo.
1399         * doc/find.texi:
1400         Added in the example about updating an aggregate timestamp file.
1402 2005-07-15  James Youngman  <jay@gnu.org>
1404         * po/da.po: Updated Danish translation from translation project
1406 2005-07-14  James Youngman  <jay@gnu.org>
1408         * NEWS, doc/Makefile.am, doc/find.texi, lib/Makefile.am,
1409         lib/regexprops.c, lib/regextype.c, lib/regextype.h: Added
1410         --regextype and -regextype options to locate and find
1411         respectively, and documented these
1413         * doc/find.texi: We use GNU Emacs regexps by default now.
1415         * doc/find.texi:
1416         We require GNU sort in order for locate to handle newlines correctly,
1417         not just GNU find.
1419 2005-07-10  James Youngman  <jay@gnu.org>
1421         * doc/find.texi:
1422         Applied several documentation improvement patches from Aaron Hawley
1424         * ChangeLog, NEWS: Updated with recent changes.
1426         * NEWS: Recent gnulib changed have fixed -iregex
1428         * doc/find.texi, xargs/xargs.1:
1429         Tiny patch from Andreas Metzler: xargs -I is like xargs -i, but the latter is deprecated
1431 2005-07-06  James Youngman  <jay@gnu.org>
1433         * find/defs.h, find/find.c, find/parser.c, find/pred.c:
1434         Fixed Savannah bug #13650; programs run by -exec cannot read stdin
1436 2005-07-04  James Youngman  <jay@gnu.org>
1438         * NEWS: *** empty log message ***
1440         * doc/find.texi:
1441         Added a "Worked Examples" section.   It currently only contains a
1442         (long) example about deleting files.
1444         * .cvsignore: Some extra stuff to ignore.
1446 2005-07-03  James Youngman  <jay@gnu.org>
1448         * find/Makefile.am: Don't need regexprops.c really...
1450         * lib/regextype.c, lib/regextype.h:
1451         New files for selecting regex type based on a keyword
1453         * locate/locate.1: Documented the fact that we now use Emacs-style
1454         regexps, not POSIX EREs, for compatibility with find -regex.
1456         * lib/Makefile.am, locate/locate.c, doc/find.texi,
1457         find/Makefile.am, find/defs.h, find/find.1, find/find.c,
1458         find/parser.c: Fixed Savannah bug #13495: find now uses
1459         Emacs-style regexps by default
1461 2005-07-02  James Youngman  <jay@gnu.org>
1463         * configure.in, find/defs.h, find/fstype.c, find/parser.c,
1464         intl/dcigettext.c, lib/buildcmd.c, lib/listfile.c,
1465         lib/savedirinfo.c, locate/locate.c, xargs/xargs.c: Assume unistd.h
1466         is present - avoid using HAVE_UNISTD_H
1468 2005-07-01  Jim Meyering  <jim@meyering.net>
1470         With `-fprint F' or `-fprintf F', don't write diagnostics
1471         to F when stderr is closed.
1473         * find/parser.c: Include "stdio-safer.h".
1474         (open_output_file): Use fopen_safer, not fopen.
1475         * import-gnulib.sh (findutils_modules): Add stdio-safer.
1477 2005-07-01  James Youngman  <jay@gnu.org>
1479         * doc/find.texi:
1480         Aaron pointed out a potentially-confusing sentence.  I fixed it.
1482         * find/defs.h, find/find.1, find/find.c, find/parser.c,
1483         find/pred.c, find/util.c: Allow consistency-checking of the
1484         predicates, checking for example that actions all have side
1485         effects
1487 2005-06-29  James Youngman  <jay@gnu.org>
1489         * doc/find.texi: Applied patch from Aaron Hawley (Savannah patch
1490         #3751: Typos and small suggestions to find.texi)
1492 2005-06-27  James Youngman  <jay@gnu.org>
1494         * ChangeLog, locate/locate.c: Applied patch from Bas Van Gompel to
1495         move match counting into a (new) visitor function
1497         * NEWS, configure.in: No longer 4.2.23, as we're moving on now
1499 2005-06-24  Bas van Gompel  <patch-findutils.buzz@bavag.tmfweb.nl>
1501         * locate/locate.c (visit_count, visit_limit): New functions.
1502         (locate): Use visit_limit or visit_count. Simplify main loop.
1503         (main) Bail out early when limit is reached.
1505 2005-06-20  James Youngman  <jay@gnu.org>
1507         * xargs/xargs.c:
1508         Removed some code which had already been disabled via the preprocessor.
1510 2005-06-19  Dmitry V. Levin <ldv@altlinux.org>
1512         * lib/savedirinfo.c: Fix two compilation warnings (which would 
1513         prevent compilation if "-Wall -Werror" is in effect).
1514         
1515 2005-06-19  James Youngman  <jay@gnu.org>
1517         * ChangeLog: Indicate that we made (are making) a release.
1519         * ChangeLog, NEWS, configure.in: Preparing to release 4.2.23
1521         * doc/find.texi: Fixed Texinfo syntax error in previous change
1523         * doc/find.texi, xargs/xargs.1:
1524         Document the fact that the -i and -L options are currently
1525         incompatible (Savannah bug 13041).
1527         * locate/updatedb.1, locate/updatedb.sh: Fix Savannah bug 13411 -
1528         reject trailing slashes in updatedb's --prunepaths, bacsue these
1529         will never be matched
1531         * NEWS: Released findutils-4.2.23.
1533         * doc/find.texi, xargs/xargs.1:
1534         Document the fact that the -i and -L options are currently
1535         incompatible (Savannah bug 13041).
1537         * locate/updatedb.1, locate/updatedb.sh: Fix Savannah bug 13411 -
1538         reject trailing slashes in updatedb's --prunepaths, because these
1539         will never be matched.
1541 2005-06-18  Martin Buchholz (trivial patch applied by James Youngman)
1543         * find/defs.h, find/find.c, find/parser.c, doc/find.texi: Fix
1544         typos/spelling errors (mostly in source code comments).
1546 2005-06-18  Dmitry V. Levin  <ldv@altlinux.org>
1548         Additional documentation tweaks for -execdir/-okdir actions.
1549         * find/parser.c (parse_help): Mention -execdir and -ordir options.
1550         * doc/find.texi, find/find.1: Additionally document new options.
1551         
1552 2005-06-12  Bas van Gompel  <patch-findutils.buzz@bavag.tmfweb.nl>
1554         * locate/locate.c: Implement --all (-A).
1555         
1556         * NEWS, doc/find.texi, locate/locate.1: Document locate --all (-A)
1557         
1558 2005-06-12  James Youngman  <jay@gnu.org>
1560         * find/find.c, NEWS:
1561         Savannah bug #13381 (Debian bug 313081): if we have O_NOFOLLOW,
1562         safely_chdir() does not need to call stat().  However, process_dir()
1563         used to rely on using that stat information.  To work around this
1564         problem, there is now an output parameter in safely_chdir() which
1565         indicates if the stat buffer is valid.
1566         This bug has possible security implications.
1568         * find/find.1, doc/find.texi:
1569         Applied patch from Andreas Metzler, improving the wording for the
1570         documentation of the %k and %b format directives.  This patch does
1571         not require a copyright assignment as it consists of several
1572         copies of the same small wording change.
1574 2005-06-11  James Youngman  <jay@gnu.org>
1576         * find/find.1: Corrected spelling error 'writeable' to 'writable'.
1578         * find/find.1, locate/locate.1:
1579         Fixed Savannah bug #13363, typos in manpages (trivial change)
1581 2005-06-10  James Youngman  <jay@gnu.org>
1583         * find/find.c, lib/savedirinfo.c, lib/savedirinfo.h: Switch to a
1584         new scheme for saving directory entry data which is extensible to
1585         allow additional data to be saved.
1587 2005-06-09  James Youngman  <jay@gnu.org>
1589         * locate/testsuite/config/unix.exp:
1590         Use the new normalize_dir procedure throughout.
1592         * locate/testsuite/config/unix.exp: Move the normalisation into a
1593         procedure.  Don't rely on the "file normalize" command being
1594         available (it's new in Tcl 8.4).
1596 2005-06-08  James Youngman  <jay@gnu.org>
1598         * ChangeLog, NEWS, configure.in: Updated for recent changes
1600         * doc/find.texi:
1601         Explain that you should put the argument of -name in quotes.
1603         * find/find.1:
1604         Added a new "NON-BUGS" section pointing out things that look like bugs
1605         but are caused by mistakes or misunderstandings.
1607         * doc/find.texi, locate/locate.1: Applied Bas van Gompel's patch
1608         which allows the database to be read from stdin.
1610         * locate/locate.c:
1611         Read the database in by using the "visitor" pattern.  Modified file
1612         header comment to indicate that we no longer use the efficient
1613         algorith described in ;login:.  Emit an error message if the
1614         LOCATE_PATH variable implies that we should read stdin twice.
1615         Most of this code is from Bas van Gompel.
1617         * AUTHORS: Credit Bas van Gompel for his work on locate.
1619         * lib/printquoted.h: Appled patch from Bas - fixing compiler warning.
1621 2005-06-07  James Youngman  <jay@gnu.org>
1623         * ChangeLog, NEWS, configure.in: Updates prior to release
1625         * config.rpath: Added file required for 'make dist'
1627         * po/be.po, po/ca.po, po/da.po, po/de.po, po/el.po, po/eo.po,
1628         po/es.po, po/et.po, po/fi.po, po/findutils.pot, po/fr.po,
1629         po/ga.po, po/gl.po, po/hr.po, po/hu.po, po/id.po, po/it.po,
1630         po/ja.po, po/ko.po, po/lg.po, po/ms.po, po/nl.po, po/pl.po,
1631         po/pt.po, po/pt_BR.po, po/ro.po, po/ru.po, po/rw.po, po/sk.po,
1632         po/sl.po, po/sr.po, po/sv.po, po/tr.po, po/vi.po, po/zh_CN.po:
1633         updated the po files for release
1635         * xargs/testsuite/Makefile.am:
1636         Added in all the test files from Dmitry V. Levin.
1638 2005-06-08  Bas van Gompel  <patch-findutils.buzz@bavag.tmfweb.nl>
1640         * NEWS, locate/locate.1, doc/find.texi: Document usage of `-'
1641         to refer to stdin in database-path for locate.
1642         * locate/locate.c: Change prototype for visitors and processors
1643         throughout. Move reading the database and generating base_name
1644         into visitors. Allow `-' to refer to stdin in database-path.
1646         * lib/printquoted.h: Include stdio.h.
1648 2005-06-07  James Youngman  <jay@gnu.org>
1650         * COPYING, debian/copyright, depcomp, doc/texinfo.tex,
1651         find/defs.h, find/find.c, find/fstype.c, find/parser.c,
1652         find/pred.c, find/testsuite/config/unix.exp, find/tree.c,
1653         find/util.c, import-gnulib.sh, intl/Makefile.in,
1654         intl/bindtextdom.c, intl/config.charset, intl/dcgettext.c,
1655         intl/dcigettext.c, intl/dcngettext.c, intl/dgettext.c,
1656         intl/dngettext.c, intl/explodename.c, intl/finddomain.c,
1657         intl/gettext.c, intl/gettext.h, intl/gettextP.h,
1658         intl/hash-string.h, intl/intl-compat.c, intl/l10nflist.c,
1659         intl/libgettext.h, intl/libgnuintl.h, intl/loadinfo.h,
1660         intl/loadmsgcat.c, intl/localcharset.c, intl/locale.alias,
1661         intl/localealias.c, intl/ngettext.c, intl/plural.c, intl/plural.y,
1662         intl/ref-add.sin, intl/ref-del.sin, intl/textdomain.c,
1663         lib/buildcmd.c, lib/buildcmd.h, lib/extendbuf.c, lib/extendbuf.h,
1664         lib/forcefindlib.c, lib/listfile.c, lib/listfile.h,
1665         lib/modetype.h, lib/nextelem.c, lib/nextelem.h, lib/printquoted.c,
1666         lib/printquoted.h, lib/qmark.c, lib/savedirinfo.c,
1667         lib/savedirinfo.h, lib/strspn.c, lib/wait.h, lib/waitpid.c,
1668         locate/bigram.c, locate/code.c, locate/frcode.c, locate/locate.c,
1669         locate/locatedb.h, locate/testsuite/config/unix.exp,
1670         locate/updatedb.sh, missing, po/fetch-po-files,
1671         xargs/testsuite/config/unix.exp, xargs/xargs.c: 
1672         Updated the FSF's postal address
1674         * ChangeLog: Corrected Bas's email address.
1676         * locate/locate.c: Updated copyright years.
1678 2005-06-07  Bas van Gompel  <patch-findutils.buzz@bavag.tmfweb.nl>
1680          * locate/locate.c: Fold case once, only when needed.
1681   
1682 2005-06-07  James Youngman  <jay@gnu.org>
1684         * NEWS: Updated with recent changes.
1686         * mdate-sh: Use the mdate-sh from automake
1688         * find/parser.c, find/pred.c, find/tree.c, find/util.c,
1689         lib/Makefile.am, lib/forcefindlib.c, lib/listfile.c,
1690         lib/listfile.h, locate/code.c, locate/locate.c, find/defs.h,
1691         find/find.c: Fix Savannah bug #13324: Fix compiler warnings for
1692         GCC-3.4
1694         * locate/locate.c:
1695         Fixed Savannah bug #13325: Quoting of output filenames in locate
1696         should match find.
1698         * find/parser.c:
1699         Fixed Savannah bug #13319: C9X-ism in parser.c (declaration after
1700         statements).
1702         * find/pred.c, lib/Makefile.am, lib/listfile.c, lib/nextelem.c,
1703         lib/printquoted.c, lib/printquoted.h, lib/qmark.c, NEWS,
1704         doc/find.texi, find/defs.h, find/find.1, find/parser.c: Fixed
1705         Savannah bug #13303, find should filter out non-printable
1706         characters if outputting to tty
1708 2005-05-30  James Youngman  <jay@gnu.org>
1710         * locate/locate.c: rename new_locate() to locate() since
1711           old_locate() has gone the way of the dodo.
1713 2005-05-29  Bas van Gompel  <patch-findutils.buzz@bavag.tmfweb.nl>
1715         Add a ``--print'' (``-p'') option. (to cancel side-effects of -c/-S)
1716         Allow ``--statistics'' in combination with non-options.
1717         * doc/find.texi: Add documentation for locate --print (-p), and the
1718         use of non-options with --statistics.
1719         * locate/locate.1: ditto.
1720         * locate/locate.c: Read each database only once.
1722 2005-05-23  Paul Eggert  <eggert@cs.ucla.edu>
1724         Adjust to recent gnulib changes.
1725         * import-gnulib.sh: Get config.rpath from gnulib/build-aux,
1726         not gnulib/config.
1727         * find/parser.c (parse_perm): Ignore umask when parsing
1728         symbolic permissions.  Adjust to new modechange API.
1730 2005-05-16  James Youngman  <jay@gnu.org>
1732         * find/find.c, find/parser.c, find/pred.c, find/tree.c:
1733         Trivial change: don't use i18n support for debug-only messages
1735         * ChangeLog: Added ChangeLog entry crediting Dmitry
1737 2005-05-09  James Youngman  <jay@gnu.org>
1739         * find/parser.c:
1740         The previous change fixed Savannah bug #12999.  This change doesn't do
1741         anything, it's only intended to be a place to record the Savannah bug
1742         ID we've just fixed.
1744         * find/parser.c:
1745         Oops.  Initialise the variable which indicates which regex syntax to
1746         use.  We use POSIX basic regular expressions.
1748         * find/parser.c:
1749         Suggestion by Ed Avis: point out that "-name foo/bar" will almost
1750         always evaluate to false.   Suggest to the user what alternatives they
1751         might find useful.
1753 2005-05-02  James Youngman  <jay@gnu.org>
1755         * AUTHORS:
1756         Added Dimitry (his new test suite contribution required a copyright
1757         assignment).
1759 2005-05-03  Dmitry V. Levin
1761         * Added xargs test suite tests by Dmitry V. Levin, together with
1762           bugfixes which ensure that the tests pass.
1764 2005-04-18  James Youngman  <jay@gnu.org>
1766         * Added test suite tests for Bas van Gompel's changes.
1768 2005-04-18  Bas van Gompel  <patch-findutils.buzz@bavag.tmfweb.nl>
1770         * doc/find.texi: Document locate --non-existing (-E).
1771         * locate/locate.1: Ditto.
1772         * locate/locate.c: Implement --non-existing (-E).
1773    
1774 2005-04-04  James Youngman  <jay@gnu.org>
1776         * configure.in, import-gnulib.sh:
1777         We no longer need gnulib/m4/Makefile.am
1779         * po/vi.po: Updated Vietnamese translation
1781         * locate/updatedb.sh:
1782         Savannah bug #12491: Only use the "-s" option to "su" if it is
1783         supported.
1785 2005-04-01  James Youngman  <jay@gnu.org>
1787         * locate/locate.1, locate/updatedb.1, xargs/xargs.1: Trivial
1788         change from A Costa <agcosta@gis.net>, fixing typos in manual
1789         pages for xargs, locate and updatedb; fixes Savannah bug #12500,
1790         Debian bug #301934
1792 2005-03-22  James Youngman  <jay@gnu.org>
1794         * import-gnulib.sh: Include the new gnulib module stat-macros
1796         * configure.in:
1797         CVS code is (will shortly be) no longer identical to the 4.2.20 release
1799 2005-03-17  James Youngman  <jay@gnu.org>
1801         * configure.in: Preprare for release of 4.2.20.
1803         * NEWS: Updated prior to release of 4.2.20.
1805         * ChangeLog: Updated with recent changes.
1807         * THANKS: Thank Bas van Gompel, but only once.
1809         * THANKS: Thank Bas van Gompel and Aaron S. Hawley.
1811         * po/vi.po: Updated Vietnamese PO file
1813 2005-03-10  James Youngman  <jay@gnu.org>
1815         * po/nl.po: Updated Dutch PO file
1817 2005-03-08  Bas van Gompel  <patch-findutils.buzz@bavag.tmfweb.nl>
1819         * import-gnulib.sh: Re-enable creation of gnulib/m4/Makefile.am.
1821 2005-03-07  James Youngman  <jay@gnu.org>
1823         * Released findutils-4.2.19.
1825         * find/testsuite/find.posix/sizes.exp:
1826         Use 2>/dev/null instead of 2>&1, because Tcl understands the former
1827         but not the latter.
1829         * find/testsuite/Makefile.am: Also distribute sv-bug-12181.xo.
1831         * find/testsuite/Makefile.am: Distribute sv-bug-12181.
1833         * find/testsuite/Makefile.am: Distribute sv-bug-12230.
1835         * NEWS: Updated with new news.
1837         * ChangeLog: Brought up to date.
1839         * lib/buildcmd.c, find/testsuite/find.gnu/sv-bug-12230.exp: Fixed
1840         Savannah bug #12230, in which '-exec echo == {} +' is always run,
1841         even if there were no matched files.
1843 2005-03-06  James Youngman  <jay@gnu.org>
1845         * ChangeLog: Added latest changes.
1847         * po/pt.po, configure.in: Added Portuguese translation
1849 2005-03-04  James Youngman  <jay@gnu.org>
1851         * configure.in: Modernized the way we call AC_INIT and
1852         AM_INIT_AUTOMAKE
1854         * locate/locate.c, find/pred.c, find/find.c:
1855         Eliminated some compiler warnings
1857         * find/pred.c: Clarified the meaning of a comment.
1859         * find/testsuite/Makefile.am: Added sizes.exp, sizes.xo.
1861         * find/testsuite/find.posix/sizes.xo,
1862         find/testsuite/find.posix/sizes.exp: Added tests for -size
1863         predicate
1865 2005-03-03  James Youngman  <jay@gnu.org>
1867         * find/find.c:
1868         safely_chdir_lstat(): if we didn't end up in the right place, and then
1869         fchdir() fails, we can't return to the directory we started in.
1870         Therefore, issue a fatal error message and exit.
1872 2005-03-01  James Youngman  <jay@gnu.org>
1874         * find/find.c, find/testsuite/find.posix/sv-bug-12181.exp,
1875         find/testsuite/find.posix/sv-bug-12181.xo: Fixed SourceForge bug
1876         12181 (find -H symlink-to-dir reports 'Too many Symbolic links')
1877         and bug 12044 (find still hangs on dead NFS filesystems on
1878         Solaris)
1880 2005-02-28  James Youngman  <jay@gnu.org>
1882         * doc/find.texi: Typo: O_NOFOLLOW, not O_FOLLOW
1884         * import-gnulib.sh:
1885         Suggestion from Martin Buchholz; unset CDPATH to prevent "cd" echoing
1886         the new directory.
1888 2005-02-27  James Youngman  <jay@gnu.org>
1890         * README: Indicate how the reader can verify the release.
1892 2005-02-26  James Youngman  <jay@gnu.org>
1894         * po/sk.po, po/sl.po, po/sr.po, po/sv.po, po/tr.po, po/vi.po,
1895         po/zh_CN.po, po/be.po, po/ca.po, po/da.po, po/de.po, po/el.po,
1896         po/eo.po, po/es.po, po/et.po, po/fi.po, po/findutils.pot,
1897         po/fr.po, po/gl.po, po/hr.po, po/hu.po, po/id.po, po/it.po,
1898         po/ja.po, po/ko.po, po/lg.po, po/ms.po, po/nl.po, po/pl.po,
1899         po/pt_BR.po, po/ro.po, po/ru.po: Added new Vietnamese translation
1901         * configure.in: Added new Vietnamese translation.
1903 2005-02-25  James Youngman  <jay@gnu.org>
1905         * po/ga.po: Updated Irish po file
1907 2005-02-23  James Youngman  <jay@gnu.org>
1909         * Makefile.am: Fix Savannah bug #12064 - 'make distclean' deletes
1910         regex.c but should not.
1912         * find/testsuite/Makefile.am,
1913         find/testsuite/find.gnu/printf-h.exp,
1914         find/testsuite/find.gnu/printf-h.xo: Added test case for Savannah
1915         bug #12085 (-printf %h).
1917         * NEWS, doc/find.texi, find/find.1, find/pred.c:
1918         %h now expands to '.' instead of nothing.
1920 2005-02-22  James Youngman  <jay@gnu.org>
1922         * find/find.c:
1923         Fixed Savannah bug #12099 (misinterpretation of system versions
1924         leading to possible incorrect disabling of O_NOFOLLOW).  Reported by
1925         Dmitry V. Levin.
1927         * find/pred.c:
1928         For the %h format, don't bail out early as the format might contain
1929         something else too.
1931 2005-02-21  James Youngman  <jay@gnu.org>
1933         * find/find.c: Fixed accidental C99 dependency.
1935 2005-02-20  James Youngman  <jay@gnu.org>
1937         * po/be.po, po/ca.po, po/da.po, po/de.po, po/el.po, po/eo.po,
1938         po/es.po, po/et.po, po/fi.po, po/findutils.pot, po/fr.po,
1939         po/ga.po, po/gl.po, po/hr.po, po/hu.po, po/id.po, po/it.po,
1940         po/ja.po, po/ko.po, po/lg.po, po/ms.po, po/nl.po, po/pl.po,
1941         po/pt_BR.po, po/ro.po, po/ru.po, po/sk.po, po/sl.po, po/sr.po,
1942         po/sv.po, po/tr.po, po/zh_CN.po: Updated italian translation
1944         * doc/find.texi: Corrected a typo.
1946         * find/find.c:
1947         Read the mounted device list afer parsing the command line, so that
1948         for example "find --version" still works (in response to Savannah bug
1949         #12044).
1951         * configure.in: We've moved on from findutils-4.2.18.
1953 2005-02-19  James Youngman  <jay@gnu.org>
1955         * NEWS: Corrected the summary of the "find -depth" bug.
1957 2005-02-16  James Youngman  <jay@gnu.org>
1959         * NEWS, configure.in: Prepared for release of 4.2.18.
1961         * ChangeLog: Updated prior to release of 4.2.18.
1963         * find/testsuite/Makefile.am:
1964         Distribute the test cases for the recent "find -depth" bug.
1966         * find/testsuite/find.posix/depth1.exp, find/testsuite/find.posix/depth1.xo:
1967         Added test case for find -depth bug reported by Joseph S. Myers
1969         * find/find.c:
1970         If -depth is in effect, processing of the subdirectories invalidates
1971         the information in 'state'.  Therefore once we get around to
1972         processing the predicates, restore the information that we keep in
1973         'state' and in 'stat_buf'.
1975 2005-02-15  James Youngman  <jay@gnu.org>
1977         * ChangeLog: Updated with recent changes
1979         * find/find.1:
1980         Emphasise that -L causes find to recurse into subdirectories pointed
1981         to by symbolic links.
1983         * find/find.1:
1984         Patch to find.1 from Aaron Hawley <Aaron.Hawley@uvm.edu>:
1986         * Notes about -H actually apply to -L.
1987         * Said paragraph is duplicated two paragraphs later.
1988         * Typos: nno, ibmue, surrpounding
1990 2005-02-15  Aaron Hawley  <Aaron.Hawley@uvm.edu>
1992         * find/find.1: Notes about -H actually apply to -L.  Said
1993         paragraph is duplicated two paragraphs later.  Also typos: nno,
1994         ibmue, surrpounding
1996 2005-02-13  James Youngman  <jay@gnu.org>
1998         * find/find.1: Miscellaneous small clarifications and improvements.
2000         * doc/find.texi: Added Info nodes and menus under "Changing the
2001         Current Working Directory" so that it doesn't generate such a huge
2002         Info page.
2004         * find/find.c: Parenthesise #if defined(...).
2006 2005-02-13  Dmitry V. Levin  <ldv@altlinux.org>
2007         
2008         * find/find.c: remove test code snippet (time(NULL) was used to
2009         place a marker for spotting with strace(), but was not actually
2010         needed).
2012         * find/find.c (safely_chdir_nofollow): must not fall back on
2013         safely_chdir_lstat() because that will expose it to race condition
2014         exploits, making it pointless.
2016         * find/find.c (safely_chdir_lstat): Move
2017         complete_pending_execdirs() up into safely_chdir(), because we
2018         need to do that in either case.
2020 2005-02-12  James Youngman  <jay@gnu.org>
2022         * configure.in, doc/find.texi, find/defs.h, find/find.c,
2023         find/parser.c: Fix for Savannah bug #11879, that
2024         init_mounted_dev_list() causes find to hang on systems which are
2025         clients to dead NFS servers
2027 2005-02-10  James Youngman  <jay@gnu.org>
2029         * doc/find.texi: Talk about the problem where find will not work
2030         if you have a filesystem mounted from an unresponsive NFS server.
2032 2005-02-09  James Youngman  <jay@gnu.org>
2034         * find/find.1: Indicate that $TZ affects from printf-format
2035         results, and add extra cross-references in the SEE ALSO section.
2037 2005-02-08  James Youngman  <jay@gnu.org>
2039         * xargs/testsuite/Makefile.am: Distribute the .xe files also.
2041         * Makefile.am: Check that we have the right number of .xe files in
2042         the distribution also.
2044         * ChangeLog, NEWS, configure.in
2045         Preparing to release findutils-4.2.17
2047 2005-02-07  James Youngman  <jay@gnu.org>
2049         * find/testsuite/config/unix.exp: Re-sort the .xo file using the
2050         calling user's locale, because our 'pre-sorted' .so output file
2051         may not be sorted with the same collating order as 'sort' used to
2052         order the output of "find.  Bug spotted by Vin Shelton and Dimitry
2053         V. Levin.
2055         * find/testsuite/Makefile.am:
2056         New test, find/testsuite/find.gnu/follow-arg-parent-symlink.exp.
2058         * find/testsuite/find.gnu/follow-arg-parent-symlink.exp,
2059         find/testsuite/find.gnu/follow-arg-parent-symlink.xo, find/find.c:
2060         Fix for starting point /foo/bar/baz where bar is a symlink but baz
2061         is not - we should chdir into bar there even if it is a symbolic
2062         link
2064 2005-02-07  James Youngman  <jay@gnu.org>
2066         * find/testsuite/Makefile.am:
2067         New test, find/testsuite/find.gnu/follow-arg-parent-symlink.exp.
2069         * find/testsuite/find.gnu/follow-arg-parent-symlink.exp,
2070         find/testsuite/find.gnu/follow-arg-parent-symlink.xo, find/find.c:
2071         Fix for starting point /foo/bar/baz where bar is a symlink but baz
2072         is not - we should chdir into bar there even if it is a symbolic
2073         link
2075 2005-02-06  James Youngman  <jay@gnu.org>
2077         * doc/find.texi:
2078         -size: Clarification - -size gives a result consistent with 'wc -c'
2079          for example.
2081         * Makefile.am, find/testsuite/Makefile.am,
2082         find/testsuite/find.gnu/execdir-root-only.exp,
2083         find/testsuite/find.gnu/execdir-root-only.xo,
2084         locate/testsuite/Makefile.am, xargs/testsuite/Makefile.am:
2085         dist-hook: Ensure that we distribute all the .po files and all the
2086         testsuite files
2088         * po/pl.po: Updated Polish translation from TP website
2090 2005-02-05  Dmitry V. Levin  <ldv@altlinux.org>
2092         * find/parser.c, find/pred.c: Additional tweaks for
2093         -execdir/-okdir actions.
2094         
2095         * find/parser.c (new_insert_exec_ok): Disable ignore_readdir_race
2096         for -execdir/-okdir.
2097         
2098         * find/pred.c (pred_execdir, pred_okdir): Use state.rel_pathname
2099         instead of basename(pathname).  Do not add "./" prefix for
2100         absolute pathnames.
2101         
2102         * find/find.c (process_top_path): Treat "/" similarly to ".".
2104         * xargs/testsuite/xargs.posix/savannah-11865.exp,
2105         xargs/testsuite/xargs.posix/savannah-11865.xo, xargs/xargs.c:
2106         Fixed Savannah bug #11866 (not resetting number of used chars in
2107         the command buffer) - reported by Dimitry V. Levin
2109 2005-02-05  James Youngman  <jay@gnu.org>
2111         * THANKS:
2112         Added thanks for Dimitry - has produced many patches, bugfixes and
2113         suggestions.
2115         * find/pred.c:
2116         Fixed Savannah bug #11866: typo in pred_okdir() renders it useless
2118         * find/pred.c:
2119         Savannah bug #11861: undefined symbol 'basename' on IRIX 5.3
2121         * NEWS, configure.in, po/be.po, po/ca.po, po/el.po, po/eo.po,
2122         po/fi.po, po/ga.po, po/hr.po, po/hu.po, po/ja.po, po/lg.po,
2123         po/ms.po, po/ro.po, po/sl.po, po/sr.po, po/zh_CN.po: Added new
2124         translations
2126         * ChangeLog: Updated from CVS prior to release of 4.2.16.
2128         * po/ChangeLog: Updated from CVS.
2130         * NEWS, configure.in: Preparing to release 4.2.16
2132         * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot,
2133         po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po,
2134         po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sl.po, po/sv.po,
2135         po/tr.po: make update-po prior to 'make distcheck'
2137         * po/fetch-po-files: This is the first version we actually used.
2139         * find/find.c: process_top_path() fixed compilation warning.
2141         * find/find.c: process_top_path(): avoid processing this item if
2142         we can't chdir to the basename of the named file.
2144         * lib/Makefile.am: Always build forcefindlib.c
2146         * locate/locate.c: Say 'base name' rather than 'basename' in comments
2148         * find/pred.c, find/find.c: process_top_path(): Proper bugfix for
2149         correct handling of items at depth 0 (i.e. specified on the
2150         command line) - do an extra chdir to ensure that we're in the
2151         directory containing the item before calling process_path().
2152         Hnece also undo the previous 'quick fix' for the same problem
2154         * doc/find.texi:
2155         -execdir no longer has to treat anything as special, even at depth 0.
2157 2005-02-03  James Youngman  <jay@gnu.org>
2159         * doc/find.texi, find/pred.c: When state.curdepth is 0, our
2160         working directory is not the directory containing the file we are
2161         processing.
2163 2005-02-02  James Youngman  <jay@gnu.org>
2165         * find/pred.c:
2166         To allow compilation on cygwin, use base_name(), not basename().
2169 2005-02-01  James Youngman  <jay@gnu.org>
2171         * ChangeLog: Updated from CVS log.
2173 2005-01-31  James Youngman  <jay@gnu.org>
2175         * find/find.c, lib/nextelem.c, lib/nextelem.h, locate/code.c,
2176         locate/frcode.c, locate/testsuite/config/unix.exp,
2177         xargs/testsuite/config/unix.exp, xargs/xargs.c: Updated/corrected
2178         the email address for David MacKenzie, one of the original authors
2179         of findutils
2181         * doc/Makefile.am: The HTML version of the manual generated for
2182         the GNU project website has each node in a separate file, not each
2183         chapter in a separate file; adjust filenames accordingly
2185         * find/parser.c, find/pred.c, lib/savedirinfo.c:
2186         Removed some unused variables (patch from Dmitry V. Levin)
2188         * find/find.c:
2189         Patch from Dmitry V. Levin <ldv@altlinux.org>: Add subfs to the list
2190         of filesystems which are likely to be automounted.
2192         * m4/findlib.m4: Corrected typo (pointed out by Dmitry V. Levin).
2194         * find/testsuite/config/unix.exp,
2195         find/testsuite/find.gnu/name-period.xo,
2196         find/testsuite/find.gnu/posix-dflt.xo,
2197         find/testsuite/find.gnu/posix-h.xo,
2198         find/testsuite/find.gnu/posix-l.xo,
2199         find/testsuite/find.gnu/printf.exp,
2200         find/testsuite/find.gnu/printf.xo: Systems differ in the order in
2201         which filenames are returned by readdir.  Hence sort the output of
2202         'find' before comparing against the expected-output file.  We
2203         therefore also have the lines in the .xo files ready-sorted.
2205 2005-01-30  James Youngman  <jay@gnu.org>
2207         * doc/Makefile.am:
2208         Added rules for extra targets that we buld to update the web site.
2210 2005-01-29  James Youngman  <jay@gnu.org>
2212         * configure.in: No longer version 4.2.15 - we've changed the manual.
2214         * doc/find.texi:
2215         Clarified the txt about adding extra tests with post-processing via
2216         xargs, and recommend -execdir instead for security reasons.
2218         * doc/find.texi: Patch from Karl Berry:
2219         - more entries for the dir file
2220         - use @copying so the copyright ends up in the HTML etc. output.
2221           (This is the only really important change.)
2222         - put @contents after the title page, for conventional toc location.
2223         - use @ifnottex to wrap the Top node instead of @ifinfo, for the sake of
2224           HTML output, etc.
2226         * NEWS, configure.in, po/da.po, po/de.po, po/es.po, po/et.po,
2227         po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po,
2228         po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po,
2229         po/sv.po, po/tr.po: Prepared to release findutils-4.2.15
2231         * ChangeLog: Updated from CVS log.
2233 2005-01-28  James Youngman  <jay@gnu.org>
2235         * configure.in:
2236         Make --enable-d_type-optimization and --enable-d_type-optimisation
2237         both work.
2239         * configure.in: Assume --enable-d_type-optimisation by default
2241         * find/parser.c: Indicate which features are enabled/disabled
2243         * locate/testsuite/config/unix.exp:
2244         Clean up the files left behind by the locate_textonly test
2246 2005-01-27  James Youngman  <jay@gnu.org>
2248         * doc/find.texi: Documented --regex.
2250         * NEWS, locate/locate.1, locate/locate.c, locate/testsuite/Makefile.am, locate/testsuite/config/unix.exp, locate/testsuite/locate.gnu/regex1.exp:
2251         Implemented locate --regex - but needs documenting in Texinfo manual.
2253 2005-01-25  James Youngman  <jay@gnu.org>
2255         * configure.in: Bumped version no.
2257         * doc/find.texi:
2258         Document --mmap and --stdio as being synonyms of -m and -s.
2260         * locate/locate.1:
2261         Document --mmap and --stdio as synonyms of -m and -s.
2263         * locate/locate.c:
2264         Document -m and -s (both no-ops) in the usage message.
2266         * doc/find.texi, locate/locate.1: Document -m and -s as no-ops.
2268         * ChangeLog: Updated for release of findutils-4.2.14.
2270         * 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:
2271         Preparing to release findutils-4.2.14
2273 2005-01-25  James Youngman  <jay@gnu.org>
2275         * NEWS, configure.in, po/da.po, po/de.po, po/es.po, po/et.po,
2276         po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po,
2277         po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po,
2278         po/sv.po, po/tr.po: Preparing to release findutils-4.2.14
2280 2005-01-24  James Youngman  <jay@gnu.org>
2282         * Makefile.am: Work around the fact that automake-1.7 actually
2283         works, and correctly distributes regex.c; hence dist-hook should
2284         only copy gnulib/lib/regex.c if this has not already been done.
2286         * find/defs.h, find/find.c, find/pred.c,
2287         find/testsuite/Makefile.am,
2288         find/testsuite/find.gnu/printf-symlink.exp,
2289         find/testsuite/find.gnu/printf-symlink.xo,
2290         find/testsuite/find.gnu/xtype-symlink.exp,
2291         find/testsuite/find.gnu/xtype-symlink.xo: Fixes for -xtype and
2292         -printf %Y, which had been the wrong way around.
2294         * NEWS: Avoid including the find.gnu subdirectory in the
2295         distributed file more than once
2297         * locate/locate.c:
2298         Move the printing of the statistics into a new function, print_stats()
2300         * find/testsuite/Makefile.am: Avoid including the find.gnu
2301         subdirectory in the distributed file more than once
2303         * import-gnulib.sh:
2304         We need the regex module anyway, to allow compilation on Solaris
2306 2005-01-23  James Youngman  <jay@gnu.org>
2308         * configure.in:
2309         Invoke gl_INCLUDED_REGEX directly to ensure successful compilation on
2310         systems like Solaris, which lacks those functions in libc (fixes GNU
2311         Savannah bug #11710).
2313         * locate/locate.1: -S is a synonym for --statistics
2315         * doc/find.texi: Documented the new -H, -L and -P options.
2317         * locate/locate.1, locate/locate.c: Implement options -L
2318         (default), -H and -P, which mean the same things as for find,
2319         except for the fact that the default is -L rather than -P
2321         * find/find.1: Corrected definition of the exit status for -quit.
2323         * find/find.c, find/pred.c: If DEBUG_STAT is set, issue a debug
2324         message when we call chdir() so that we can figure out what is
2325         actually being stat()ed
2327         * locate/updatedb.sh:
2328         Removed spurious newline from help message (bug report from Karl
2329         Berry).
2331         * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot,
2332         po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po,
2333         po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sv.po, po/tr.po,
2334         Makefile.am, NEWS, configure.in, find/defs.h, find/find.c,
2335         find/parser.c, find/pred.c, find/tree.c, find/util.c,
2336         import-gnulib.sh, lib/savedirinfo.c: Merged the d_type
2337         optimisation code; this is disabled by default, and can be enabled
2338         with 'configure --enable-d_type-optimisation'
2340         * NEWS:
2341         Updated optimisation NEWS item to indicate the effect on runtime.
2343 2005-01-22  James Youngman  <jay@gnu.org>
2345         * NEWS, configure.in: Prepare for release of findutils-4.2.12
2347         * ChangeLog: Brought up to date with recent changes.
2349         * Makefile.am, import-gnulib.sh, po/Makefile.in.in, po/Makevars,
2350         po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot,
2351         po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po,
2352         po/pl.po, po/pt_BR.po, po/remove-potcdate.sin, po/ru.po, po/sk.po,
2353         po/sv.po, po/tr.po: Switch to using the gnulib gettext module, to
2354         ensure that 'make distcheck' works with current xgettext,
2355         autoconf, etc.
2357         * find/testsuite/config/unix.exp:
2358         Oops, we do need to clean up after all.
2360 2005-01-21  James Youngman  <jay@gnu.org>
2362         * xargs/testsuite/Makefile.am: Added name of missing input file.
2364         * find/testsuite/Makefile.am:
2365         Distribute a few files that we had forgotten about
2367         * xargs/testsuite/Makefile.am: Added some missing files.
2369         * lib/Makefile.am: Also need buildcmd.h.
2371         * xargs/testsuite/Makefile.am: Fixed a typo.
2373         * NEWS: Indicate the d_type performance improvement
2375 2005-01-18  James Youngman  <jay@gnu.org>
2377         * lib/savedirinfo.h: Added on d_type_optimisation also
2379         * lib/savedirinfo.c: Added on branch d_type_optimisation also.
2381         * find/pred.c: Added assert that we actually know the file type by
2382         the time pred_type() is called
2384         * find/find.c: Always initialise state.have_stat = false when
2385         starting to work with a new file
2387 2005-01-17  James Youngman  <jay@gnu.org>
2389         * ChangeLog: Brought up to date with recent changes.
2391         * NEWS: Documented the changes so far.
2393         * find/testsuite/find.gnu/exec-many-rtn-success.xo:
2394         Expected output for exec-many-rtn-success.exp
2396         * find/find.1:
2397         Indicate that -quit still ensures that pending commands are invoked
2399         * doc/find.texi:
2400         Indicate that -quit still causes partial command lines to be invoked,
2401         but there are some types of fatal error which leave such commands
2402         uninvoked.
2404         * find/defs.h, find/find.c, find/pred.c, find/testsuite/Makefile.am, find/testsuite/config/unix.exp:
2405         Fixed savannah bug  #11625 Wrong return status for -exec ... \; when command fails; also execute any pending commands when doing -quit
2407         * 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:
2408         Various test cases for succeeding and failing forms of -exec \; and -exec {} +
2410         * find/pred.c: "-exec ... {} +" always returns "true".
2412         * configure.in, find/defs.h, find/find.c, find/parser.c, find/pred.c, find/tree.c, find/util.c:
2413         Implemented d_type optimisation but not working correctly, so currently disabled
2415         * lib/savedirinfo.h, lib/savedirinfo.c:
2416         Initial implementation (temporarily disabled).
2418         * lib/Makefile.am: Resolved merge conflict.
2420         * lib/Makefile.am:
2421         Make sure nextelem.h is included in the list of sources.
2423         * find/parser.c, lib/nextelem.c, lib/nextelem.h, locate/locate.c:
2424         Use prototypes for next_element() to make sure it is called correctly.
2426 2005-01-16  James Youngman  <jay@gnu.org>
2428         * find/find.c, find/pred.c:
2429         When completing incomplete multiple execs, use 'eval_tree' not 'predicates'
2431         * lib/buildcmd.c:
2432         Oops, initialise state->cmd_initial_argv_chars to zero.
2434         * find/find.1:
2435         Document the way that -execdir and -okdir will refuse to wqork if ">"
2436         is on $PATH.  Also document -okdir in the manpage.
2438         * find/parser.c:
2439         -execdir and -okdir are insecure if $PATH includes the current
2440          directory, and so they refuse to work if the user has done that.
2442         * find/pred.c:
2443         Oops; for -exec ... {} +, pass arguments to bc_push_arg() in the right
2444         order.   Problem spotted by Geoff Clare.
2446         * TODO: Removed items which have now been done.
2448         * lib/buildcmd.c: Tidied up formatting of arg list for bc_do_insert
2450 2005-01-15  James Youngman  <jay@gnu.org>
2452         * find/testsuite/find.gnu/printf.exp, find/testsuite/find.gnu/printf.xo:
2453         Added extra tests for more printf formats; patch by Andreas Metzler
2455         * locate/locate.c:
2456         Ensure that the new long options have a relevang short option too.
2457         Also bring usage message into line with the options actually
2458         supported.  Thanks to Bas van Gompel for noticing this defect.
2460         * locate/locate.1:
2461         Escape "-" in SYNOPSIS.  Thanks to Bas van Gompel for noticing this
2462         defect.
2464         * ChangeLog: Fixed typos.
2466         * doc/find.texi:
2467         Documented -execdir, and the "+" variants of -exec and -execdir.
2469         * find/find.1: Documented -execdir.
2471         * xargs/xargs.c:
2472         Updated to bring into line with bc_*() interface changes
2474         * ChangeLog: Updated with recent changes.
2476         * find/defs.h, find/parser.c, find/pred.c, lib/buildcmd.c, lib/buildcmd.h:
2477         Implemented -execdir and -okdir
2479         * find/defs.h, find/find.c, find/fstype.c, find/parser.c, find/pred.c, lib/buildcmd.c, lib/buildcmd.h, xargs/xargs.c:
2480         First working version of -exec ...+
2482 2005-01-09  James Youngman  <jay@gnu.org>
2484         * find/defs.h, find/find.c, find/parser.c, find/pred.c, lib/buildcmd.c, lib/buildcmd.h, xargs/xargs.c:
2485         Initial implementation of -exec ..{} +, but currently disabled since not yet working
2487 2005-01-08  James Youngman  <jay@gnu.org>
2489         * find/find.c: Fixed typo in comment.
2491         * find/defs.h, find/find.c, find/parser.c, find/pred.c:
2492         We now understand but do not implement -execdir (a *BSD invention, and a very useful security enhancement) and -okdir (the obvious companion to it)
2494         * locate/bigram.c, locate/code.c, locate/frcode.c, locate/locate.c, xargs/xargs.c:
2495         The GNU coding standard requires a space between the function name and
2496         its parenthesised argument list.
2498         * find/defs.h:
2499         Understand the -exec ... {} \+ construction (for multiple
2500         replacement).  No support yet.
2502         * locate/locate.1:
2503         Indicate that empty elements in the dbpath are treated as synonyms for
2504         the default database.
2506         * locate/locate.c:
2507         Support empty elements in the dbpath as synonyms for the default
2508         database.  These colons can be leading, trailing or in the middle of
2509         the string.  We no longer com,plain if the user does this.
2511         * lib/nextelem.c:
2512         If curdir_ok is 0 and an element is empty, return "" instead of NULL
2513         so that the caller knows to keep calling us.
2515         * find/find.c, find/pred.c, import-gnulib.sh, locate/bigram.c, locate/code.c, locate/frcode.c, locate/locate.c, xargs/xargs.c:
2516         Savannah bug 11517: find, xargs, locate, etc. should not hide write failures; patch from Jim Meyering
2518         * 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:
2519         changed .pot creation date
2521         * THANKS, AUTHORS: Take into account the FSF copyright-assignments list
2523         * doc/find.texi:
2524         If -quit is used, the exit value can be nonzero if errors have occurred.
2526         * find/find.1:
2527         Removed incorrect comment about -H, -P and -follow in HISTORY.
2529 2005-01-07  James Youngman  <jay@gnu.org>
2531         * lib/Makefile.am, lib/buildcmd.c, lib/buildcmd.h, xargs/xargs.c:
2532         Refactored xargs to use an external library function from the new file buildcmd.c
2534         * configure.in: no longer the same as the released 4.2.11 version
2536 2005-01-06  James Youngman  <jay@gnu.org>
2538         * xargs/testsuite/inputs/lines.xi, xargs/testsuite/xargs.posix/l2.exp, xargs/testsuite/Makefile.am:
2539         Tests for the -L option
2541         * xargs/testsuite/config/unix.exp: When a test fails, show the diffs
2543         * xargs/testsuite/xargs.posix/l2.exp, xargs/testsuite/xargs.posix/l2.xo:
2544         tests for the -l option
2546         * xargs/testsuite/Makefile.am: Added extra test files
2548         * xargs/testsuite/xargs.sysv/trace.exp, xargs/testsuite/xargs.sysv/trace.xe, xargs/testsuite/xargs.sysv/trace.xo:
2549         Added tests for the -t option
2551         * 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:
2552         Use a blanks-only input file for cases where there is supposed to be no output
2554         * xargs/testsuite/inputs/blank.xi: Initial version.
2556         * xargs/xargs.1:
2557         Corrected a typo; also indicate that it's impossible to use xargs
2558         securely due to the race condition.
2560 2005-01-05  James Youngman  <jay@gnu.org>
2562         * find/parser.c:
2563         Fixed Savannah bug 11495: fallthrough from -printf format processing
2564         from 'n' case to 'd' case.
2566 2005-01-03  James Youngman  <jay@gnu.org>
2568         * doc/find.texi:
2569         Oops.  Had duplicated an entire section.  Fortunately this was after
2570         @bye, so there was no adverse effect.
2572         * NEWS: locate -b.
2574         * doc/find.texi, locate/locate.1: document locate -S
2576         * configure.in, doc/find.texi, locate/locate.1, locate/locate.c:
2577         Support locate -b as a synonym for locate --basename
2579         * 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:
2580         distcheck
2582         * find/testsuite/config/unix.exp:
2583         Clean up (delete) find.out at at the end of the test.
2585         * NEWS, doc/find.texi, find/defs.h, find/find.1, find/find.c, find/parser.c, find/pred.c:
2586         Implemented the -samefile test for find
2588 2005-01-02  James Youngman  <jay@gnu.org>
2590         * ChangeLog: Updated with recent changes.
2592         * NEWS:
2593         Bas van Gompel: two-line patch to locate.c to make locate's -i and -w
2594         options work if -e is in use.
2596         * THANKS: Added Bas van Gompel.
2598         * locate/locate.c:
2599         Bas van Gompel: (visit_exists) when testing for the existence of the
2600         file, check the real filename [printname], not the case-converted
2601         filename [testname].  Really these argument names are badly chosen.
2603         * find/find.1, doc/find.texi:
2604         Improved the documentation for -perm, with plenty of examples,
2605         following a comment by Dan Jacobson that the comment "Symbolic modes
2606         use mode 0 as a point of departure" is baffling and unhelpful.
2608         * locate/locate.c:
2609         Suggestion and patch from Bas van Gompel: (new_locate): Fix display of
2610         negative compression ratios.
2612 2004-12-31  James Youngman  <jay@gnu.org>
2614         * NEWS: Brought up to date with recent changes
2616         * doc/find.texi:
2617         Don't need to nest the "race conditions with..." sections so deeply.
2619         * doc/find.texi: Corrected some spelling errors.
2621         * doc/find.texi: Added new "Security Considerations" chapter.
2623 2004-12-23  James Youngman  <jay@gnu.org>
2625         * locate/locate.c:
2626         Applied bugfixes from Bas van Gompel <patch-findutils.buzz@bavag.tmfweb.nl>.
2627         (lc_strcpy): Zero-terminate result.
2628         (add_visitor): Update lastinspector.
2629         (visit_substring_match_casefold): fix off-by-one error.
2630         (new_locate): Move visit_exists down to improve performance.
2631         (new_locate): Don't fold case when getting stats.
2633 2004-12-19  James Youngman  <jay@gnu.org>
2635         * doc/find.texi:
2636         Indicate that "cd /; find tmp -wholename /tmp" will never match anything.
2638         * doc/find.texi: Documented locate --statistics.
2640         * locate/locate.1: Documented the --statistics option.
2642         * locate/locate.c: Added support for the -S option.
2644 2004-12-12  James Youngman  <jay@gnu.org>
2646         * NEWS: Added a summary of the changes so far.
2648         * find/tree.c: Made some of the error messages more self-explanatory
2650         * find/pred.c: Print pointers with %p, not %x.
2652         * find/find.c: Moved option data into struct options.
2654         * find/find.1: clarifications
2656         * find/testsuite/find.gnu/comma.exp:
2657         Limit the amount of searching with maxdepth.
2659         * doc/find.texi: clearer description of how -prune works
2661         * ChangeLog: Removed duplicate entry.
2663         * configure.in, find/defs.h, find/find.c, find/fstype.c, find/parser.c, find/pred.c, find/tree.c, find/util.c:
2664         Separated ariables representing current state from variable representing option information
2666 2004-12-11  James Youngman  <jay@gnu.org>
2668         * find/parser.c: Readability improvement to the usage message.
2670         * find/find.c: Oops.  Fixed unmatched #endif.
2672         * find/testsuite/find.gnu/printf.exp, find/testsuite/find.gnu/printf.xo, THANKS, configure.in, find/testsuite/Makefile.am, find/testsuite/config/unix.exp:
2673         Fixed Savannah bug #11280
2675         * find/find.c:
2676         Remember to set path_length and curdepth in process_top_path().
2678 2004-12-07  James Youngman  <jay@gnu.org>
2680         * find/fstype.c: Use xstat() not stat() to examine things.
2682         * find/find.c: Explain why #ifdef EOVERFLOW.
2684         * find/find.c: EOVERFLOW is not defined on UNICOS.
2686         * NEWS: Corrected typo.
2688 2004-12-06  James Youngman  <jay@gnu.org>
2690         * ChangeLog: Brought up to date.
2692         * NEWS, configure.in: releasing 4.2.10
2694         * 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:
2695         distcheck
2697         * ChangeLog: Updated prior to release of finsutils-4.2.10.
2699         * import-gnulib.sh, find/fstype.c:
2700         Use gnulib's mountlist module instead of grokking it ourselves.
2702         * configure.in:
2703         Removed all the out-of-date cruft for grokking getmntent().
2705         * xargs/xargs.c:
2706         Added the -I and -L options; also -E takes an argument which is not optional.
2708 2004-12-05  James Youngman  <jay@gnu.org>
2710         * README, configure.in, find/defs.h, find/find.c, find/parser.c, find/pred.c, find/tree.c:
2711         Allow debug output to be turned on or off by saying --enable-debug on the configure command line
2713         * README:
2714         Removed disparaging (it is now, it probably wasn't then) comment about
2715         the production-readiness of Automake.
2717         * README: Qualify remarks about POSIX compliance.
2719         * NEWS, configure.in: Preparation for release 4.2.9
2721         * 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:
2722         distcheck
2724         * ChangeLog: Brought up to date.
2726         * find/find.c:
2727         Avoid duplicate error message when we cannot chdir() into a subdirectory.
2729         * THANKS: Added recent thankees.
2731         * NEWS:
2732         Brought up to date with respect to the current set of fixed bugs.
2734         * NEWS, xargs/xargs.1, xargs/xargs.c:
2735         Implemented POSIX options -L, -I and -E
2737 2004-12-03  James Youngman  <jay@gnu.org>
2739         * find/parser.c:
2740         -xdev is an option, not a test.   Fixes Savannah bug 11192.
2742         * find/find.1, xargs/xargs.1:
2743         Escape dashes with a backslash (for fix Savannah bug 11189).
2745 2004-11-27  James Youngman  <jay@gnu.org>
2747         * find/find.c:
2748         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.
2750         * find/find.1: "necessary" only has one "C".
2752         * find/find.1:
2753         If stat() fails with ELOOP, we issue a diagnostic message.
2755 2004-11-26  James Youngman  <jay@gnu.org>
2757         * find/find.c: Removed some unused code.
2759         * Makefile.am: Don't do anything in the 'intl' subdirectory
2761         * find/find.c:
2762         Enhanced safely_chdir() to the point where the test suite passes, and report infinite loops in the directory hierarchy
2764         * find/defs.h:
2765         belt and braces; ensure that SYMLINK_NEVER_DEREF has value zero
2767         * find/find.1:
2768         Describe our strategy for detecting and reporting infinite loops
2770 2004-11-24  James Youngman  <jay@gnu.org>
2772         * doc/find.texi:
2773         Updated the discussion of th error messages for findutils-4.2.8.
2775         * configure.in: Next version will be 4.2.9...
2777         * find/find.c:
2778         Don't issue a warning if we notice the mounting of a filesystem that's
2779         likely just to be an automounter.
2781         * doc/find.texi, find/find.1:
2782         Explain how rounding is performed for -atime and friends.
2784         * xargs/xargs.c:
2785         Once we collect enough arguments (for the value specified by the -n
2786         option) to do an exec(), do it immediaely instead of waiting for the
2787         next one to arrive.  This fixes Savannah bug #7340.
2789         * ChangeLog, configure.in, NEWS: Prepare to release 4.2.8.
2791         * NEWS: Updates for 4.2.8.
2793         * configure.in: check for  sys/types.h
2795         * find/find.c:
2796         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.
2798         * find/defs.h:
2799         Declarations of xmalloc() and friends belong in xalloc.h, not in defs.h
2801         * find/parser.c: avoid signed/unsigned warning, and #include xalloc.h
2803         * find/fstype.c:
2804         Changed to alloc get_mounted_devices() to compile on Solaris
2806         * README-CVS:
2807         Automake requires GNU m4, so point out that the reader needs that.
2809         * find/defs.h, find/find.c, find/fstype.c:
2810         When wd_sanity_check() fails, enumerate the mounted devices, rather than the mounted filesystem names
2812         * NEWS: prepare for 4.2.8
2814         * configure.in:
2815         Look for some Solaris headers which are used by get_mounted_devices()
2817         * lib/Makefile.am: don't build savedirtypes yet
2819         * 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:
2820         updated po files
2822         * m4/nullsort.m4:
2823         Avoid suprious output of the test data when the tests fail.
2825 2004-11-21  James Youngman  <jay@gnu.org>
2827         * 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:
2828         Messages changed again
2830         * ChangeLog, configure.in: Preparing to release 4.2.7.
2832         * NEWS: Updated for release of 4.2.7.
2834         * import-gnulib.sh: Also need canonicalize module.
2836         * find/find.c:
2837         When checking to see if a filesystem has changed state, use an
2838         absolute pathname.
2840         * configure.in:
2841         No need to pause to allow James to view his handiwork, it (allegedly)
2842         works now.
2844         * configure.in:
2845         Oops.  Check for setlocale() to re-enable the i18n support which was
2846         accidentally disabled in 4.2.5.
2848         * find/find.c:
2849         Check to see if the new directory is a transitioned mount point by
2850         using its ABSOLUTE name, if we can figure it out.
2852         * doc/find.texi:
2853         Added guidance on some of the error messages.  Not the most common
2854         ones, but the ones where the user might most benefit from some handy
2855         hints or an explanation of what is going on.
2857         * find/pred.c:
2858         Actually emit an error message if we fail to stat a symlink (for
2859         reasons other than nonexistence of the link and infinite loop).
2861         * doc/texinfo.tex: Updated texinfo.tex
2863         * NEWS, configure.in, find/find.c, find/fstype.c:
2864         Enable the 'Warning: filesystem XXX has recently been mounted' check on Solaris, which prevents it exiting fatally when traversing an automount mount point
2866         * 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:
2867         messages changed again
2869         * NEWS: Implemented xargs --arg-file.
2871         * doc/find.texi, xargs/xargs.1, xargs/xargs.c, NEWS:
2872         Implemented xargs --arg-file
2874         * find/find.c:
2875         Where a filesystem was recently (un)mounted, try togive its full name
2877         * configure.in:
2878         Try to avoid requesting -lsun if we don't seem to need it (e.g. on
2879         UNICOS where it is not present and trying to link against it produces
2880         a warning).
2882         * find/defs.h, lib/modetype.h: Guard against multiple inclusion
2884         * find/fstype.c:
2885         We now need <mntent.h> even if we are not using getmntent() to figure
2886         out the type of a filesystem, because wd_sanity_check() needs to
2887         enumerate the system mount points.
2889         * configure.in: Next release will be 4.2.7.
2891         * find/fstype.c:
2892         get_mounted_filesystems() should use getmntent() if that function is
2893         present, rather than just if configure didn't find anything better for
2894         filesystem_type_uncached() to use than that.
2896         * find/parser.c:
2897         If -delete is the only action on a file, don't assume the default
2898         -print action too.
2900         * 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:
2901         Preparation to release findutils-4.2.6.
2903         * find/Makefile.am, xargs/Makefile.am:
2904         Enable checking of support for --version and --help
2906         * locate/Makefile.am:
2907         Con't check command-line options for frcode, code or bigram
2909         * locate/code.c: Support --version and --help.
2911         * ChangeLog: *** empty log message ***
2913         * find/defs.h, find/find.c, find/fstype.c, lib/Makefile.am, lib/extendbuf.c, lib/extendbuf.h, NEWS:
2914         Avoid fatal error if automount mounts a filesystem on a directory because we chdir()ed into it
2916         * configure.in: Next release will be 4.2.6.
2918         * find/find.1:
2919         Indicate that the '-' flag does work for most fields.   Also provide
2920         an example of using the comma operator to traverse the filesystem just
2921         once but search for more than one thing.
2923         * doc/find.texi: Indicate that the '-' flag does work for most fields.
2925 2004-11-19  James Youngman <jay@gnu.org>
2927         * configure.in: releaseing findutils-4.2.5
2929         * find/testsuite/Makefile.am, locate/testsuite/Makefile.am, xargs/testsuite/Makefile.am:
2930         If a directory has no Makefile.am, omit it from the parent's DIST_SUBDIRS - automake-1.9 requires this
2932         * 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:
2933         updated by make distcheck
2935         * ChangeLog, NEWS: Updated for release 4.2.5.
2937         * find/find.1, doc/find.texi:
2938         Tell the reader that format flags may not work as they expect.
2940         * configure.in:
2941         Use the correct name for the macro gl_AC_TYPE_LONG_LONG (not
2942         jm_AC_TYPE_LONG_LONG).
2944 2004-11-15  James Youngman <jay@gnu.org>
2946         * import-gnulib.sh:
2947         Avoid test -e because not all systems are POSIX-compliant (bug
2948         #11005).  Also don't need regex module any more if we're not building
2949         in intl.
2951         * Makefile.am, configure.in:
2952         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
2954         * doc/find.texi:
2955         Use @ref not @xref for a reference at the beginning of a sentence.
2957         * intl/Makefile.in:
2958         Make sure gnulib.lib is on the #include path (Savannah bug #11002)
2960         * locate/locate.c:
2961         Use base_name instead of basename - fixes Savannah bug 11003.
2963         * configure.in, find/defs.h, find/find.c, find/parser.c, find/pred.c, locate/bigram.c, locate/locate.c:
2964         Don't need banner to emphasise the location of the call to jy_SORTZ
2966 2004-11-12  James Youngman <jay@gnu.org>
2968         * 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:
2969         Implemented BSD option -P and also the correct defautl behaviour of find with respect to symlinks if neither -L nor -H is specified [i.e. same as -P]
2971 2004-11-11  James Youngman <jay@gnu.org>
2973         * NEWS, doc/find.texi, find/defs.h, find/find.1, find/find.c, find/parser.c:
2974         Implemented -H and -L options.
2976         * find/util.c: Added in the -H and -L options on the usage message.
2978 2004-11-10  James Youngman <jay@gnu.org>
2980         * doc/find.texi, find/find.1, find/parser.c, find/pred.c:
2981         Implemented %M and %A+ format specifiers
2983         * doc/find.texi, find/find.1, find/parser.c, find/pred.c:
2984         Documented the fact that only %d and %m format specifiers honour the various formatting flags
2986         * xargs/xargs.c:
2987         Get the right number of bytes in a Kilobyte (hint: it's not 1048; that
2988         was a typo, honest :)
2990         * po/pl.po: Applied Polish translations
2992 2004-11-08  James Youngman <jay@gnu.org>
2994         * 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:
2995         distcheck changed the po files again
2997         * locate/Makefile.am:
2998         Make install-data-hook honour the setting of DESTDIR so that "make
2999         DESTDIR=/tmp/foo install" works and puts localstater in the right
3000         place.
3002         * configure.in: We're now working on findutils-4.2.5.
3004         * doc/find.texi, xargs/xargs.1:
3005         Point out that xargs -i only splits input items at newlines
3007         * ChangeLog: Indicate that we released 4.2.4.
3009         * ChangeLog: Updated for release 4.2.4
3011         * NEWS, configure.in: Prepare for release of 4.2.4.
3013         * NEWS: Brought up to date with latest changes.
3015         * 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:
3016         Turn warning messages off by default if stdin is not a tty; allow these to be controlled explicitly by options -warn and -nowarn
3018         * po/et.po, po/it.po: Updated translation files
3020         * po/sk.po: New translation file
3022         * po/fr.po, po/nl.po, po/tr.po: Updated translation files
3024         * configure.in: Added Slovak (sk) language.
3026         * xargs/xargs.c:
3027         Enforcing a lower limit on the value specified by -s makes the test
3028         suite fail.  Removed that lower limit.
3030         * locate/Makefile.am: Oops, multilocate doesn't exist yet.
3032         * NEWS: *** empty log message ***
3034         * doc/find.texi, locate/updatedb.1, locate/updatedb.sh:
3035         Added option --findoptions to updatedb
3037         * locate/Makefile.am, locate/locatedb.5, locate/updatedb.1, xargs/xargs.1:
3038         Fixed section numbers in manpage titles and cross-references
3040         * NEWS, doc/find.texi, xargs/xargs.1, xargs/xargs.c:
3041         Increased the default argument length and improved POSIX compliance of the handling of out-of-range values for the -s option
3043 2004-11-07  James Youngman <jay@gnu.org>
3045         * m4/Makefile.am:
3046         Added in the extra files we need to distribute, nullsort.m4
3047         order-bad.bin order-good.bin
3049         * doc/find.texi: Documented locate's --limit option
3051         * locate/locate.1, locate/locate.c:
3052         Implmented --limit and corrected the implementation of the -i option.
3054 2004-11-06  James Youngman <jay@gnu.org>
3056         * NEWS, doc/find.texi, locate/locate.1:
3057         Documented --wholename and --basename and updated the NEWS file
3059         * README-CVS:
3060         Give the autogen commands in a form that you can usefully cut and paste into a shell
3062         * NEWS: Options --null and --count) for locate
3064         * lib/nextelem.c:
3065         Don't return '.' for an empty path element, because the path we are splitting may not be intended to contain directories
3067         * configure.in: we're working on findutils-4.2.4 now
3069         * locate/Makefile.am: Substitute @SORT_SUPPORTS_Z@
3071         * doc/find.texi:
3072         Documented new locate option --null and newline handling
3074         * locate/locate.1, locate/locate.c:
3075         New locate options --null, --wholename, --basename, --count
3077         * locate/frcode.c, locate/updatedb.1, locate/updatedb.sh:
3078         correctly handle newlines in the file names
3080         * configure.in: Determine if sort -z works
3082         * m4/nullsort.m4, m4/order-bad.bin, m4/order-good.bin:
3083         jy_SORTZ: a macro to determine if the system has a sort command with a working -z option
3085 2004-11-01  James Youngman <jay@gnu.org>
3087         * NEWS: Fixed "find -printf '%H\n'".
3089         * find/find.c:
3090         Avoid segfault if -printf %H is used where the matched file was the default, unspecified starting point, the current directory
3092 2004-10-31  James Youngman <jay@gnu.org>
3094         * find/find.1, find/parser.c: NetBSD also supports -d.
3096         * find/find.1, doc/find.texi:
3097         Documented the behaviour of -daystart and -follow in more detail
3099         * find/parser.c: Corrected the usage message.
3101         * find/parser.c:
3102         When deciding whether to issue a warning about options following
3103         non-options, ignore any options whose position affects the tests
3104         (i.e. -daystart and -follow).
3106         * find/parser.c: -daystart is a positional option like -follow.
3108         * find/parser.c:
3109         Issue a warning message if an option is specified after a test or an
3110         action (because the user might have believed that the behaviour of the
3111         option is in some way conditional on the preceding tests).
3113         * locate/updatedb.sh:
3114         Oops; removed some test code that I shouldn't have checked in.
3116         * locate/updatedb.sh:
3117         Indicate that the old locate database format will shortly be unsupported.
3119         * doc/find.texi:
3120         Use @direntry instead of hard-coding START-INFO-DIR-ENTRY inside @ifinfo.
3122         * locate/updatedb.1: Updated default location of locatedb file.
3124         * README-alpha:
3125         Updated to give correct FTP location and to not talk about "test"
3126         versions of automake, which are no longer required.
3128         * locate/updatedb.sh:
3129         Incorporated the default list of filesystems to avoid from the Debian
3130         package.  Also added /afs and /sfs to the default pruned paths.
3132         * configure.in: Released findutils 4.2.3
3134         * 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:
3135         did make distcheck, which updates these files
3137         * find/defs.h, find/fstype.c:
3138         Use const qualifier in arguments to filesystem_type() to allow callers with const variables to use them
3140         * ChangeLog: Updated.
3142         * NEWS: Added new news.
3144         * find/find.c:
3145         Extra diagnositcs for the case where we have the error "%s changed
3146         during execution of %s" - that is when we chdir back to the parent
3147         directory only to find that it has changed.
3149 2004-10-30  James Youngman <jay@gnu.org>
3151         * .cvsignore, NEWS, doc/find.texi, find/defs.h, find/find.1, find/parser.c, find/pred.c:
3152         Implemented the -quit action
3154         * NEWS, doc/find.texi, find/find.1, find/parser.c, find/pred.c:
3155         Refactored time handling routines in preparation for support of absolute timestamp comparison predicates
3157         * locate/locate.c:
3158         Applied Savannah patch #2952 ("getline off-by-one bugfix").
3160         * NEWS, doc/find.texi, find/defs.h, find/find.1, find/parser.c, find/pred.c:
3161         Added -delete action (Savannah patch #3454 with additions)
3163         * locate/locate.c:
3164         Applied Savannah patch #2692 (allowing get_short to process negative integers).
3166         * find/find.c:
3167         If we are iossuing an error message because $FIND_BLOCK_SIZE is set,
3168         ignore the setting of errno.
3170         * find/parser.c: More fixes for pedantic compiler warnings
3172         * NEWS, find/parser.c, find/tree.c: Eliminated some compiler warnings
3174         * find/find.c, find/parser.c, find/pred.c:
3175         Various fixes for compiler warninga sbout unreachable code or unused function arguments
3177         * intl/plural.y: Silence compiler warning about unused argument.
3179         * locate/testsuite/Makefile.am:
3180         Subdirectory "inputs" does not exist, so remove it from DIST_SUBDIRS.
3182         * locate/locate.c:
3183         Corrected the explanation of why we have to use no parentheses around
3184         the String argument to the N_ macro in its expansion.
3186         * configure.in: Nextr release is 4.2.3.
3188         * configure.in: IOndicate this is no longer the pristine release.
3190         * NEWS:
3191         Oops, comments for release 4.2.0 should have said 20480 bytes, not 2480.
3193         * lib/listfile.c:
3194         The -ls predicate should not truncate usernames.  Fixes Savannah bug #10800.
3196         * find/fstype.c, locate/locate.c:
3197         Fixes for Savannah bug #3727 (Intel icc compilation errors).
3199 2004-10-25  James Youngman <jay@gnu.org>
3201         * doc/find.texi, find/find.1, find/parser.c, find/pred.c:
3202         Support -printf %D, which prints the device number of the containing filesystem
3204         * locate/updatedb.sh:
3205         Avoid confusion between James Woods and James Youngman, by using the
3206         disambiguating surname.
3208         * find/parser.c: Use RE_ICASE instead of re->translate.
3210         * configure.in, find/parser.c, find/pred.c, xargs/xargs.c:
3211         No need to #define _GNU_SOURCE if we use gl_INIT.
3213 2004-10-24  James Youngman <jay@gnu.org>
3215         * ChangeLog: Prepared to release findutils-4.2.2.
3217         * 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:
3218         Updates prior to release of 4.2.2
3220         * NEWS: Updated with news for findutils-4.2.2.
3222         * 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:
3223         Corrected typo in the address of the FSF office
3225         * lib/strspn.c: Updated FSF address.
3227         * m4/.cvsignore: 'cvs status' should ignore Makefile.in
3229         * 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:
3230         Use gnulib-tool --import to import the gnulib code, rather than the odd way we were doing it before
3232         * 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:
3233         Work round an apparent compiler bug in HP-UX 11.23 for
3234         ia64
3236         * locate/locate.c:
3237         Work around what appears to be a C compiler bug in HP-UX 11.23 for
3238         ia64.
3240         * INSTALL, depcomp, install-sh, missing, mkinstalldirs:
3241         Updated from automake
3243         * locate/bigram.c, locate/code.c, locate/frcode.c, locate/locate.c, xargs/xargs.c, find/find.c:
3244         Avoid use of exit() within main, to silence warnings about unreachable code
3246 2004-10-22  James Youngman  <jay@gnu.org>
3248         * doc/find.texi: Syntax corrections.
3250         * doc/find.texi: Indicate that "-exec {}+" is not yet supported.
3252         * find/find.1: Indicate that "{}+" is not yet supported.
3254         * find/testsuite/find.gnu/name-period.xo, find/testsuite/find.gnu/name-period.exp, find/find.1, doc/find.texi:
3255         The -name predicate must allow '*' to match '.foo' as demanded by IEEE
3256         Std 1003.2-1992 Interpretation #126.
3258         * find/pred.c:
3259         Remove use of FNM_PERIOD for -name as demanded by IEEE Std 1003.2-1992
3260         Interpretation #126
3262         * find/parser.c: Fix for compilation (on AIX 4.3) with GCC 2.x.
3264         * xargs/xargs.c:
3265         Changed the erorr message issued when there is an unmatched quote to
3266         point out that the user might have wanted to use the -0 option instead.
3268 2004-10-17  James Youngman  <jay@gnu.org>
3270         * configure.in:
3271         Define intmax_t if it is not already defined - allows parser.c to compile on AIX 4.3
3273         * configure.in:
3274         Adjust version number to indicate that this s/w has moved on since the
3275         4.2.1 release.
3277         * configure.in: preparing to release 4.2.1
3279         * ChangeLog: updated with current changes
3281         * README-CVS: Updated to go with newer version of gnulib.
3283         * 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:
3284         preparation for release
3286         * NEWS: Mention the changes to "trap".
3288         * NEWS: Brought up to date.
3290         * import-gnulib.sh:
3291         Use xalloc-die module from gnulib, since that has now been split out
3293         * find/parser.c:
3294         Check fnmatch() when other predicates that rely on fnmatch() are used.
3296         * find/parser.c: bug #10701: find needs fnmatch sanitycheck on startup
3298 2004-10-16  James Youngman <jay@gnu.org>
3300         * import-gnulib.sh:
3301         Switch to requirement for GNU fnmatch because it supports FNM_CASEFOLD.
3303         * locate/updatedb.sh:
3304         Bug #9465: use of signal numbers for 'trap' is deprecated.  Should use
3305         names instead.  See
3306         http://www.opengroup.org/onlinepubs/009695399/utilities/trap.html,
3307         which indicates that support for signal numbers is optional, while
3308         support for signal names is mandatory.
3310         * configure.in:
3311         Indicate that this is the CVS version (once again) now that findutils
3312         4.2.0 has been released.
3314         * 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:
3315         findutils 4.1.20 check-in for tagging
3317 2004-10-02  James Youngman <jay@gnu.org>
3319         * po/Makefile.in.in:
3320         Search in $(top_srcdir) for mkinstalldirs, since that's where we keep it.
3322         * NEWS: Brought up to date, organised more clearly, and tidied up.
3324         * NEWS: brought up to date with recent changes
3326         * locate/testsuite/config/unix.exp, locate/testsuite/locate.gnu/ignore_case1.exp, locate/testsuite/locate.gnu/ignore_case3.exp, locate/updatedb.sh:
3327         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
3329         * find/pred.c:
3330         Fixed usage of human_readable() in '%k' format specifier to fix a bug
3331         reported by Dmitry V. Levin (arguments to human_readable() were
3332         specified in the wrong order, which resulted in a floating-point
3333         error).
3335 2004-08-08  James Youngman <jay@gnu.org>
3337         * locate/updatedb.sh:
3338         cd to / to avoid inability to examine the current directory if we're
3339         invoked via cron (and hence in root's home directory for example).
3341         * doc/find.texi, find/find.1:
3342         Deprecate -path and -ipath in favour of -wholename and -iwholename
3344         * find/parser.c:
3345         As per RMS's suggestion, deprecate -path and -ipath in favour of
3346         -wholename and -iwholename.
3348         * locate/locate.c:
3349         Fixed Savannah bug #9923, in which get_short() returns large positive
3350         ints when it should be returning negative shorts.
3352         * xargs/xargs.1:
3353         Applied documentation improvements suggested by Dan Jacobson
3354         <jidanni@jidanni.org>.
3356         * xargs/xargs.c:
3357         Don't check size_of_environment against arg_max since that causes the
3358         test suite to fail.
3360         * xargs/xargs.1, xargs/xargs.c: Better documentation for the -i option
3362 2004-05-03  James Youngman <jay@gnu.org>
3364         * find/find.1:
3365         document the various suffixes for -size and also the new 
3366         option -ignore_readdir_race
3368         * locate/locate.c:
3369         Fixes Savannah bug #8623 (failure to check consistency of data 
3370         read from locate database)
3372         * locate/updatedb.sh:
3373         Resolves Savannah bug 4380, that updatedb generates an empty
3374         database if one of the commands fails
3376         * NEWS: Talk about -ignore_readdir_race
3378         * doc/find.texi:
3379         Documented -ignore_readdir_race and -noignore_readdir_race
3381         * find/find.c:
3382         -ignore_readdir_race should have no effect if the reason for the
3383          failure of stat(2) was anything other than ENOENT.
3385         * find/defs.h, find/find.c, find/parser.c:
3386         Fixed Savannah bug 4391 (readdir race condition leading to 
3387         spurious error messages)
3389 2004-04-24  James Youngman <jay@gnu.org>
3391         * README-CVS: Corrected the instructions for getting gnulib via CVS.
3393 2004-04-13  James Youngman <jay@gnu.org>
3395         * doc/find.texi:
3396         Actioned Savannah bug #8558 (find complains when it tries to recurse
3397         into directories that it had removed).
3399 2004-03-13  James Youngman <jay@gnu.org>
3401         * ChangeLog: Updated from checkin comments.
3403         * find/find.c:
3404         Oops, there is no access to the predicate name table if DEBUG is 
3405         not #defined.
3407         * find/parser.c:
3408         Detect arithmetic overflow (poorly) in insert_time(), which diagnoses
3409         the failure to handle large arguments to -mtime.  The existing code
3410         does careful computation and then bungs the value into a time_t, which
3411         ruins all our careful effort.  The new code is not a great
3412         improvement.  We just check the result to detect overflow, rather than
3413         actually avoiding the overflow.
3415         * find/find.c:
3416         Fixed Debian bug #185202 by checking for any trailing predicates after
3417         the top-level invocation of get_expr() has done its work.
3419         * locate/locate.1, xargs/xargs.1:
3420         Fixed Debian bug 175372, inappropriate 'L' suffixes on manual 
3421         page section indicators
3423         * find/find.1:
3424         Removed "L" suffixes from manual page section indicators, to fix
3425         Debian bug 175372.
3427         * debian/updatedb.conf:
3428         Updated with list of filesystems from current Debian release.  This
3429         includes devfs, for example.
3431         * xargs/xargs.1:
3432         Modified documentation of "-s" option to take into account the fix for
3433         Debian bug #176201.
3435         * xargs/xargs.c:
3436         Fixed Debian bug #176201, "xargs enviroment size limited to 20k", by
3437         reading a patch offered by Bob Proulx and implementing something
3438         substantially similar myself.
3440 2004-01-03  James Youngman  <jay@gnu.org>
3442         * xargs/xargs.c:
3443         Indicate that prep_child_for_exec() fixes Savannah bug #3992.
3445         * xargs/xargs.c:
3446         Attach the stdin of xargs' child process to /dev/null so that if it
3447         tries to read from its stdin it doesn't consume any of the list of
3448         files that xargs is trying to use.
3450         * find/find.1:
3451         Documented that the -regex option follows Gnulib's re_match() 
3452         implementation.
3454         * NEWS, locate/locate.c: Applied Savannah patch 2108
3456         * xargs/xargs.c: Applied Savannah patch 1500
3458         * find/find.1, doc/find.texi:
3459         Improved the documentation for the %k and %b format specifiers to
3460         -printf (Savannah bug #5034).  Also pointed out that this handling is
3461         different to that used by the "b" and "k" suffixes with "-size".
3463         * find/find.1: Improved the documentation for %k (Savannah bug #5034).
3465         * find/find.1:
3466         Improved the documentation for -print0 in the manpage, fixing Debian
3467         bug 111143.
3469         * README-CVS, find/pred.c, lib/listfile.c:
3470         Brought up-to-date with change in gnulib's human.c - we no longer 
3471         use human_readable_inexact(), because it is no longer provided.
3473 2003-08-08  James Youngman  <jay@gnu.org>
3475         * find/find.1:
3476         Documented the fact that -printf also supports the '\0' escape code.
3477         Added "STANDARDS CONFORMANCE" section.
3479 2003-08-02  James Youngman  <jay@gnu.org>
3481         * find/find.1:
3482         Explain that braces are not special when performing filename matching
3483         with -name.
3485         * find/find.1:
3486         added example of the use of -exec to the EXAMPLES section
3488         * find/fstype.c, locate/locate.c:
3489         Savannah bug #4295 - implicit declarations of ctype.h functions
3491         * locate/locate.c:
3492         Savannah bug #4279 - missing newline on locate help message
3494         * find/find.1, xargs/xargs.1:
3495         Improved discussion of the -print0 option of find and the -0 option of xargs
3497 2003-06-26  James Youngman  <jay@gnu.org>
3499         * import-gnulib.sh:
3500         Remove reference to nonexistent module "basename" ("dirname" exists
3501         and we already use that).
3503 2003-06-21  James Youngman  <jay@gnu.org>
3505         * doc/find.texi:
3506         Indicate that xargs stops immediately if a command exits with status 255
3508         * xargs/xargs.1:
3509         Document the fact that xargs exits immediately with an error message
3510         if the command it executes exits with a status of 255.
3512 2003-06-18  James Youngman  <jay@gnu.org>
3514         * find/find.1:
3515         Indicate that -fls and friends always create their output file
3517 2003-06-16  James Youngman  <jay@gnu.org>
3519         * ChangeLog, find/find.1, locate/locate.1, locate/locatedb.5, locate/updatedb.1, xargs/xargs.1:
3520         Added BUGS section to manual pages.   This section includes information about known bugs and how to report new bugs.
3522         * AUTHORS: Identify the current maintainer.
3524         * TODO: Removed the TODO items which have now been done.
3526         * THANKS: Added Bruno Haible and Bob Proulx.
3528         * xargs/xargs.c: xargs/xargs.c (DO_MULTIBYTE): New macro.
3529         (mbstrstr): New function.
3530         (do_insert): Use it instead of strstr.
3532         * config.guess, config.sub:
3533         Use config.guess and config.sub from automake
3535         * find/fstype.c:
3536         Bruno Haible: (fstype_to_string) Don't define this function if
3537         HAVE_F_FSTYPENAME_IN_STATFS is defined.
3539         * configure.in:
3540         Bruno Haible: Prefer the 4.4BSD API (if present) to the 4.3BSD API,
3541         because some 4.4BSD systems have <mntent.h> but no /etc/mtab file.
3543         * doc/find.texi, find/find.1:
3544         Applied patch 1498 (documenting the backslash escape sequence)
3546         * locate/updatedb.sh: Applied (my own version of) Savannah patch 1601.
3548         * doc/find.texi:
3549         Applied Savannah patch #1547 (document the fact that printf
3550         field-width specifiers are supported).
3552         * xargs/xargs.c:
3553         Applied Savannah patch #1499 (adds final newline to usage message).
3555 2003-06-14  James Youngman  <jay@gnu.org>
3557         * NEWS, configure.in:
3558         Updated version number to 4.2.0-CVS [not ready for release yet]
3560         * 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
3561         also need stpcpy (e.g. for Solaris)
3563         * intl/dcigettext.c:
3564         plural_lookup: don't use a variable called "index", because we may
3565         have done "#define strchr index", in which case using a variable
3566         called index will prevent us calling strchr(p, ch) in the same scope.
3568         * 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:
3569         Updated copyright years and the address of the FSF
3571         * aclocal.m4, config.h.in, configure:
3572         Removed files that are generated from other files (e.g. configure)
3574         * NEWS: Updated NEWS file for 4.1.20.
3576         * 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:
3577         Updates to the i18n files to ensure that 'make dist' succeeds
3579         * lib/posix/.cvsignore, lib/posix/Makefile.am,
3580         lib/posix/Makefile.in, lib/posix/regex.h, lib/strftime.c,
3581         lib/strncasecmp.c, lib/strspn.c, lib/strstr.c, lib/strtol.c,
3582         lib/strtoul.c, lib/strtoull.c, lib/strtoumax.c, lib/wait.h,
3583         lib/waitpid.c, lib/xalloc.h, lib/xgetcwd.c, lib/xmalloc.c,
3584         lib/xstat.in, lib/xstrdup.c, lib/xstrtol.c, lib/xstrtol.h,
3585         lib/xstrtoul.c, lib/xstrtoul.h, lib/xstrtoumax.c, lib/yesno.c,
3586         locate/Makefile.am, locate/Makefile.in, locate/locate.c,
3587         locate/testsuite/Makefile.in, m4/.cvsignore, m4/ChangeLog,
3588         m4/Makefile.am, m4/Makefile.am.in, m4/Makefile.in, m4/README,
3589         m4/afs.m4, m4/assert.m4, m4/c-bs-a.m4, m4/check-decl.m4,
3590         m4/codeset.m4, m4/d-ino.m4, m4/d-type.m4, m4/error.m4,
3591         m4/fnmatch.m4, m4/fnmatchcase.m4, m4/fstypename.m4, m4/getline.m4,
3592         m4/gettext.m4, m4/glibc.m4, m4/glibc21.m4, m4/iconv.m4,
3593         m4/inttypes_h.m4, m4/isc-posix.m4, m4/jm-glibc-io.m4,
3594         m4/jm-macros.m4, m4/jm-mktime.m4, m4/lcmessage.m4, m4/libintl.m4,
3595         m4/link-follow.m4, m4/ls-mntd-fs.m4, m4/lstat-slash.m4,
3596         m4/lstat.m4, m4/malloc.m4, m4/mbstate_t.m4, m4/memcmp.m4,
3597         m4/prereq.m4, m4/progtest.m4, m4/readdir.m4, m4/realloc.m4,
3598         m4/regex.m4, m4/st_dm_mode.m4, m4/st_mtim.m4, m4/stat.m4,
3599         m4/strerror_r.m4, m4/strftime.m4, m4/timespec.m4, m4/uintmax_t.m4,
3600         m4/ulonglong.m4, m4/xstrtoumax.m4, xargs/Makefile.am,
3601         xargs/Makefile.in, xargs/testsuite/Makefile.in,
3602         find/testsuite/Makefile.in, lib/.cvsignore, lib/Makefile.am,
3603         lib/Makefile.in, lib/alloca.c, lib/ansi2knr.1, lib/ansi2knr.c,
3604         lib/argmatch.c, lib/argmatch.h, lib/basename.c, lib/basename.h,
3605         lib/dirname.c, lib/dirname.h, lib/error.c, lib/error.h,
3606         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/fnmatch.c,
3607         lib/fnmatch.h, lib/getline.c, lib/getline.h, lib/getopt.c,
3608         lib/getopt.h, lib/getopt1.c, lib/human.c, lib/human.h,
3609         lib/idcache.c, lib/malloc.c, lib/memcmp.c, lib/memcpy.c,
3610         lib/memset.c, lib/mktime.c, lib/modechange.c, lib/modechange.h,
3611         lib/pathmax.h, lib/quotearg.c, lib/quotearg.h, lib/realloc.c,
3612         lib/regex.c, lib/regex.h, lib/rpmatch.c, lib/savedir.c,
3613         lib/savedir.h, lib/stpcpy.c, lib/strcasecmp.c, lib/strdup.c,
3614         find/Makefile.am, find/Makefile.in, find/find.c, find/pred.c:
3615         Updated to work with current version of gnulib
3617         * import-gnulib.sh: New file.
3619         * config.h.in, configure, configure.in, doc/Makefile.in, import-gnulib.sh:
3620         Updated to work with current version of gnulib
3622         * README-CVS: New file.
3624         * Makefile.am, Makefile.in, README-CVS, aclocal.m4:
3625         Updated to work with current version of gnulib
3627 2001-06-09  Kevin Dalley  <kevin@seti.org>
3629         * intl/plural.c:
3630         Changes the location of bison.simple after running bison on local
3631         machine
3633         * ChangeLog: *** empty log message ***
3635         * Makefile.in, aclocal.m4, config.h.in, configure,
3636         doc/Makefile.in, find/Makefile.in, find/testsuite/Makefile.in,
3637         lib/Makefile.in, lib/posix/Makefile.in, locate/Makefile.in,
3638         locate/testsuite/Makefile.in, m4/Makefile.in, xargs/Makefile.in,
3639         xargs/testsuite/Makefile.in: Updates mostly from gettext-0.10.38
3641         * ABOUT-NLS: * ABOUT-NLS: updated from gettext-0.10.38.
3643         * configure.in: * configure.in: add tr to ALL_LINGUAS.
3645         * intl/config.charset, intl/dcigettext.c, intl/dcngettext.c,
3646         intl/dngettext.c, intl/libgnuintl.h, intl/localcharset.c,
3647         intl/locale.alias, intl/ngettext.c, intl/plural.y,
3648         intl/ref-add.sin, intl/ref-del.sin: updated from gettext-0.10.38
3650         * intl/cat-compat.c, intl/linux-msg.sed, intl/po2tbl.sed.in,
3651         intl/xopen-msg.sed, m4/ChangeLog: *** empty log message ***
3653         * m4/jm-macros.m4:
3654         * jm-macros.m4 (jm_MACROS): remove jm_ICONV, which is replaced by
3655         AM_ICONV, which is imported from gettext-0.10.38.  removed
3656         jm_GLIBC21, which is required in AM_GNU_GETTEXT, which is
3657         imported from gettext-0.10.38.
3659         * po/stamp-cat-id:      * stamp-cat-id: Remove file.
3661         * po/Makefile.in.in:    * Makefile.in.in: Upgrade to gettext-0.10.38.
3663         * po/ChangeLog:         * cat-id-tbl.c: Remove file.
3665         * po/de.po, po/es.po, po/et.po, po/fr.po:
3666         * fr.po, et.po, es.po, de.po: updated translations to
3667         findutils-4.1.7.
3669         * po/tr.po: * tr.po:  New Turkish translation.
3671         * m4/ChangeLog: *** empty log message ***
3673         * intl/dgettext.c, intl/explodename.c, intl/finddomain.c,
3674         intl/gettext.c, intl/gettext.h, intl/gettextP.h,
3675         intl/hash-string.h, intl/intl-compat.c, intl/l10nflist.c,
3676         intl/libgettext.h, intl/loadinfo.h, intl/loadmsgcat.c,
3677         intl/localealias.c, intl/plural.c, intl/textdomain.c,
3678         intl/ChangeLog, intl/Makefile.in, intl/VERSION,
3679         intl/bindtextdom.c, intl/dcgettext.c: Updated from gettext-0.10.38
3681         * m4/Makefile.am:
3682         reflects addition of codeset.m4 from gettext-0.10.38, automatically
3683         generated.
3685         * m4/codeset.m4, m4/gettext.m4, m4/glibc21.m4, m4/iconv.m4,
3686                 m4/isc-posix.m4, m4/lcmessage.m4, m4/progtest.m4: *
3687                 progtest.m4, lcmessage.m4, isc-posix.m4, iconv.m4,
3688                 glibc21.m4, gettext.m4, codeset.m4: updated from
3689                 gettext-0.10.38.
3691         * ChangeLog: *** empty log message ***
3693         * THANKS: added "Gerrit P. Haase" <gerrit.haase@t-online.de>
3695         * m4/ChangeLog, locate/testsuite/.cvsignore,
3696         xargs/testsuite/.cvsignore, config.h.in, configure, aclocal.m4,
3697         doc/.cvsignore: *** empty log message ***
3699         * m4/jm-macros.m4:      * jm-macros.m4 (jm_MACROS): add jm_FSTYPENAME
3701         * doc/Makefile.in: *** empty log message ***
3703         * doc/Makefile.am:
3704         * doc/Makefile.am (MOSTLYCLEANFILES): add find.cps, which is
3705         created by dvips.  This should be taken care of by automake, but
3706         the code is commented out.
3708 2001-06-09  Kevin Dalley  <kevin@seti.org>
3710         * ABOUT-NLS: updated from gettext-0.10.38.
3712         * configure.in: add tr to ALL_LINGUAS.
3714         * doc/Makefile.am (MOSTLYCLEANFILES): add find.cps, which is
3715         created by dvips.  This should be taken care of by automake, but
3716         the code is commented out.
3718 2001-06-05  Kevin Dalley  <kevin@seti.org>
3720         * locate/updatedb.sh: replace "whoami" with "id -u" when testing
3721         for root.
3723 2001-06-04  Kevin Dalley  <kevin@seti.org>
3725         * locate/testsuite/Makefile.am (DIST_SUBDIRS): remove second
3726         instance of DIST_SUBDIRS.
3728         * locate/Makefile.am (install-data-hook): changed install target
3729         to install-data-hook, which still installs other files.
3731         * doc/Makefile.am (MOSTLYCLEANFILES): added find.cps, which should
3732         probably be handled by automake.
3734         * doc/mdate-sh: removed file in doc directory.  It now exists only
3735         in top_srcdir, but this changed required a patch to automake.
3737 2001-05-20  Kevin Dalley  <kevin@seti.org>
3739         * Version 4.1.7
3740         
3741         * lib/Makefile.am (EXTRA_DIST): add strcasecmp.c
3743         * find/testsuite/Makefile.am (EXTRA_DIST): new tests:
3744         find.gnu/name-opt.exp find.gnu/perm.exp find.gnu/perm.xo
3745         find.gnu/prune-default-print.exp find.gnu/prune-default-print.xo
3747         * configure.in: update to 4.1.7
3749         * config.sub, config.guess: upgraded to recent versions of
3750         config.sub and config.guess.
3752         * locate/updatedb.sh: Add space to "#! /bin/sh"
3754         * configure.in: Add id to ALL_LINGUAS
3756         * lib/Makefile.am (EXTRA_DIST):  getline.[ch] added
3757         (libfind_a_SOURCES): getline.[ch] removed since getline.c is not
3758         always needed.
3760 2001-05-20  Lionel CONS <lionel.cons@cern.ch>
3762         * find/find.c: Fixed security holes.  1.  There is a race
3763         condition between the lstat() to detect a symbolic link and the
3764         actual chdir().  2.  An attacker can move directories while find
3765         is _inside_ so that chdir(..) goes out of the intended file tree.
3767         * lib/modetype.h: support for Solaris door files is added.
3769         * lib/filemode.c: S_ISDOOR is undef'ed if STAT_MACROS_BROKEN
3771         * find/pred.c (pred_type): -D option (for Solaris door files) is
3772         added.
3774         * find/parser.c (insert_type):  -D option (for Solaris door files)
3775         is added. 
3777         * find/find.1: -D option (for Solaris door files) is documented
3779         * doc/find.texi (Type): -D option (for Solaris door files) is
3780         documented
3782 2001-05-02  Kevin Dalley  <kevin@seti.org>
3784         * configure.in: Change AC_CHECK_MEMBERS to conform to new
3785         autoconf.  Add Danish.
3787 2001-01-20  Kevin Dalley  <kevin@seti.org>
3789         * doc/find.texi (Adding Tests): Place space in "#! /bin/sh".
3791         * find/testsuite/find.gnu/prune-default-print.xo,
3792         find/testsuite/find.gnu/prune-default-print.exp: test for "find
3793         . -prune" which passes after changes.  Also see name-opt.exp.
3795         * find/util.c (get_new_pred):
3796         * find/tree.c (set_new_parent):
3797         * find/parser.c (various parse functions):
3798         * find/find.c (main): 
3799         (default_prints): new function 
3800         * find/defs.h (struct predicate): added no_default_print
3801         side_effects are no separated from no_default_print.  predicates
3802         which cause side effects should not be reordered (optimized).
3803         predicates which cause printing should have printing turned off.
3804         Printing statements also cause side effects.
3806 2000-10-29  Bruno Haible <haible@ilog.fr>
3808         * locate/code.c (main), doc/find.texi: improve handling of
3809         non-ASCII characters used old format.
3811 2000-10-21  Paul Eggert  <eggert@twinsun.com>
3813         If open + fchdir fails, fall back on xgetcwd + chdir.
3814         The old code tested for this at compile-time,
3815         but SunOS 4.1.4 fchdir can fail at run-time.
3817         * find/defs.h (fchdir): Define to -1 if not available.
3818         * find/defs.h (starting_dir, starting_desc):
3819         Always declare.  starting_dir now points to const.
3820         * find/find.c (starting_dir, starting_desc): Likewise.
3821         * find/find.c (starting_dir):
3822         Now "." if starting_desc is nonnegative, for benefit of diagnostics.
3823         (main, process_top_path, process_dir):
3824         If open + fchdir fails, fall back on xgetcwd + chdir.
3825         * find/pred.c (launch): Likewise.
3827 2000-10-20  Kevin Dalley  <kevin@seti.org>
3829         * xargs/xargs.c, locate/updatedb.sh, locate/locate.c (usage),
3830         find/parser.c (parse_help): add bug reporting address to help
3832 2000-10-13  Kevin Dalley  <kevin@seti.org>
3834         * depcomp, lib/depcomp: depcomp moved from lib to .
3836 2000-10-11  Kevin Dalley  <kevind@rahul.net>
3838         * Version 4.1.6
3839         
3840         * locate/testsuite/config/unix.exp: set PRUNEFS to "" for the
3841         testsuite. 
3843 2000-10-10  Bruno Haible <haible@ilog.fr>
3845         * lib/Makefile.am (libfind_a_SOURCES): added yesno.c
3847         * lib/yesno.c, lib/rpmatch.c: new files.
3849         * find/pred.c: use function yesno().
3851 2000-10-10  Kevin Dalley  <kevind@rahul.net>
3852         
3853         * locate/testsuite/Makefile.am: Added missing \ at end of
3854         EXTRA_DIST lines.
3856         * locate/testsuite/locate.gnu/ignore_case3.xo,
3857         locate/testsuite/locate.gnu/ignore_case3.exp,
3858         locate/testsuite/locate.gnu/ignore_case2.exp,
3859         locate/testsuite/locate.gnu/ignore_case1.xo,
3860         locate/testsuite/locate.gnu/ignore_case1.exp: place locatedb
3861         inside tmp directory, add subdir directory under tmp.
3863         * locate/testsuite/config/unix.exp: clean up tmp after test is
3864         finished. 
3866 2000-10-10  Kevin Dalley  <kevind@rahul.net>
3868         * locate/testsuite/config/unix.exp (Repository): 
3870 2000-10-09  Kevin Dalley  <kevind@rahul.net>
3872         * lib/fnmatch.c, lib/fnmatch.h: reverted to older version of
3873         fnmatch which works with Solaris.
3875         * locate/testsuite/config/unix.exp: dejagnu unix.exp
3877         * xargs/testsuite/config/unix.exp: remove temporary file
3879         * xargs/xargs.c: spelling correction
3881         * m4/prereq.m4: updated and changed some macros
3883         * m4/jm-macros.m4: replaced jm_FUNC_FNMATCH with
3884         kd_FUNC_FNMATCH_CASE_REPL 
3886         * m4/timespec.m4, m4/strerror_r.m4, m4/mbstate_t.m4,
3887         m4/largefile.m4, m4/gettext.m4, m4/fnmatchcase.m4, m4/d-type.m4,
3888         m4/d-ino.m4, m4/c-bs-a.m4: new m4 macros.
3890         * m4/Makefile.am: add fnmatchcase.m4 and mbstate_t.m4
3892         * locate/testsuite/locate.gnu/ignore_case3.xo,
3893         locate/testsuite/locate.gnu/ignore_case3.exp,
3894         locate/testsuite/locate.gnu/ignore_case2.xo,
3895         locate/testsuite/locate.gnu/ignore_case2.exp,
3896         locate/testsuite/locate.gnu/ignore_case1.xo,
3897         locate/testsuite/locate.gnu/ignore_case1.exp,
3898         locate/testsuite/config/unix.exp: tests related to "--ignore-case"
3899         option.
3901         * locate/testsuite/locate.gnu: testsuite directory
3903         * locate/testsuite/Makefile.am (Repository): 
3905         * locate/testsuite: add directory for locate testsuite
3907         * po/findutils.pot: updated file
3909         * po/sv.po, po/ru.po, po/pt_BR.po, po/pl.po, po/nl.po, po/ko.po,
3910         po/it.po, po/gl.po, po/fr.po, po/et.po, po/es.po, po/de.po:
3911         updated various po files.
3913         * locate/updatedb.sh: export TMPDIR, which is used by child
3914         processes.
3916         * locate/locate.1, locate/locate.c:  add "--ignore-case" option.
3918         * locate/Makefile.am: add testsuite subdirectory
3920         * find/testsuite/find.gnu/perm.xo,
3921         find/testsuite/find.gnu/perm.exp,
3922         find/testsuite/find.gnu/name-opt.xo,
3923         find/testsuite/find.gnu/name-opt.exp: added test suites
3925         * configure.in: add locate/testsuite/Makefile
3927         * doc/find.info*: removed from repository
3929         * doc/find.texi: add documentation for "-i" option.
3931         * aclocal.m4: removed from repository, as it is generated.
3933         * find/pred.c: fixes problem with "find -perm -0100".
3935         * lib/lstat.c, lib/stat.c: removed from repository.  These files
3936         are generated from lib/xstat.in.
3938 2000-08-24  Kevin Dalley  <kevind@rahul.net>
3940         * doc/find.texi (Invoking xargs): changed @var{-s} to @samp{-s}.
3942 2000-05-13  Kevin Dalley  <kevind@rahul.net>
3944         * find/tree.c (opt_expr): move iname and ipath to the front of the
3945         list of arguments.
3947         * doc/find.texi (Directories): changed wording for "-prune".
3949         * find/parser.c (parse_prune): set side_effects to true, to
3950         prevent prune from being moved in opt_expr.
3952 2000-04-12  Kevin Dalley  <kevind@rahul.net>
3954         * doc/find.texi, doc/permi.texi: fix spellings, add LocalWords.
3956         * lib/Makefile.am: put getline.c back into libfind_a_SOURCES,
3957         since getstr is needed.
3959         * Version 4.1.5
3960         
3961         * po/POTFILES.in: updated list of files, updated po files.
3964 2000-04-02  Paul Eggert  <eggert@twinsun.com>
3966         Add support for large files, and port to Solaris 8 and earlier
3967         versions.
3969         * lib/human.c (getenv): Depend on NEED_GETENV_DECL, not
3970         HAVE_DECL_GETENV.
3972         * lib/strftime.c (my_strftime): Make sure we call the system
3973         strftime, not ourselves, when invoking the underlying strftime.
3974         
3975         * m4/check-decl.m4 (jm_CHECK_DECLS): Remove memchr, nanosleep.
3977         * m4/jm-macros.m4 (jm_MACROS): Don't check for utime.h.  Do not
3978         require jm_BISON, jm_CHECK_TYPE_STRUCT_UTIMBUF, jm_FUNC_LCHOWN,
3979         jm_FUNC_CHOWN, jm_FUNC_NANOSLEEP, jm_FUNC_GROUP_MEMBER,
3980         jm_FUNC_PUTENV, jm_FUNC_GETGROUPS, AM_FUNC_GETLOADAVG,
3981         jm_SYS_PROC_UPTIME, jm_FUNC_FTRUNCATE, jm_FUNC_UTIME.  Do not
3982         replace strcasecmp, dup2, gethostname, getusershell, stime,
3983         strcspn, strpbrk, euidaccess, mkdir, rmdir, rpmatch, strndup,
3984         strverscmp, memchr, memmove.  Do not check for declaration of
3985         lchown.  Remove invocations of AM_FUNC_OBSTACK, AM_FUNC_STRTOD,
3986         POW_LIBM, jm_LANGINFO_CODESET, jm_ICONV.  Remove df tests.
3987         (jm_CHECK_ALL_TYPES): Include <sys/stat.h> when checking for
3988         struct stat.st_blksize.
3990         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set environment variable
3991         in shell rather than using putenv, which isn't portable.
3992         
3993         * COPYING, lib/alloca.c, lib/dirname.c, lib/error.c,
3994         lib/savedir.c, lib/strstr.c, m4/check-decl.m4, m4/d-ino.m4,
3995         m4/d-type.m4, m4/getline.m4, m4/jm-glibc-io.m4, m4/jm-macros.m4,
3996         m4/jm-mktime.m4, m4/ls-mntd-fs.m4, m4/memcmp.m4, m4/prereq.m4,
3997         m4/readdir.m4, m4/regex.m4, m4/strftime.m4, m4/uintmax_t.m4: Sync
3998         to latest version from sh-utils-2.0g.
4000         * config.guess, config.sub, lib/argmatch.c, lib/argmatch.h,
4001         lib/human.c, lib/human.h, lib/memcpy.c, lib/quotearg.c,
4002         lib/quotearg.h, lib/strtoull.c, lib/strtoumax.c,
4003         lib/xstrtoumax.c, m4/c-bs-a.m4, m4/gettext.m4,
4004         m4/largefile.m4, m4/lcmessage.m4, m4/link-follow.m4,
4005         m4/progtest.m4, m4/strerror_r.m4, m4/timespec.m4,
4006         m4/xstrtoumax.m4: New files, taken from sh-utils-2.0g.
4008         * lib/ansi2knr.1, lib/ansi2knr.c, lib/basename.c, lib/getopt.h,
4009         lib/fnmatch.c, lib/fnmatch.h, lib/modechange.c: Sync to latest
4010         unreleased version of GNU tar (between 1.13.17 and 1.13.18).
4012         * lib/basename.h, lib/waitpid.c: New files, taken from same
4013         version of GNU tar.
4014         
4015         * lib/regex.c, lib/regex.h: Sync to GNU grep 2.4.2.
4017         * lib/posix/Makefile.am, lib/posix/regex.h: New files, taken from
4018         GNU grep 2.4.2.
4020         * lib/strftime.c: Sync to textutils 2.0e.
4021         
4022         * acconfig.h, depcomp, lib/strcasecmp.c, m4/check-type.m4,
4023         m4/const.m4, m4/decl.m4, m4/lfs.m4, m4/mktime.m4, m4/perl.m4,
4024         m4/putenv.m4, m4/uptime.m4, m4/utimbuf.m4, m4/utime.m4,
4025         m4/utimes.m4: Remove these files; no longer needed.
4027         * configure.in (AC_CANONICAL_HOST, AC_SYS_LARGEFILE,
4028         jm_AC_TYPE_UINTMAX_T): Add.
4029         (CACHE_IDS, FSTYPE_STATVFS, FSTYPE_USG_STATFS, FSTYPE_AIX_STATFS,
4030         FSTYPE_MNTENT, FSTYPE_STATFS, FSTYPE_GETMNT): Add comment, so that
4031         we don't need acconfig.h.
4032         (AC_CHECK_TYPE): Add ssize_t.
4033         (AC_REPLACE_FUNCS): Add waitpid.
4034         (AC_CHECK_FUNCS): Remove basename.
4035         (AC_FUNC_MKTIME): Remove.
4036         (LIBOBJS): Add no-ops to work around automake 1.4 bug.
4037         (AC_OUTPUT): Add lib/posix/Makefile.
4039         * find/defs.h: Include <config.h>, <sys/types.h>, <sys/stat.h>,
4040         <stdio.h>, <limits.h>, <inttypes.h>.  All includers changed to not
4041         include these files, and to include "defs.h" first (since config.h
4042         must be included first).
4043         (CHAR_BIT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
4044         S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, MOD_WXUSR,
4045         MODE_R, MODE_RW, MODE_RWX, MODE_ALL): New macros.
4046         (enum permissions_type): New enum.
4047         (struct long_val.negative): New member.
4048         (struct long_val.l_val): Now uintmax_t, not unsigned long.
4049         (struct size_val.size): Likewise.
4050         (struct perm_val): New type.
4051         (struct predicate.perm): Now struct perm_val, not unsigned long.
4052         (struct predicate.type): Now mode_t, not unsigned long.
4053         (list_file): New parameters current_time, output_block_size.
4054         All callers changed.
4055         (savedir, basename): Remove decls.
4056         (output_block_size, start_time): New extern vars.
4058         * find/find.c: Include <human.h>, <savedir.h>.
4059         (output_block_size, start_time): New vars.
4060         (main): Initialize them.  No need to check for negative st_size,
4061         since savedir now does it for us.
4063         * find/fstype.c: Include "dirname.h".
4064         (xatoi): Remove.
4065         (filesystem_type_uncached): Use xstrtoumax instead of xatoi.
4066         
4067         * find/parser.c: Include "xstrtol.h".
4068         (get_num_days, get_num, parse_amin, parse_cmin, parse_mmin,
4069         parse_size, parse_used, insert_time, insert_num): Compute using
4070         uintmax_t, not unsigned long.
4071         (parse_amin, parse_cmin, parse_mmin, parse_used, insert_time):
4072         Keep track of whether time was negative before converting it to an
4073         unsigned type.
4074         (parse_daystart): Don't assume that localtime succeeds; e.g. it
4075         can fail with 64-bit time_t and 32-bit tm_year.
4076         (parse_perm, insert_type): Compute using mode_t, not unsigned
4077         long.
4078         (insert_type): Use symbolic constants like MODE_ALL instead of
4079         traditional ones like 07777.  Set new kind member to indicate
4080         permissions type, instead of using unportable magic numbers.
4081         (make_segment): We will use human_readable to convert most numeric
4082         values, so simplify the cases.
4083         (get_num_days): Write in terms of get_num, to avoid duplicated
4084         code.
4085         (insert_time, insert_num): When debugging, convert large values to
4086         uintmax_t and output with %ju.
4087         (get_num): Use xstrtoumax to do the real work.
4089         * find/pred.c: Include "basename.h", "human.h".
4090         (DEV_BSIZE, ST_BLKSIZE, ST_NBLOCKSIZE): New macros, taken from
4091         fileutils.
4092         (ST_NBLOCKS): Replace with fileutils defn.
4093         (MAX): New macro.
4094         (ctime_format): New function.
4095         (pred_fprintf, format_date): Use human_readable to output large
4096         numbers portably.
4097         (pred_fprintf): Use ctime_format to output ctime-style dates.  Use
4098         base_name to compute the base name of a path.  With %m, output the
4099         mode portably using traditional numbers, even if the host uses
4100         some other numbering scheme.
4101         (pred_iname, pred_name): basename -> base_name.
4102         (pred_perm): Use new kind member to deduce permissions type,
4103         instead of relying on magic numbers.
4104         (pred_size): Compute using uintmax_t, not unsigned long.  Avoid
4105         overflow if file size is near the maximum.
4106         (pred_type): Compute using mode_t, not unsigned long.
4107         (launch): Use waitpid, not wait.  Check for EINTR.
4108         (format_date): Don't assume that localtime succeeds.
4110         * find/util.c (basename): Remove; we now use base_name.
4112         * lib/Makefile.am (SUBDIRS): New macro.
4113         (libfind_a_SOURCES): Add argmatch.h, argmatch.c, basename.h,
4114         basename.c, human.c, human.h, quotearg.c, quotearg.h, xstrtoumax.c.
4115         Remove error.h, error.c, getline.c.
4116         (EXTRA_DIST): Add mktime.c, regex.c.
4118         * lib/listfile.c: Include "human.h".
4119         (alloca): Declare, or include appropriate files to declare.
4120         (DEV_BSIZE, ST_NBLKSIZE, ST_NBLOCKS, ST_NBLOCKSIZE): New macros.
4121         (convert_blocks): Remove.
4122         (list_file): New current_time and output_block_size args.
4123         Revamp quite a bit, to handle large numbers correctly
4124         and to match GNU ls behavior more closely.
4126         * m4/Makefile.am (EXTRA_DIST): Add c-bs-a.m4, gettext.m4,
4127         largefile.m4, lcmessage.m4, link-follow.m4, progtest.m4,
4128         strerror_r.m4, xstrtoumax.m4.  Remove check-type.m4, const.m4,
4129         decl.m4, lfs.m4, mktime.m4, perl.m4, putenv.m4, timespec.m4,
4130         uptime.m4, utimbuf.m4, utime.m4, utimes.m4.
4132         * xargs/xargs.c (wait_for_proc): Retry wait if it fails with
4133         errno == EINTR.
4135 2000-04-05  Kevin Dalley  <kevind@rahul.net>
4137         * xargs/Makefile.am:  add ansi2knr
4139         * xargs/xargs.c: add macros PARAMS rather than P_.  Add
4140         prototypes.
4142         * po/POTFILES: new file listing all POFILES.
4144         * m4/gl.po, m4/et.po: new files
4146         * m4/Makefile.am.in:  updated file
4148         * m4: update directory
4150         * locate/Makefile.am: create updatedb from updatedb.sh
4152         * locate/updatedb.sh, locate/updatedb.in: removed file.  Replaced
4153         by updatedb.sh
4155         * locate/frcode.c, locate/code.c, locate/bigram.c: add macros
4156         PARAMS rather than P_.  Add prototypes.
4158         * lib/xstat.in: new file
4160         * lib/Makefile.am: update to latest versions of library files.
4162         * find/testsuite/Makefile.am: add CLEANFILES
4164         * find/util.c: remove definition of basename
4165         
4166         * find/util.c, find/tree.c, find/pred.c, find/parser.c,
4167         find/fstype.c, find/find.c, find/defs.h: add macros PARAMS rather
4168         than P_, for consistency, change to prototypes
4170         * find/Makefile.am: Add prototypes and ansi2knr
4172         * configure.in: add Galition and Estonian languages.
4173         Miscellaneous other fixes.
4174         
4176 2000-03-11  Kevin Dalley  <kevind@rahul.net>
4178         * lib/basename.c: Add file from libit.
4179         * lib/Makefile.am (libfind_a_SOURCES): add basename.c since it is
4180         no longer replaceable.
4182         * find/util.c: Remove definition of basename, which is now in
4183         lib/basename.c (as base_name).
4184         * find/pred.c: Use base_name, not basename.
4185         * find/defs.h: Likewise.
4187         * configure.in : Don't replace basename.  Now we use only
4188         base_name.
4190 2000-02-26  Kevin Dalley  <kevind@rahul.net>
4192         * Version 4.1.4
4193         
4194         * lib/strtoul.c: added to distribution
4195         
4196         * configure.in: added strtoul to AC_REPLACE_FUNCS
4198         * configure.in: added jm_CHECK_ALL_TYPE
4200 2000-02-23  Kevin Dalley  <kevind@rahul.net>
4202         * po/ChangeLog: removed, merged with top-level ChangeLog.
4203         
4204         * po/de.po: new version of German file.
4205         
4206         * po/gl.po, po/et.po: new languages, Estonian and Galician.
4208         * locate/updatedb.sh (PRUNEFS): enclose paths in quotes
4210 2000-02-17  Kevin Dalley  <kevind@rahul.net>
4212         * po/it.po: new version of Italian file.
4213         
4214         * locate/updatedb.sh (prunefs_exp): have sed statement use '*'
4215         rather than the often unsupported '+'.
4217 2000-02-13  Kevin Dalley  <kevind@rahul.net>
4219         * configure.in: removed AC_ARG_PROGRAM, which is already in
4220         AM_INIT_AUTOMAKE. 
4222         * locate/Makefile.am (updatedb), locate/updatedb.sh: add
4223         transforms of find, frcode, bigram, and code back into
4224         updatedb.sh, which were accidentally removed.
4226 2000-02-12  Kevin Dalley  <kevind@rahul.net>
4228         * lib/wait.h: updated address.
4230 2000-01-26  Kevin Dalley  <kevind@rahul.net>
4232         * Version 4.1.3
4234         * acconfig.h: added internationalization.
4236         * intl/*: copied from tar-1.13.17.
4238         * locate/Makefile.am, locate/locate.c, locate/code.c:
4239         internationalized file.
4241         * locate/frcode.c, locate/bigram.c: include headers from ../lib
4242         directory.
4244         * xargs/Makefile.am, xargs/xargs.c: internationalized directory.
4246 2000-01-26  Kevin Dalley  <kevind@rahul.net>
4248         * POTFILES.in: added list of files with translatable strings.
4250         * de.po, es.po, fr.po, it.po, ko.po, nl.po, pl.po, pt_BR.po,
4251         ru.po, sv.po: New, slightly out of date, files imported from the
4252         Translation Project: http://www.iro.umontreal.ca/contrib/po/HTML/,
4253         German, Spanish, French, Italian, Korean, Dutch, Polish, Brazilian
4254         Portuguese.
4257 2000-01-24  Kevin Dalley  <kevind@rahul.net>
4259         * lib/xmalloc.c, lib/regex.c, lib/getopt.c: internationalization
4260         works with current version of gettext.
4262         * lib/getline.h : added declaration of getstr.
4263         * lib/Makefile.am (libfind_a_SOURCES): added getline.[ch] to
4264         standard compilation. Added internationalization.
4265         * find/Makefile.am (INCLUDES): corrected -I options for building
4266         in other directories.
4267         (LDADD): changes for internationalization.
4269         * configure.in (ALL_LINGUAS): added internationalization. 
4270         getline.c is always compiled and linked, because of getstr.
4271         AM_GNU_GETTEXT
4273         * Makefile.am: 
4274         (DISTCLEANFILES): added intl/libintl.h
4275         (AUTOMAKE_OPTIONS): added gnits to AUTOMAKE_OPTIONS
4276         (SUBDIRS): added intl and po
4278         * acconfig.h: added internationalization values
4280         * THANKS: added thanks file for gnits compatibility.
4282 2000-01-22  Kevin Dalley  <kevind@rahul.net>
4284         * added intl directory.
4286         * Added internationalization, only with slightly out of date po
4287         files for many locales.
4289 2000-01-18  Kevin Dalley  <kevind@rahul.net>
4291         * Version 4.1.2
4292         
4293         * locate/Makefile.am: remove creation of updatedb, since it is now
4294         made by configure
4296         * configure.in: updatedb is now created by configure.
4298         * xargs/Makefile.am: added testsuite to xargs directory
4300         * locate/updatedb.in: updatedb is now created by configure
4302         * locate/frcode.c, locate/code.c, locate/bigram.c: change return
4303         from main to int.  Replace getstr with getline, where possible.
4305         * locate/Makefile.am: place frcode, code, bigram in
4306         libexec_PROGRAMS
4308         * lib/xstrdup.c, lib/xmalloc.c, lib/xgetcwd.c, lib/xalloc.h,
4309         lib/strtol.c, lib/strstr.c, lib/strftime.c, lib/strdup.c,
4310         lib/stpcpy.c, lib/stat.c, lib/savedir.h, lib/savedir.c,
4311         lib/regex.h, lib/regex.c, lib/realloc.c, lib/pathmax.h,
4312         lib/modechange.h, lib/modechange.c, lib/mktime.c, lib/memset.c,
4313         lib/memcmp.c, lib/malloc.c, lib/lstat.c, lib/idcache.c,
4314         lib/getopt1.c, lib/getopt.c, lib/getopt.h, lib/getline.c,
4315         lib/getline.h, lib/fnmatch.c, lib/fnmatch.h, lib/filemode.c,
4316         lib/filemode.h, lib/fileblocks.c, lib/error.c, lib/error.h,
4317         lib/dirname.c, lib/alloca.c: updated to newer version of file from
4318         fileutils.
4320         * find/version.c: version number is now automatically generated by
4321         configure.
4323         * find/fstype.c (filesystem_type_uncached): fixes bug described as
4324         follows:  When 'find' looks for a fstype, it parses the /etc/mtab
4325         until it finds the good line. But, if there is, before the good
4326         line, a line whose mountpoint is unreachable, it fails.
4328         * doc/texinfo.tex: updated to newer version
4330         * doc/find.texi: added version.texi, fixed a few documentation bugs.
4332         * configure.in: new m4 features.
4334         * Makefile.am: moved testsuite to below corresponding directories
4335         find and xargs.
4337         * acconfig.h: updated to match new m4 files.
4339         * m4: added m4 directory, largely borrowed from Jim Meyering's
4340         fileutils.
4342 2000-01-17  Kevin Dalley  <kevind@rahul.net>
4344         * doc/find.texi (Multiple Files): placed missing xargs in examples
4346         * find/testsuite/find.gnu/depth.exp: added find tests to test
4347         "-depth" bug.
4349         * doc/find.texi: include version.texi for automatic determination
4350         of version number, update bug report email address to
4351         bug-findutils@gnu.org.
4352         (Combining Primaries With Operators): add indices for " ,", "()",
4353         "-a", "-o", etc.
4355 2000-01-17  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
4357         * find/tree.c (opt_expr): Never rearrange the arguments of the
4358         comma operator, since it is not commutative.  Remove useless
4359         assignment.2
4360         
4361 2000-01-17  Jonathan R. Ferro <jferro@corwin.ece.cmu.edu>
4362         
4363         * find/find.c (process_path): fix problem with "-depth" which is
4364         tested in depth.exp test.
4366 1999-08-15  Kevin Dalley  <Kevin Dalley <kevin@seti.org>>
4368         * find/fstype.c (filesystem_type_uncached): a stat failure with
4369         EACCESS will ignore this file system keep on looking.  Patch
4370         suggested by Vincent Danjean <vdanjean@ens-lyon.fr>.
4372 1999-08-15  Mark Kettenis  <kettenis@gnu.org>
4374         * xargs/xargs.c (LONG_MAX): Define if necessary.
4375         (main): If ARG_MAX is -1 (that is sysconf
4376         (_SC_ARG_MAX) returns -1) the system does not impose a limit.  In
4377         that case, use LONG_MAX as the limit.
4378         
4379 1999-08-15  Kevin Dalley  <Kevin Dalley <kevind@rahul.net>
4381         * find/version.c: version string is now set by config.h
4383 1999-08-08  Kevin Dalley  <kevin@seti.org>
4385         * Version 4.1.1
4387         * README-alpha: added alpha README file
4389         * find/defs.h: move lstat declarations into defs.h
4391         * xargs/Makefile.am, testsuite/Makefile.am, locate/Makefile.am,
4392         lib/Makefile.am, find/Makefile.am, doc/Makefile.am, configure.in,
4393         Makefile.am: update for automake-1.4
4395 1999-08-02  Kevin Dalley  <kevind@rahul.net>
4397         * AUTHORS: added file listing AUTHORS
4399         * lib/Makefile.am: modified code for EXTRA sources
4400         
4401 1999-01-30  Kevin Dalley  <kevind@rahul.net>
4403         * added const to declaration of basename, which should satisfy
4404         Linux as well as Hurd (fixes bug #31325).
4405         
4406 1998-12-04  Kevin Dalley  <kevind@rahul.net>
4407         
4408         * lib/nextelem.c: removed declaration of strdup and free, which
4409         meets GNU coding standards and allows compilation on more
4410         platforms.
4411         
4412         * find.texi: corrected explanation of -amin option which described
4413         hours instead of minutes
4414         
4415 1998-09-26  Kevin Dalley  <kevind@rahul.net>
4416         
4417         * lib/getline.c: fix getstr so that it correctly handles long file
4418         paths
4419         
4420 1998-09-20  Kevin Dalley  <kevind@rahul.net>
4421         
4422         * removed more function declarations to meet GNU coding standards
4423         
4424 1998-08-30  Kevin Dalley  <kevind@rahul.net>
4425         
4426         * lib/nextelem.c: removed declaration of strdup and free, which
4427         meets GNU coding standards and allow compilation on sparc
4428         
4429         * corrected explanation of -amin option which described hours
4430         instead of minutes
4431         
4432 1998-02-27  Kevin Dalley  <kevind@rahul.net>
4433         
4434         * locate/locate.c: add --existing option to locate, which only
4435         prints the names of files which still exist
4436         
4437 1998-02-08  Kevin Dalley  <kevind@rahul.net>
4438         
4439         * locate/locate.c: corrected get_short so that it correctly
4440         returns negative numbers.
4441         
4442         * remove declarations of various string functions.  Removing the
4443         declarations almost matches the GNU Coding Standards.
4444         
4445 1997-03-03  Kevin Dalley  <kevind@rahul.net>
4446         
4447         * xargs/xargs.c: xargs fixed to prevent occasional core dumping.
4448         
4449 1997-01-11  Kevin Dalley  <kevind@rahul.net>
4450         
4451         * locate/updatedb.sh: add --localuser option to updatedb, which
4452         allows find to be run as nobody, while allowing database file to
4453         be created as root, change suggested by
4454         <Bernd_Eckenfels@Wittumstrasse13.76646Bruchsal.de>
4455         
4456 1996-12-28  Kevin Dalley  <kevind@rahul.net>
4457         * added PRUNEFS as variable in updatedb and --prunefs as option to
4458         updatedb
4460 1996-05-27  Kevin Dalley  <kevind@rahul.net>
4461         
4462         * updatedb.sh: when NETPATHS is used, only su to NETUSER if whoami
4463         is root
4464 1996-04-27  Kevin Dalley  <kevind@rahul.net>
4466         * lib/getline.c (getstr): verify that nchars_avail is *really*
4467         greater than 0; set *n to a large enough number, stops some core
4468         dumping
4470 Thu Nov  3 09:23:33 1994  David J. MacKenzie  <djm@duality.gnu.ai.mit.edu>
4472         * Version 4.1.
4474         * locate/Makefile.am: Move updatedb from LIBSCRIPTS to SCRIPTS.
4476         * Makefile.am (distname): Change distribution name from find to
4477           findutils.
4479         * testsuite/config/unix.exp: Don't abuse xfail; simulate it correctly.
4481         * locate/Makefile.am (CLEANFILES): Fix typo.
4483 Wed Nov  2 15:11:52 1994  David J. MacKenzie  <djm@duality.gnu.ai.mit.edu>
4485         * The big 4 0.
4487         * lib/listfile.c find/defs.h (list_file): Take a stream arg.
4488         * find/pred.c (pred_ls): pass it.
4489         * find/parser.c pred.c defs.h (parse_fls, pred_fls): New functions.
4491 Tue Oct 25 16:09:04 1994  David J. MacKenzie  <djm@duality.gnu.ai.mit.edu>
4493         * find/pred.c (pred_fprintf): Flush output after \c.  From Chapman
4494         Flack.
4496         * find/parser.c (insert_fprintf): Warn about unrecognized \ and %
4497         sequences.
4499 Tue Oct 18 00:03:10 1994  David J. MacKenzie  <djm@duality.gnu.ai.mit.edu>
4501         * find/defs.h parser.c pred.c tree.c util.c: Globally change
4502         "victim" to "primary".
4504         * find/parser.c (insert_fprintf): For 'c' format, don't lose the
4505         need_stat information.  From Chapman Flack.
4507         * doc/find.texi perm.texi: New files.
4508         * configure.in: Configure the doc directory.
4510         * find/pred.c (pred_regex): Check that the regex matched the whole
4511         file name.
4513 Wed Oct 12 17:13:47 1994  David J. MacKenzie  (djm@duality.gnu.ai.mit.edu)
4515         * find/find.c (main): Tell what the invalid arg is.
4516         From Kaveh Ghazi.
4518 Fri Oct  7 12:33:24 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4520         * find/parser.c: Add -mount as an alias for -xdev.
4521         From Klaus.Steinberger@physik.uni-muenchen.de (Klaus Steinberger).
4523         * lib/modechange.c: Make umask_value unsigned short.
4525         * xargs/xargs.c: Use symbolic constants in longopts.
4526         From Chapman Flack.
4528 Wed Oct  5 11:23:09 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4530         * xargs/xargs.c (main, read_line, read_string, do_exec): Pass 
4531           along the lengths of the args.
4532           (main): Calculate length of replace_pat.
4533           (push_arg, do_insert): Use those lengths instead of calculating
4534           them. 
4536 Tue Oct  4 10:02:05 1994  David MacKenzie  <djm@churchy.gnu.ai.mit.edu>
4538         * locate/updatedb.sh Makefile.in: Add substitutions to get
4539           the transformed program names.
4541         * xargs/xargs.c: Put back the global variables for now.
4542         Rename some variables.  Increase default args_per_exec.
4543         Use boolean where applicable.
4544         (main): Reduce default arg_max by 2048 for POSIX.2.
4545         (read_string): Don't check EOF string.
4546         (read_line, read_string): Take initial args size into account.
4548 Sat Oct  1 17:43:13 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4550         * find/pred.c (launch): Use pid_t.
4552         * xargs/xargs.c (EOF_STR): Define and use.
4553         [__STDC__]: Declare xrealloc and xmalloc using void *.
4554         * find/defs.h: Likewise.
4556         * find/defs.h: Only declare stpcpy if !HAVE_STPCPY.
4558         * xargs/xargs.c: Replace most global variables with structure
4559           pointers passed as arguments.  Use pid_t.
4560         * lib/wait.h: Include sys/wait.h if HAVE_SYS_WAIT_H.
4561         * configure.in: Call AC_TYPE_MODE_T and AC_HEADER_SYS_WAIT.
4563         * xargs/xargs.c: Improve paging performance and memory
4564           fragmentation by building command arguments in a pre-allocated
4565           buffer and re-implementing the child pid list as an expandable
4566           array.  From tsi@gpu.srv.ualberta.ca (Marc Aurele La France).
4568 Thu Sep 29 11:38:07 1994  David J. MacKenzie  (djm@geech.gnu.ai.mit.edu)
4570         * xargs/xargs.c [__STDC__]: Prototype declarations.
4572 Wed Sep 28 11:25:53 1994  David J. MacKenzie  (djm@duality.gnu.ai.mit.edu)
4574         * find/fstype.c [AFS, __STDC__]: Fix definition of _VICEIOCTL.
4576 Tue Sep 27 08:14:27 1994  David MacKenzie  <djm@churchy.gnu.ai.mit.edu>
4578         * find/fstype.c (fstype_to_string): Add more cases.  Use
4579           INITMOUNTNAMES if defined.
4580         * find/defs.h: Change boolean typedef from char to int.
4581         * configure.in: Check for mktime.
4583 Tue Sep 27 01:20:28 1994  Kaveh R. Ghazi  (ghazi@noc.rutgers.edu)
4585         * configure.in: Add AC_HEADER_STAT.
4586         * lib/listfile.c, lib/modetype.h: Add STAT_MACROS_BROKEN.
4588         * find/pred.c: Move the inclusion of defs.h ahead of the first
4589           test of _POSIX_VERSION.
4591         * lib/xgetcwd.c: Remove _POSIX_VERSION, rely only on HAVE_GETCWD.
4593 Mon Sep 26 16:43:01 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4595         * configure.in: Add AC_CONFIG_HEADER.
4596         * find/*.c locate/*.c xargs/*.c: Include config.h.
4597         * locate/updatedb.sh: Add --version; --old -> --old-format.
4599 Sun Sep 25 23:43:37 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4601         * find/* [__STDC__]: Prototype declarations.
4603         * locate/updatedb.sh: Account for renaming code and frcode.
4605         * find/find.c (process_path): Store dev and ino of directories in
4606           current branch to avoid symlink loops.  From DJ Delorie
4607           <dj@ctron.com>.
4608           (process_dir): If following symlinks, don't cd to ..; instead,
4609           cd to the starting directory and then to the parent directory.
4610           (main) [HAVE_FCHDIR]: Save the dev, ino of the starting directory.
4611           (process_top_path) [HAVE_FCHDIR]: Use it.
4612         * find/pred.c (launch) [HAVE_FCHDIR]: Likewise.
4613         * defs.h [HAVE_FCHDIR]: Declare starting_desc instead of starting_dir.
4614         * configure.in: Check for dev_t, ino_t, fchdir, fcntl.h.
4616 Fri Sep 23 11:55:38 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4618         * lib/listfile.c: Change #ifdef S_IFLNK to #ifdef S_ISLNK.
4619         From Andreas Luik <luik@isa.de>.
4621 Thu Sep 22 11:42:40 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4623         * locate/locate.c (last_literal_end): Dynamically allocate enough
4624           memory for the subpattern.
4626 Wed Sep 21 06:12:56 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4628         * locate/locate.c (locate): Warn if database is >8 days old.
4629         From Ian Lance Taylor.
4631         * xargs/xargs.c (do_exec), find/pred.c (launch): Set SIGCHLD to
4632           default.  From tsi@gpu.srv.ualberta.ca (Marc Aurele La France).
4633         * find/find.c pred.c util.c lib/listfile.c: Remove fflush(stdout)
4634           calls before error.  error does it, and doesn't trash errno.
4635           From tsi@gpu.srv.ualberta.ca (Marc Aurele La France).
4637         * find/fstype.c (filesystem_type_uncached): Don't trust mtab dev
4638           number on HPUX.  From Andreas Luik <luik@isa.de>.
4639           (filesystem_type_uncached): Don't cache unknown file system
4640           types.  From casper@fwi.uva.nl (Casper Dik).
4642         * locate/updatedb.sh: Collect results in temp file and rename it
4643           atomically.  From Andreas Luik <luik@isa.de>.
4645         * xargs/xargs.c (parse_num): Print a long using %ld.  From Jim
4646           Meyering.
4648         * find/defs.h find.c parser.c pred.c util.c, lib/nextelem.c:
4649           Emulate strchr and strrchr with index and rindex, not vice versa.
4651         Remove man directory; move man pages to the directories of the
4652         programs they document.
4654         * locate/frcode.c: Renamed from code.c.
4655         * locate/frcode.c (put_short): Renamed from puthalfword.
4656         * locate/locate.c (get_short): Renamed from gethalfword.
4657         (last_literal_end): Renamed from patprep.
4658         (locate): Recognize old-format databases too.
4659         * locate/locatedb.h: Add defines for old-format databases.
4660         * locate/bigram.c locate/code.c: Put back programs to create
4661         old-format databases.
4662         * locate/updatedb.sh: Take --old option to use them.
4664 Tue Sep 20 15:41:11 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4666         * configure.in: Update for Autoconf v2.
4667         * find/pred.c lib/savedir.c: Use new symbols for dir header.
4668         * locate/updatedb.sh: Add --help option.
4670 Sun Feb 13 11:21:58 1994  Jim Meyering  (meyering@comco.com)
4672         * man/Makefile.in [man1ext, man5ext]: Set man5ext (not man1ext) to 5.
4674 Sun Aug  1 22:30:55 1993  David J. MacKenzie  (djm@goldman.gnu.ai.mit.edu)
4676         * bigram.c: File removed.
4677         * getline.c, memcmp.c, locatedb.h, updatedb.1, locatedb.5: New files.
4678         * updatedb.sh: Take command line options.
4679         Don't do bigram compression.
4680         * code.c, locate.c: Don't do bigram compression.
4681         Write and read counts in network byte order.
4682         Handle arbitrarily long paths.
4683         Use a magic number at the start of the databases.
4685 Thu Jul 29 20:44:53 1993  David J. MacKenzie  (djm@wookumz.gnu.ai.mit.edu)
4687         * Makefile.in (config.status): Run config.status --recheck, not
4688         configure, to get the right args passed.
4690 Thu Jul 22 12:53:12 1993  David J. MacKenzie  (djm@goldman.gnu.ai.mit.edu)
4692         * listfile.c (list_file): Print inode as a long.
4694 Wed Jul 14 14:14:45 1993  David J. MacKenzie  (djm@goldman.gnu.ai.mit.edu)
4696         * fstype.c [STDC_HEADERS]: Include stdlib.h.
4698         * Move unistd.h include from parser.c and pred.c to defs.h.
4700 Wed Jun 30 14:14:47 1993  David J. MacKenzie  (djm@goldman.gnu.ai.mit.edu)
4702         * updatedb.sh: Construct PRUNEREGEX from PRUNEPATHS with sed.
4703         Prune /afs.  Change NFSUSER to NETUSER and NFSPATHS to NETPATHS.
4705 Tue Jun 29 12:19:58 1993  David J. MacKenzie  (djm@goldman.gnu.ai.mit.edu)
4707         * pred.c (pred_fprintf): Abort in switch if `c' is not A, C, or T.
4709 Mon Jun 28 00:18:52 1993  David J. MacKenzie  (djm@wookumz.gnu.ai.mit.edu)
4711         * fstype.c (in_afs) [AFS]: New function, derived from code by
4712         Sanjay Ramamurthy <ramams@rpi.edu>.
4713         (filesystem_type_uncached) [AFS]: Call it if the fs type is
4714         otherwise unknown.
4716         * parser.c (parse_size): Recognize b and w suffixes for dd
4717         compatibility. 
4719         * code.c (puthalfword): New function.
4720         (main): Call it.
4721         * locate.c (gethalfword): New function.
4722         (locate): Call it.
4723         From ifado!wb@germany.eu.net (Wilhelm B. Kloke).
4725         * listfile.c: Include pathmax.h.
4726         (get_link_name): Always allocate PATH_MAX + 1 bytes for
4727         readlink buffers.
4728         * pred.c (pred_fprintf, insert_lname): Call get_link_name.
4730         * fstype.c (filesystem_type, filesystem_type_uncached),
4731         listfile.c (list_file): Take an arg for the path to access.
4732         * pred.c (pred_ls, pred_fstype, pred_fprintf): Pass it.
4734         * find.c (process_dir): Renamed from scan_directory.
4736         Changes from jrs@world.std.com (Rick Sladkey) to chdir into
4737         subdirectories instead of using string concatenation, for speed:
4738         * find.c (process_top_path): New function.
4739         (main): Call it, and xgetcwd.
4740         (process_path, scan_directory): Take new arg, the pathname
4741         relative to ".".  Use it and pass it on.
4742         * pred.c (pred_and, pred_comma, pred_negate, pred_or,
4743         pred_xtype, pred_fprintf, pred_empty, insert_lname):
4744         access rel_pathname instead of pathname.
4745         (launch): chdir to starting_dir.
4746         * defs.h: Declare rel_pathname and starting_dir.
4747         * find.c: Define them.
4749         * xgetcwd.c: New file.
4751         * updatedb.sh: Recognize -fstype NFS as well as nfs.
4752         * locate.c (patprep): Skip trailing character classes correctly.
4753         From luik@pharao.stgt.sub.org (Andreas Luik).
4755         * parser.c (parse_group): Make gid a gid_t, not short or int.
4756         (parse_nogroup): Cast gid to unsigned when using it as an array index.
4757         (parse_user, parse_nouser): Similar changes for uid.
4758         * defs.h: Use uid_t and gid_t.
4760         * parser.c (parse_help): New function.
4761         (parse_table):  Add --version, -help, and --help options.
4762         Rename struct parser_table_t to struct parser_table.
4763         (parse_version): Exit after printing message, on
4764         stdout not stderr.
4766         * xargs.c, locate.c (main, usage): Add --version and --help
4767         options.
4769 Wed Mar 31 22:39:57 1993  Jim Meyering  (meyering@comco.com)
4771         * parser.c: Define isascii macro to be 1 also if STDC_HEADERS.
4772         * xargs.c: Ditto.
4774 Wed Mar 31 16:04:07 1993  David J. MacKenzie  (djm@kropotkin.gnu.ai.mit.edu)
4776         * pred.c (pred_fprintf): If curdepth is 0, don't nuke
4777         segment->text; nuke cp.
4779 Mon Mar 29 15:57:20 1993  David J. MacKenzie  (djm@kropotkin.gnu.ai.mit.edu)
4781         * Version 3.8.
4783 Fri Mar 26 16:36:59 1993  David J. MacKenzie  (djm@hal.gnu.ai.mit.edu)
4785         * pred.c (pred_ilname, pred_iname, pred_ipath): New functions.
4786         (pred_table): Add them.
4787         (insert_lname): New function.
4788         (pred_lname): Call it.
4789         * parser.c (parse_ilname, parse_iname, parse_ipath,
4790         parse_iregex): New functions.
4791         (parse_table): Add them.
4792         (insert_regex): New function.
4793         (parse_regex): Call it.
4795         * fstype.c (filesystem_type): Cache previous result.
4796         (filesystem_type_uncached): New function.
4797         pred.c (pred_fstype, pred_fprintf): Adjust callers to not cache.
4799         * parser.c: Don't define const.
4801         * fstype.c [FSTYPE_STATFS] (fstype_to_string): #ifdef
4802         MOUNT_PC for 386bsd.
4804 Thu Mar 25 18:32:24 1993  David J. MacKenzie  (djm@goldman.gnu.ai.mit.edu)
4806         * parser.c (parse_regex): If ignore_case, set up a translate
4807         table for the regex.
4809         * defs.h: Include string.h or strings.h.
4810         * find.c fstype.c parser.c pred.c util.c: Don't.
4812         * nextelem.c [index]: Don't redefine.
4814 Wed Mar 24 17:47:10 1993  David J. MacKenzie  (djm@kropotkin.gnu.ai.mit.edu)
4816         * xargs.c (wait_for_proc): Exit with a nonrunnable command's exit
4817         status, not the wait status value.  From
4818         Andreas Schwab <schwab@lamothe.informatik.uni-dortmund.de>.
4820         * parser.c (make_segment, insert_fprintf), pred.c
4821         (pred_fprintf): Add '%F' to print filesystem type.
4823         * parser.c (parse_fprintf): Check if second arg is missing.
4825 Tue Mar 23 13:18:08 1993  David J. MacKenzie  (djm@kropotkin.gnu.ai.mit.edu)
4827         * pred.c (pred_fprintf): For %P, don't move past an assumed
4828         slash if the ARGV element ends with one, because in that case
4829         we didn't add one.
4831         * parser.c (parse_printf): Check for missing arg.
4832         From smj@cats.com (Steve James).
4834         * parser.c: Add #ifdef around atol decl for Linux.
4836 Fri Dec 11 08:17:07 1992  Jim Meyering  (meyering@comco.com)
4838         * defs.h: Remove dcl of process_path.
4839         * find.c: Put dcl of p
4841         * pred.c (pred_fprintf): Don't print "\n" unless it's in the
4842         format string.
4844 Mon Oct 21 22:30:35 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
4846         * defs.h, parser.c, pred.c: Rename some types that conflict
4847         with reserved POSIX.1 namespace (ended in _t).
4849         
4850         
4851 Thu Oct 17 22:39:06 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
4853         * xargs.c: Don't determine memory.h based on POSIX, which
4854         doesn't mention it.
4856 Sat Oct  5 16:11:05 1991  Jim Meyering (meyering at churchy.gnu.ai.mit.edu)
4858         * parser.c (parse_perm): Parse new `-perm +mode' notation.
4859         * pred.c (pred_perm): Interpret same.
4861 Fri Sep 13 14:58:27 1991  David J. MacKenzie  (djm at churchy.gnu.ai.mit.edu)
4863         * xargs.c [POSIX]: Always use sysconf to get ARG_MAX.
4865 Thu Sep  5 23:57:06 1991  David J. MacKenzie  (djm at apple-gunkies)
4867         * bigram.c, code.c (main): Make path_max int, not unsigned.
4868         * locate.c (main): Check for pathconf failure.
4870 Thu Sep  5 11:54:44 1991 Jim Meyering (meyering at churchy.gnu.ai.mit.edu)
4872         * parser.c (insert_fprintf): Add `\\' escape and fixed `%%'
4873         interpretation.
4874         * pred.c (pred_fprintf): fixed off-by-one indexing problem
4875         when handling [gGuU] printf formats.
4877 Wed Aug 28 20:53:57 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
4879         * Version 3.2.
4881 Mon Aug 26 18:57:32 1991  David J. MacKenzie  (djm at pogo.gnu.ai.mit.edu)
4883         * bigram.c, code.c: Fix handling of PATH_MAX.
4884         Check for anomalous input line lengths.
4885         From Bruce Evans.
4887 Fri Aug 23 11:00:18 1991  David J. MacKenzie  (djm at apple-gunkies)
4889         * pred.c (pred_fprintf): Round block number up to get K.
4891 Thu Aug 22 10:46:30 1991  David J. MacKenzie  (djm at apple-gunkies)
4893         * pred.c (pred_fprintf, pred_lname) [_AIX]: Allocate PATH_MAX
4894         byte for link object since st_size is wrong.
4896         * listfile.c (list_file): Don't convert blocks to kilobytes if
4897         env. var POSIX_ME_HARDER is defined.
4899         * fstype.c [FS_AIX_STATFS]: New case.
4901         * configure: Make sure the sys/mount.h is the 4.4BSD version
4902         with grep instead of just testing whether it exists.
4904         * listfile.c (list_file): Add 1 to number of 512-byte blocks
4905         before dividing to get 1K blocks (so we round up, not down).
4907 Wed Aug 21 13:02:46 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
4909         * Version 3.1.
4911         * parser.c (parse_fprintf), pred.c (pred_fprintf): Add %k
4912         conversion to print 1K blocks.
4914         * listfile.c: Print counts of 1K blocks, for consistency with
4915         new fileutils release.  Bad timing, there.
4917         * Version 3.0.
4919         * pred.c [VOID_CLOSEDIR]: Fake a return value for closedir,
4920         which returns void on some systems, like Sequents.
4921         * configure: Check sys/dir.h for 'void closedir'.
4923 Thu Aug 15 16:07:46 1991  David J. MacKenzie  (djm at frob)
4925         * modetype.h: Define POSIX.1 stat stuff if missing.
4926         * pred.c, parser.c, find.c, fstype.c: Don't define it.
4927         * updatedb.sh: Use a variable substitution method like configure's.
4928         * Makefile.in: Add datadir variable to separate programs from
4929         data file.
4931         * parser.c, pred.c: Rename -fulldays to -daystart.
4933         * defs.h, find.c, parser.c, pred.c: Add many new predicates
4934         from Jay Plett (jay@princeton.edu).
4936 Wed Aug 14 14:37:06 1991  David J. MacKenzie  (djm at bleen)
4938         * parser.c (parse_size), pred.c (pred_size), defs.h (struct
4939         size_t): Allow `k' to follow number to measure size in Kbytes.
4940         * parser.c (parse_size, get_num, insert_num), defs.h (struct
4941         size_t): Use enum comparison_type instead of short.
4943 Fri Aug  9 00:49:32 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
4945         * xargs.c (read_line): Use isblank, to support POSIX locales.
4947         * fstype [FS_STATVFS]: New code for SVR4, from slootman@dri.nl
4948         (Paul Slootman).
4949         * configure: Figure out when to use it.
4951         * configure: Check for st_blocks in struct stat.
4952         * listfile.c (ST_NBLOCKS): New macro.
4953         (list_file): Print file's block count.
4954         Use S_ISLNK instead of S_IFLNK.
4955         * fileblocks.c: New file, from fileutils.
4957 Thu Aug  8 17:20:19 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
4959         * parser.c, pred.c [CACHE_IDS]: Optional code to turn uid and
4960         gid lookups into table lookups.
4962 Wed Aug  7 00:22:29 1991  David J. MacKenzie  (djm at wheat-chex)
4964         * configure, Makefile.in's: Support +srcdir option via VPATH.
4965         Clean up clean targets.
4967 Sat Jul 20 01:11:51 1991  David J. MacKenzie  (djm at apple-gunkies)
4969         * configure: Filter /etc and /usr/etc from path.
4971         * xargs.c (wait_for_proc): Fix handling of child exit status.
4972         (main): Exit with a nonzero status if any child did.
4974         * pred.c (launch): Flush stdout and stderr before forking.
4976         * fstype.c (filesystem_type) [FS_MNTENT]: Skip entries of
4977         type "ignore".
4979 Fri Jul 19 22:53:42 1991  David J. MacKenzie  (djm at bleen)
4981         * pred.c, locate.c: Use fnmatch instead of glob_match.
4982         * fnmatch.c, fnmatch.h: New files.
4984         * Many files: Use string.h if STDC_HEADERS, as well as if USG.
4986         * locate.c, code.c, bigram.c: Possibly use pathconf to get
4987         PATH_MAX.  Use malloc to allocate path arrays.
4989         * xargs.c: Possibly use sysconf to get ARG_MAX.
4990         (env_size): Make definition unconditional.
4991         (main): Do arg_max adjustment that can't be done with
4992         preprocessor now that ARG_MAX might be a function call.
4993         (do_exec): Exit with status 126 or 127 after failed exec, for
4994         POSIX.2 draft 11.1.
4996         * xargs.c, pred.c, listfile.c: Use POSIX, not UNISTD_MISSING.
4997         * wait.h: Use POSIX, not WAIT_MACROS_MISSING.
4999         * COPYING: Use version 2.  Update all files.
5001         * Replace Makefile and lib/Makefile with Makefile.in,
5002         lib/Makefile.in and configure.  Update README.
5004 Fri Apr  5 12:49:09 1991  David J. MacKenzie  (djm at apple-gunkies)
5006         * Version 2.2.
5008 Fri Mar 15 20:44:45 1991  David J. MacKenzie  (djm at geech.ai.mit.edu)
5010         * xargs.c (main): Always run the command if some args are left over.
5011         Rename some variables.
5013 Fri Jan 18 03:35:57 1991  David J. MacKenzie  (djm at geech.ai.mit.edu)
5015         * bigram.c, code.c, locate.c: Use LIMITS_MISSING, not
5016         _POSIX_SOURCE, to decide whether to include limits.h.
5018         * parser.c, pred.c, listfile.c: Use POSIX, not _POSIX_SOURCE,
5019         to decide whether to declare getpwuid and getgrgid.
5021         * xargs.c: Use POSIX, not _POSIX_SOURCE, to determine whether
5022         to include memory.h.
5024 Sat Jan 12 04:12:34 1991  David J. MacKenzie  (djm at wookumz.ai.mit.edu)
5026         * defs.h, find.c, parser.c, pred.c: Remove -permmask option.
5028 Thu Jan 10 04:32:52 1991  David J. MacKenzie  (djm at albert.ai.mit.edu)
5030         * wait.h: Include sys/types.h to get pid_t.
5032         * xargs.c [USG && !STDC_HEADERS]: Only include memory.h if not
5033         _POSIX_SOURCE.
5035 Tue Jan  1 23:53:32 1991  David J. MacKenzie  (djm at albert.ai.mit.edu)
5037         * Version 2.1.
5039 Wed Dec 26 03:25:51 1990  David J. MacKenzie  (djm at apple-gunkies)
5041         * locate.c, bigram.c, code.c: Attempt to get max. path length
5042         on more kinds of systems, incl. POSIX.
5044         * pred.c, listfile.c, xargs.c: Get some decls from unistd.h,
5045         if available. 
5047         * find.c, defs.h: Make `cur_day_start' a time_t, not long.
5049 Fri Dec 21 01:49:12 1990  David J. MacKenzie  (djm at egypt)
5051         * defs.h, parser.c: Remove unused field from `struct exec_t'.
5053         * xargs.c: Add +no-run-if-empty option to cause the command to
5054         not be run if the input is empty.
5056         * defs.h (struct exec_t): Change the array of offsets into an
5057         array of `struct path_arg'.
5058         * parser.c (insert_exec_ok): Fill in new fields, to allow "{}"
5059         to be substituted (multiple times) anywhere in an arg to -exec
5060         or -ok.
5061         * pred.c (pred_exec): Add code to substitute "{}" within args.
5062         (pred_ok): After prompting, just run pred_exec.
5064 Thu Dec 20 02:32:09 1990  David J. MacKenzie  (djm at egypt)
5066         * fstype.c (filesystem_type) [FS_MNTENT]: Allow for optional
5067         "0x" at front of "dev=" mount option, which amd puts there but
5068         Sun automounter doesn't.
5070 Sat Dec 15 19:01:12 1990  David J. MacKenzie  (djm at egypt)
5072         * find.c (main), util.c (usage): Make directory args optional,
5073         defaulting to ".".
5075 Sat Dec 15 18:36:29 1990  David J. MacKenzie  (djm at apple-gunkies)
5077         * listfile.c: Define major and minor if not defined (as in POSIX).
5079 Mon Dec  3 01:04:35 1990  David J. MacKenzie  (djm at alborz)
5081         * find.c, fstype.c, parser.c, pred.c, util.c: Flush stdout before
5082         writing to stderr, in case they have been redirected to the
5083         same file descriptor.
5085         * pred.c (launch): Use POSIX wait macros from wait.h.
5087         * xargs.c (print_xargs): Read from tty_stream, not stdin.
5089 Tue Nov 20 16:48:24 1990  David J. MacKenzie  (djm at apple-gunkies)
5091         * Version 2.0.
5093         * fstype.c [FS_USG_STATFS]: New code.
5094         [FS_STATFS]: For symlinks, statfs the directory the link is in
5095         instead of the link.
5096         * Various files: Conditionalize some declarations on
5097         STDC_HEADERS or _POSIX_SOURCE.
5099 Fri Nov 16 12:24:43 1990  David J. MacKenzie  (djm at egypt)
5101         * modetype.h: New file.
5102         parser.c, pred.c: Use it.
5104 Thu Nov 15 18:05:54 1990  David J. MacKenzie  (djm at apple-gunkies)
5106         * xmalloc.c: New file from fileutils.
5108         * fstype.c (fstype_to_string): Add case for MFS.
5109         (filesystem_type): Take a pathname as a second arg.
5110         [FS_STATFS] return "unknown" instead of exiting if statfs
5111         fails because of ENOENT.
5112         * pred.c (pred_fstype): Pass the pathname.  Set current_dev.
5113         * find.c (process_path): Make root_dev local again.
5115 Mon Nov 12 02:54:00 1990  David J. MacKenzie  (djm at apple-gunkies)
5117         * pred.c (pred_fstype): Free old fs type.
5119         * fstype.c, pred.c (pred_fstype), parser.c (parse_fstype): 
5120         Reread the file system type info. every time a filesystem
5121         mount point is crossed, to allow for automounting.
5123         * xstrdup.c: New file from fileutils.
5125         * find.c (process_path): Rename root_dev to current_dev and
5126         make it global, for -fstype.
5128         * wait.h: New file taken from xargs.c.
5130         * xargs.c: Make limits.h vs. sys/param.h conditional on
5131         LIMITS_MISSING instead of USG, to accomodate SVR2.
5133 Thu Nov  8 11:52:22 1990  David J. MacKenzie  (djm at apple-gunkies)
5135         * parser.c, pred.c, listfile.c: If not _POSIX_SOURCE, declare
5136         getpwuid and getgrgid.  Use them.
5138         * listfile.c: If not _POSIX_SOURCE, define S_ISDIR and
5139         S_ISBLK.  Use them. 
5141         * find.c: Use S_ISDIR instead of S_IFDIR, and define if not
5142         _POSIX_SOURCE. 
5144         * Makefile: Define AR and RANLIB and pass to child makes.
5145         lib/Makefile: Use them.
5147         * xargs.c (WIFSIGNALED): Redefine so it works.
5149 Mon Nov  5 00:02:01 1990  David J. MacKenzie  (djm at apple-gunkies)
5151         * find.c (process_path): For -xdev, process filesystem
5152         mountpoints (but don't descend them), instead of skipping them
5153         entirely. 
5155         * find.c, parser.c, defs.h: Add -follow predicate.
5157         * xargs.c: Change ifdefs to support STDC POSIX systems.
5159 Sat Nov  3 20:18:05 1990  David J. MacKenzie  (djm at apple-gunkies)
5161         * xargs.c (do_exec): Child process exits with status 255, not
5162         127, if command can't be run.
5164 Fri Nov  2 02:11:42 1990  David J. MacKenzie  (djm at apple-gunkies)
5166         * xargs.c: Exit with status 127 if running commmand fails, as
5167         required by POSIX.
5169         * fstype.c: Support -fstype for Ultrix (-DFS_GETMNT).
5170         Sun/BSD code is now -DFS_MNTENT.
5172 Thu Nov  1 13:06:01 1990  David J. MacKenzie  (djm at egypt)
5174         * Reorganize into subdirectories and add xargs.  Rewrite Makefiles.
5176         * find.c (process_path, main): Allow a maxdepth of 0, meaning
5177         only process command line args.
5179         * parser.c, pred.c: Add -print0 predicate.
5181         * xargs.c: Add -0 option and long options.  Move standard
5182         library functions into separate files.  Use error instead of
5183         fatal and fprintf/perror.  Use POSIX macros for examining exit
5184         status from wait.
5185         (read_string): New function.
5187 Fri Sep 21 10:21:09 1990  David J. MacKenzie  (djm at apple-gunkies)
5189         * find.c (process_path): Take DEPTH as an arg instead of ROOT,
5190         and change callers.
5192 Thu Sep 20 23:58:47 1990  David J. MacKenzie  (djm at apple-gunkies)
5194         * parser.c (parse_maxdepth): New function.
5195         * find.c (process_path): If -maxdepth was given, don't go
5196         more than that many levels deep.
5197         * defs.h: Declare maxdepth.
5199 Wed Sep 12 02:12:31 1990  David J. MacKenzie  (djm at apple-gunkies)
5201         * parser.c: Add -not as synonym for !.
5203 Sun Aug 26 06:16:08 1990  Jim Kingdon  (kingdon at pogo.ai.mit.edu)
5205         * Makefile (TAGS): New target.
5207 Sun Aug 12 00:32:01 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5209         * xargs.c (main): Tell getopt to not permute.
5211 Sat Aug  4 21:43:45 1990  David J. MacKenzie  (djm at pogo.ai.mit.edu)
5213         * parser.c (parse_perm), pred.c (pred_perm): Always compare
5214         bits 07777.
5216         * locate.c, Makefile: Rename 'fastfind' program to 'locate',
5217         following comment in POSIX.2 draft 10 rationale for find.
5219 Wed Jul 25 18:45:03 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5221         * listfile.c (getuser, getgroup): Make uid and gid unsigned
5222         short, not int.
5224 Mon Jul 16 13:40:13 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5226         * defs.h: Don't declare fprintf and printf, in case they have
5227         prototypes in stdio.h (important for functions that use stdarg).
5229 Sun Jul 15 23:39:39 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5231         * parser.c (parse_and): New function, for compatibility.
5233 Wed Jul  4 00:17:57 1990  David J. MacKenzie  (djm at apple-gunkies)
5235         * find.c (main): Only enclose expressions that produce no side
5236         effects within `( ... )'.
5238 Tue Jul  3 01:59:39 1990  David J. MacKenzie  (djm at apple-gunkies)
5240         * parser.c (strspn): Stop when end of string reached.
5242         * Version 1.2.
5244         * Move version number from Makefile to new file version.c.
5245         * parser.c: Recognize new -version predicate.
5247         * find.c (main): If no predicates that produce output are
5248         given, default to -print if the entire expression is true, not
5249         just the last part of an alternation.
5250         * Print the names of predicates with invalid arguments.
5252 Mon Jul  2 23:48:17 1990  David J. MacKenzie  (djm at apple-gunkies)
5254         * pred.c: Don't check for invalid comparison types in numeric
5255         predicate functions.
5257 Thu Jun 28 00:34:57 1990  David J. MacKenzie  (djm at apple-gunkies)
5259         * parser.c (parse_regex): Set fastmap and translate before
5260         compiling regex.
5262 Mon Jun 25 18:08:59 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5264         * fastfind.c (fastfind): Initialize count to 0.
5266         * lib/updatedb.sh: Only do regex comparison on directories,
5267         for speed.
5269         * listfile.c (list_file): Truncate user and group name to 8 chars.
5271 Sun Jun 24 13:51:27 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5273         * Version 1.1.
5275         * Makefile [DISTFILES]: Add COPYING.
5277 Fri Jun 22 03:54:27 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5279         * Version 1.0.
5281 Tue Jun 19 03:55:28 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5283         * lib/updatedb.sh: Prune entries that match PRUNEREGEX.
5284         Split up finding files from computing bigrams.
5285         Use redirection instead of nonportable grep -s to detect sort
5286         failure.  Optionally search network filesystems as well as
5287         local ones.
5289         * pred.c (pred_regex): Match against full pathname instead of
5290         just last element.
5291         * util.c (basename): Return "/", not "", if given "/".
5293         * find.c (process_path): Fix error in handling "/" directory.
5295 Mon Jun 18 01:49:16 1990  David J. MacKenzie  (djm at apple-gunkies)
5297         * parser.c [STRSPN_MISSING] (strspn): New function.
5299 Sun Jun 17 13:54:09 1990  David J. MacKenzie  (djm at apple-gunkies)
5301         * listfile.c: New file.
5302         * parser.c (parse_ls): New function.
5303         * pred.c (pred_ls): New function.
5305         * find.c (main): Remove interface to fastfind, to prevent
5306         conflict with POSIX syntax.
5307         * util.c (usage): Remove fastfind syntax from message.
5308         * fastfind.c (main): New function.
5309         * Makefile: Make fastfind a separate program.
5311         * find.c (main): Print correct message if a predicate arg is
5312         missing. 
5314         * parser.c (insert_exec_ok): Make args that start with a ';' but
5315         contain other characters not terminate the command.
5317 Fri Jun 15 00:33:45 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5319         * fstype.c: If MOUNTED isn't defined but MNT_MNTTAB is, use it
5320         instead.  True for HP/UX, at least.
5322 Thu Jun 14 10:10:25 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5324         * savedir.c: New file; now find won't run out of file
5325         descriptors in deep trees.
5326         * find.c (process_path): Use savedir.
5328 Sat Jun  9 03:15:21 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5330         * parser.c (parse_permmask): Allow symbolic mode masks.
5331         (parse_perm): Free 'struct change' when done with it.
5332         (get_oct): Function removed.
5334         * find.c (process_path): Allow arbitrarily-long filenames.
5335         More efficient string copying.  Initialize perm_mask to 07777
5336         instead of -1.
5338 Thu Jun  7 04:22:42 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5340         * Makefile, find.c: Use DIRENT to control whether <dirent.h>
5341         is used.
5343 Thu May 31 04:46:11 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5345         * parser.c (parse_regex): New function.
5346         * pred.c (pred_regex): New function.
5348         * fstype.c (read_mtab): If mtab entry has a "dev=" option
5349         (like in SunOS 4.1), use it, so there is no need to stat the
5350         special file later on.
5351         (xatoi, strstr): New functions.
5353 Mon May 21 01:04:42 1990  David J. MacKenzie  (djm at abyss)
5355         * lib/updatedb.sh: Put BINDIR in PATH.
5357         * fstype.c: Do nothing if MNTENT_MISSING is defined.
5359         * fstype.c: New file.
5360         * parser.c (parse_fstype): New function.
5361         * pred.c (pred_fstype): New function.
5363         * parser.c (parse_newer): Failure to stat -newer file is a
5364         fatal error.
5366         * pred.c (pred_ok): Flush output before reading.  Use getchar
5367         instead of scanf.
5369         * pred.c (pred_prune): Return false if -depth given.
5370         * find.c: Apply the predicates to the dir when -depth and
5371         -prune are given.
5373 Sun May 20 19:55:30 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5375         * pred.c (pred_prune): Set new global var `stop_at_current_level'.
5376         * find.c (process_path): Test and reset it.
5378 Fri May 18 01:56:17 1990  David J. MacKenzie  (djm at abyss)
5380         * modechange.c, modechange.h: New files.
5381         * parser.c (parse_perm): Use mode_compile and mode_adjust to
5382         parse arg, to allow symbolic mode for POSIX.
5384 Thu May 17 02:07:44 1990  David J. MacKenzie  (djm at abyss)
5386         * parser.c (get_oct): Don't consider an empty string a valid number.
5388         * parser.c (parse_perm): If arg starts with '-', set flag bit
5389         for special comparison (POSIX).
5390         * pred.c (pred_perm): If flag bit set, compare s[ug]id &
5391         sticky bits as well, and return true if the given perms are
5392         set, ignoring other bits.
5394         * find.c: New global var `exit_status'.  Use it.  (POSIX)
5395         * parser.c: Set `exit_status' if lstat on -newer file fails.
5397         * fastfind.c: New file.
5398         * find.c (main): Call fastfind if given only 1 arg.
5399         * util.c (usage): Update message. 
5400         * lib/{Makefile,updatedb.sh,bigram.c,code.c}: New files.
5401         * Makefile: Add 'all' and 'install' targets.
5403 Wed May 16 23:23:35 1990  David J. MacKenzie  (djm at abyss)
5405         * parser.c (parse_nogroup, parse_nouser): Implement.
5406         * pred.c (pred_nogroup, pred_nouser): Implement.
5408 Mon May 14 00:09:35 1990  David J. MacKenzie  (djm at abyss)
5410         * find.c: Add variable `stay_on_filesystem' for -xdev.
5411         (process_path): Take an arg determining whether this call is
5412         the root of a tree.  Use lstat instead of stat.  If
5413         stay_on_filesystem, don't process a dir on a different
5414         filesystem. 
5416         * parser.c (parse_newer): Use lstat instead of stat.  Is this right?
5417         (parse_xdev): Set stay_on_filesystem.
5419         * parser.c: Add dummy parse_nogroup, parse_nouser,
5420         parse_prune, and parse_xdev; to be written later.
5421         * pred.c: Add dummy pred_nogroup, pred_nouser, pred_prune.
5423         * find.c: Support System V directory library/headers.
5425         * find.c (process_path): Don't continue with a file that stat
5426         fails on.
5428         * defs.h, parser.c, pred.c: Change 'u_long' and 'u_short' to
5429         'unsigned long' and 'unsigned short'.
5430         * find.c, defs.h: Remove 'convert_glob' variable.
5431         * parser.c (parse_fullregex): Function removed.
5432         (parse_name): Remove regular expression code.
5433         (parse_type): Recognize sockets.
5434         Add code to check for missing arguments to many parse_* functions.
5435         * pred.c (pred_name): Use glob_match instead of regex.
5437 Sun May 13 17:45:09 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5439         * Replace fprintf, simple_error, and mem_error with error and
5440         usage. 
5442         * Fix string header includes for USG.
5444 Tue Mar 27 12:40:29 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5446         * defs.h: Change some #defines to enums.
5448 Sun Mar 25 22:08:58 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5450         * find.c (main): Don't take basename of argv[0].
5452         * util.c (xmalloc): New function.
5453         * find.c, parser.c, utils.c: Use xmalloc instead of malloc.
5455         * pred.c: Remove emulation of regex for BSD and use GNU
5456         library version in regcmp.c instead.
5457         * parser.c: Remove emulation of regcmp for BSD and use GNU
5458         library version in regcmp.c instead.
5459         * Makefile: Link with regex.o and regcmp.o.
5460         Add a DISTFILES macro and dist target.
5462         * Indent source code.  Move RCS logs to this file.
5464 Wed Mar 21 09:30:18 1990  David J. MacKenzie  (djm at pogo.ai.mit.edu)
5466         * xargs.c: Indent.  Comment and rename some global variables.
5467         (main): Use getopt to parse options.  Open new global var
5468         `tty_stream' to /dev/tty if querying requested.
5469         (print_args): Read response from tty_stream, not stdin.
5470         (xmalloc): New function.
5471         Global: Use xmalloc instead of malloc.
5472         (usage): Revise message.
5474 87/02/22  20:01:20  20:01:20  cire (Eric B. Decker)
5476         * pred.c: added guts to pred_size
5478 87/02/22  00:59:42  00:59:42  cire (Eric B. Decker)
5480         * pred.c: added guts to perm and permmask.
5482 87/02/21  23:02:21  23:02:21  cire (Eric B. Decker)
5484         * pred.c: made pred_name only look at the last component of
5485         the path.
5487 87/02/21  22:26:47  22:26:47  cire (Eric B. Decker)
5489         * pred.c: added guts to name.  useds regex and regcmp to do
5490         regular expression handling.
5492 87/02/21  00:17:21  00:17:21  cire (Eric B. Decker)
5494         * pred.c: added predicate newer
5496 87/02/20  11:40:07  11:40:07  cire (Eric B. Decker)
5498         * pred.c: added guts to pred_ok
5500 87/02/19  23:52:37  23:52:37  cire (Eric B. Decker)
5502         * pred.c: finished exec.
5504 87/02/22  20:01:09  20:01:09  cire (Eric B. Decker)
5506         * parser.c: added guts to parse_size
5508 87/02/22  00:59:16  00:59:16  cire (Eric B. Decker)
5510         * parser.c: added guts of perm and permmask.  added getoct
5511         routine for perm and permmask
5513 87/02/21  23:32:50  23:32:50  cire (Eric B. Decker)
5515         * parser.c: added -fre, -fullregex predicate to turn off
5516         globbing conversion
5518 87/02/21  23:01:01  23:01:01  cire (Eric B. Decker)
5520         * parser.c: reworked name so the regexpr pattern includes $ at
5521         the end to force globbing to work correctly.  End of the
5522         pattern refers to the end of the filename.
5524 87/02/21  22:25:34  22:25:34  cire (Eric B. Decker)
5526         * parser.c: added guts to name.  uses a conversion from
5527         globbing to regexp format.  uses regex and regcmp to actually
5528         to the comparison.
5530 87/02/21  00:17:11  00:17:11  cire (Eric B. Decker)
5532         * parser.c: added predicate newer
5534 87/02/20  11:39:35  11:39:35  cire (Eric B. Decker)
5536         * parser.c: added ok guts.  consolidated exec and ok to using
5537         insert_exec_ok
5539 87/02/19  00:20:54  00:20:54  cire (Eric B. Decker)
5541         * parser.c: minor bug in -fulldays predicate parser.  It
5542         should have set the flag full_days to true.
5544 87/02/22  00:58:32  00:58:32  cire (Eric B. Decker)
5546         * find.c: changed where we are setting perm_mask to -1.  need
5547         to make sure that this happens before every apply_predicate.
5549 87/02/21  23:32:11  23:32:11  cire (Eric B. Decker)
5551         * find.c: added error checking for no paths.  better error
5552         message if illegal ordering.
5554 87/02/21  22:19:58  22:19:58  cire (Eric B. Decker)
5556         * find.c: added global convert_glob
5558 87/02/22  20:00:12  20:00:12  cire (Eric B. Decker)
5560         * defs.h: added definition of BLKSIZE for size
5562 87/02/21  22:19:25  22:19:25  cire (Eric B. Decker)
5564         * defs.h: added global convert_glob for name