Fixed typo
[findutils.git] / ChangeLog
blob551df900c0d4ccf379cf0d9a092dfb2b7e568f91
1 2007-01-22  James Youngman  <jay@gnu.org>
3         * lib/regeprops.c (describe_regex_syntax): fixed a typo in the text
4         * doc/find.texi (Multiple Files): fixed a typo
6 2007-01-16  James Youngman  <jay@gnu.org>
8         (ctime_format): format the time manually (rather than using ctime)
9         in order to include the sub-second part of the time.
10         (weekdays, months): new static variables used bu ctime_format.
11         (format_date): append a the sub-second part of the timestamp to
12         the seconds part of date/time output.
13         
14 2007-01-15  James Youngman  <jay@gnu.org>
16         * find/defs.h (time_val): define struct; use timespec to hold time
17         in the 'reftime' member.
18         (args): use struct timespec instead of time_t for predicates
19         -newer, -anewer, -cnewer.  * find/parser.c (includes): include
20         stat-time.h.
21         (parse_anewer, parse_cnewer, parse_newer): use struct timespec to
22         hold timestamps.  * find/pred.c (compare_ts): new function for
23         comparing timestamps in struct timespec.
24         (pred_anewer, pred_cnewer, pred_newer): use compare_ts() to
25         compare timestamps (hence takinng acoung of sub-second
26         granularity).
27         * find/ftsfind.c: Various improvements to comments.
28         (is_fts_enabled): Newline before function name to comply with GNU
29         coding standard.
31 2007-01-13  James Youngman  <jay@gnu.org>
33         * lib/regexprops.c (describe_regex_syntax): fixed typo
34         
35         * xargs/xargs.c (read_line): Fixed Savannah bug# 18714; VT and FF
36         are not separators, according to POSIX (in the POSIX locale).
38         * xargs/testsuite/Makefile.am,
39           xargs/testsuite/input/formfeeds.xi, 
40           xargs/testsuite/input/verticaltabs.xi, 
41           xargs/testsuite/xargs.posix/sv-bug-18714.exp, 
42           xargs/testsuite/xargs.posix/sv-bug-18714.xo, 
43           xargs/testsuite/xargs.posix/sv-bug-18714b.exp, 
44           xargs/testsuite/xargs.posix/sv-bug-18714b.xo: Tests for Savannah
45           bug #18714.
47         * xargs/xargs.c (usage): Removed suprious "[" in --help output
48         (fixes Savannah bug #18384).
50         * locate/locate.c: Implement the option --max-database-age.
51         (main) Accept the option. 
52         (set_max_db_age): Parse the argument.
54         * locate/locate.c (dolocate): If the database is more than N days
55         old, indicate its actual age in the warning message we produce.
57         * locate/locate.1, docs/find.texi: Document --max-database-age
59         * THANKS: Thank Dean Gaudet for the idea of -sparse.
61         * po/findutils.pot: Updated from Translation Project
63         * po/ga.po, po/pl.po, po/nl.po, po/tr.po, po/hu.po: Updated from
64         the Translation Project
66 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> 
68         * doc/find.texi: Fix some typos. (trivial change)
70 2007-01-07  James Youngman  <jay@gnu.org>
72         * find/parser.c (parse_perm), find/testsuite/find.gnu/perm000.exp,
73           find/testsuite/find.gnu/perm000.xo: -perm /000 is now quivalent
74           to -perm -000, as dscussed in Savannah bug #14748.  The warning
75           message we issue when the user does this now explains that the
76           defintion changed as we promised it would in 2005.
78         * xargs/xargs.c (read_line): Correctly handle quoted empty
79         arguments occurring first or last on a line (by adding an empty
80         argument to the output).  Fixes Savannah bug #18713.
82         * xargs/testsuite/xargs.sysv/sv-bug-18713.exp,
83         xargs/testsuite/xargs.sysv/sv-bug-18713.xo,
84         xargs/testsuite/input/empty.xi: Test case for Savannah bug #18713.
85          
87 2006-12-29  James Youngman  <jay@gnu.org>
89         * find/testsuite/config/unix.exp:
90         Verify that find_start is invoked with wither a p (pass) or an f
91         (fail) argument.
93         * lib/listfile.c, lib/listfile.h:
94         define find_blocksize() and provide a declaration for get_link_name()
96         * find/testsuite/config/unix.exp: Updated copyright years.
98         * 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:
99         Avoid tests using -execdir if $PATH contains a relative directory
101         * find/parser.c:
102         Also flag $PATH values containing relative directories as being dangerous.
104         * find/parser.c, find/defs.h, find/util.c:
105         Instead of selecting the old or new exec handling code with the NEW_EXEC macro, just use the new code all the time
107         * locate/testsuite/config/unix.exp:
108         Fixed Savannah bug #13252, test suite failure caused by the fact that 'file normalize' is not available in Tcl 8.3
110         * NEWS, find/pred.c:
111         Fixed Savannah bug #18433, compilation failure with configure --enable-debug
113 2006-12-28  James Youngman  <jay@gnu.org>
115         * NEWS: Document addition of %S.
117         * find/defs.h, find/find.1, find/parser.c, find/pred.c:
118         Implemented %S (sparseness) printf format, and general refactoring and cleanup of printf predicate
120 2006-12-01  James Youngman  <jay@gnu.org>
122         * NEWS, configure.in: Begin work on findutils 4.2.30
124         * find/find.c:
125         Fix compilation error for oldfind if --enable-debug was passed to configure
127         * NEWS, configure.in: Prepare for work on findutils-4.3.3
129 2006-11-25  James Youngman  <jay@gnu.org>
131         * find/testsuite/Makefile.am: Added test case for Savannah bug #17782
133         * doc/textinfo.tex: Removed; we now use the version supplied 
134         by automake.
135         
136         * m4/mkinstalldirs.m4: Added this file.  It's an excerpt from an
137         old version of gnulib's m4/nls.po file.  The current version of
138         gnulib does not expand MKINSTALLDIRS, but gettext-0.14.6's version
139         of po/Makefile.in.in expects it to be expanded.  This m4 file
140         fills the gap.
142 2006-11-20  James Youngman  <jay@gnu.org>
144         * po/et.po, po/bg.po, po/pl.po, po/nl.po, po/tr.po: Updated
145         translations for Bulgarian, Estonian, Dutch, Polish and Turkish.
147 2006-11-08  James Youngman <jay@gnu.org>
149         * find/testsuite/Makefile.am:
150         Oops, indicate the right directory for the new test files
152         * 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:
153         Savannah bug#18222 - test case
155         * ChangeLog, lib/buildcmd.c:
156         Fixed Svannah bug #17782 ('./' prefix added at start of arg while it should be added at the start of the expansion of {})
158         * find/ftsfind.c (process_all_startpoints): Set
159         state.starting_path_length for every pathname argument.
160         This fixes Savannah bug #18222.
162         * find/pred.c (pred_prune): -prune should have an effect only if we are
163          currently considering a directory (Savannah bug #15531).
164         
165 2006-10-15  James Youngman <jay@gnu.org>
167         * lib/buildcmd.c: Fixed Savannah bug #17782, in which "find
168         -execdir echo "foo {}" runs 'echo ./foo filename' instead of the
169         correct command 'echo foo ./filename'.
170         
171         * po/hu.po, po/sl.po: Updated Hungarian and Slovenian po files
173 2006-08-21  James Youngman <jay@gnu.org>
175         * find/parser.c, find/testsuite/Makefile.am, find/testsuite/find.gnu/sv-bug-17490.exp:
176         Fixed Savannah bug #17490, which was a coiredump when -regex ZZZ was the final test on the command line
178 2006-08-20  James Youngman <jay@gnu.org>
180         * find/parser.c: Merged the fix for the trailing % in "find -printf".
182 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
184         Port recent fixes for symbolic modes involving X from gnulib,
185         and clarify the documentation in this area.
186         * doc/find.texi: Use "file mode bits" when talking about
187         all the file mode bits (including setuid, setgid, and sticky),
188         and "permissions" when talking only about permissions bits
189         (read, write, execute/search).  Use "execute/search" to
190         talk about the x bit, since it means both.  You do not need
191         permission to the linked-to file to follow a symlink for
192         syscalls like "stat", but you do need search permission for
193         the directories you traverse.  Clarify the explanation of
194         -perm.  Use "that" instead of "which" when "which" isn't
195         quite correct English.
196         (Mode Bits): Renamed from Permissions.  All uses changed.
197         * doc/perm.texi: Sync from coreutils 6.0.
198         * find/defs.h (struct perm_val.val): Now an array of two items,
199         one for non-directories, and one for directories.  This is
200         to handle symbolic modes like +X correctly.
201         * find/parser.c (parse_perm): Likewise.  Also, adjust to
202         latest gnulib interface for mode_adjust.
203         * find/pred.c (pred_perm): Likewise.
204         * find/testsuite/Makefile.am (EXTRA_DIST_XO): Add find.posix/perm-X.xo.
205         (EXTRA_DIST_EXP): Add find.posix/perm-X.exp.
206         * find/testsuite/find.posix/perm-X.exp: New file.
207         * find/testsuite/find.posix/perm-X.so: New file.
209 12006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
211         Port to latest gnulib, and simplify the bootstrapping procedure.
212         * intl: Remove this directory and everything in it.
213         * depcomp, install-sh, missing, mkinstalldirs, doc/texinfo.tex:
214         Remove these files from CVS, as they are now gotten from gnulib.
215         * README-CVS: Don't recommend "autoreconf -i", as it doesn't work
216         for us.
217         * import-gnulib.sh (findutils_files): New var.  Grab this stuff
218         from gnulib.
219         (findutils_modules): Add fopen-safer; remove stdio-safer.  This
220         adjusts to latest gnulib.
221         (modules): Remove obsolete reference to intl_modules.
222         * .cvsignore: Remove stamp-h; add stamp-h1.
223         * doc/.cvsignore: Add regexprops.texi.
224         * find/.cvsignore: Add oldfind.
225         * lib/.cvsignore: Add .deps, regexprops.
226         * m4/.cvsignore: Add Makefile.
227         * po/.cvsignore: Add stamp-po.
229 2006-08-19  James Youngman <jay@gnu.org>
231         * locate/testsuite/config/unix.exp, locate/testsuite/locate.gnu/bigprefix1.exp:
232         Explicit checks for parefixes which are within range of a short, but outside the one-byte range
234         * locate/testsuite/locate.gnu/bigprefix1.exp, locate/testsuite/locate.gnu/exceedshort.exp, locate/testsuite/locate.gnu/space1st.exp:
235         New file.
237         * locate/testsuite/Makefile.am, locate/testsuite/locate.gnu/exceedshort.exp, locate/testsuite/locate.gnu/space1st.exp:
238         Patch from Tavis Ormandy; check frcode handles initial space end encodes paths with more than 2^16 characters in the common prefix (trivial change)
240         * locate/frcode.c: Changes to avoid overflows
242 2006-08-11  James Youngman <jay@gnu.org>
244         * locate/frcode.c:
245         Avoid producing an invalid database if the first item begins with a space
247 2006-08-10  James Youngman <jay@gnu.org>
249         * find/pred.c, import-gnulib.sh, lib/listfile.c:
250         Updated callers of the gnnulib filemode module so that they work with the 2006-07-09 version of gnulib
252         * config.rpath: Updated config.rpath from autotools
254 2006-08-08  James Youngman <jay@gnu.org>
256         * locate/locatedb.h:
257         Automatically verify (at compile time) that the frcode datastream
258         cannot get desynchronised.
260         * find/ftsfind.c:
261         Fixed Savannah bug #10494 (-maxdepth does not yield the same stat savinf in ftsfind as oldfind)
263         * find/ftsfind.c: display fts_level for find -D search
265         * find/util.c: Support find -D search
267         * locate/locate.c:
268         If the user specified -E but the database is an slocate database, do
269         not produce a list of files they cannot stat.  Issue an error message
270         explaining the problem.
272         * locate/locate.c:
273         Issue states messages in a way which indicates more clearly what's
274         happening when the numbers are reduced because not every filename
275         matched the pattern.
277         * locate/locate.c: Better error checking in drop_privs().
279 2006-08-07  James Youngman <jay@gnu.org>
281         * NEWS, locate/locate.c, locate/locatedb.h:
282         Added support for slocate database format
284         * xargs/xargs.c:
285         Removed unused code (tivial patch from Miloslav Trmac).
287         * xargs/xargs.c: Removed unused code.
289         * doc/find.texi:
290         Clarify that the output format for locate -S differs from BSD's.
292         * NEWS, find/find.1:
293         Savannah bug #15360: explain global vs. positional options more clearly in the manual page
295         * NEWS: Typo in subsection header (* should be **).
297         * NEWS, find/find.1:
298         Savannah bug #15360: explain global vs. positional options more clearly in the manual page
300         * doc/find.texi: Fixed some clumsy phrasing
302         * NEWS, configure.in:
303         Now diverging again from the released tarball, so change once more to -CVS version number suffixes
305 2006-08-06  James Youngman <jay@gnu.org>
307         * locate/locate.c: Fixed a typo in a comment.
309         * NEWS, configure.in: Moving on towards 4.3.2...
311         * find/testsuite/config/unix.exp:
312         Check that we can see the find.o file in the right position relative
313         to $base_dir to ensure that we are indeed testing the program we just built.
315         * find/testsuite/config/unix.exp:
316         Be more paranoid about whether we're really checking the right version
317         of find.
319         * NEWS, configure.in: Prepare for release of 4.3.1
321         * doc/find.texi: Document the -O and -D options
323         * find/defs.h, find/find.1, find/util.c:
324         'find -D help' now explains the available debugging options
326         * 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:
327         Make dist changed all the po files again
329 2006-08-05  James Youngman <jay@gnu.org>
331         * NEWS: Described more changes in 4.3.1.
333         * locate/testsuite/config/unix.exp:
334         Set the  environment variable so that updatedb knows where to find it; it's not in BINDIR yet during 'make check'
336         * 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:
337         Make dist changed all the po files again :)
339         * po/et.po, po/vi.po: UPdated the Estonian and Vietnamese translations
341         * NEWS, configure.in: Prepare for release of findutils-4.2.28
343         * 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:
344         Make dist changed all the po files again :)
346         * configure.in: Added Bulgarian translation.
348         * po/bg.po: Include Bulgarian translation
350         * configure.in: Added Bulgarian translation.
352         * po/et.po, po/vi.po: Updated Estonian and Vietnamese translations
354         * NEWS: Removed spurious comma.
356         * NEWS: Listed the updated translations.
358         * find/parser.c, lib/buildcmd.c, lib/buildcmd.h, xargs/xargs.c:
359         Fixed Savannah bug#16738, find does not subtract environment size in find .. -exec {} +
361         * NEWS: Updated the list of bugfixes etc.
363 2006-06-15  James Youngman <jay@gnu.org>
365         * NEWS: Described recent changes
367         * configure.in: fix to how we invoke the gnulib regex module
369         * find/find.1:
370         Savannah bug #16269: avoid confusion over what type of quotes to use
371         in an example.
373         * find/parser.c: Option -nowarn should not itself produce a warning
375         * find/defs.h: Remoevd useless declaration of last_pred
377 2006-06-14  James Youngman <jay@gnu.org>
379         * 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:
380         Updated translation files ga pl sv tr nl ca vi bg fr
382         * locate/updatedb.sh:
383         Fixed Savannah bug #16579 (su false should be su -c false)
385 2006-04-01  James Youngman <jay@gnu.org>
387         * find/find.c:
388         Fixed Savannah bug #15800: "Hard link count is wrong" reports wrong
389         directory name.
391 2006-03-31  James Youngman <jay@gnu.org>
393         * po/hu.po: Updated Hungarian translation
395 2006-01-04  James Youngman <jay@gnu.org>
397         * find/testsuite/find.posix/sizetype.exp, find/testsuite/find.posix/sizetype.xo, find/testsuite/find.posix/typesize.exp, find/testsuite/find.posix/typesize.xo:
398         Additional tests for -type -size and -size -type
400         * 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:
401         Initial implementation of a cost-based optimiser
403 2005-12-23  James Youngman <jay@gnu.org>
405         * find/parser.c: Refactor of parse_[acm]time
407         * find/defs.h, find/find.c, find/finddata.c, find/ftsfind.c, find/tree.c, find/util.c:
408         last_pred can be a static in tree.c rather than a global variable
410         * find/tree.c, find/finddata.c:
411         Moved some global data out of finddata.o and into static variables in tree.c
413         * 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:
414         Fixed many compilation warnings
416         * find/find.c, find/ftsfind.c, find/util.c:
417         Evaluating the predicates can change the contents of the data structure (for example to add another exec item)
419         * find/defs.h, find/find.c, find/ftsfind.c, find/tree.c, find/util.c:
420         Re-factored a lot of common expression-handling code out of find.c and ftsfind.c, mainly into tree.c
422         * find/find.c, find/ftsfind.c, find/tree.c:
423         Savannah bug #15271: more helpful error messages for cases where there is a missing expression
425 2005-12-20  James Youngman <jay@gnu.org>
427         * 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:
428         Savannah bug #15195: more helpful error messages for 'find . ( )' or 'find . \!'
430         * ChangeLog: Added entries for recent changes.
432         * find/defs.h, find/find.c, find/ftsfind.c, find/testsuite/find.posix/bracket-depth.exp, find/util.c:
433         Further fix to bug# 15235: a leading comma is a filename not an expression
435         * find/defs.h, find/parser.c, find/testsuite/Makefile.am, find/testsuite/find.posix/empty-parens.exp, find/tree.c:
436         Accept 'find ( -depth )' but reject 'find ( )'
438         * 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:
439         did make dist
441         * find/testsuite/find.gnu/delete.exp:
442         Use the new find program, and the new way of locating it (/ instead of )
444         * find/testsuite/Makefile.am: Added bracket-depth.exp.
446         * NEWS, configure.in: We have moved on from 4.3.0
448         * 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:
449         Avoid getting confused by filename arguments of which the first
450         character looks like a predicate, for example ',x' or '!x' or
451         '(x' (Savannah bug #15235).
453 2005-12-20  James Youngman <jay@gnu.org>
455         * find/defs.h, find/find.c, find/ftsfind.c,
456         find/testsuite/find.posix/bracket-depth.exp, find/util.c: Further
457         fix to bug# 15235: a leading comma is a filename not an expression
459         * find/defs.h, find/parser.c, find/testsuite/Makefile.am,
460         find/testsuite/find.posix/empty-parens.exp, find/tree.c: Accept
461         'find ( -depth )' but reject 'find ( )'
463         * find/testsuite/find.gnu/delete.exp: Use the new find program,
464         and the new way of locating it ($OLDFIND/$FTSFIND instead of $FIND)
466         * find/testsuite/Makefile.am: Added bracket-depth.exp.
468         * NEWS, configure.in: We have moved on from 4.3.0
470         * find/defs.h, find/find.c, find/ftsfind.c,
471         find/testsuite/Makefile.am, find/testsuite/find.gnu/delete.exp,
472         find/testsuite/find.posix/files-not-expressions1.exp,
473         find/testsuite/find.posix/files-not-expressions1.xo,
474         find/testsuite/find.posix/files-not-expressions2.exp,
475         find/testsuite/find.posix/files-not-expressions2.xo,
476         find/testsuite/find.posix/files-not-expressions3.exp,
477         find/testsuite/find.posix/files-not-expressions3.xo, find/util.c:
478         Avoid getting confused by filename arguments of which the first
479         character looks like a predicate, for example ',x' or '!x' or '(x'
480         (Savannah bug #15235).
482 2005-12-19  James Youngman <jay@gnu.org>
484         * find/testsuite/config/unix.exp:
485         Run every test twice, once with the old (non-fts) binary and once with
486         the new (fts-enabled) binary.
488 2005-12-19 Eric Blake <ebb9@byu.net>
490         * find/testsuite/Makefile.am,
491         find/testsuite/find.posix/sv-bug-15235.xo, 
492         find/testsuite/find.posix/sv-bug-15235.exp: New tests for Savannah
493         bug 15235.
494         
495         * NEWS, find/find.1, doc/find.texi (Invoking find): Document bug
496         fix for Savannah bug 15235.
498 2005-12-16  James Youngman <jay@gnu.org>
500         * xargs/xargs.1, xargs/xargs.c: Fixed bug# 15211, that xargs
501         --show-limits is not documented in the manpage or in the usage
502         message
504 2005-12-12  James Youngman <jay@gnu.org>
506         * find/testsuite/find.gnu/access.exp:
507         Don't leave junk files lying around the place
509         * README-CVS: Update the the instructions for getting gnulib; the
510         CVS arrangements at Savannah have changed.
512         * ChangeLog, NEWS, doc/find.texi, doc/perm.texi, find/defs.h, find/parser.c:
513         Merged changes from 4.2.x branch again
515         * NEWS, doc/find.texi, find/defs.h, find/find.c, find/ftsfind.c,
516         find/parser.c, find/pred.c, find/util.c, lib/listfile.c,
517         lib/listfile.h: Initial code to allow control over how -ls quote
518         (or does not quote) control characters; not enabled yet
520 2005-12-11  James Youngman <jay@gnu.org>
522         * ChangeLog, THANKS, xargs/xargs.c:
523         Fixed spelling errors in Bob Proulx's name.  Sorry, Bob.
525 2005-12-10  James Youngman <jay@gnu.org>
527         * doc/perm.texi:
528         Aaron Hawley: Updated perm.texi from the coreutils distribution
530         * find/parser.c:
531         Avoid using entries which have the same name as POSIX library
532         functions (fprintf, printf, exec) as the implementation is allowed to
533         #define these.  That generates hard-to-grok compilation errors.
535 2005-12-10  Andreas Metzler <gnu@downhill.at.eu.org>
537         * ChangeLog, NEWS, configure.in, find/defs.h, find/parser.c:
538         Applied patch from Andreas Metzler fixing Savannah bug #15181:
539         implicit declaration of parse_openparen
541 2005-12-08  James Youngman  <jay@gnu.org>
543         * doc/find.texi: Typo and spelling corrections from Aaron Hawley
545 2005-12-05  James Youngman  <jay@gnu.org>
547         * Released findutils-4.2.27
549 2005-12-05  James Youngman  <jay@gnu.org>
551         * doc/find.texi, find/find.1, locate/locate.1, xargs/xargs.1:
552         Savannah patch #3775 from Aaron Hawley: reconciling man pages
553         differences; did not apply the patch, but resolved all the
554         remaining issues manually by updating the documentation (mostly
555         the Texinfo documentation, which was missing a number of specific
556         technical statements about the behaviour of various options)
558 2005-12-04  James Youngman  <jay@gnu.org>
560         * doc/find.texi: Document --show-limits
562         * xargs/xargs.c:
563         Correctly display the size of the argument buffer we really allocated.
565         * doc/find.texi, find/find.1, find/parser.c, find/pred.c, NEWS:
566         Savannah bug #14748 (which this change does NOT fix): issue
567         warning of future changes in the behaviour of -perm /000
569 2005-11-30  James Youngman  <jay@gnu.org>
571         * xargs/xargs.c:
572         Typo correction from Benno Schulenberg <benno@nietvergeten.nl>
573         (trivial change)
575 2005-11-29  James Youngman  <jay@gnu.org>
577         * xargs/xargs.c:
578         Typo "Ilegal"; change to "Invalid" since this is not really illegal!
579         Bug report by Primoz Peterlin.
581         * lib/regexprops.c, xargs/xargs.c:
582         Prefer the word 'Invalid' or the phrase 'not allowed' over
583         'Illegal', as per the GNU coding standards, and as per the
584         suggestion from Benno Schulenberg
586 2005-11-24  James Youngman  <jay@gnu.org>
588         * NEWS, lib/buildcmd.c, lib/buildcmd.h: Merge to trunk from 4.2.x fixes
590         * lib/buildcmd.h:
591         Deleted inaccurate comment about the default value of ctl->args_per_exec.
593         * NEWS, lib/buildcmd.c, lib/buildcmd.h:
594         Be more conservative about the total number of arguments we will
595         allow (to avoid exec limits on Linux/PPC)
597 2005-11-23  James Youngman  <jay@gnu.org>
599         * NEWS: Bug #14921 has been fixed.
601         * find/fstype.c:
602         Savannah bug #14921: when a Linux bind filesystem is in use, find
603         would expand '-printf %F' to 'none' if a bind mount targetted the same
604         filesystem as the one containing the file to be described.
606         * NEWS: Updated to describe recent changes
608         * doc/find.texi, find/find.1: Documented find -printf %M
610         * lib/buildcmd.c, xargs/testsuite/Makefile.am,
611         xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp,
612         xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.xo,
613         xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp,
614         xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.xo:
615         Ensure that the test suite still passes even if the current
616         system's value of ARG_MAX is different from the development/test
617         system
619         * lib/buildcmd.c: reindent and untabify
621         * configure.in: The CVS code is moving on from the previous release.
623 2005-11-22  James Youngman  <jay@gnu.org>
625         * ChangeLog: Updated with recent changes.
627 2005-11-21  James Youngman  <jay@gnu.org>
629         * locate/testsuite/config/unix.exp:
630         Even if we expect locate to return a nonzero status, the test should
631         still fail if updatedb fails!
633         * locate/testsuite/locate.gnu/ignore_case2.exp:
634         Set the current directory for updatedb.  This test case is supposed to
635         fail because the filename is not matched, not because updatedb fails!
637         * locate/updatedb.sh:
638         Check the binaries actually exist in the place we expect.
640 2005-11-20  James Youngman  <jay@gnu.org>
642         * locate/locate.1, xargs/xargs.1: Escape '-' as '\-' where appropriate.
644         * find/find.1:
645         Escape '-' as '\-' where appropriate.   Fixes last part of bug #14556.
647 2005-11-19  James Youngman  <jay@gnu.org>
649         * doc/find.texi, find/find.1:
650         Applied edited form of Andreas Metzler's -perm /mode documentation
651         patch resolving Savannah bug #14619.
653         * lib/extendbuf.c:
654         In the success case, extendbuf() should preserve the previous value of
655         errno.  Fixes Savannah bug #14842.
657         * xargs/testsuite/Makefile.am: Added new test files
659         * find/find.1:
660         Correctly indicate the default regular expression syntax (fixes
661         Savannah bug #14836).
663         * NEWS, configure.in: Released findutils-4.2.26
665         * ChangeLog, NEWS, lib/buildcmd.c,
666         xargs/testsuite/inputs/16383-ys.xi,
667         xargs/testsuite/inputs/32767-ys.xi,
668         xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp,
669         xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.xo,
670         xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp,
671         xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.xo: Applied
672         bugfix from Jim Meyering (tiny change), where many short arguments
673         would cause xargs (and probably find -exec .. {} +) to fail
674         because execve() returns E2BIG, which we should avoid
676         * xargs/testsuite/inputs/16383-ys.xi,
677         xargs/testsuite/inputs/32767-ys.xi,
678         xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.exp,
679         xargs/testsuite/xargs.posix/arg_max_32bit_linux_bug.xo,
680         xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.exp,
681         xargs/testsuite/xargs.posix/arg_max_64bit_linux_bug.xo: New file.
683 2005-11-18  Jim Meyering  <jim@meyering.net> (tiny change)
685         * lib/buildcmd.c (bc_push_arg): When exec'ing, don't exceed
686         Linux's limit on the maximum number of command line arguments.
688 2005-11-11  James Youngman  <jay@gnu.org>
690         * NEWS, find/find.c, find/fstype.c: Savannah bug #14922: if we need the
691         list of mounted filesystems but it is not available, exit fatally
692         with a message.  If it is not available but we don't need it,
693         there is no need for an error.
695 2005-10-31  James Youngman  <jay@gnu.org>
697         * doc/find.texi:
698         Removed redundant additional description of "--regextype".
700 2005-10-08  James Youngman  <jay@gnu.org>
702         * find/find.c, lib/regextype.c: Fixed Savannah bug #14616, which
703         was that c99 code had crept in and it didn't compile on c89
704         compilers
706         * doc/find.texi: Savannah patch #4371 from Andreas Metzler; the
707         argument of -I is mandatory
709 2005-09-21  James Youngman  <jay@gnu.org>
711         * xargs/xargs.1, xargs/xargs.c: Clarified the -E option
713 2005-09-20  James Youngman  <jay@gnu.org>
715         * NEWS, configure.in, doc/find.texi, xargs/xargs.1, xargs/xargs.c:
716         Documentation clarification: -L and -I take a mandatory argument;
717         -l and -i do not
719 2005-09-17  James Youngman  <jay@gnu.org>
721         * xargs/xargs.c:
722         Fixed Savannah bug #14550 - if environment is too large to allow
723         exec() to work, we cannot even use "xargs --help".
725         * find/find.1:
726         Avoid the use of -perm +mode, using -perm /mode instead.  From comment
727         by Andreas Metzler (though I didn't read the patch).
729         * ChangeLog, doc/find.texi, find/find.1, xargs/xargs.1:
730         Typo fix from A Costa (tiny change)
732         * NEWS: Corrections for find manual page - symbolic permissions.
734         * find/find.1:
735         Corrected an inaccuracy in the EXAMPLES section - in symbolic modes,
736         'o' stands for 'others' and 'u' stands for 'user' (i.e. the owner).
738 2005-09-17  A Costa <agcosta@gis.net>  (tiny change)
740         docs/find.texi: Fixed typo
741         find/find.1: Fixed typo
742         xargs/xargs.1: Fixed typo
743         
744 2005-09-17  James Youngman  <jay@gnu.org>
746         * NEWS: Corrections for find manual page - symbolic permissions.
748         * find/find.1:
749         Corrected an inaccuracy in the EXAMPLES section - in symbolic modes,
750         'o' stands for 'others' and 'u' stands for 'user' (i.e. the owner).
752 2005-09-06  James Youngman  <jay@gnu.org>
754         * xargs/xargs.c: Typo in "IEEE" in a comment.
756 2005-09-04  James Youngman  <jay@gnu.org>
758         * find/defs.h, find/find.c, find/parser.c, find/pred.c, 
759         Work around compilation failure with GCC 4 and AIX 5.1, in which
760         open is #defined to open64
762 2005-09-03  James Youngman  <jay@gnu.org>
764         * find/testsuite/find.gnu/quit.exp: Fixed Savannah bug#14390, by
765         avoiding an accidental assumption in quit.exp that directory
766         entries are returned by readir() in any particular order
768         * NEWS, configure.in, doc/find.texi, xargs/testsuite/Makefile.am,
769         xargs/testsuite/inputs/helloworld.xi,
770         xargs/testsuite/xargs.gnu/delim-o.exp,
771         xargs/testsuite/xargs.gnu/delim-o.xo, xargs/xargs.1,
772         xargs/xargs.c: Added the --delimiter option to xargs, resolving
773         Savannah support request sr #102914
775         * ChangeLog, NEWS, configure.in: Released findutils-4.2.25
778 2005-09-02  James Youngman  <jay@gnu.org>
780         * doc/find.texi, find/find.1:
781         Improved documentation in response to Savannah bug #14376
783 2005-09-01  James Youngman  <jay@gnu.org>
785         * po/ChangeLog, ChangeLog: Updated with recent changes.
787         * locate/locate.c: Removed unused struct stringbuf.soffs.
789         * doc/find.texi: Typo fix from Jim Meyering (trivial change)
791 2005-09-01  Jim Meyering  <jim@meyering.net>
793         * locate/locate.c (struct stringbuf) [soffs]: Remove unused member.
794         (locate): Remove initialization, too.
796 2005-09-01  James Youngman  <jay@gnu.org>
798         * doc/find.texi: Typo fix from Jim Meyering (trivial change)
800 2005-08-30  James Youngman  <jay@gnu.org>
802         * find/defs.h, find/find.c, find/fstype.c, find/pred.c:
803         Attempted fix for compilation when AFS is #defined
805 2005-08-13  James Youngman  <jay@gnu.org>
807         * find/find.1: Remind the user to quote the pattern argument to -iname.
809 2005-08-12  James Youngman  <jay@gnu.org>
811         * NEWS: Corrected typo.
813 2005-08-09  James Youngman  <jay@gnu.org>
815         * NEWS: Indicate that regexprops.texi is built on Cygin now that
816         Savannah bug #14025 has been fixed.
818         * lib/Makefile.am, lib/regexprops.c: Fixed compilation failure on
819         Cygwin - Savannah Bug #14025 (tiny change, three lines), reported
820         and fixed by Eric Blake
822         * find/testsuite/Makefile.am,
823         find/testsuite/find.posix/sv-bug-14070.exp,
824         find/testsuite/find.posix/sv-bug-14070.xo: Added new test case for
825         SourceForge bug #14070
827         * find/testsuite/find.posix/sv-bug-14070.exp,
828         find/testsuite/find.posix/sv-bug-14070.xo: New file.
830         * find/defs.h, find/ftsfind.c, find/pred.c, find/util.c:
831         Ensure we can still build with --enable-debug
833         * find/testsuite/config/unix.exp,
834         find/testsuite/find.gnu/execdir-one.exp,
835         find/testsuite/find.gnu/execdir-root-only.exp,
836         find/testsuite/find.gnu/sv-bug-12230.exp: If . is on $PATH,
837         indicate that the -execdir tests cannot be carried out, as opposed
838         to indicating that those tests fail
840 2005-08-07  James Youngman  <jay@gnu.org>
842         * NEWS: Indicated that some test suite files have been renamed.
844         * xargs/testsuite/Makefile.am, xargs/testsuite/inputs/eof.xi,
845         xargs/testsuite/inputs/eof1.xi,
846         xargs/testsuite/xargs.sysv/eof.exp,
847         xargs/testsuite/xargs.sysv/eof.xo,
848         xargs/testsuite/xargs.sysv/eof1.exp,
849         xargs/testsuite/xargs.sysv/eof1.xo,
850         xargs/testsuite/xargs.posix/lc_l2.exp,
851         xargs/testsuite/xargs.posix/lc_l2.xo,
852         xargs/testsuite/xargs.sysv/l2.exp,
853         xargs/testsuite/xargs.sysv/l2.xo,
854         xargs/testsuite/xargs.sysv/lc_l2.exp,
855         xargs/testsuite/xargs.sysv/lc_l2.xo,
856         xargs/testsuite/xargs.posix/L2.exp,
857         xargs/testsuite/xargs.posix/l2.exp,
858         xargs/testsuite/xargs.posix/L2.xo,
859         xargs/testsuite/xargs.posix/l2.xo,
860         xargs/testsuite/xargs.posix/uc_L2.exp,
861         xargs/testsuite/xargs.posix/uc_L2.xo: Work around problems with
862         CVS clients on case-insentitive operating systems
864         * debian/Changelog: Removed Changelog file since changelog is the
865         one we should be using and having both files upsets Cygwin
866         systems which cannot tell the dirrerence between changelog and
867         Changelog
869         * find/ftsfind.c:
870         If DEBUG is defined, show the symbolic names fro fts_info values.
872         * find/ftsfind.c: Added additional diagnostics.
874 2005-08-01  James Youngman  <jay@gnu.org>
876         * ABOUT-NLS, INSTALL, Makefile.am, configure.in, depcomp,
877         doc/texinfo.tex, install-sh, missing, mkinstalldirs: By adding the
878         missing AM_GNU_GETTEXT_VERSION call, allowed autopoint to update
879         those files of which it has updated copies.
881         * po/Makevars.template, po/Makefile.in.in, po/findutils.pot:
882         Using AM_GNU_GETTEXT_VERSION, allowed gettext to update the infrastructure
884         * po/Rules-quot, po/boldquot.sed, po/en@boldquot.header, po/en@quot.header, po/insert-header.sin, po/quot.sed:
885         Files added by autopoint now that we are using AM_GNU_GETTEXT_VERSION
887         * find/testsuite/Makefile.am: Added find.gnu./perm-slash.{exp,xo}.
889 2005-07-31  James Youngman  <jay@gnu.org>
891         * find/testsuite/excuses.txt: We now have tests for -perm.
893         * NEWS, configure.in, find/parser.c,
894         find/testsuite/find.gnu/perm-slash.exp,
895         find/testsuite/find.gnu/perm-slash.xo: Fixed bug which caused find
896         -perm /440 to be treated the same as find -perm 440
898         * find/testsuite/Makefile.am:
899         Generic tests for -perm -NNN and -perm NNN
901         * find/testsuite/excuses.txt: New file - list of test cases that
902         still need to be written, along with excuses why they haven't been
903         done yet
905         * find/testsuite/find.posix/perm-vanilla.exp,
906         find/testsuite/find.posix/perm-vanilla.xo: Generic tests for -perm
907         -NNN and -perm NNN
909         * find/testsuite/find.gnu/inum.exp:
910         Ensure that the test would fail if -inum just always returned true
912         * find/testsuite/Makefile.am, find/testsuite/find.gnu/ilname.exp,
913         find/testsuite/find.gnu/ilname.xo,
914         find/testsuite/find.gnu/inum.exp, find/testsuite/find.gnu/inum.xo,
915         find/testsuite/find.gnu/lname.exp,
916         find/testsuite/find.gnu/lname.xo,
917         find/testsuite/find.gnu/xtype.exp,
918         find/testsuite/find.gnu/xtype.xo,
919         find/testsuite/find.posix/links.exp,
920         find/testsuite/find.posix/links.xo: New test cases for -ilname,
921         -inum, -lname, -xtype
923         * find/testsuite/Makefile.am, find/testsuite/find.gnu/delete.exp,
924         find/testsuite/find.gnu/delete.xo,
925         find/testsuite/find.gnu/iregex1.exp,
926         find/testsuite/find.gnu/iregex1.xo,
927         find/testsuite/find.gnu/regex1.exp,
928         find/testsuite/find.gnu/regex1.xo,
929         find/testsuite/find.gnu/regex2.exp,
930         find/testsuite/find.gnu/regex2.xo,
931         find/testsuite/find.gnu/samefile-copy.exp,
932         find/testsuite/find.gnu/samefile-copy.xo,
933         find/testsuite/find.gnu/samefile-link.exp,
934         find/testsuite/find.gnu/samefile-link.xo,
935         find/testsuite/find.gnu/samefile-same.exp,
936         find/testsuite/find.gnu/samefile-same.xo,
937         find/testsuite/find.gnu/samefile-symlink.exp,
938         find/testsuite/find.gnu/samefile-symlink.xo: Further test cases
940         * find/find.1: Indicate that -delete implies -depth (find.texi
941         already mentioned this).
943         * find/testsuite/Makefile.am:
944         Brought the list of .exp and .xo files in Makefile.am into sync with
945         the actual contents of the CVS repository.
947         * find/testsuite/Makefile.am, find/testsuite/find.gnu/depth-d.exp,
948         find/testsuite/find.gnu/depth-d.xo,
949         find/testsuite/find.gnu/empty.exp,
950         find/testsuite/find.gnu/empty.xo,
951         find/testsuite/find.gnu/execdir-one.exp,
952         find/testsuite/find.gnu/execdir-one.xo,
953         find/testsuite/find.gnu/false.exp,
954         find/testsuite/find.gnu/false.xo,
955         find/testsuite/find.gnu/follow-basic.exp,
956         find/testsuite/find.gnu/follow-basic.xo,
957         find/testsuite/find.gnu/gnu-or.exp,
958         find/testsuite/find.gnu/gnu-or.xo,
959         find/testsuite/find.gnu/gnuand.exp,
960         find/testsuite/find.gnu/gnuand.xo,
961         find/testsuite/find.gnu/gnunot.exp,
962         find/testsuite/find.gnu/gnunot.xo,
963         find/testsuite/find.gnu/iname.exp,
964         find/testsuite/find.gnu/iname.xo,
965         find/testsuite/find.gnu/ipath.exp,
966         find/testsuite/find.gnu/ipath.xo,
967         find/testsuite/find.gnu/iwholename.exp,
968         find/testsuite/find.gnu/iwholename.xo,
969         find/testsuite/find.gnu/path.exp, find/testsuite/find.gnu/path.xo,
970         find/testsuite/find.gnu/print0.exp,
971         find/testsuite/find.gnu/print0.xo,
972         find/testsuite/find.gnu/quit.exp, find/testsuite/find.gnu/quit.xo,
973         find/testsuite/find.gnu/true.exp, find/testsuite/find.gnu/true.xo,
974         find/testsuite/find.gnu/wholename.exp,
975         find/testsuite/find.gnu/wholename.xo,
976         find/testsuite/find.posix/and.exp,
977         find/testsuite/find.posix/and.xo,
978         find/testsuite/find.posix/exec-one.exp,
979         find/testsuite/find.posix/exec-one.xo,
980         find/testsuite/find.posix/grouping.exp,
981         find/testsuite/find.posix/grouping.xo,
982         find/testsuite/find.posix/name.exp,
983         find/testsuite/find.posix/name.xo,
984         find/testsuite/find.posix/posixnot.exp,
985         find/testsuite/find.posix/posixnot.xo,
986         find/testsuite/find.posix/prune.exp,
987         find/testsuite/find.posix/prune.xo: Added new test cases for many
988         of the actions and tests of find
990         * find/find.c (default_prints):
991         not a static function, so do not declare it as one.
993         * m4/withfts.m4: Fixed underquoted definition of FIND_WITH_FTS.
994         [this change is currently on a branch only]
996 2005-07-30  James Youngman  <jay@gnu.org>
998         * find/finddata.c, find/ftsfind.c, find/parser.c, find/pred.c,
999         find/util.c, m4/Makefile.am, m4/withfts.m4: Initial attempt to
1000         convert find to use gnulib's fts()
1001         [this change is currently on a branch only]
1002         
1003         * find/finddata.c, find/ftsfind.c, m4/withfts.m4: New file.
1004         [this change is currently on a branch only]
1005         
1006         * NEWS, configure.in, find/Makefile.am, find/defs.h, find/find.c,
1007         import-gnulib.sh: Initial attempt to convert find to use gnulib's
1008         fts() [this change is currently on a branch only]
1010 2005-07-29  James Youngman  <jay@gnu.org>
1012         * NEWS, configure.in
1013         Prepared for the release of findutils-4.2.24
1015         * ChangeLog: Updated with recent changes.
1017         * NEWS, find/find.1, doc/find.texi:
1018         Indicate that -ok and -okdir redirect stdin from /dev/null.
1020         * NEWS: Explain the directory link count change more throroughly.
1022         * NEWS: Fixed bug #13973.
1024         * find/pred.c (pred_fprintf): Fix Savannah bug #13973: Modify the
1025         handling of -printf %Y so that it no longer modifies stat_buf
1027         * find/testsuite/find.gnu/printf-symlink.exp,
1028         find/testsuite/find.gnu/printf-symlink.xo: Detect Savannah bug
1029         #13973: pollution of stat_buf by the %Y directive (trivial change
1030         from Andreas Metzler)
1032         * INSTALL, depcomp, doc/texinfo.tex, install-sh, missing, mkinstalldirs:
1033         Updated auxilliary files from the automake-1.9 distribution
1035         * configure.in:
1036         Introduce new Automake conditional, CROSS_COMPILING, true when we are corss compiling
1038         * find/find.c:
1039         If we decline to follow a symbolic link due to the safety check, issue a more self-explanatory warning message
1041         * lib/Makefile.am: Don't build regexprops if we are cross compiling
1043         * doc/Makefile.am:
1044         Depend on the regex.h file rather than the 'regexprops' binary,
1045         because the header file will always exist even if we are doing "make
1046         dist".  Otherwise "make distcheck" fails because it tries to rebuild
1047         find.info while the source-directory is read-only.
1049 2005-07-28  James Youngman  <jay@gnu.org>
1051         * find/find.1:
1052         Say "other users" rather than "rest of the world" when talking about
1053         Unix permissions.  Fixes Savannah bug #4246.
1055 2005-07-27  James Youngman  <jay@gnu.org>
1057         * xargs/testsuite/Makefile.am: Added new test case 'childfail.exp'.
1059         * doc/find.texi:
1060         Updated the description of the safe-dir-change operation to reflect
1061         what find now does on systems that lack O_NOFOLLOW.
1063         * NEWS, find/parser.c: Indicate in the output of find --version if
1064         the leaf optimisation is enabled or not
1066         * find/find.c: Fixed typo.
1068         * find/find.c: If the link count of a directory starts off less
1069         than two, disable the leaf optimisation for this directory.
1071 2005-07-26  James Youngman  <jay@gnu.org>
1073         * lib/regexprops.c: Further small corrections from Karl.
1075         * doc/find.texi:
1076         Reordered the sections in the manual to put the "Common Tasks" and
1077         "Worked Examples" chapters together.
1079         * configure.in, find/find.c: Allow the leaf optimisation to be
1080         disabled by default with the configure option
1081         --disable-leaf-optimisation
1083         * find/find.c: Removed old code for antuqie version of savedir().
1085         * lib/regextype.c: Put the syntaxes in alphabetical order.
1087         * lib/regexprops.c: Karl made some more readability suggestions.
1089 2005-07-24  James Youngman  <jay@gnu.org>
1091         * doc/Makefile.am: If the regexprops program has changed we should
1092         re-run it, since it will probably now produce different output
1094         * lib/regextype.h:
1095         Allow the caller to detect if one regex type is identical to another.
1097         * configure.in:
1098         Define the preprocessor macro FINDUTILS for that code int he lib/
1099         directory can be slightly more reusable.
1101         * lib/regextype.c:
1102         Allow the caller to detect if one regex type is identical to another.
1104         * lib/regexprops.c:
1105         Made Texinfo style corrections suggested by Karl Berry.
1107 2005-07-22  James Youngman  <jay@gnu.org>
1109         * xargs/testsuite/xargs.posix/childfail.exp, xargs/xargs.c: Fix
1110         Savannah bug #13878, in which xargs deals incorrectly with child
1111         failure, returning 0 when it should return 123
1113 2005-07-17  James Youngman  <jay@gnu.org>
1115         * find/find.1: (tiny change) Corrections by Greg Wooledge
1117 2005-07-16  James Youngman  <jay@gnu.org>
1119         * doc/find.texi: Updates following comments by Dave Gilbert.
1121         * NEWS: Corrected a typo.
1123         * doc/find.texi:
1124         Added in the example about updating an aggregate timestamp file.
1126 2005-07-15  James Youngman  <jay@gnu.org>
1128         * po/da.po: Updated Danish translation from translation project
1130 2005-07-14  James Youngman  <jay@gnu.org>
1132         * NEWS, doc/Makefile.am, doc/find.texi, lib/Makefile.am,
1133         lib/regexprops.c, lib/regextype.c, lib/regextype.h: Added
1134         --regextype and -regextype options to locate and find
1135         respectively, and documented these
1137         * doc/find.texi: We use GNU Emacs regexps by default now.
1139         * doc/find.texi:
1140         We require GNU sort in order for locate to handle newlines correctly,
1141         not just GNU find.
1143 2005-07-10  James Youngman  <jay@gnu.org>
1145         * doc/find.texi:
1146         Applied several documentation improvement patches from Aaron Hawley
1148         * ChangeLog, NEWS: Updated with recent changes.
1150         * NEWS: Recent gnulib changed have fixed -iregex
1152         * doc/find.texi, xargs/xargs.1:
1153         Tiny patch from Andreas Metzler: xargs -I is like xargs -i, but the latter is deprecated
1155 2005-07-06  James Youngman  <jay@gnu.org>
1157         * find/defs.h, find/find.c, find/parser.c, find/pred.c:
1158         Fixed Savannah bug #13650; programs run by -exec cannot read stdin
1160 2005-07-04  James Youngman  <jay@gnu.org>
1162         * NEWS: *** empty log message ***
1164         * doc/find.texi:
1165         Added a "Worked Examples" section.   It currently only contains a
1166         (long) example about deleting files.
1168         * .cvsignore: Some extra stuff to ignore.
1170 2005-07-03  James Youngman  <jay@gnu.org>
1172         * find/Makefile.am: Don't need regexprops.c really...
1174         * lib/regextype.c, lib/regextype.h:
1175         New files for selecting regex type based on a keyword
1177         * locate/locate.1: Documented the fact that we now use Emacs-style
1178         regexps, not POSIX EREs, for compatibility with find -regex.
1180         * lib/Makefile.am, locate/locate.c, doc/find.texi,
1181         find/Makefile.am, find/defs.h, find/find.1, find/find.c,
1182         find/parser.c: Fixed Savannah bug #13495: find now uses
1183         Emacs-style regexps by default
1185 2005-07-02  James Youngman  <jay@gnu.org>
1187         * configure.in, find/defs.h, find/fstype.c, find/parser.c,
1188         intl/dcigettext.c, lib/buildcmd.c, lib/listfile.c,
1189         lib/savedirinfo.c, locate/locate.c, xargs/xargs.c: Assume unistd.h
1190         is present - avoid using HAVE_UNISTD_H
1192 2005-07-01  Jim Meyering  <jim@meyering.net>
1194         With `-fprint F' or `-fprintf F', don't write diagnostics
1195         to F when stderr is closed.
1197         * find/parser.c: Include "stdio-safer.h".
1198         (open_output_file): Use fopen_safer, not fopen.
1199         * import-gnulib.sh (findutils_modules): Add stdio-safer.
1201 2005-07-01  James Youngman  <jay@gnu.org>
1203         * doc/find.texi:
1204         Aaron pointed out a potentially-confusing sentence.  I fixed it.
1206         * find/defs.h, find/find.1, find/find.c, find/parser.c,
1207         find/pred.c, find/util.c: Allow consistency-checking of the
1208         predicates, checking for example that actions all have side
1209         effects
1211 2005-06-29  James Youngman  <jay@gnu.org>
1213         * doc/find.texi: Applied patch from Aaron Hawley (Savannah patch
1214         #3751: Typos and small suggestions to find.texi)
1216 2005-06-27  James Youngman  <jay@gnu.org>
1218         * ChangeLog, locate/locate.c: Applied patch from Bas Van Gompel to
1219         move match counting into a (new) visitor function
1221         * NEWS, configure.in: No longer 4.2.23, as we're moving on now
1223 2005-06-24  Bas van Gompel  <patch-findutils.buzz@bavag.tmfweb.nl>
1225         * locate/locate.c (visit_count, visit_limit): New functions.
1226         (locate): Use visit_limit or visit_count. Simplify main loop.
1227         (main) Bail out early when limit is reached.
1229 2005-06-20  James Youngman  <jay@gnu.org>
1231         * xargs/xargs.c:
1232         Removed some code which had already been disabled via the preprocessor.
1234 2005-06-19  Dmitry V. Levin <ldv@altlinux.org>
1236         * lib/savedirinfo.c: Fix two compilation warnings (which would 
1237         prevent compilation if "-Wall -Werror" is in effect).
1238         
1239 2005-06-19  James Youngman  <jay@gnu.org>
1241         * ChangeLog: Indicate that we made (are making) a release.
1243         * ChangeLog, NEWS, configure.in: Preparing to release 4.2.23
1245         * doc/find.texi: Fixed Texinfo syntax error in previous change
1247         * doc/find.texi, xargs/xargs.1:
1248         Document the fact that the -i and -L options are currently
1249         incompatible (Savannah bug 13041).
1251         * locate/updatedb.1, locate/updatedb.sh: Fix Savannah bug 13411 -
1252         reject trailing slashes in updatedb's --prunepaths, bacsue these
1253         will never be matched
1255         * NEWS: Released findutils-4.2.23.
1257         * doc/find.texi, xargs/xargs.1:
1258         Document the fact that the -i and -L options are currently
1259         incompatible (Savannah bug 13041).
1261         * locate/updatedb.1, locate/updatedb.sh: Fix Savannah bug 13411 -
1262         reject trailing slashes in updatedb's --prunepaths, because these
1263         will never be matched.
1265 2005-06-18  Martin Buchholz (trivial patch applied by James Youngman)
1267         * find/defs.h, find/find.c, find/parser.c, doc/find.texi: Fix
1268         typos/spelling errors (mostly in source code comments).
1270 2005-06-18  Dmitry V. Levin  <ldv@altlinux.org>
1272         Additional documentation tweaks for -execdir/-okdir actions.
1273         * find/parser.c (parse_help): Mention -execdir and -ordir options.
1274         * doc/find.texi, find/find.1: Additionally document new options.
1275         
1276 2005-06-12  Bas van Gompel  <patch-findutils.buzz@bavag.tmfweb.nl>
1278         * locate/locate.c: Implement --all (-A).
1279         
1280         * NEWS, doc/find.texi, locate/locate.1: Document locate --all (-A)
1281         
1282 2005-06-12  James Youngman  <jay@gnu.org>
1284         * find/find.c, NEWS:
1285         Savannah bug #13381 (Debian bug 313081): if we have O_NOFOLLOW,
1286         safely_chdir() does not need to call stat().  However, process_dir()
1287         used to rely on using that stat information.  To work around this
1288         problem, there is now an output parameter in safely_chdir() which
1289         indicates if the stat buffer is valid.
1290         This bug has possible security implications.
1292         * find/find.1, doc/find.texi:
1293         Applied patch from Andreas Metzler, improving the wording for the
1294         documentation of the %k and %b format directives.  This patch does
1295         not require a copyright assignment as it consists of several
1296         copies of the same small wording change.
1298 2005-06-11  James Youngman  <jay@gnu.org>
1300         * find/find.1: Corrected spelling error 'writeable' to 'writable'.
1302         * find/find.1, locate/locate.1:
1303         Fixed Savannah bug #13363, typos in manpages (trivial change)
1305 2005-06-10  James Youngman  <jay@gnu.org>
1307         * find/find.c, lib/savedirinfo.c, lib/savedirinfo.h: Switch to a
1308         new scheme for saving directory entry data which is extensible to
1309         allow additional data to be saved.
1311 2005-06-09  James Youngman  <jay@gnu.org>
1313         * locate/testsuite/config/unix.exp:
1314         Use the new normalize_dir procedure throughout.
1316         * locate/testsuite/config/unix.exp: Move the normalisation into a
1317         procedure.  Don't rely on the "file normalize" command being
1318         available (it's new in Tcl 8.4).
1320 2005-06-08  James Youngman  <jay@gnu.org>
1322         * ChangeLog, NEWS, configure.in: Updated for recent changes
1324         * doc/find.texi:
1325         Explain that you should put the argument of -name in quotes.
1327         * find/find.1:
1328         Added a new "NON-BUGS" section pointing out things that look like bugs
1329         but are caused by mistakes or misunderstandings.
1331         * doc/find.texi, locate/locate.1: Applied Bas van Gompel's patch
1332         which allows the database to be read from stdin.
1334         * locate/locate.c:
1335         Read the database in by using the "visitor" pattern.  Modified file
1336         header comment to indicate that we no longer use the efficient
1337         algorith described in ;login:.  Emit an error message if the
1338         LOCATE_PATH variable implies that we should read stdin twice.
1339         Most of this code is from Bas van Gompel.
1341         * AUTHORS: Credit Bas van Gompel for his work on locate.
1343         * lib/printquoted.h: Appled patch from Bas - fixing compiler warning.
1345 2005-06-07  James Youngman  <jay@gnu.org>
1347         * ChangeLog, NEWS, configure.in: Updates prior to release
1349         * config.rpath: Added file required for 'make dist'
1351         * po/be.po, po/ca.po, po/da.po, po/de.po, po/el.po, po/eo.po,
1352         po/es.po, po/et.po, po/fi.po, po/findutils.pot, po/fr.po,
1353         po/ga.po, po/gl.po, po/hr.po, po/hu.po, po/id.po, po/it.po,
1354         po/ja.po, po/ko.po, po/lg.po, po/ms.po, po/nl.po, po/pl.po,
1355         po/pt.po, po/pt_BR.po, po/ro.po, po/ru.po, po/rw.po, po/sk.po,
1356         po/sl.po, po/sr.po, po/sv.po, po/tr.po, po/vi.po, po/zh_CN.po:
1357         updated the po files for release
1359         * xargs/testsuite/Makefile.am:
1360         Added in all the test files from Dmitry V. Levin.
1362 2005-06-08  Bas van Gompel  <patch-findutils.buzz@bavag.tmfweb.nl>
1364         * NEWS, locate/locate.1, doc/find.texi: Document usage of `-'
1365         to refer to stdin in database-path for locate.
1366         * locate/locate.c: Change prototype for visitors and processors
1367         throughout. Move reading the database and generating base_name
1368         into visitors. Allow `-' to refer to stdin in database-path.
1370         * lib/printquoted.h: Include stdio.h.
1372 2005-06-07  James Youngman  <jay@gnu.org>
1374         * COPYING, debian/copyright, depcomp, doc/texinfo.tex,
1375         find/defs.h, find/find.c, find/fstype.c, find/parser.c,
1376         find/pred.c, find/testsuite/config/unix.exp, find/tree.c,
1377         find/util.c, import-gnulib.sh, intl/Makefile.in,
1378         intl/bindtextdom.c, intl/config.charset, intl/dcgettext.c,
1379         intl/dcigettext.c, intl/dcngettext.c, intl/dgettext.c,
1380         intl/dngettext.c, intl/explodename.c, intl/finddomain.c,
1381         intl/gettext.c, intl/gettext.h, intl/gettextP.h,
1382         intl/hash-string.h, intl/intl-compat.c, intl/l10nflist.c,
1383         intl/libgettext.h, intl/libgnuintl.h, intl/loadinfo.h,
1384         intl/loadmsgcat.c, intl/localcharset.c, intl/locale.alias,
1385         intl/localealias.c, intl/ngettext.c, intl/plural.c, intl/plural.y,
1386         intl/ref-add.sin, intl/ref-del.sin, intl/textdomain.c,
1387         lib/buildcmd.c, lib/buildcmd.h, lib/extendbuf.c, lib/extendbuf.h,
1388         lib/forcefindlib.c, lib/listfile.c, lib/listfile.h,
1389         lib/modetype.h, lib/nextelem.c, lib/nextelem.h, lib/printquoted.c,
1390         lib/printquoted.h, lib/qmark.c, lib/savedirinfo.c,
1391         lib/savedirinfo.h, lib/strspn.c, lib/wait.h, lib/waitpid.c,
1392         locate/bigram.c, locate/code.c, locate/frcode.c, locate/locate.c,
1393         locate/locatedb.h, locate/testsuite/config/unix.exp,
1394         locate/updatedb.sh, missing, po/fetch-po-files,
1395         xargs/testsuite/config/unix.exp, xargs/xargs.c: 
1396         Updated the FSF's postal address
1398         * ChangeLog: Corrected Bas's email address.
1400         * locate/locate.c: Updated copyright years.
1402 2005-06-07  Bas van Gompel  <patch-findutils.buzz@bavag.tmfweb.nl>
1404          * locate/locate.c: Fold case once, only when needed.
1405   
1406 2005-06-07  James Youngman  <jay@gnu.org>
1408         * NEWS: Updated with recent changes.
1410         * mdate-sh: Use the mdate-sh from automake
1412         * find/parser.c, find/pred.c, find/tree.c, find/util.c,
1413         lib/Makefile.am, lib/forcefindlib.c, lib/listfile.c,
1414         lib/listfile.h, locate/code.c, locate/locate.c, find/defs.h,
1415         find/find.c: Fix Savannah bug #13324: Fix compiler warnings for
1416         GCC-3.4
1418         * locate/locate.c:
1419         Fixed Savannah bug #13325: Quoting of output filenames in locate
1420         should match find.
1422         * find/parser.c:
1423         Fixed Savannah bug #13319: C9X-ism in parser.c (declaration after
1424         statements).
1426         * find/pred.c, lib/Makefile.am, lib/listfile.c, lib/nextelem.c,
1427         lib/printquoted.c, lib/printquoted.h, lib/qmark.c, NEWS,
1428         doc/find.texi, find/defs.h, find/find.1, find/parser.c: Fixed
1429         Savannah bug #13303, find should filter out non-printable
1430         characters if outputting to tty
1432 2005-05-30  James Youngman  <jay@gnu.org>
1434         * locate/locate.c: rename new_locate() to locate() since
1435           old_locate() has gone the way of the dodo.
1437 2005-05-29  Bas van Gompel  <patch-findutils.buzz@bavag.tmfweb.nl>
1439         Add a ``--print'' (``-p'') option. (to cancel side-effects of -c/-S)
1440         Allow ``--statistics'' in combination with non-options.
1441         * doc/find.texi: Add documentation for locate --print (-p), and the
1442         use of non-options with --statistics.
1443         * locate/locate.1: ditto.
1444         * locate/locate.c: Read each database only once.
1446 2005-05-23  Paul Eggert  <eggert@cs.ucla.edu>
1448         Adjust to recent gnulib changes.
1449         * import-gnulib.sh: Get config.rpath from gnulib/build-aux,
1450         not gnulib/config.
1451         * find/parser.c (parse_perm): Ignore umask when parsing
1452         symbolic permissions.  Adjust to new modechange API.
1454 2005-05-16  James Youngman  <jay@gnu.org>
1456         * find/find.c, find/parser.c, find/pred.c, find/tree.c:
1457         Trivial change: don't use i18n support for debug-only messages
1459         * ChangeLog: Added ChangeLog entry crediting Dmitry
1461 2005-05-09  James Youngman  <jay@gnu.org>
1463         * find/parser.c:
1464         The previous change fixed Savannah bug #12999.  This change doesn't do
1465         anything, it's only intended to be a place to record the Savannah bug
1466         ID we've just fixed.
1468         * find/parser.c:
1469         Oops.  Initialise the variable which indicates which regex syntax to
1470         use.  We use POSIX basic regular expressions.
1472         * find/parser.c:
1473         Suggestion by Ed Avis: point out that "-name foo/bar" will almost
1474         always evaluate to false.   Suggest to the user what alternatives they
1475         might find useful.
1477 2005-05-02  James Youngman  <jay@gnu.org>
1479         * AUTHORS:
1480         Added Dimitry (his new test suite contribution required a copyright
1481         assignment).
1483 2005-05-03  Dmitry V. Levin
1485         * Added xargs test suite tests by Dmitry V. Levin, together with
1486           bugfixes which ensure that the tests pass.
1488 2005-04-18  James Youngman  <jay@gnu.org>
1490         * Added test suite tests for Bas van Gompel's changes.
1492 2005-04-18  Bas van Gompel  <patch-findutils.buzz@bavag.tmfweb.nl>
1494         * doc/find.texi: Document locate --non-existing (-E).
1495         * locate/locate.1: Ditto.
1496         * locate/locate.c: Implement --non-existing (-E).
1497    
1498 2005-04-04  James Youngman  <jay@gnu.org>
1500         * configure.in, import-gnulib.sh:
1501         We no longer need gnulib/m4/Makefile.am
1503         * po/vi.po: Updated Vietnamese translation
1505         * locate/updatedb.sh:
1506         Savannah bug #12491: Only use the "-s" option to "su" if it is
1507         supported.
1509 2005-04-01  James Youngman  <jay@gnu.org>
1511         * locate/locate.1, locate/updatedb.1, xargs/xargs.1: Trivial
1512         change from A Costa <agcosta@gis.net>, fixing typos in manual
1513         pages for xargs, locate and updatedb; fixes Savannah bug #12500,
1514         Debian bug #301934
1516 2005-03-22  James Youngman  <jay@gnu.org>
1518         * import-gnulib.sh: Include the new gnulib module stat-macros
1520         * configure.in:
1521         CVS code is (will shortly be) no longer identical to the 4.2.20 release
1523 2005-03-17  James Youngman  <jay@gnu.org>
1525         * configure.in: Preprare for release of 4.2.20.
1527         * NEWS: Updated prior to release of 4.2.20.
1529         * ChangeLog: Updated with recent changes.
1531         * THANKS: Thank Bas van Gompel, but only once.
1533         * THANKS: Thank Bas van Gompel and Aaron S. Hawley.
1535         * po/vi.po: Updated Vietnamese PO file
1537 2005-03-10  James Youngman  <jay@gnu.org>
1539         * po/nl.po: Updated Dutch PO file
1541 2005-03-08  Bas van Gompel  <patch-findutils.buzz@bavag.tmfweb.nl>
1543         * import-gnulib.sh: Re-enable creation of gnulib/m4/Makefile.am.
1545 2005-03-07  James Youngman  <jay@gnu.org>
1547         * Released findutils-4.2.19.
1549         * find/testsuite/find.posix/sizes.exp:
1550         Use 2>/dev/null instead of 2>&1, because Tcl understands the former
1551         but not the latter.
1553         * find/testsuite/Makefile.am: Also distribute sv-bug-12181.xo.
1555         * find/testsuite/Makefile.am: Distribute sv-bug-12181.
1557         * find/testsuite/Makefile.am: Distribute sv-bug-12230.
1559         * NEWS: Updated with new news.
1561         * ChangeLog: Brought up to date.
1563         * lib/buildcmd.c, find/testsuite/find.gnu/sv-bug-12230.exp: Fixed
1564         Savannah bug #12230, in which '-exec echo == {} +' is always run,
1565         even if there were no matched files.
1567 2005-03-06  James Youngman  <jay@gnu.org>
1569         * ChangeLog: Added latest changes.
1571         * po/pt.po, configure.in: Added Portuguese translation
1573 2005-03-04  James Youngman  <jay@gnu.org>
1575         * configure.in: Modernized the way we call AC_INIT and
1576         AM_INIT_AUTOMAKE
1578         * locate/locate.c, find/pred.c, find/find.c:
1579         Eliminated some compiler warnings
1581         * find/pred.c: Clarified the meaning of a comment.
1583         * find/testsuite/Makefile.am: Added sizes.exp, sizes.xo.
1585         * find/testsuite/find.posix/sizes.xo,
1586         find/testsuite/find.posix/sizes.exp: Added tests for -size
1587         predicate
1589 2005-03-03  James Youngman  <jay@gnu.org>
1591         * find/find.c:
1592         safely_chdir_lstat(): if we didn't end up in the right place, and then
1593         fchdir() fails, we can't return to the directory we started in.
1594         Therefore, issue a fatal error message and exit.
1596 2005-03-01  James Youngman  <jay@gnu.org>
1598         * find/find.c, find/testsuite/find.posix/sv-bug-12181.exp,
1599         find/testsuite/find.posix/sv-bug-12181.xo: Fixed SourceForge bug
1600         12181 (find -H symlink-to-dir reports 'Too many Symbolic links')
1601         and bug 12044 (find still hangs on dead NFS filesystems on
1602         Solaris)
1604 2005-02-28  James Youngman  <jay@gnu.org>
1606         * doc/find.texi: Typo: O_NOFOLLOW, not O_FOLLOW
1608         * import-gnulib.sh:
1609         Suggestion from Martin Buchholz; unset CDPATH to prevent "cd" echoing
1610         the new directory.
1612 2005-02-27  James Youngman  <jay@gnu.org>
1614         * README: Indicate how the reader can verify the release.
1616 2005-02-26  James Youngman  <jay@gnu.org>
1618         * po/sk.po, po/sl.po, po/sr.po, po/sv.po, po/tr.po, po/vi.po,
1619         po/zh_CN.po, po/be.po, po/ca.po, po/da.po, po/de.po, po/el.po,
1620         po/eo.po, po/es.po, po/et.po, po/fi.po, po/findutils.pot,
1621         po/fr.po, po/gl.po, po/hr.po, po/hu.po, po/id.po, po/it.po,
1622         po/ja.po, po/ko.po, po/lg.po, po/ms.po, po/nl.po, po/pl.po,
1623         po/pt_BR.po, po/ro.po, po/ru.po: Added new Vietnamese translation
1625         * configure.in: Added new Vietnamese translation.
1627 2005-02-25  James Youngman  <jay@gnu.org>
1629         * po/ga.po: Updated Irish po file
1631 2005-02-23  James Youngman  <jay@gnu.org>
1633         * Makefile.am: Fix Savannah bug #12064 - 'make distclean' deletes
1634         regex.c but should not.
1636         * find/testsuite/Makefile.am,
1637         find/testsuite/find.gnu/printf-h.exp,
1638         find/testsuite/find.gnu/printf-h.xo: Added test case for Savannah
1639         bug #12085 (-printf %h).
1641         * NEWS, doc/find.texi, find/find.1, find/pred.c:
1642         %h now expands to '.' instead of nothing.
1644 2005-02-22  James Youngman  <jay@gnu.org>
1646         * find/find.c:
1647         Fixed Savannah bug #12099 (misinterpretation of system versions
1648         leading to possible incorrect disabling of O_NOFOLLOW).  Reported by
1649         Dmitry V. Levin.
1651         * find/pred.c:
1652         For the %h format, don't bail out early as the format might contain
1653         something else too.
1655 2005-02-21  James Youngman  <jay@gnu.org>
1657         * find/find.c: Fixed accidental C99 dependency.
1659 2005-02-20  James Youngman  <jay@gnu.org>
1661         * po/be.po, po/ca.po, po/da.po, po/de.po, po/el.po, po/eo.po,
1662         po/es.po, po/et.po, po/fi.po, po/findutils.pot, po/fr.po,
1663         po/ga.po, po/gl.po, po/hr.po, po/hu.po, po/id.po, po/it.po,
1664         po/ja.po, po/ko.po, po/lg.po, po/ms.po, po/nl.po, po/pl.po,
1665         po/pt_BR.po, po/ro.po, po/ru.po, po/sk.po, po/sl.po, po/sr.po,
1666         po/sv.po, po/tr.po, po/zh_CN.po: Updated italian translation
1668         * doc/find.texi: Corrected a typo.
1670         * find/find.c:
1671         Read the mounted device list afer parsing the command line, so that
1672         for example "find --version" still works (in response to Savannah bug
1673         #12044).
1675         * configure.in: We've moved on from findutils-4.2.18.
1677 2005-02-19  James Youngman  <jay@gnu.org>
1679         * NEWS: Corrected the summary of the "find -depth" bug.
1681 2005-02-16  James Youngman  <jay@gnu.org>
1683         * NEWS, configure.in: Prepared for release of 4.2.18.
1685         * ChangeLog: Updated prior to release of 4.2.18.
1687         * find/testsuite/Makefile.am:
1688         Distribute the test cases for the recent "find -depth" bug.
1690         * find/testsuite/find.posix/depth1.exp, find/testsuite/find.posix/depth1.xo:
1691         Added test case for find -depth bug reported by Joseph S. Myers
1693         * find/find.c:
1694         If -depth is in effect, processing of the subdirectories invalidates
1695         the information in 'state'.  Therefore once we get around to
1696         processing the predicates, restore the information that we keep in
1697         'state' and in 'stat_buf'.
1699 2005-02-15  James Youngman  <jay@gnu.org>
1701         * ChangeLog: Updated with recent changes
1703         * find/find.1:
1704         Emphasise that -L causes find to recurse into subdirectories pointed
1705         to by symbolic links.
1707         * find/find.1:
1708         Patch to find.1 from Aaron Hawley <Aaron.Hawley@uvm.edu>:
1710         * Notes about -H actually apply to -L.
1711         * Said paragraph is duplicated two paragraphs later.
1712         * Typos: nno, ibmue, surrpounding
1714 2005-02-15  Aaron Hawley  <Aaron.Hawley@uvm.edu>
1716         * find/find.1: Notes about -H actually apply to -L.  Said
1717         paragraph is duplicated two paragraphs later.  Also typos: nno,
1718         ibmue, surrpounding
1720 2005-02-13  James Youngman  <jay@gnu.org>
1722         * find/find.1: Miscellaneous small clarifications and improvements.
1724         * doc/find.texi: Added Info nodes and menus under "Changing the
1725         Current Working Directory" so that it doesn't generate such a huge
1726         Info page.
1728         * find/find.c: Parenthesise #if defined(...).
1730 2005-02-13  Dmitry V. Levin  <ldv@altlinux.org>
1731         
1732         * find/find.c: remove test code snippet (time(NULL) was used to
1733         place a marker for spotting with strace(), but was not actually
1734         needed).
1736         * find/find.c (safely_chdir_nofollow): must not fall back on
1737         safely_chdir_lstat() because that will expose it to race condition
1738         exploits, making it pointless.
1740         * find/find.c (safely_chdir_lstat): Move
1741         complete_pending_execdirs() up into safely_chdir(), because we
1742         need to do that in either case.
1744 2005-02-12  James Youngman  <jay@gnu.org>
1746         * configure.in, doc/find.texi, find/defs.h, find/find.c,
1747         find/parser.c: Fix for Savannah bug #11879, that
1748         init_mounted_dev_list() causes find to hang on systems which are
1749         clients to dead NFS servers
1751 2005-02-10  James Youngman  <jay@gnu.org>
1753         * doc/find.texi: Talk about the problem where find will not work
1754         if you have a filesystem mounted from an unresponsive NFS server.
1756 2005-02-09  James Youngman  <jay@gnu.org>
1758         * find/find.1: Indicate that $TZ affects from printf-format
1759         results, and add extra cross-references in the SEE ALSO section.
1761 2005-02-08  James Youngman  <jay@gnu.org>
1763         * xargs/testsuite/Makefile.am: Distribute the .xe files also.
1765         * Makefile.am: Check that we have the right number of .xe files in
1766         the distribution also.
1768         * ChangeLog, NEWS, configure.in
1769         Preparing to release findutils-4.2.17
1771 2005-02-07  James Youngman  <jay@gnu.org>
1773         * find/testsuite/config/unix.exp: Re-sort the .xo file using the
1774         calling user's locale, because our 'pre-sorted' .so output file
1775         may not be sorted with the same collating order as 'sort' used to
1776         order the output of "find.  Bug spotted by Vin Shelton and Dimitry
1777         V. Levin.
1779         * find/testsuite/Makefile.am:
1780         New test, find/testsuite/find.gnu/follow-arg-parent-symlink.exp.
1782         * find/testsuite/find.gnu/follow-arg-parent-symlink.exp,
1783         find/testsuite/find.gnu/follow-arg-parent-symlink.xo, find/find.c:
1784         Fix for starting point /foo/bar/baz where bar is a symlink but baz
1785         is not - we should chdir into bar there even if it is a symbolic
1786         link
1788 2005-02-07  James Youngman  <jay@gnu.org>
1790         * find/testsuite/Makefile.am:
1791         New test, find/testsuite/find.gnu/follow-arg-parent-symlink.exp.
1793         * find/testsuite/find.gnu/follow-arg-parent-symlink.exp,
1794         find/testsuite/find.gnu/follow-arg-parent-symlink.xo, find/find.c:
1795         Fix for starting point /foo/bar/baz where bar is a symlink but baz
1796         is not - we should chdir into bar there even if it is a symbolic
1797         link
1799 2005-02-06  James Youngman  <jay@gnu.org>
1801         * doc/find.texi:
1802         -size: Clarification - -size gives a result consistent with 'wc -c'
1803          for example.
1805         * Makefile.am, find/testsuite/Makefile.am,
1806         find/testsuite/find.gnu/execdir-root-only.exp,
1807         find/testsuite/find.gnu/execdir-root-only.xo,
1808         locate/testsuite/Makefile.am, xargs/testsuite/Makefile.am:
1809         dist-hook: Ensure that we distribute all the .po files and all the
1810         testsuite files
1812         * po/pl.po: Updated Polish translation from TP website
1814 2005-02-05  Dmitry V. Levin  <ldv@altlinux.org>
1816         * find/parser.c, find/pred.c: Additional tweaks for
1817         -execdir/-okdir actions.
1818         
1819         * find/parser.c (new_insert_exec_ok): Disable ignore_readdir_race
1820         for -execdir/-okdir.
1821         
1822         * find/pred.c (pred_execdir, pred_okdir): Use state.rel_pathname
1823         instead of basename(pathname).  Do not add "./" prefix for
1824         absolute pathnames.
1825         
1826         * find/find.c (process_top_path): Treat "/" similarly to ".".
1828         * xargs/testsuite/xargs.posix/savannah-11865.exp,
1829         xargs/testsuite/xargs.posix/savannah-11865.xo, xargs/xargs.c:
1830         Fixed Savannah bug #11866 (not resetting number of used chars in
1831         the command buffer) - reported by Dimitry V. Levin
1833 2005-02-05  James Youngman  <jay@gnu.org>
1835         * THANKS:
1836         Added thanks for Dimitry - has produced many patches, bugfixes and
1837         suggestions.
1839         * find/pred.c:
1840         Fixed Savannah bug #11866: typo in pred_okdir() renders it useless
1842         * find/pred.c:
1843         Savannah bug #11861: undefined symbol 'basename' on IRIX 5.3
1845         * NEWS, configure.in, po/be.po, po/ca.po, po/el.po, po/eo.po,
1846         po/fi.po, po/ga.po, po/hr.po, po/hu.po, po/ja.po, po/lg.po,
1847         po/ms.po, po/ro.po, po/sl.po, po/sr.po, po/zh_CN.po: Added new
1848         translations
1850         * ChangeLog: Updated from CVS prior to release of 4.2.16.
1852         * po/ChangeLog: Updated from CVS.
1854         * NEWS, configure.in: Preparing to release 4.2.16
1856         * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot,
1857         po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po,
1858         po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sl.po, po/sv.po,
1859         po/tr.po: make update-po prior to 'make distcheck'
1861         * po/fetch-po-files: This is the first version we actually used.
1863         * find/find.c: process_top_path() fixed compilation warning.
1865         * find/find.c: process_top_path(): avoid processing this item if
1866         we can't chdir to the basename of the named file.
1868         * lib/Makefile.am: Always build forcefindlib.c
1870         * locate/locate.c: Say 'base name' rather than 'basename' in comments
1872         * find/pred.c, find/find.c: process_top_path(): Proper bugfix for
1873         correct handling of items at depth 0 (i.e. specified on the
1874         command line) - do an extra chdir to ensure that we're in the
1875         directory containing the item before calling process_path().
1876         Hnece also undo the previous 'quick fix' for the same problem
1878         * doc/find.texi:
1879         -execdir no longer has to treat anything as special, even at depth 0.
1881 2005-02-03  James Youngman  <jay@gnu.org>
1883         * doc/find.texi, find/pred.c: When state.curdepth is 0, our
1884         working directory is not the directory containing the file we are
1885         processing.
1887 2005-02-02  James Youngman  <jay@gnu.org>
1889         * find/pred.c:
1890         To allow compilation on cygwin, use base_name(), not basename().
1893 2005-02-01  James Youngman  <jay@gnu.org>
1895         * ChangeLog: Updated from CVS log.
1897 2005-01-31  James Youngman  <jay@gnu.org>
1899         * find/find.c, lib/nextelem.c, lib/nextelem.h, locate/code.c,
1900         locate/frcode.c, locate/testsuite/config/unix.exp,
1901         xargs/testsuite/config/unix.exp, xargs/xargs.c: Updated/corrected
1902         the email address for David MacKenzie, one of the original authors
1903         of findutils
1905         * doc/Makefile.am: The HTML version of the manual generated for
1906         the GNU project website has each node in a separate file, not each
1907         chapter in a separate file; adjust filenames accordingly
1909         * find/parser.c, find/pred.c, lib/savedirinfo.c:
1910         Removed some unused variables (patch from Dmitry V. Levin)
1912         * find/find.c:
1913         Patch from Dmitry V. Levin <ldv@altlinux.org>: Add subfs to the list
1914         of filesystems which are likely to be automounted.
1916         * m4/findlib.m4: Corrected typo (pointed out by Dmitry V. Levin).
1918         * find/testsuite/config/unix.exp,
1919         find/testsuite/find.gnu/name-period.xo,
1920         find/testsuite/find.gnu/posix-dflt.xo,
1921         find/testsuite/find.gnu/posix-h.xo,
1922         find/testsuite/find.gnu/posix-l.xo,
1923         find/testsuite/find.gnu/printf.exp,
1924         find/testsuite/find.gnu/printf.xo: Systems differ in the order in
1925         which filenames are returned by readdir.  Hence sort the output of
1926         'find' before comparing against the expected-output file.  We
1927         therefore also have the lines in the .xo files ready-sorted.
1929 2005-01-30  James Youngman  <jay@gnu.org>
1931         * doc/Makefile.am:
1932         Added rules for extra targets that we buld to update the web site.
1934 2005-01-29  James Youngman  <jay@gnu.org>
1936         * configure.in: No longer version 4.2.15 - we've changed the manual.
1938         * doc/find.texi:
1939         Clarified the txt about adding extra tests with post-processing via
1940         xargs, and recommend -execdir instead for security reasons.
1942         * doc/find.texi: Patch from Karl Berry:
1943         - more entries for the dir file
1944         - use @copying so the copyright ends up in the HTML etc. output.
1945           (This is the only really important change.)
1946         - put @contents after the title page, for conventional toc location.
1947         - use @ifnottex to wrap the Top node instead of @ifinfo, for the sake of
1948           HTML output, etc.
1950         * NEWS, configure.in, po/da.po, po/de.po, po/es.po, po/et.po,
1951         po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po,
1952         po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po,
1953         po/sv.po, po/tr.po: Prepared to release findutils-4.2.15
1955         * ChangeLog: Updated from CVS log.
1957 2005-01-28  James Youngman  <jay@gnu.org>
1959         * configure.in:
1960         Make --enable-d_type-optimization and --enable-d_type-optimisation
1961         both work.
1963         * configure.in: Assume --enable-d_type-optimisation by default
1965         * find/parser.c: Indicate which features are enabled/disabled
1967         * locate/testsuite/config/unix.exp:
1968         Clean up the files left behind by the locate_textonly test
1970 2005-01-27  James Youngman  <jay@gnu.org>
1972         * doc/find.texi: Documented --regex.
1974         * NEWS, locate/locate.1, locate/locate.c, locate/testsuite/Makefile.am, locate/testsuite/config/unix.exp, locate/testsuite/locate.gnu/regex1.exp:
1975         Implemented locate --regex - but needs documenting in Texinfo manual.
1977 2005-01-25  James Youngman  <jay@gnu.org>
1979         * configure.in: Bumped version no.
1981         * doc/find.texi:
1982         Document --mmap and --stdio as being synonyms of -m and -s.
1984         * locate/locate.1:
1985         Document --mmap and --stdio as synonyms of -m and -s.
1987         * locate/locate.c:
1988         Document -m and -s (both no-ops) in the usage message.
1990         * doc/find.texi, locate/locate.1: Document -m and -s as no-ops.
1992         * ChangeLog: Updated for release of findutils-4.2.14.
1994         * 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:
1995         Preparing to release findutils-4.2.14
1997 2005-01-25  James Youngman  <jay@gnu.org>
1999         * NEWS, configure.in, po/da.po, po/de.po, po/es.po, po/et.po,
2000         po/findutils.pot, po/fr.po, po/gl.po, po/id.po, po/it.po,
2001         po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po,
2002         po/sv.po, po/tr.po: Preparing to release findutils-4.2.14
2004 2005-01-24  James Youngman  <jay@gnu.org>
2006         * Makefile.am: Work around the fact that automake-1.7 actually
2007         works, and correctly distributes regex.c; hence dist-hook should
2008         only copy gnulib/lib/regex.c if this has not already been done.
2010         * find/defs.h, find/find.c, find/pred.c,
2011         find/testsuite/Makefile.am,
2012         find/testsuite/find.gnu/printf-symlink.exp,
2013         find/testsuite/find.gnu/printf-symlink.xo,
2014         find/testsuite/find.gnu/xtype-symlink.exp,
2015         find/testsuite/find.gnu/xtype-symlink.xo: Fixes for -xtype and
2016         -printf %Y, which had been the wrong way around.
2018         * NEWS: Avoid including the find.gnu subdirectory in the
2019         distributed file more than once
2021         * locate/locate.c:
2022         Move the printing of the statistics into a new function, print_stats()
2024         * find/testsuite/Makefile.am: Avoid including the find.gnu
2025         subdirectory in the distributed file more than once
2027         * import-gnulib.sh:
2028         We need the regex module anyway, to allow compilation on Solaris
2030 2005-01-23  James Youngman  <jay@gnu.org>
2032         * configure.in:
2033         Invoke gl_INCLUDED_REGEX directly to ensure successful compilation on
2034         systems like Solaris, which lacks those functions in libc (fixes GNU
2035         Savannah bug #11710).
2037         * locate/locate.1: -S is a synonym for --statistics
2039         * doc/find.texi: Documented the new -H, -L and -P options.
2041         * locate/locate.1, locate/locate.c: Implement options -L
2042         (default), -H and -P, which mean the same things as for find,
2043         except for the fact that the default is -L rather than -P
2045         * find/find.1: Corrected definition of the exit status for -quit.
2047         * find/find.c, find/pred.c: If DEBUG_STAT is set, issue a debug
2048         message when we call chdir() so that we can figure out what is
2049         actually being stat()ed
2051         * locate/updatedb.sh:
2052         Removed spurious newline from help message (bug report from Karl
2053         Berry).
2055         * po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot,
2056         po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po,
2057         po/pl.po, po/pt_BR.po, po/ru.po, po/sk.po, po/sv.po, po/tr.po,
2058         Makefile.am, NEWS, configure.in, find/defs.h, find/find.c,
2059         find/parser.c, find/pred.c, find/tree.c, find/util.c,
2060         import-gnulib.sh, lib/savedirinfo.c: Merged the d_type
2061         optimisation code; this is disabled by default, and can be enabled
2062         with 'configure --enable-d_type-optimisation'
2064         * NEWS:
2065         Updated optimisation NEWS item to indicate the effect on runtime.
2067 2005-01-22  James Youngman  <jay@gnu.org>
2069         * NEWS, configure.in: Prepare for release of findutils-4.2.12
2071         * ChangeLog: Brought up to date with recent changes.
2073         * Makefile.am, import-gnulib.sh, po/Makefile.in.in, po/Makevars,
2074         po/da.po, po/de.po, po/es.po, po/et.po, po/findutils.pot,
2075         po/fr.po, po/gl.po, po/id.po, po/it.po, po/ko.po, po/nl.po,
2076         po/pl.po, po/pt_BR.po, po/remove-potcdate.sin, po/ru.po, po/sk.po,
2077         po/sv.po, po/tr.po: Switch to using the gnulib gettext module, to
2078         ensure that 'make distcheck' works with current xgettext,
2079         autoconf, etc.
2081         * find/testsuite/config/unix.exp:
2082         Oops, we do need to clean up after all.
2084 2005-01-21  James Youngman  <jay@gnu.org>
2086         * xargs/testsuite/Makefile.am: Added name of missing input file.
2088         * find/testsuite/Makefile.am:
2089         Distribute a few files that we had forgotten about
2091         * xargs/testsuite/Makefile.am: Added some missing files.
2093         * lib/Makefile.am: Also need buildcmd.h.
2095         * xargs/testsuite/Makefile.am: Fixed a typo.
2097         * NEWS: Indicate the d_type performance improvement
2099 2005-01-18  James Youngman  <jay@gnu.org>
2101         * lib/savedirinfo.h: Added on d_type_optimisation also
2103         * lib/savedirinfo.c: Added on branch d_type_optimisation also.
2105         * find/pred.c: Added assert that we actually know the file type by
2106         the time pred_type() is called
2108         * find/find.c: Always initialise state.have_stat = false when
2109         starting to work with a new file
2111 2005-01-17  James Youngman  <jay@gnu.org>
2113         * ChangeLog: Brought up to date with recent changes.
2115         * NEWS: Documented the changes so far.
2117         * find/testsuite/find.gnu/exec-many-rtn-success.xo:
2118         Expected output for exec-many-rtn-success.exp
2120         * find/find.1:
2121         Indicate that -quit still ensures that pending commands are invoked
2123         * doc/find.texi:
2124         Indicate that -quit still causes partial command lines to be invoked,
2125         but there are some types of fatal error which leave such commands
2126         uninvoked.
2128         * find/defs.h, find/find.c, find/pred.c, find/testsuite/Makefile.am, find/testsuite/config/unix.exp:
2129         Fixed savannah bug  #11625 Wrong return status for -exec ... \; when command fails; also execute any pending commands when doing -quit
2131         * 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:
2132         Various test cases for succeeding and failing forms of -exec \; and -exec {} +
2134         * find/pred.c: "-exec ... {} +" always returns "true".
2136         * configure.in, find/defs.h, find/find.c, find/parser.c, find/pred.c, find/tree.c, find/util.c:
2137         Implemented d_type optimisation but not working correctly, so currently disabled
2139         * lib/savedirinfo.h, lib/savedirinfo.c:
2140         Initial implementation (temporarily disabled).
2142         * lib/Makefile.am: Resolved merge conflict.
2144         * lib/Makefile.am:
2145         Make sure nextelem.h is included in the list of sources.
2147         * find/parser.c, lib/nextelem.c, lib/nextelem.h, locate/locate.c:
2148         Use prototypes for next_element() to make sure it is called correctly.
2150 2005-01-16  James Youngman  <jay@gnu.org>
2152         * find/find.c, find/pred.c:
2153         When completing incomplete multiple execs, use 'eval_tree' not 'predicates'
2155         * lib/buildcmd.c:
2156         Oops, initialise state->cmd_initial_argv_chars to zero.
2158         * find/find.1:
2159         Document the way that -execdir and -okdir will refuse to wqork if ">"
2160         is on $PATH.  Also document -okdir in the manpage.
2162         * find/parser.c:
2163         -execdir and -okdir are insecure if $PATH includes the current
2164          directory, and so they refuse to work if the user has done that.
2166         * find/pred.c:
2167         Oops; for -exec ... {} +, pass arguments to bc_push_arg() in the right
2168         order.   Problem spotted by Geoff Clare.
2170         * TODO: Removed items which have now been done.
2172         * lib/buildcmd.c: Tidied up formatting of arg list for bc_do_insert
2174 2005-01-15  James Youngman  <jay@gnu.org>
2176         * find/testsuite/find.gnu/printf.exp, find/testsuite/find.gnu/printf.xo:
2177         Added extra tests for more printf formats; patch by Andreas Metzler
2179         * locate/locate.c:
2180         Ensure that the new long options have a relevang short option too.
2181         Also bring usage message into line with the options actually
2182         supported.  Thanks to Bas van Gompel for noticing this defect.
2184         * locate/locate.1:
2185         Escape "-" in SYNOPSIS.  Thanks to Bas van Gompel for noticing this
2186         defect.
2188         * ChangeLog: Fixed typos.
2190         * doc/find.texi:
2191         Documented -execdir, and the "+" variants of -exec and -execdir.
2193         * find/find.1: Documented -execdir.
2195         * xargs/xargs.c:
2196         Updated to bring into line with bc_*() interface changes
2198         * ChangeLog: Updated with recent changes.
2200         * find/defs.h, find/parser.c, find/pred.c, lib/buildcmd.c, lib/buildcmd.h:
2201         Implemented -execdir and -okdir
2203         * find/defs.h, find/find.c, find/fstype.c, find/parser.c, find/pred.c, lib/buildcmd.c, lib/buildcmd.h, xargs/xargs.c:
2204         First working version of -exec ...+
2206 2005-01-09  James Youngman  <jay@gnu.org>
2208         * find/defs.h, find/find.c, find/parser.c, find/pred.c, lib/buildcmd.c, lib/buildcmd.h, xargs/xargs.c:
2209         Initial implementation of -exec ..{} +, but currently disabled since not yet working
2211 2005-01-08  James Youngman  <jay@gnu.org>
2213         * find/find.c: Fixed typo in comment.
2215         * find/defs.h, find/find.c, find/parser.c, find/pred.c:
2216         We now understand but do not implement -execdir (a *BSD invention, and a very useful security enhancement) and -okdir (the obvious companion to it)
2218         * locate/bigram.c, locate/code.c, locate/frcode.c, locate/locate.c, xargs/xargs.c:
2219         The GNU coding standard requires a space between the function name and
2220         its parenthesised argument list.
2222         * find/defs.h:
2223         Understand the -exec ... {} \+ construction (for multiple
2224         replacement).  No support yet.
2226         * locate/locate.1:
2227         Indicate that empty elements in the dbpath are treated as synonyms for
2228         the default database.
2230         * locate/locate.c:
2231         Support empty elements in the dbpath as synonyms for the default
2232         database.  These colons can be leading, trailing or in the middle of
2233         the string.  We no longer com,plain if the user does this.
2235         * lib/nextelem.c:
2236         If curdir_ok is 0 and an element is empty, return "" instead of NULL
2237         so that the caller knows to keep calling us.
2239         * find/find.c, find/pred.c, import-gnulib.sh, locate/bigram.c, locate/code.c, locate/frcode.c, locate/locate.c, xargs/xargs.c:
2240         Savannah bug 11517: find, xargs, locate, etc. should not hide write failures; patch from Jim Meyering
2242         * 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:
2243         changed .pot creation date
2245         * THANKS, AUTHORS: Take into account the FSF copyright-assignments list
2247         * doc/find.texi:
2248         If -quit is used, the exit value can be nonzero if errors have occurred.
2250         * find/find.1:
2251         Removed incorrect comment about -H, -P and -follow in HISTORY.
2253 2005-01-07  James Youngman  <jay@gnu.org>
2255         * lib/Makefile.am, lib/buildcmd.c, lib/buildcmd.h, xargs/xargs.c:
2256         Refactored xargs to use an external library function from the new file buildcmd.c
2258         * configure.in: no longer the same as the released 4.2.11 version
2260 2005-01-06  James Youngman  <jay@gnu.org>
2262         * xargs/testsuite/inputs/lines.xi, xargs/testsuite/xargs.posix/l2.exp, xargs/testsuite/Makefile.am:
2263         Tests for the -L option
2265         * xargs/testsuite/config/unix.exp: When a test fails, show the diffs
2267         * xargs/testsuite/xargs.posix/l2.exp, xargs/testsuite/xargs.posix/l2.xo:
2268         tests for the -l option
2270         * xargs/testsuite/Makefile.am: Added extra test files
2272         * xargs/testsuite/xargs.sysv/trace.exp, xargs/testsuite/xargs.sysv/trace.xe, xargs/testsuite/xargs.sysv/trace.xo:
2273         Added tests for the -t option
2275         * 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:
2276         Use a blanks-only input file for cases where there is supposed to be no output
2278         * xargs/testsuite/inputs/blank.xi: Initial version.
2280         * xargs/xargs.1:
2281         Corrected a typo; also indicate that it's impossible to use xargs
2282         securely due to the race condition.
2284 2005-01-05  James Youngman  <jay@gnu.org>
2286         * find/parser.c:
2287         Fixed Savannah bug 11495: fallthrough from -printf format processing
2288         from 'n' case to 'd' case.
2290 2005-01-03  James Youngman  <jay@gnu.org>
2292         * doc/find.texi:
2293         Oops.  Had duplicated an entire section.  Fortunately this was after
2294         @bye, so there was no adverse effect.
2296         * NEWS: locate -b.
2298         * doc/find.texi, locate/locate.1: document locate -S
2300         * configure.in, doc/find.texi, locate/locate.1, locate/locate.c:
2301         Support locate -b as a synonym for locate --basename
2303         * 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:
2304         distcheck
2306         * find/testsuite/config/unix.exp:
2307         Clean up (delete) find.out at at the end of the test.
2309         * NEWS, doc/find.texi, find/defs.h, find/find.1, find/find.c, find/parser.c, find/pred.c:
2310         Implemented the -samefile test for find
2312 2005-01-02  James Youngman  <jay@gnu.org>
2314         * ChangeLog: Updated with recent changes.
2316         * NEWS:
2317         Bas van Gompel: two-line patch to locate.c to make locate's -i and -w
2318         options work if -e is in use.
2320         * THANKS: Added Bas van Gompel.
2322         * locate/locate.c:
2323         Bas van Gompel: (visit_exists) when testing for the existence of the
2324         file, check the real filename [printname], not the case-converted
2325         filename [testname].  Really these argument names are badly chosen.
2327         * find/find.1, doc/find.texi:
2328         Improved the documentation for -perm, with plenty of examples,
2329         following a comment by Dan Jacobson that the comment "Symbolic modes
2330         use mode 0 as a point of departure" is baffling and unhelpful.
2332         * locate/locate.c:
2333         Suggestion and patch from Bas van Gompel: (new_locate): Fix display of
2334         negative compression ratios.
2336 2004-12-31  James Youngman  <jay@gnu.org>
2338         * NEWS: Brought up to date with recent changes
2340         * doc/find.texi:
2341         Don't need to nest the "race conditions with..." sections so deeply.
2343         * doc/find.texi: Corrected some spelling errors.
2345         * doc/find.texi: Added new "Security Considerations" chapter.
2347 2004-12-23  James Youngman  <jay@gnu.org>
2349         * locate/locate.c:
2350         Applied bugfixes from Bas van Gompel <patch-findutils.buzz@bavag.tmfweb.nl>.
2351         (lc_strcpy): Zero-terminate result.
2352         (add_visitor): Update lastinspector.
2353         (visit_substring_match_casefold): fix off-by-one error.
2354         (new_locate): Move visit_exists down to improve performance.
2355         (new_locate): Don't fold case when getting stats.
2357 2004-12-19  James Youngman  <jay@gnu.org>
2359         * doc/find.texi:
2360         Indicate that "cd /; find tmp -wholename /tmp" will never match anything.
2362         * doc/find.texi: Documented locate --statistics.
2364         * locate/locate.1: Documented the --statistics option.
2366         * locate/locate.c: Added support for the -S option.
2368 2004-12-12  James Youngman  <jay@gnu.org>
2370         * NEWS: Added a summary of the changes so far.
2372         * find/tree.c: Made some of the error messages more self-explanatory
2374         * find/pred.c: Print pointers with %p, not %x.
2376         * find/find.c: Moved option data into struct options.
2378         * find/find.1: clarifications
2380         * find/testsuite/find.gnu/comma.exp:
2381         Limit the amount of searching with maxdepth.
2383         * doc/find.texi: clearer description of how -prune works
2385         * ChangeLog: Removed duplicate entry.
2387         * configure.in, find/defs.h, find/find.c, find/fstype.c, find/parser.c, find/pred.c, find/tree.c, find/util.c:
2388         Separated ariables representing current state from variable representing option information
2390 2004-12-11  James Youngman  <jay@gnu.org>
2392         * find/parser.c: Readability improvement to the usage message.
2394         * find/find.c: Oops.  Fixed unmatched #endif.
2396         * find/testsuite/find.gnu/printf.exp, find/testsuite/find.gnu/printf.xo, THANKS, configure.in, find/testsuite/Makefile.am, find/testsuite/config/unix.exp:
2397         Fixed Savannah bug #11280
2399         * find/find.c:
2400         Remember to set path_length and curdepth in process_top_path().
2402 2004-12-07  James Youngman  <jay@gnu.org>
2404         * find/fstype.c: Use xstat() not stat() to examine things.
2406         * find/find.c: Explain why #ifdef EOVERFLOW.
2408         * find/find.c: EOVERFLOW is not defined on UNICOS.
2410         * NEWS: Corrected typo.
2412 2004-12-06  James Youngman  <jay@gnu.org>
2414         * ChangeLog: Brought up to date.
2416         * NEWS, configure.in: releasing 4.2.10
2418         * 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:
2419         distcheck
2421         * ChangeLog: Updated prior to release of finsutils-4.2.10.
2423         * import-gnulib.sh, find/fstype.c:
2424         Use gnulib's mountlist module instead of grokking it ourselves.
2426         * configure.in:
2427         Removed all the out-of-date cruft for grokking getmntent().
2429         * xargs/xargs.c:
2430         Added the -I and -L options; also -E takes an argument which is not optional.
2432 2004-12-05  James Youngman  <jay@gnu.org>
2434         * README, configure.in, find/defs.h, find/find.c, find/parser.c, find/pred.c, find/tree.c:
2435         Allow debug output to be turned on or off by saying --enable-debug on the configure command line
2437         * README:
2438         Removed disparaging (it is now, it probably wasn't then) comment about
2439         the production-readiness of Automake.
2441         * README: Qualify remarks about POSIX compliance.
2443         * NEWS, configure.in: Preparation for release 4.2.9
2445         * 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:
2446         distcheck
2448         * ChangeLog: Brought up to date.
2450         * find/find.c:
2451         Avoid duplicate error message when we cannot chdir() into a subdirectory.
2453         * THANKS: Added recent thankees.
2455         * NEWS:
2456         Brought up to date with respect to the current set of fixed bugs.
2458         * NEWS, xargs/xargs.1, xargs/xargs.c:
2459         Implemented POSIX options -L, -I and -E
2461 2004-12-03  James Youngman  <jay@gnu.org>
2463         * find/parser.c:
2464         -xdev is an option, not a test.   Fixes Savannah bug 11192.
2466         * find/find.1, xargs/xargs.1:
2467         Escape dashes with a backslash (for fix Savannah bug 11189).
2469 2004-11-27  James Youngman  <jay@gnu.org>
2471         * find/find.c:
2472         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.
2474         * find/find.1: "necessary" only has one "C".
2476         * find/find.1:
2477         If stat() fails with ELOOP, we issue a diagnostic message.
2479 2004-11-26  James Youngman  <jay@gnu.org>
2481         * find/find.c: Removed some unused code.
2483         * Makefile.am: Don't do anything in the 'intl' subdirectory
2485         * find/find.c:
2486         Enhanced safely_chdir() to the point where the test suite passes, and report infinite loops in the directory hierarchy
2488         * find/defs.h:
2489         belt and braces; ensure that SYMLINK_NEVER_DEREF has value zero
2491         * find/find.1:
2492         Describe our strategy for detecting and reporting infinite loops
2494 2004-11-24  James Youngman  <jay@gnu.org>
2496         * doc/find.texi:
2497         Updated the discussion of th error messages for findutils-4.2.8.
2499         * configure.in: Next version will be 4.2.9...
2501         * find/find.c:
2502         Don't issue a warning if we notice the mounting of a filesystem that's
2503         likely just to be an automounter.
2505         * doc/find.texi, find/find.1:
2506         Explain how rounding is performed for -atime and friends.
2508         * xargs/xargs.c:
2509         Once we collect enough arguments (for the value specified by the -n
2510         option) to do an exec(), do it immediaely instead of waiting for the
2511         next one to arrive.  This fixes Savannah bug #7340.
2513         * ChangeLog, configure.in, NEWS: Prepare to release 4.2.8.
2515         * NEWS: Updates for 4.2.8.
2517         * configure.in: check for  sys/types.h
2519         * find/find.c:
2520         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.
2522         * find/defs.h:
2523         Declarations of xmalloc() and friends belong in xalloc.h, not in defs.h
2525         * find/parser.c: avoid signed/unsigned warning, and #include xalloc.h
2527         * find/fstype.c:
2528         Changed to alloc get_mounted_devices() to compile on Solaris
2530         * README-CVS:
2531         Automake requires GNU m4, so point out that the reader needs that.
2533         * find/defs.h, find/find.c, find/fstype.c:
2534         When wd_sanity_check() fails, enumerate the mounted devices, rather than the mounted filesystem names
2536         * NEWS: prepare for 4.2.8
2538         * configure.in:
2539         Look for some Solaris headers which are used by get_mounted_devices()
2541         * lib/Makefile.am: don't build savedirtypes yet
2543         * 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:
2544         updated po files
2546         * m4/nullsort.m4:
2547         Avoid suprious output of the test data when the tests fail.
2549 2004-11-21  James Youngman  <jay@gnu.org>
2551         * 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:
2552         Messages changed again
2554         * ChangeLog, configure.in: Preparing to release 4.2.7.
2556         * NEWS: Updated for release of 4.2.7.
2558         * import-gnulib.sh: Also need canonicalize module.
2560         * find/find.c:
2561         When checking to see if a filesystem has changed state, use an
2562         absolute pathname.
2564         * configure.in:
2565         No need to pause to allow James to view his handiwork, it (allegedly)
2566         works now.
2568         * configure.in:
2569         Oops.  Check for setlocale() to re-enable the i18n support which was
2570         accidentally disabled in 4.2.5.
2572         * find/find.c:
2573         Check to see if the new directory is a transitioned mount point by
2574         using its ABSOLUTE name, if we can figure it out.
2576         * doc/find.texi:
2577         Added guidance on some of the error messages.  Not the most common
2578         ones, but the ones where the user might most benefit from some handy
2579         hints or an explanation of what is going on.
2581         * find/pred.c:
2582         Actually emit an error message if we fail to stat a symlink (for
2583         reasons other than nonexistence of the link and infinite loop).
2585         * doc/texinfo.tex: Updated texinfo.tex
2587         * NEWS, configure.in, find/find.c, find/fstype.c:
2588         Enable the 'Warning: filesystem XXX has recently been mounted' check on Solaris, which prevents it exiting fatally when traversing an automount mount point
2590         * 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:
2591         messages changed again
2593         * NEWS: Implemented xargs --arg-file.
2595         * doc/find.texi, xargs/xargs.1, xargs/xargs.c, NEWS:
2596         Implemented xargs --arg-file
2598         * find/find.c:
2599         Where a filesystem was recently (un)mounted, try togive its full name
2601         * configure.in:
2602         Try to avoid requesting -lsun if we don't seem to need it (e.g. on
2603         UNICOS where it is not present and trying to link against it produces
2604         a warning).
2606         * find/defs.h, lib/modetype.h: Guard against multiple inclusion
2608         * find/fstype.c:
2609         We now need <mntent.h> even if we are not using getmntent() to figure
2610         out the type of a filesystem, because wd_sanity_check() needs to
2611         enumerate the system mount points.
2613         * configure.in: Next release will be 4.2.7.
2615         * find/fstype.c:
2616         get_mounted_filesystems() should use getmntent() if that function is
2617         present, rather than just if configure didn't find anything better for
2618         filesystem_type_uncached() to use than that.
2620         * find/parser.c:
2621         If -delete is the only action on a file, don't assume the default
2622         -print action too.
2624         * 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:
2625         Preparation to release findutils-4.2.6.
2627         * find/Makefile.am, xargs/Makefile.am:
2628         Enable checking of support for --version and --help
2630         * locate/Makefile.am:
2631         Con't check command-line options for frcode, code or bigram
2633         * locate/code.c: Support --version and --help.
2635         * ChangeLog: *** empty log message ***
2637         * find/defs.h, find/find.c, find/fstype.c, lib/Makefile.am, lib/extendbuf.c, lib/extendbuf.h, NEWS:
2638         Avoid fatal error if automount mounts a filesystem on a directory because we chdir()ed into it
2640         * configure.in: Next release will be 4.2.6.
2642         * find/find.1:
2643         Indicate that the '-' flag does work for most fields.   Also provide
2644         an example of using the comma operator to traverse the filesystem just
2645         once but search for more than one thing.
2647         * doc/find.texi: Indicate that the '-' flag does work for most fields.
2649 2004-11-19  James Youngman <jay@gnu.org>
2651         * configure.in: releaseing findutils-4.2.5
2653         * find/testsuite/Makefile.am, locate/testsuite/Makefile.am, xargs/testsuite/Makefile.am:
2654         If a directory has no Makefile.am, omit it from the parent's DIST_SUBDIRS - automake-1.9 requires this
2656         * 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:
2657         updated by make distcheck
2659         * ChangeLog, NEWS: Updated for release 4.2.5.
2661         * find/find.1, doc/find.texi:
2662         Tell the reader that format flags may not work as they expect.
2664         * configure.in:
2665         Use the correct name for the macro gl_AC_TYPE_LONG_LONG (not
2666         jm_AC_TYPE_LONG_LONG).
2668 2004-11-15  James Youngman <jay@gnu.org>
2670         * import-gnulib.sh:
2671         Avoid test -e because not all systems are POSIX-compliant (bug
2672         #11005).  Also don't need regex module any more if we're not building
2673         in intl.
2675         * Makefile.am, configure.in:
2676         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
2678         * doc/find.texi:
2679         Use @ref not @xref for a reference at the beginning of a sentence.
2681         * intl/Makefile.in:
2682         Make sure gnulib.lib is on the #include path (Savannah bug #11002)
2684         * locate/locate.c:
2685         Use base_name instead of basename - fixes Savannah bug 11003.
2687         * configure.in, find/defs.h, find/find.c, find/parser.c, find/pred.c, locate/bigram.c, locate/locate.c:
2688         Don't need banner to emphasise the location of the call to jy_SORTZ
2690 2004-11-12  James Youngman <jay@gnu.org>
2692         * 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:
2693         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]
2695 2004-11-11  James Youngman <jay@gnu.org>
2697         * NEWS, doc/find.texi, find/defs.h, find/find.1, find/find.c, find/parser.c:
2698         Implemented -H and -L options.
2700         * find/util.c: Added in the -H and -L options on the usage message.
2702 2004-11-10  James Youngman <jay@gnu.org>
2704         * doc/find.texi, find/find.1, find/parser.c, find/pred.c:
2705         Implemented %M and %A+ format specifiers
2707         * doc/find.texi, find/find.1, find/parser.c, find/pred.c:
2708         Documented the fact that only %d and %m format specifiers honour the various formatting flags
2710         * xargs/xargs.c:
2711         Get the right number of bytes in a Kilobyte (hint: it's not 1048; that
2712         was a typo, honest :)
2714         * po/pl.po: Applied Polish translations
2716 2004-11-08  James Youngman <jay@gnu.org>
2718         * 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:
2719         distcheck changed the po files again
2721         * locate/Makefile.am:
2722         Make install-data-hook honour the setting of DESTDIR so that "make
2723         DESTDIR=/tmp/foo install" works and puts localstater in the right
2724         place.
2726         * configure.in: We're now working on findutils-4.2.5.
2728         * doc/find.texi, xargs/xargs.1:
2729         Point out that xargs -i only splits input items at newlines
2731         * ChangeLog: Indicate that we released 4.2.4.
2733         * ChangeLog: Updated for release 4.2.4
2735         * NEWS, configure.in: Prepare for release of 4.2.4.
2737         * NEWS: Brought up to date with latest changes.
2739         * 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:
2740         Turn warning messages off by default if stdin is not a tty; allow these to be controlled explicitly by options -warn and -nowarn
2742         * po/et.po, po/it.po: Updated translation files
2744         * po/sk.po: New translation file
2746         * po/fr.po, po/nl.po, po/tr.po: Updated translation files
2748         * configure.in: Added Slovak (sk) language.
2750         * xargs/xargs.c:
2751         Enforcing a lower limit on the value specified by -s makes the test
2752         suite fail.  Removed that lower limit.
2754         * locate/Makefile.am: Oops, multilocate doesn't exist yet.
2756         * NEWS: *** empty log message ***
2758         * doc/find.texi, locate/updatedb.1, locate/updatedb.sh:
2759         Added option --findoptions to updatedb
2761         * locate/Makefile.am, locate/locatedb.5, locate/updatedb.1, xargs/xargs.1:
2762         Fixed section numbers in manpage titles and cross-references
2764         * NEWS, doc/find.texi, xargs/xargs.1, xargs/xargs.c:
2765         Increased the default argument length and improved POSIX compliance of the handling of out-of-range values for the -s option
2767 2004-11-07  James Youngman <jay@gnu.org>
2769         * m4/Makefile.am:
2770         Added in the extra files we need to distribute, nullsort.m4
2771         order-bad.bin order-good.bin
2773         * doc/find.texi: Documented locate's --limit option
2775         * locate/locate.1, locate/locate.c:
2776         Implmented --limit and corrected the implementation of the -i option.
2778 2004-11-06  James Youngman <jay@gnu.org>
2780         * NEWS, doc/find.texi, locate/locate.1:
2781         Documented --wholename and --basename and updated the NEWS file
2783         * README-CVS:
2784         Give the autogen commands in a form that you can usefully cut and paste into a shell
2786         * NEWS: Options --null and --count) for locate
2788         * lib/nextelem.c:
2789         Don't return '.' for an empty path element, because the path we are splitting may not be intended to contain directories
2791         * configure.in: we're working on findutils-4.2.4 now
2793         * locate/Makefile.am: Substitute @SORT_SUPPORTS_Z@
2795         * doc/find.texi:
2796         Documented new locate option --null and newline handling
2798         * locate/locate.1, locate/locate.c:
2799         New locate options --null, --wholename, --basename, --count
2801         * locate/frcode.c, locate/updatedb.1, locate/updatedb.sh:
2802         correctly handle newlines in the file names
2804         * configure.in: Determine if sort -z works
2806         * m4/nullsort.m4, m4/order-bad.bin, m4/order-good.bin:
2807         jy_SORTZ: a macro to determine if the system has a sort command with a working -z option
2809 2004-11-01  James Youngman <jay@gnu.org>
2811         * NEWS: Fixed "find -printf '%H\n'".
2813         * find/find.c:
2814         Avoid segfault if -printf %H is used where the matched file was the default, unspecified starting point, the current directory
2816 2004-10-31  James Youngman <jay@gnu.org>
2818         * find/find.1, find/parser.c: NetBSD also supports -d.
2820         * find/find.1, doc/find.texi:
2821         Documented the behaviour of -daystart and -follow in more detail
2823         * find/parser.c: Corrected the usage message.
2825         * find/parser.c:
2826         When deciding whether to issue a warning about options following
2827         non-options, ignore any options whose position affects the tests
2828         (i.e. -daystart and -follow).
2830         * find/parser.c: -daystart is a positional option like -follow.
2832         * find/parser.c:
2833         Issue a warning message if an option is specified after a test or an
2834         action (because the user might have believed that the behaviour of the
2835         option is in some way conditional on the preceding tests).
2837         * locate/updatedb.sh:
2838         Oops; removed some test code that I shouldn't have checked in.
2840         * locate/updatedb.sh:
2841         Indicate that the old locate database format will shortly be unsupported.
2843         * doc/find.texi:
2844         Use @direntry instead of hard-coding START-INFO-DIR-ENTRY inside @ifinfo.
2846         * locate/updatedb.1: Updated default location of locatedb file.
2848         * README-alpha:
2849         Updated to give correct FTP location and to not talk about "test"
2850         versions of automake, which are no longer required.
2852         * locate/updatedb.sh:
2853         Incorporated the default list of filesystems to avoid from the Debian
2854         package.  Also added /afs and /sfs to the default pruned paths.
2856         * configure.in: Released findutils 4.2.3
2858         * 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:
2859         did make distcheck, which updates these files
2861         * find/defs.h, find/fstype.c:
2862         Use const qualifier in arguments to filesystem_type() to allow callers with const variables to use them
2864         * ChangeLog: Updated.
2866         * NEWS: Added new news.
2868         * find/find.c:
2869         Extra diagnositcs for the case where we have the error "%s changed
2870         during execution of %s" - that is when we chdir back to the parent
2871         directory only to find that it has changed.
2873 2004-10-30  James Youngman <jay@gnu.org>
2875         * .cvsignore, NEWS, doc/find.texi, find/defs.h, find/find.1, find/parser.c, find/pred.c:
2876         Implemented the -quit action
2878         * NEWS, doc/find.texi, find/find.1, find/parser.c, find/pred.c:
2879         Refactored time handling routines in preparation for support of absolute timestamp comparison predicates
2881         * locate/locate.c:
2882         Applied Savannah patch #2952 ("getline off-by-one bugfix").
2884         * NEWS, doc/find.texi, find/defs.h, find/find.1, find/parser.c, find/pred.c:
2885         Added -delete action (Savannah patch #3454 with additions)
2887         * locate/locate.c:
2888         Applied Savannah patch #2692 (allowing get_short to process negative integers).
2890         * find/find.c:
2891         If we are iossuing an error message because $FIND_BLOCK_SIZE is set,
2892         ignore the setting of errno.
2894         * find/parser.c: More fixes for pedantic compiler warnings
2896         * NEWS, find/parser.c, find/tree.c: Eliminated some compiler warnings
2898         * find/find.c, find/parser.c, find/pred.c:
2899         Various fixes for compiler warninga sbout unreachable code or unused function arguments
2901         * intl/plural.y: Silence compiler warning about unused argument.
2903         * locate/testsuite/Makefile.am:
2904         Subdirectory "inputs" does not exist, so remove it from DIST_SUBDIRS.
2906         * locate/locate.c:
2907         Corrected the explanation of why we have to use no parentheses around
2908         the String argument to the N_ macro in its expansion.
2910         * configure.in: Nextr release is 4.2.3.
2912         * configure.in: IOndicate this is no longer the pristine release.
2914         * NEWS:
2915         Oops, comments for release 4.2.0 should have said 20480 bytes, not 2480.
2917         * lib/listfile.c:
2918         The -ls predicate should not truncate usernames.  Fixes Savannah bug #10800.
2920         * find/fstype.c, locate/locate.c:
2921         Fixes for Savannah bug #3727 (Intel icc compilation errors).
2923 2004-10-25  James Youngman <jay@gnu.org>
2925         * doc/find.texi, find/find.1, find/parser.c, find/pred.c:
2926         Support -printf %D, which prints the device number of the containing filesystem
2928         * locate/updatedb.sh:
2929         Avoid confusion between James Woods and James Youngman, by using the
2930         disambiguating surname.
2932         * find/parser.c: Use RE_ICASE instead of re->translate.
2934         * configure.in, find/parser.c, find/pred.c, xargs/xargs.c:
2935         No need to #define _GNU_SOURCE if we use gl_INIT.
2937 2004-10-24  James Youngman <jay@gnu.org>
2939         * ChangeLog: Prepared to release findutils-4.2.2.
2941         * 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:
2942         Updates prior to release of 4.2.2
2944         * NEWS: Updated with news for findutils-4.2.2.
2946         * 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:
2947         Corrected typo in the address of the FSF office
2949         * lib/strspn.c: Updated FSF address.
2951         * m4/.cvsignore: 'cvs status' should ignore Makefile.in
2953         * 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:
2954         Use gnulib-tool --import to import the gnulib code, rather than the odd way we were doing it before
2956         * 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:
2957         Work round an apparent compiler bug in HP-UX 11.23 for
2958         ia64
2960         * locate/locate.c:
2961         Work around what appears to be a C compiler bug in HP-UX 11.23 for
2962         ia64.
2964         * INSTALL, depcomp, install-sh, missing, mkinstalldirs:
2965         Updated from automake
2967         * locate/bigram.c, locate/code.c, locate/frcode.c, locate/locate.c, xargs/xargs.c, find/find.c:
2968         Avoid use of exit() within main, to silence warnings about unreachable code
2970 2004-10-22  James Youngman  <jay@gnu.org>
2972         * doc/find.texi: Syntax corrections.
2974         * doc/find.texi: Indicate that "-exec {}+" is not yet supported.
2976         * find/find.1: Indicate that "{}+" is not yet supported.
2978         * find/testsuite/find.gnu/name-period.xo, find/testsuite/find.gnu/name-period.exp, find/find.1, doc/find.texi:
2979         The -name predicate must allow '*' to match '.foo' as demanded by IEEE
2980         Std 1003.2-1992 Interpretation #126.
2982         * find/pred.c:
2983         Remove use of FNM_PERIOD for -name as demanded by IEEE Std 1003.2-1992
2984         Interpretation #126
2986         * find/parser.c: Fix for compilation (on AIX 4.3) with GCC 2.x.
2988         * xargs/xargs.c:
2989         Changed the erorr message issued when there is an unmatched quote to
2990         point out that the user might have wanted to use the -0 option instead.
2992 2004-10-17  James Youngman  <jay@gnu.org>
2994         * configure.in:
2995         Define intmax_t if it is not already defined - allows parser.c to compile on AIX 4.3
2997         * configure.in:
2998         Adjust version number to indicate that this s/w has moved on since the
2999         4.2.1 release.
3001         * configure.in: preparing to release 4.2.1
3003         * ChangeLog: updated with current changes
3005         * README-CVS: Updated to go with newer version of gnulib.
3007         * 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:
3008         preparation for release
3010         * NEWS: Mention the changes to "trap".
3012         * NEWS: Brought up to date.
3014         * import-gnulib.sh:
3015         Use xalloc-die module from gnulib, since that has now been split out
3017         * find/parser.c:
3018         Check fnmatch() when other predicates that rely on fnmatch() are used.
3020         * find/parser.c: bug #10701: find needs fnmatch sanitycheck on startup
3022 2004-10-16  James Youngman <jay@gnu.org>
3024         * import-gnulib.sh:
3025         Switch to requirement for GNU fnmatch because it supports FNM_CASEFOLD.
3027         * locate/updatedb.sh:
3028         Bug #9465: use of signal numbers for 'trap' is deprecated.  Should use
3029         names instead.  See
3030         http://www.opengroup.org/onlinepubs/009695399/utilities/trap.html,
3031         which indicates that support for signal numbers is optional, while
3032         support for signal names is mandatory.
3034         * configure.in:
3035         Indicate that this is the CVS version (once again) now that findutils
3036         4.2.0 has been released.
3038         * 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:
3039         findutils 4.1.20 check-in for tagging
3041 2004-10-02  James Youngman <jay@gnu.org>
3043         * po/Makefile.in.in:
3044         Search in $(top_srcdir) for mkinstalldirs, since that's where we keep it.
3046         * NEWS: Brought up to date, organised more clearly, and tidied up.
3048         * NEWS: brought up to date with recent changes
3050         * locate/testsuite/config/unix.exp, locate/testsuite/locate.gnu/ignore_case1.exp, locate/testsuite/locate.gnu/ignore_case3.exp, locate/updatedb.sh:
3051         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
3053         * find/pred.c:
3054         Fixed usage of human_readable() in '%k' format specifier to fix a bug
3055         reported by Dmitry V. Levin (arguments to human_readable() were
3056         specified in the wrong order, which resulted in a floating-point
3057         error).
3059 2004-08-08  James Youngman <jay@gnu.org>
3061         * locate/updatedb.sh:
3062         cd to / to avoid inability to examine the current directory if we're
3063         invoked via cron (and hence in root's home directory for example).
3065         * doc/find.texi, find/find.1:
3066         Deprecate -path and -ipath in favour of -wholename and -iwholename
3068         * find/parser.c:
3069         As per RMS's suggestion, deprecate -path and -ipath in favour of
3070         -wholename and -iwholename.
3072         * locate/locate.c:
3073         Fixed Savannah bug #9923, in which get_short() returns large positive
3074         ints when it should be returning negative shorts.
3076         * xargs/xargs.1:
3077         Applied documentation improvements suggested by Dan Jacobson
3078         <jidanni@jidanni.org>.
3080         * xargs/xargs.c:
3081         Don't check size_of_environment against arg_max since that causes the
3082         test suite to fail.
3084         * xargs/xargs.1, xargs/xargs.c: Better documentation for the -i option
3086 2004-05-03  James Youngman <jay@gnu.org>
3088         * find/find.1:
3089         document the various suffixes for -size and also the new 
3090         option -ignore_readdir_race
3092         * locate/locate.c:
3093         Fixes Savannah bug #8623 (failure to check consistency of data 
3094         read from locate database)
3096         * locate/updatedb.sh:
3097         Resolves Savannah bug 4380, that updatedb generates an empty
3098         database if one of the commands fails
3100         * NEWS: Talk about -ignore_readdir_race
3102         * doc/find.texi:
3103         Documented -ignore_readdir_race and -noignore_readdir_race
3105         * find/find.c:
3106         -ignore_readdir_race should have no effect if the reason for the
3107          failure of stat(2) was anything other than ENOENT.
3109         * find/defs.h, find/find.c, find/parser.c:
3110         Fixed Savannah bug 4391 (readdir race condition leading to 
3111         spurious error messages)
3113 2004-04-24  James Youngman <jay@gnu.org>
3115         * README-CVS: Corrected the instructions for getting gnulib via CVS.
3117 2004-04-13  James Youngman <jay@gnu.org>
3119         * doc/find.texi:
3120         Actioned Savannah bug #8558 (find complains when it tries to recurse
3121         into directories that it had removed).
3123 2004-03-13  James Youngman <jay@gnu.org>
3125         * ChangeLog: Updated from checkin comments.
3127         * find/find.c:
3128         Oops, there is no access to the predicate name table if DEBUG is 
3129         not #defined.
3131         * find/parser.c:
3132         Detect arithmetic overflow (poorly) in insert_time(), which diagnoses
3133         the failure to handle large arguments to -mtime.  The existing code
3134         does careful computation and then bungs the value into a time_t, which
3135         ruins all our careful effort.  The new code is not a great
3136         improvement.  We just check the result to detect overflow, rather than
3137         actually avoiding the overflow.
3139         * find/find.c:
3140         Fixed Debian bug #185202 by checking for any trailing predicates after
3141         the top-level invocation of get_expr() has done its work.
3143         * locate/locate.1, xargs/xargs.1:
3144         Fixed Debian bug 175372, inappropriate 'L' suffixes on manual 
3145         page section indicators
3147         * find/find.1:
3148         Removed "L" suffixes from manual page section indicators, to fix
3149         Debian bug 175372.
3151         * debian/updatedb.conf:
3152         Updated with list of filesystems from current Debian release.  This
3153         includes devfs, for example.
3155         * xargs/xargs.1:
3156         Modified documentation of "-s" option to take into account the fix for
3157         Debian bug #176201.
3159         * xargs/xargs.c:
3160         Fixed Debian bug #176201, "xargs enviroment size limited to 20k", by
3161         reading a patch offered by Bob Proulx and implementing something
3162         substantially similar myself.
3164 2004-01-03  James Youngman  <jay@gnu.org>
3166         * xargs/xargs.c:
3167         Indicate that prep_child_for_exec() fixes Savannah bug #3992.
3169         * xargs/xargs.c:
3170         Attach the stdin of xargs' child process to /dev/null so that if it
3171         tries to read from its stdin it doesn't consume any of the list of
3172         files that xargs is trying to use.
3174         * find/find.1:
3175         Documented that the -regex option follows Gnulib's re_match() 
3176         implementation.
3178         * NEWS, locate/locate.c: Applied Savannah patch 2108
3180         * xargs/xargs.c: Applied Savannah patch 1500
3182         * find/find.1, doc/find.texi:
3183         Improved the documentation for the %k and %b format specifiers to
3184         -printf (Savannah bug #5034).  Also pointed out that this handling is
3185         different to that used by the "b" and "k" suffixes with "-size".
3187         * find/find.1: Improved the documentation for %k (Savannah bug #5034).
3189         * find/find.1:
3190         Improved the documentation for -print0 in the manpage, fixing Debian
3191         bug 111143.
3193         * README-CVS, find/pred.c, lib/listfile.c:
3194         Brought up-to-date with change in gnulib's human.c - we no longer 
3195         use human_readable_inexact(), because it is no longer provided.
3197 2003-08-08  James Youngman  <jay@gnu.org>
3199         * find/find.1:
3200         Documented the fact that -printf also supports the '\0' escape code.
3201         Added "STANDARDS CONFORMANCE" section.
3203 2003-08-02  James Youngman  <jay@gnu.org>
3205         * find/find.1:
3206         Explain that braces are not special when performing filename matching
3207         with -name.
3209         * find/find.1:
3210         added example of the use of -exec to the EXAMPLES section
3212         * find/fstype.c, locate/locate.c:
3213         Savannah bug #4295 - implicit declarations of ctype.h functions
3215         * locate/locate.c:
3216         Savannah bug #4279 - missing newline on locate help message
3218         * find/find.1, xargs/xargs.1:
3219         Improved discussion of the -print0 option of find and the -0 option of xargs
3221 2003-06-26  James Youngman  <jay@gnu.org>
3223         * import-gnulib.sh:
3224         Remove reference to nonexistent module "basename" ("dirname" exists
3225         and we already use that).
3227 2003-06-21  James Youngman  <jay@gnu.org>
3229         * doc/find.texi:
3230         Indicate that xargs stops immediately if a command exits with status 255
3232         * xargs/xargs.1:
3233         Document the fact that xargs exits immediately with an error message
3234         if the command it executes exits with a status of 255.
3236 2003-06-18  James Youngman  <jay@gnu.org>
3238         * find/find.1:
3239         Indicate that -fls and friends always create their output file
3241 2003-06-16  James Youngman  <jay@gnu.org>
3243         * ChangeLog, find/find.1, locate/locate.1, locate/locatedb.5, locate/updatedb.1, xargs/xargs.1:
3244         Added BUGS section to manual pages.   This section includes information about known bugs and how to report new bugs.
3246         * AUTHORS: Identify the current maintainer.
3248         * TODO: Removed the TODO items which have now been done.
3250         * THANKS: Added Bruno Haible and Bob Proulx.
3252         * xargs/xargs.c: xargs/xargs.c (DO_MULTIBYTE): New macro.
3253         (mbstrstr): New function.
3254         (do_insert): Use it instead of strstr.
3256         * config.guess, config.sub:
3257         Use config.guess and config.sub from automake
3259         * find/fstype.c:
3260         Bruno Haible: (fstype_to_string) Don't define this function if
3261         HAVE_F_FSTYPENAME_IN_STATFS is defined.
3263         * configure.in:
3264         Bruno Haible: Prefer the 4.4BSD API (if present) to the 4.3BSD API,
3265         because some 4.4BSD systems have <mntent.h> but no /etc/mtab file.
3267         * doc/find.texi, find/find.1:
3268         Applied patch 1498 (documenting the backslash escape sequence)
3270         * locate/updatedb.sh: Applied (my own version of) Savannah patch 1601.
3272         * doc/find.texi:
3273         Applied Savannah patch #1547 (document the fact that printf
3274         field-width specifiers are supported).
3276         * xargs/xargs.c:
3277         Applied Savannah patch #1499 (adds final newline to usage message).
3279 2003-06-14  James Youngman  <jay@gnu.org>
3281         * NEWS, configure.in:
3282         Updated version number to 4.2.0-CVS [not ready for release yet]
3284         * 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
3285         also need stpcpy (e.g. for Solaris)
3287         * intl/dcigettext.c:
3288         plural_lookup: don't use a variable called "index", because we may
3289         have done "#define strchr index", in which case using a variable
3290         called index will prevent us calling strchr(p, ch) in the same scope.
3292         * 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:
3293         Updated copyright years and the address of the FSF
3295         * aclocal.m4, config.h.in, configure:
3296         Removed files that are generated from other files (e.g. configure)
3298         * NEWS: Updated NEWS file for 4.1.20.
3300         * 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:
3301         Updates to the i18n files to ensure that 'make dist' succeeds
3303         * lib/posix/.cvsignore, lib/posix/Makefile.am,
3304         lib/posix/Makefile.in, lib/posix/regex.h, lib/strftime.c,
3305         lib/strncasecmp.c, lib/strspn.c, lib/strstr.c, lib/strtol.c,
3306         lib/strtoul.c, lib/strtoull.c, lib/strtoumax.c, lib/wait.h,
3307         lib/waitpid.c, lib/xalloc.h, lib/xgetcwd.c, lib/xmalloc.c,
3308         lib/xstat.in, lib/xstrdup.c, lib/xstrtol.c, lib/xstrtol.h,
3309         lib/xstrtoul.c, lib/xstrtoul.h, lib/xstrtoumax.c, lib/yesno.c,
3310         locate/Makefile.am, locate/Makefile.in, locate/locate.c,
3311         locate/testsuite/Makefile.in, m4/.cvsignore, m4/ChangeLog,
3312         m4/Makefile.am, m4/Makefile.am.in, m4/Makefile.in, m4/README,
3313         m4/afs.m4, m4/assert.m4, m4/c-bs-a.m4, m4/check-decl.m4,
3314         m4/codeset.m4, m4/d-ino.m4, m4/d-type.m4, m4/error.m4,
3315         m4/fnmatch.m4, m4/fnmatchcase.m4, m4/fstypename.m4, m4/getline.m4,
3316         m4/gettext.m4, m4/glibc.m4, m4/glibc21.m4, m4/iconv.m4,
3317         m4/inttypes_h.m4, m4/isc-posix.m4, m4/jm-glibc-io.m4,
3318         m4/jm-macros.m4, m4/jm-mktime.m4, m4/lcmessage.m4, m4/libintl.m4,
3319         m4/link-follow.m4, m4/ls-mntd-fs.m4, m4/lstat-slash.m4,
3320         m4/lstat.m4, m4/malloc.m4, m4/mbstate_t.m4, m4/memcmp.m4,
3321         m4/prereq.m4, m4/progtest.m4, m4/readdir.m4, m4/realloc.m4,
3322         m4/regex.m4, m4/st_dm_mode.m4, m4/st_mtim.m4, m4/stat.m4,
3323         m4/strerror_r.m4, m4/strftime.m4, m4/timespec.m4, m4/uintmax_t.m4,
3324         m4/ulonglong.m4, m4/xstrtoumax.m4, xargs/Makefile.am,
3325         xargs/Makefile.in, xargs/testsuite/Makefile.in,
3326         find/testsuite/Makefile.in, lib/.cvsignore, lib/Makefile.am,
3327         lib/Makefile.in, lib/alloca.c, lib/ansi2knr.1, lib/ansi2knr.c,
3328         lib/argmatch.c, lib/argmatch.h, lib/basename.c, lib/basename.h,
3329         lib/dirname.c, lib/dirname.h, lib/error.c, lib/error.h,
3330         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/fnmatch.c,
3331         lib/fnmatch.h, lib/getline.c, lib/getline.h, lib/getopt.c,
3332         lib/getopt.h, lib/getopt1.c, lib/human.c, lib/human.h,
3333         lib/idcache.c, lib/malloc.c, lib/memcmp.c, lib/memcpy.c,
3334         lib/memset.c, lib/mktime.c, lib/modechange.c, lib/modechange.h,
3335         lib/pathmax.h, lib/quotearg.c, lib/quotearg.h, lib/realloc.c,
3336         lib/regex.c, lib/regex.h, lib/rpmatch.c, lib/savedir.c,
3337         lib/savedir.h, lib/stpcpy.c, lib/strcasecmp.c, lib/strdup.c,
3338         find/Makefile.am, find/Makefile.in, find/find.c, find/pred.c:
3339         Updated to work with current version of gnulib
3341         * import-gnulib.sh: New file.
3343         * config.h.in, configure, configure.in, doc/Makefile.in, import-gnulib.sh:
3344         Updated to work with current version of gnulib
3346         * README-CVS: New file.
3348         * Makefile.am, Makefile.in, README-CVS, aclocal.m4:
3349         Updated to work with current version of gnulib
3351 2001-06-09  Kevin Dalley  <kevin@seti.org>
3353         * intl/plural.c:
3354         Changes the location of bison.simple after running bison on local
3355         machine
3357         * ChangeLog: *** empty log message ***
3359         * Makefile.in, aclocal.m4, config.h.in, configure,
3360         doc/Makefile.in, find/Makefile.in, find/testsuite/Makefile.in,
3361         lib/Makefile.in, lib/posix/Makefile.in, locate/Makefile.in,
3362         locate/testsuite/Makefile.in, m4/Makefile.in, xargs/Makefile.in,
3363         xargs/testsuite/Makefile.in: Updates mostly from gettext-0.10.38
3365         * ABOUT-NLS: * ABOUT-NLS: updated from gettext-0.10.38.
3367         * configure.in: * configure.in: add tr to ALL_LINGUAS.
3369         * intl/config.charset, intl/dcigettext.c, intl/dcngettext.c,
3370         intl/dngettext.c, intl/libgnuintl.h, intl/localcharset.c,
3371         intl/locale.alias, intl/ngettext.c, intl/plural.y,
3372         intl/ref-add.sin, intl/ref-del.sin: updated from gettext-0.10.38
3374         * intl/cat-compat.c, intl/linux-msg.sed, intl/po2tbl.sed.in,
3375         intl/xopen-msg.sed, m4/ChangeLog: *** empty log message ***
3377         * m4/jm-macros.m4:
3378         * jm-macros.m4 (jm_MACROS): remove jm_ICONV, which is replaced by
3379         AM_ICONV, which is imported from gettext-0.10.38.  removed
3380         jm_GLIBC21, which is required in AM_GNU_GETTEXT, which is
3381         imported from gettext-0.10.38.
3383         * po/stamp-cat-id:      * stamp-cat-id: Remove file.
3385         * po/Makefile.in.in:    * Makefile.in.in: Upgrade to gettext-0.10.38.
3387         * po/ChangeLog:         * cat-id-tbl.c: Remove file.
3389         * po/de.po, po/es.po, po/et.po, po/fr.po:
3390         * fr.po, et.po, es.po, de.po: updated translations to
3391         findutils-4.1.7.
3393         * po/tr.po: * tr.po:  New Turkish translation.
3395         * m4/ChangeLog: *** empty log message ***
3397         * intl/dgettext.c, intl/explodename.c, intl/finddomain.c,
3398         intl/gettext.c, intl/gettext.h, intl/gettextP.h,
3399         intl/hash-string.h, intl/intl-compat.c, intl/l10nflist.c,
3400         intl/libgettext.h, intl/loadinfo.h, intl/loadmsgcat.c,
3401         intl/localealias.c, intl/plural.c, intl/textdomain.c,
3402         intl/ChangeLog, intl/Makefile.in, intl/VERSION,
3403         intl/bindtextdom.c, intl/dcgettext.c: Updated from gettext-0.10.38
3405         * m4/Makefile.am:
3406         reflects addition of codeset.m4 from gettext-0.10.38, automatically
3407         generated.
3409         * m4/codeset.m4, m4/gettext.m4, m4/glibc21.m4, m4/iconv.m4,
3410                 m4/isc-posix.m4, m4/lcmessage.m4, m4/progtest.m4: *
3411                 progtest.m4, lcmessage.m4, isc-posix.m4, iconv.m4,
3412                 glibc21.m4, gettext.m4, codeset.m4: updated from
3413                 gettext-0.10.38.
3415         * ChangeLog: *** empty log message ***
3417         * THANKS: added "Gerrit P. Haase" <gerrit.haase@t-online.de>
3419         * m4/ChangeLog, locate/testsuite/.cvsignore,
3420         xargs/testsuite/.cvsignore, config.h.in, configure, aclocal.m4,
3421         doc/.cvsignore: *** empty log message ***
3423         * m4/jm-macros.m4:      * jm-macros.m4 (jm_MACROS): add jm_FSTYPENAME
3425         * doc/Makefile.in: *** empty log message ***
3427         * doc/Makefile.am:
3428         * doc/Makefile.am (MOSTLYCLEANFILES): add find.cps, which is
3429         created by dvips.  This should be taken care of by automake, but
3430         the code is commented out.
3432 2001-06-09  Kevin Dalley  <kevin@seti.org>
3434         * ABOUT-NLS: updated from gettext-0.10.38.
3436         * configure.in: add tr to ALL_LINGUAS.
3438         * doc/Makefile.am (MOSTLYCLEANFILES): add find.cps, which is
3439         created by dvips.  This should be taken care of by automake, but
3440         the code is commented out.
3442 2001-06-05  Kevin Dalley  <kevin@seti.org>
3444         * locate/updatedb.sh: replace "whoami" with "id -u" when testing
3445         for root.
3447 2001-06-04  Kevin Dalley  <kevin@seti.org>
3449         * locate/testsuite/Makefile.am (DIST_SUBDIRS): remove second
3450         instance of DIST_SUBDIRS.
3452         * locate/Makefile.am (install-data-hook): changed install target
3453         to install-data-hook, which still installs other files.
3455         * doc/Makefile.am (MOSTLYCLEANFILES): added find.cps, which should
3456         probably be handled by automake.
3458         * doc/mdate-sh: removed file in doc directory.  It now exists only
3459         in top_srcdir, but this changed required a patch to automake.
3461 2001-05-20  Kevin Dalley  <kevin@seti.org>
3463         * Version 4.1.7
3464         
3465         * lib/Makefile.am (EXTRA_DIST): add strcasecmp.c
3467         * find/testsuite/Makefile.am (EXTRA_DIST): new tests:
3468         find.gnu/name-opt.exp find.gnu/perm.exp find.gnu/perm.xo
3469         find.gnu/prune-default-print.exp find.gnu/prune-default-print.xo
3471         * configure.in: update to 4.1.7
3473         * config.sub, config.guess: upgraded to recent versions of
3474         config.sub and config.guess.
3476         * locate/updatedb.sh: Add space to "#! /bin/sh"
3478         * configure.in: Add id to ALL_LINGUAS
3480         * lib/Makefile.am (EXTRA_DIST):  getline.[ch] added
3481         (libfind_a_SOURCES): getline.[ch] removed since getline.c is not
3482         always needed.
3484 2001-05-20  Lionel CONS <lionel.cons@cern.ch>
3486         * find/find.c: Fixed security holes.  1.  There is a race
3487         condition between the lstat() to detect a symbolic link and the
3488         actual chdir().  2.  An attacker can move directories while find
3489         is _inside_ so that chdir(..) goes out of the intended file tree.
3491         * lib/modetype.h: support for Solaris door files is added.
3493         * lib/filemode.c: S_ISDOOR is undef'ed if STAT_MACROS_BROKEN
3495         * find/pred.c (pred_type): -D option (for Solaris door files) is
3496         added.
3498         * find/parser.c (insert_type):  -D option (for Solaris door files)
3499         is added. 
3501         * find/find.1: -D option (for Solaris door files) is documented
3503         * doc/find.texi (Type): -D option (for Solaris door files) is
3504         documented
3506 2001-05-02  Kevin Dalley  <kevin@seti.org>
3508         * configure.in: Change AC_CHECK_MEMBERS to conform to new
3509         autoconf.  Add Danish.
3511 2001-01-20  Kevin Dalley  <kevin@seti.org>
3513         * doc/find.texi (Adding Tests): Place space in "#! /bin/sh".
3515         * find/testsuite/find.gnu/prune-default-print.xo,
3516         find/testsuite/find.gnu/prune-default-print.exp: test for "find
3517         . -prune" which passes after changes.  Also see name-opt.exp.
3519         * find/util.c (get_new_pred):
3520         * find/tree.c (set_new_parent):
3521         * find/parser.c (various parse functions):
3522         * find/find.c (main): 
3523         (default_prints): new function 
3524         * find/defs.h (struct predicate): added no_default_print
3525         side_effects are no separated from no_default_print.  predicates
3526         which cause side effects should not be reordered (optimized).
3527         predicates which cause printing should have printing turned off.
3528         Printing statements also cause side effects.
3530 2000-10-29  Bruno Haible <haible@ilog.fr>
3532         * locate/code.c (main), doc/find.texi: improve handling of
3533         non-ASCII characters used old format.
3535 2000-10-21  Paul Eggert  <eggert@twinsun.com>
3537         If open + fchdir fails, fall back on xgetcwd + chdir.
3538         The old code tested for this at compile-time,
3539         but SunOS 4.1.4 fchdir can fail at run-time.
3541         * find/defs.h (fchdir): Define to -1 if not available.
3542         * find/defs.h (starting_dir, starting_desc):
3543         Always declare.  starting_dir now points to const.
3544         * find/find.c (starting_dir, starting_desc): Likewise.
3545         * find/find.c (starting_dir):
3546         Now "." if starting_desc is nonnegative, for benefit of diagnostics.
3547         (main, process_top_path, process_dir):
3548         If open + fchdir fails, fall back on xgetcwd + chdir.
3549         * find/pred.c (launch): Likewise.
3551 2000-10-20  Kevin Dalley  <kevin@seti.org>
3553         * xargs/xargs.c, locate/updatedb.sh, locate/locate.c (usage),
3554         find/parser.c (parse_help): add bug reporting address to help
3556 2000-10-13  Kevin Dalley  <kevin@seti.org>
3558         * depcomp, lib/depcomp: depcomp moved from lib to .
3560 2000-10-11  Kevin Dalley  <kevind@rahul.net>
3562         * Version 4.1.6
3563         
3564         * locate/testsuite/config/unix.exp: set PRUNEFS to "" for the
3565         testsuite. 
3567 2000-10-10  Bruno Haible <haible@ilog.fr>
3569         * lib/Makefile.am (libfind_a_SOURCES): added yesno.c
3571         * lib/yesno.c, lib/rpmatch.c: new files.
3573         * find/pred.c: use function yesno().
3575 2000-10-10  Kevin Dalley  <kevind@rahul.net>
3576         
3577         * locate/testsuite/Makefile.am: Added missing \ at end of
3578         EXTRA_DIST lines.
3580         * locate/testsuite/locate.gnu/ignore_case3.xo,
3581         locate/testsuite/locate.gnu/ignore_case3.exp,
3582         locate/testsuite/locate.gnu/ignore_case2.exp,
3583         locate/testsuite/locate.gnu/ignore_case1.xo,
3584         locate/testsuite/locate.gnu/ignore_case1.exp: place locatedb
3585         inside tmp directory, add subdir directory under tmp.
3587         * locate/testsuite/config/unix.exp: clean up tmp after test is
3588         finished. 
3590 2000-10-10  Kevin Dalley  <kevind@rahul.net>
3592         * locate/testsuite/config/unix.exp (Repository): 
3594 2000-10-09  Kevin Dalley  <kevind@rahul.net>
3596         * lib/fnmatch.c, lib/fnmatch.h: reverted to older version of
3597         fnmatch which works with Solaris.
3599         * locate/testsuite/config/unix.exp: dejagnu unix.exp
3601         * xargs/testsuite/config/unix.exp: remove temporary file
3603         * xargs/xargs.c: spelling correction
3605         * m4/prereq.m4: updated and changed some macros
3607         * m4/jm-macros.m4: replaced jm_FUNC_FNMATCH with
3608         kd_FUNC_FNMATCH_CASE_REPL 
3610         * m4/timespec.m4, m4/strerror_r.m4, m4/mbstate_t.m4,
3611         m4/largefile.m4, m4/gettext.m4, m4/fnmatchcase.m4, m4/d-type.m4,
3612         m4/d-ino.m4, m4/c-bs-a.m4: new m4 macros.
3614         * m4/Makefile.am: add fnmatchcase.m4 and mbstate_t.m4
3616         * locate/testsuite/locate.gnu/ignore_case3.xo,
3617         locate/testsuite/locate.gnu/ignore_case3.exp,
3618         locate/testsuite/locate.gnu/ignore_case2.xo,
3619         locate/testsuite/locate.gnu/ignore_case2.exp,
3620         locate/testsuite/locate.gnu/ignore_case1.xo,
3621         locate/testsuite/locate.gnu/ignore_case1.exp,
3622         locate/testsuite/config/unix.exp: tests related to "--ignore-case"
3623         option.
3625         * locate/testsuite/locate.gnu: testsuite directory
3627         * locate/testsuite/Makefile.am (Repository): 
3629         * locate/testsuite: add directory for locate testsuite
3631         * po/findutils.pot: updated file
3633         * po/sv.po, po/ru.po, po/pt_BR.po, po/pl.po, po/nl.po, po/ko.po,
3634         po/it.po, po/gl.po, po/fr.po, po/et.po, po/es.po, po/de.po:
3635         updated various po files.
3637         * locate/updatedb.sh: export TMPDIR, which is used by child
3638         processes.
3640         * locate/locate.1, locate/locate.c:  add "--ignore-case" option.
3642         * locate/Makefile.am: add testsuite subdirectory
3644         * find/testsuite/find.gnu/perm.xo,
3645         find/testsuite/find.gnu/perm.exp,
3646         find/testsuite/find.gnu/name-opt.xo,
3647         find/testsuite/find.gnu/name-opt.exp: added test suites
3649         * configure.in: add locate/testsuite/Makefile
3651         * doc/find.info*: removed from repository
3653         * doc/find.texi: add documentation for "-i" option.
3655         * aclocal.m4: removed from repository, as it is generated.
3657         * find/pred.c: fixes problem with "find -perm -0100".
3659         * lib/lstat.c, lib/stat.c: removed from repository.  These files
3660         are generated from lib/xstat.in.
3662 2000-08-24  Kevin Dalley  <kevind@rahul.net>
3664         * doc/find.texi (Invoking xargs): changed @var{-s} to @samp{-s}.
3666 2000-05-13  Kevin Dalley  <kevind@rahul.net>
3668         * find/tree.c (opt_expr): move iname and ipath to the front of the
3669         list of arguments.
3671         * doc/find.texi (Directories): changed wording for "-prune".
3673         * find/parser.c (parse_prune): set side_effects to true, to
3674         prevent prune from being moved in opt_expr.
3676 2000-04-12  Kevin Dalley  <kevind@rahul.net>
3678         * doc/find.texi, doc/permi.texi: fix spellings, add LocalWords.
3680         * lib/Makefile.am: put getline.c back into libfind_a_SOURCES,
3681         since getstr is needed.
3683         * Version 4.1.5
3684         
3685         * po/POTFILES.in: updated list of files, updated po files.
3688 2000-04-02  Paul Eggert  <eggert@twinsun.com>
3690         Add support for large files, and port to Solaris 8 and earlier
3691         versions.
3693         * lib/human.c (getenv): Depend on NEED_GETENV_DECL, not
3694         HAVE_DECL_GETENV.
3696         * lib/strftime.c (my_strftime): Make sure we call the system
3697         strftime, not ourselves, when invoking the underlying strftime.
3698         
3699         * m4/check-decl.m4 (jm_CHECK_DECLS): Remove memchr, nanosleep.
3701         * m4/jm-macros.m4 (jm_MACROS): Don't check for utime.h.  Do not
3702         require jm_BISON, jm_CHECK_TYPE_STRUCT_UTIMBUF, jm_FUNC_LCHOWN,
3703         jm_FUNC_CHOWN, jm_FUNC_NANOSLEEP, jm_FUNC_GROUP_MEMBER,
3704         jm_FUNC_PUTENV, jm_FUNC_GETGROUPS, AM_FUNC_GETLOADAVG,
3705         jm_SYS_PROC_UPTIME, jm_FUNC_FTRUNCATE, jm_FUNC_UTIME.  Do not
3706         replace strcasecmp, dup2, gethostname, getusershell, stime,
3707         strcspn, strpbrk, euidaccess, mkdir, rmdir, rpmatch, strndup,
3708         strverscmp, memchr, memmove.  Do not check for declaration of
3709         lchown.  Remove invocations of AM_FUNC_OBSTACK, AM_FUNC_STRTOD,
3710         POW_LIBM, jm_LANGINFO_CODESET, jm_ICONV.  Remove df tests.
3711         (jm_CHECK_ALL_TYPES): Include <sys/stat.h> when checking for
3712         struct stat.st_blksize.
3714         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set environment variable
3715         in shell rather than using putenv, which isn't portable.
3716         
3717         * COPYING, lib/alloca.c, lib/dirname.c, lib/error.c,
3718         lib/savedir.c, lib/strstr.c, m4/check-decl.m4, m4/d-ino.m4,
3719         m4/d-type.m4, m4/getline.m4, m4/jm-glibc-io.m4, m4/jm-macros.m4,
3720         m4/jm-mktime.m4, m4/ls-mntd-fs.m4, m4/memcmp.m4, m4/prereq.m4,
3721         m4/readdir.m4, m4/regex.m4, m4/strftime.m4, m4/uintmax_t.m4: Sync
3722         to latest version from sh-utils-2.0g.
3724         * config.guess, config.sub, lib/argmatch.c, lib/argmatch.h,
3725         lib/human.c, lib/human.h, lib/memcpy.c, lib/quotearg.c,
3726         lib/quotearg.h, lib/strtoull.c, lib/strtoumax.c,
3727         lib/xstrtoumax.c, m4/c-bs-a.m4, m4/gettext.m4,
3728         m4/largefile.m4, m4/lcmessage.m4, m4/link-follow.m4,
3729         m4/progtest.m4, m4/strerror_r.m4, m4/timespec.m4,
3730         m4/xstrtoumax.m4: New files, taken from sh-utils-2.0g.
3732         * lib/ansi2knr.1, lib/ansi2knr.c, lib/basename.c, lib/getopt.h,
3733         lib/fnmatch.c, lib/fnmatch.h, lib/modechange.c: Sync to latest
3734         unreleased version of GNU tar (between 1.13.17 and 1.13.18).
3736         * lib/basename.h, lib/waitpid.c: New files, taken from same
3737         version of GNU tar.
3738         
3739         * lib/regex.c, lib/regex.h: Sync to GNU grep 2.4.2.
3741         * lib/posix/Makefile.am, lib/posix/regex.h: New files, taken from
3742         GNU grep 2.4.2.
3744         * lib/strftime.c: Sync to textutils 2.0e.
3745         
3746         * acconfig.h, depcomp, lib/strcasecmp.c, m4/check-type.m4,
3747         m4/const.m4, m4/decl.m4, m4/lfs.m4, m4/mktime.m4, m4/perl.m4,
3748         m4/putenv.m4, m4/uptime.m4, m4/utimbuf.m4, m4/utime.m4,
3749         m4/utimes.m4: Remove these files; no longer needed.
3751         * configure.in (AC_CANONICAL_HOST, AC_SYS_LARGEFILE,
3752         jm_AC_TYPE_UINTMAX_T): Add.
3753         (CACHE_IDS, FSTYPE_STATVFS, FSTYPE_USG_STATFS, FSTYPE_AIX_STATFS,
3754         FSTYPE_MNTENT, FSTYPE_STATFS, FSTYPE_GETMNT): Add comment, so that
3755         we don't need acconfig.h.
3756         (AC_CHECK_TYPE): Add ssize_t.
3757         (AC_REPLACE_FUNCS): Add waitpid.
3758         (AC_CHECK_FUNCS): Remove basename.
3759         (AC_FUNC_MKTIME): Remove.
3760         (LIBOBJS): Add no-ops to work around automake 1.4 bug.
3761         (AC_OUTPUT): Add lib/posix/Makefile.
3763         * find/defs.h: Include <config.h>, <sys/types.h>, <sys/stat.h>,
3764         <stdio.h>, <limits.h>, <inttypes.h>.  All includers changed to not
3765         include these files, and to include "defs.h" first (since config.h
3766         must be included first).
3767         (CHAR_BIT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
3768         S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, MOD_WXUSR,
3769         MODE_R, MODE_RW, MODE_RWX, MODE_ALL): New macros.
3770         (enum permissions_type): New enum.
3771         (struct long_val.negative): New member.
3772         (struct long_val.l_val): Now uintmax_t, not unsigned long.
3773         (struct size_val.size): Likewise.
3774         (struct perm_val): New type.
3775         (struct predicate.perm): Now struct perm_val, not unsigned long.
3776         (struct predicate.type): Now mode_t, not unsigned long.
3777         (list_file): New parameters current_time, output_block_size.
3778         All callers changed.
3779         (savedir, basename): Remove decls.
3780         (output_block_size, start_time): New extern vars.
3782         * find/find.c: Include <human.h>, <savedir.h>.
3783         (output_block_size, start_time): New vars.
3784         (main): Initialize them.  No need to check for negative st_size,
3785         since savedir now does it for us.
3787         * find/fstype.c: Include "dirname.h".
3788         (xatoi): Remove.
3789         (filesystem_type_uncached): Use xstrtoumax instead of xatoi.
3790         
3791         * find/parser.c: Include "xstrtol.h".
3792         (get_num_days, get_num, parse_amin, parse_cmin, parse_mmin,
3793         parse_size, parse_used, insert_time, insert_num): Compute using
3794         uintmax_t, not unsigned long.
3795         (parse_amin, parse_cmin, parse_mmin, parse_used, insert_time):
3796         Keep track of whether time was negative before converting it to an
3797         unsigned type.
3798         (parse_daystart): Don't assume that localtime succeeds; e.g. it
3799         can fail with 64-bit time_t and 32-bit tm_year.
3800         (parse_perm, insert_type): Compute using mode_t, not unsigned
3801         long.
3802         (insert_type): Use symbolic constants like MODE_ALL instead of
3803         traditional ones like 07777.  Set new kind member to indicate
3804         permissions type, instead of using unportable magic numbers.
3805         (make_segment): We will use human_readable to convert most numeric
3806         values, so simplify the cases.
3807         (get_num_days): Write in terms of get_num, to avoid duplicated
3808         code.
3809         (insert_time, insert_num): When debugging, convert large values to
3810         uintmax_t and output with %ju.
3811         (get_num): Use xstrtoumax to do the real work.
3813         * find/pred.c: Include "basename.h", "human.h".
3814         (DEV_BSIZE, ST_BLKSIZE, ST_NBLOCKSIZE): New macros, taken from
3815         fileutils.
3816         (ST_NBLOCKS): Replace with fileutils defn.
3817         (MAX): New macro.
3818         (ctime_format): New function.
3819         (pred_fprintf, format_date): Use human_readable to output large
3820         numbers portably.
3821         (pred_fprintf): Use ctime_format to output ctime-style dates.  Use
3822         base_name to compute the base name of a path.  With %m, output the
3823         mode portably using traditional numbers, even if the host uses
3824         some other numbering scheme.
3825         (pred_iname, pred_name): basename -> base_name.
3826         (pred_perm): Use new kind member to deduce permissions type,
3827         instead of relying on magic numbers.
3828         (pred_size): Compute using uintmax_t, not unsigned long.  Avoid
3829         overflow if file size is near the maximum.
3830         (pred_type): Compute using mode_t, not unsigned long.
3831         (launch): Use waitpid, not wait.  Check for EINTR.
3832         (format_date): Don't assume that localtime succeeds.
3834         * find/util.c (basename): Remove; we now use base_name.
3836         * lib/Makefile.am (SUBDIRS): New macro.
3837         (libfind_a_SOURCES): Add argmatch.h, argmatch.c, basename.h,
3838         basename.c, human.c, human.h, quotearg.c, quotearg.h, xstrtoumax.c.
3839         Remove error.h, error.c, getline.c.
3840         (EXTRA_DIST): Add mktime.c, regex.c.
3842         * lib/listfile.c: Include "human.h".
3843         (alloca): Declare, or include appropriate files to declare.
3844         (DEV_BSIZE, ST_NBLKSIZE, ST_NBLOCKS, ST_NBLOCKSIZE): New macros.
3845         (convert_blocks): Remove.
3846         (list_file): New current_time and output_block_size args.
3847         Revamp quite a bit, to handle large numbers correctly
3848         and to match GNU ls behavior more closely.
3850         * m4/Makefile.am (EXTRA_DIST): Add c-bs-a.m4, gettext.m4,
3851         largefile.m4, lcmessage.m4, link-follow.m4, progtest.m4,
3852         strerror_r.m4, xstrtoumax.m4.  Remove check-type.m4, const.m4,
3853         decl.m4, lfs.m4, mktime.m4, perl.m4, putenv.m4, timespec.m4,
3854         uptime.m4, utimbuf.m4, utime.m4, utimes.m4.
3856         * xargs/xargs.c (wait_for_proc): Retry wait if it fails with
3857         errno == EINTR.
3859 2000-04-05  Kevin Dalley  <kevind@rahul.net>
3861         * xargs/Makefile.am:  add ansi2knr
3863         * xargs/xargs.c: add macros PARAMS rather than P_.  Add
3864         prototypes.
3866         * po/POTFILES: new file listing all POFILES.
3868         * m4/gl.po, m4/et.po: new files
3870         * m4/Makefile.am.in:  updated file
3872         * m4: update directory
3874         * locate/Makefile.am: create updatedb from updatedb.sh
3876         * locate/updatedb.sh, locate/updatedb.in: removed file.  Replaced
3877         by updatedb.sh
3879         * locate/frcode.c, locate/code.c, locate/bigram.c: add macros
3880         PARAMS rather than P_.  Add prototypes.
3882         * lib/xstat.in: new file
3884         * lib/Makefile.am: update to latest versions of library files.
3886         * find/testsuite/Makefile.am: add CLEANFILES
3888         * find/util.c: remove definition of basename
3889         
3890         * find/util.c, find/tree.c, find/pred.c, find/parser.c,
3891         find/fstype.c, find/find.c, find/defs.h: add macros PARAMS rather
3892         than P_, for consistency, change to prototypes
3894         * find/Makefile.am: Add prototypes and ansi2knr
3896         * configure.in: add Galition and Estonian languages.
3897         Miscellaneous other fixes.
3898         
3900 2000-03-11  Kevin Dalley  <kevind@rahul.net>
3902         * lib/basename.c: Add file from libit.
3903         * lib/Makefile.am (libfind_a_SOURCES): add basename.c since it is
3904         no longer replaceable.
3906         * find/util.c: Remove definition of basename, which is now in
3907         lib/basename.c (as base_name).
3908         * find/pred.c: Use base_name, not basename.
3909         * find/defs.h: Likewise.
3911         * configure.in : Don't replace basename.  Now we use only
3912         base_name.
3914 2000-02-26  Kevin Dalley  <kevind@rahul.net>
3916         * Version 4.1.4
3917         
3918         * lib/strtoul.c: added to distribution
3919         
3920         * configure.in: added strtoul to AC_REPLACE_FUNCS
3922         * configure.in: added jm_CHECK_ALL_TYPE
3924 2000-02-23  Kevin Dalley  <kevind@rahul.net>
3926         * po/ChangeLog: removed, merged with top-level ChangeLog.
3927         
3928         * po/de.po: new version of German file.
3929         
3930         * po/gl.po, po/et.po: new languages, Estonian and Galician.
3932         * locate/updatedb.sh (PRUNEFS): enclose paths in quotes
3934 2000-02-17  Kevin Dalley  <kevind@rahul.net>
3936         * po/it.po: new version of Italian file.
3937         
3938         * locate/updatedb.sh (prunefs_exp): have sed statement use '*'
3939         rather than the often unsupported '+'.
3941 2000-02-13  Kevin Dalley  <kevind@rahul.net>
3943         * configure.in: removed AC_ARG_PROGRAM, which is already in
3944         AM_INIT_AUTOMAKE. 
3946         * locate/Makefile.am (updatedb), locate/updatedb.sh: add
3947         transforms of find, frcode, bigram, and code back into
3948         updatedb.sh, which were accidentally removed.
3950 2000-02-12  Kevin Dalley  <kevind@rahul.net>
3952         * lib/wait.h: updated address.
3954 2000-01-26  Kevin Dalley  <kevind@rahul.net>
3956         * Version 4.1.3
3958         * acconfig.h: added internationalization.
3960         * intl/*: copied from tar-1.13.17.
3962         * locate/Makefile.am, locate/locate.c, locate/code.c:
3963         internationalized file.
3965         * locate/frcode.c, locate/bigram.c: include headers from ../lib
3966         directory.
3968         * xargs/Makefile.am, xargs/xargs.c: internationalized directory.
3970 2000-01-26  Kevin Dalley  <kevind@rahul.net>
3972         * POTFILES.in: added list of files with translatable strings.
3974         * de.po, es.po, fr.po, it.po, ko.po, nl.po, pl.po, pt_BR.po,
3975         ru.po, sv.po: New, slightly out of date, files imported from the
3976         Translation Project: http://www.iro.umontreal.ca/contrib/po/HTML/,
3977         German, Spanish, French, Italian, Korean, Dutch, Polish, Brazilian
3978         Portuguese.
3981 2000-01-24  Kevin Dalley  <kevind@rahul.net>
3983         * lib/xmalloc.c, lib/regex.c, lib/getopt.c: internationalization
3984         works with current version of gettext.
3986         * lib/getline.h : added declaration of getstr.
3987         * lib/Makefile.am (libfind_a_SOURCES): added getline.[ch] to
3988         standard compilation. Added internationalization.
3989         * find/Makefile.am (INCLUDES): corrected -I options for building
3990         in other directories.
3991         (LDADD): changes for internationalization.
3993         * configure.in (ALL_LINGUAS): added internationalization. 
3994         getline.c is always compiled and linked, because of getstr.
3995         AM_GNU_GETTEXT
3997         * Makefile.am: 
3998         (DISTCLEANFILES): added intl/libintl.h
3999         (AUTOMAKE_OPTIONS): added gnits to AUTOMAKE_OPTIONS
4000         (SUBDIRS): added intl and po
4002         * acconfig.h: added internationalization values
4004         * THANKS: added thanks file for gnits compatibility.
4006 2000-01-22  Kevin Dalley  <kevind@rahul.net>
4008         * added intl directory.
4010         * Added internationalization, only with slightly out of date po
4011         files for many locales.
4013 2000-01-18  Kevin Dalley  <kevind@rahul.net>
4015         * Version 4.1.2
4016         
4017         * locate/Makefile.am: remove creation of updatedb, since it is now
4018         made by configure
4020         * configure.in: updatedb is now created by configure.
4022         * xargs/Makefile.am: added testsuite to xargs directory
4024         * locate/updatedb.in: updatedb is now created by configure
4026         * locate/frcode.c, locate/code.c, locate/bigram.c: change return
4027         from main to int.  Replace getstr with getline, where possible.
4029         * locate/Makefile.am: place frcode, code, bigram in
4030         libexec_PROGRAMS
4032         * lib/xstrdup.c, lib/xmalloc.c, lib/xgetcwd.c, lib/xalloc.h,
4033         lib/strtol.c, lib/strstr.c, lib/strftime.c, lib/strdup.c,
4034         lib/stpcpy.c, lib/stat.c, lib/savedir.h, lib/savedir.c,
4035         lib/regex.h, lib/regex.c, lib/realloc.c, lib/pathmax.h,
4036         lib/modechange.h, lib/modechange.c, lib/mktime.c, lib/memset.c,
4037         lib/memcmp.c, lib/malloc.c, lib/lstat.c, lib/idcache.c,
4038         lib/getopt1.c, lib/getopt.c, lib/getopt.h, lib/getline.c,
4039         lib/getline.h, lib/fnmatch.c, lib/fnmatch.h, lib/filemode.c,
4040         lib/filemode.h, lib/fileblocks.c, lib/error.c, lib/error.h,
4041         lib/dirname.c, lib/alloca.c: updated to newer version of file from
4042         fileutils.
4044         * find/version.c: version number is now automatically generated by
4045         configure.
4047         * find/fstype.c (filesystem_type_uncached): fixes bug described as
4048         follows:  When 'find' looks for a fstype, it parses the /etc/mtab
4049         until it finds the good line. But, if there is, before the good
4050         line, a line whose mountpoint is unreachable, it fails.
4052         * doc/texinfo.tex: updated to newer version
4054         * doc/find.texi: added version.texi, fixed a few documentation bugs.
4056         * configure.in: new m4 features.
4058         * Makefile.am: moved testsuite to below corresponding directories
4059         find and xargs.
4061         * acconfig.h: updated to match new m4 files.
4063         * m4: added m4 directory, largely borrowed from Jim Meyering's
4064         fileutils.
4066 2000-01-17  Kevin Dalley  <kevind@rahul.net>
4068         * doc/find.texi (Multiple Files): placed missing xargs in examples
4070         * find/testsuite/find.gnu/depth.exp: added find tests to test
4071         "-depth" bug.
4073         * doc/find.texi: include version.texi for automatic determination
4074         of version number, update bug report email address to
4075         bug-findutils@gnu.org.
4076         (Combining Primaries With Operators): add indices for " ,", "()",
4077         "-a", "-o", etc.
4079 2000-01-17  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
4081         * find/tree.c (opt_expr): Never rearrange the arguments of the
4082         comma operator, since it is not commutative.  Remove useless
4083         assignment.2
4084         
4085 2000-01-17  Jonathan R. Ferro <jferro@corwin.ece.cmu.edu>
4086         
4087         * find/find.c (process_path): fix problem with "-depth" which is
4088         tested in depth.exp test.
4090 1999-08-15  Kevin Dalley  <Kevin Dalley <kevin@seti.org>>
4092         * find/fstype.c (filesystem_type_uncached): a stat failure with
4093         EACCESS will ignore this file system keep on looking.  Patch
4094         suggested by Vincent Danjean <vdanjean@ens-lyon.fr>.
4096 1999-08-15  Mark Kettenis  <kettenis@gnu.org>
4098         * xargs/xargs.c (LONG_MAX): Define if necessary.
4099         (main): If ARG_MAX is -1 (that is sysconf
4100         (_SC_ARG_MAX) returns -1) the system does not impose a limit.  In
4101         that case, use LONG_MAX as the limit.
4102         
4103 1999-08-15  Kevin Dalley  <Kevin Dalley <kevind@rahul.net>
4105         * find/version.c: version string is now set by config.h
4107 1999-08-08  Kevin Dalley  <kevin@seti.org>
4109         * Version 4.1.1
4111         * README-alpha: added alpha README file
4113         * find/defs.h: move lstat declarations into defs.h
4115         * xargs/Makefile.am, testsuite/Makefile.am, locate/Makefile.am,
4116         lib/Makefile.am, find/Makefile.am, doc/Makefile.am, configure.in,
4117         Makefile.am: update for automake-1.4
4119 1999-08-02  Kevin Dalley  <kevind@rahul.net>
4121         * AUTHORS: added file listing AUTHORS
4123         * lib/Makefile.am: modified code for EXTRA sources
4124         
4125 1999-01-30  Kevin Dalley  <kevind@rahul.net>
4127         * added const to declaration of basename, which should satisfy
4128         Linux as well as Hurd (fixes bug #31325).
4129         
4130 1998-12-04  Kevin Dalley  <kevind@rahul.net>
4131         
4132         * lib/nextelem.c: removed declaration of strdup and free, which
4133         meets GNU coding standards and allows compilation on more
4134         platforms.
4135         
4136         * find.texi: corrected explanation of -amin option which described
4137         hours instead of minutes
4138         
4139 1998-09-26  Kevin Dalley  <kevind@rahul.net>
4140         
4141         * lib/getline.c: fix getstr so that it correctly handles long file
4142         paths
4143         
4144 1998-09-20  Kevin Dalley  <kevind@rahul.net>
4145         
4146         * removed more function declarations to meet GNU coding standards
4147         
4148 1998-08-30  Kevin Dalley  <kevind@rahul.net>
4149         
4150         * lib/nextelem.c: removed declaration of strdup and free, which
4151         meets GNU coding standards and allow compilation on sparc
4152         
4153         * corrected explanation of -amin option which described hours
4154         instead of minutes
4155         
4156 1998-02-27  Kevin Dalley  <kevind@rahul.net>
4157         
4158         * locate/locate.c: add --existing option to locate, which only
4159         prints the names of files which still exist
4160         
4161 1998-02-08  Kevin Dalley  <kevind@rahul.net>
4162         
4163         * locate/locate.c: corrected get_short so that it correctly
4164         returns negative numbers.
4165         
4166         * remove declarations of various string functions.  Removing the
4167         declarations almost matches the GNU Coding Standards.
4168         
4169 1997-03-03  Kevin Dalley  <kevind@rahul.net>
4170         
4171         * xargs/xargs.c: xargs fixed to prevent occasional core dumping.
4172         
4173 1997-01-11  Kevin Dalley  <kevind@rahul.net>
4174         
4175         * locate/updatedb.sh: add --localuser option to updatedb, which
4176         allows find to be run as nobody, while allowing database file to
4177         be created as root, change suggested by
4178         <Bernd_Eckenfels@Wittumstrasse13.76646Bruchsal.de>
4179         
4180 1996-12-28  Kevin Dalley  <kevind@rahul.net>
4181         * added PRUNEFS as variable in updatedb and --prunefs as option to
4182         updatedb
4184 1996-05-27  Kevin Dalley  <kevind@rahul.net>
4185         
4186         * updatedb.sh: when NETPATHS is used, only su to NETUSER if whoami
4187         is root
4188 1996-04-27  Kevin Dalley  <kevind@rahul.net>
4190         * lib/getline.c (getstr): verify that nchars_avail is *really*
4191         greater than 0; set *n to a large enough number, stops some core
4192         dumping
4194 Thu Nov  3 09:23:33 1994  David J. MacKenzie  <djm@duality.gnu.ai.mit.edu>
4196         * Version 4.1.
4198         * locate/Makefile.am: Move updatedb from LIBSCRIPTS to SCRIPTS.
4200         * Makefile.am (distname): Change distribution name from find to
4201           findutils.
4203         * testsuite/config/unix.exp: Don't abuse xfail; simulate it correctly.
4205         * locate/Makefile.am (CLEANFILES): Fix typo.
4207 Wed Nov  2 15:11:52 1994  David J. MacKenzie  <djm@duality.gnu.ai.mit.edu>
4209         * The big 4 0.
4211         * lib/listfile.c find/defs.h (list_file): Take a stream arg.
4212         * find/pred.c (pred_ls): pass it.
4213         * find/parser.c pred.c defs.h (parse_fls, pred_fls): New functions.
4215 Tue Oct 25 16:09:04 1994  David J. MacKenzie  <djm@duality.gnu.ai.mit.edu>
4217         * find/pred.c (pred_fprintf): Flush output after \c.  From Chapman
4218         Flack.
4220         * find/parser.c (insert_fprintf): Warn about unrecognized \ and %
4221         sequences.
4223 Tue Oct 18 00:03:10 1994  David J. MacKenzie  <djm@duality.gnu.ai.mit.edu>
4225         * find/defs.h parser.c pred.c tree.c util.c: Globally change
4226         "victim" to "primary".
4228         * find/parser.c (insert_fprintf): For 'c' format, don't lose the
4229         need_stat information.  From Chapman Flack.
4231         * doc/find.texi perm.texi: New files.
4232         * configure.in: Configure the doc directory.
4234         * find/pred.c (pred_regex): Check that the regex matched the whole
4235         file name.
4237 Wed Oct 12 17:13:47 1994  David J. MacKenzie  (djm@duality.gnu.ai.mit.edu)
4239         * find/find.c (main): Tell what the invalid arg is.
4240         From Kaveh Ghazi.
4242 Fri Oct  7 12:33:24 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4244         * find/parser.c: Add -mount as an alias for -xdev.
4245         From Klaus.Steinberger@physik.uni-muenchen.de (Klaus Steinberger).
4247         * lib/modechange.c: Make umask_value unsigned short.
4249         * xargs/xargs.c: Use symbolic constants in longopts.
4250         From Chapman Flack.
4252 Wed Oct  5 11:23:09 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4254         * xargs/xargs.c (main, read_line, read_string, do_exec): Pass 
4255           along the lengths of the args.
4256           (main): Calculate length of replace_pat.
4257           (push_arg, do_insert): Use those lengths instead of calculating
4258           them. 
4260 Tue Oct  4 10:02:05 1994  David MacKenzie  <djm@churchy.gnu.ai.mit.edu>
4262         * locate/updatedb.sh Makefile.in: Add substitutions to get
4263           the transformed program names.
4265         * xargs/xargs.c: Put back the global variables for now.
4266         Rename some variables.  Increase default args_per_exec.
4267         Use boolean where applicable.
4268         (main): Reduce default arg_max by 2048 for POSIX.2.
4269         (read_string): Don't check EOF string.
4270         (read_line, read_string): Take initial args size into account.
4272 Sat Oct  1 17:43:13 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4274         * find/pred.c (launch): Use pid_t.
4276         * xargs/xargs.c (EOF_STR): Define and use.
4277         [__STDC__]: Declare xrealloc and xmalloc using void *.
4278         * find/defs.h: Likewise.
4280         * find/defs.h: Only declare stpcpy if !HAVE_STPCPY.
4282         * xargs/xargs.c: Replace most global variables with structure
4283           pointers passed as arguments.  Use pid_t.
4284         * lib/wait.h: Include sys/wait.h if HAVE_SYS_WAIT_H.
4285         * configure.in: Call AC_TYPE_MODE_T and AC_HEADER_SYS_WAIT.
4287         * xargs/xargs.c: Improve paging performance and memory
4288           fragmentation by building command arguments in a pre-allocated
4289           buffer and re-implementing the child pid list as an expandable
4290           array.  From tsi@gpu.srv.ualberta.ca (Marc Aurele La France).
4292 Thu Sep 29 11:38:07 1994  David J. MacKenzie  (djm@geech.gnu.ai.mit.edu)
4294         * xargs/xargs.c [__STDC__]: Prototype declarations.
4296 Wed Sep 28 11:25:53 1994  David J. MacKenzie  (djm@duality.gnu.ai.mit.edu)
4298         * find/fstype.c [AFS, __STDC__]: Fix definition of _VICEIOCTL.
4300 Tue Sep 27 08:14:27 1994  David MacKenzie  <djm@churchy.gnu.ai.mit.edu>
4302         * find/fstype.c (fstype_to_string): Add more cases.  Use
4303           INITMOUNTNAMES if defined.
4304         * find/defs.h: Change boolean typedef from char to int.
4305         * configure.in: Check for mktime.
4307 Tue Sep 27 01:20:28 1994  Kaveh R. Ghazi  (ghazi@noc.rutgers.edu)
4309         * configure.in: Add AC_HEADER_STAT.
4310         * lib/listfile.c, lib/modetype.h: Add STAT_MACROS_BROKEN.
4312         * find/pred.c: Move the inclusion of defs.h ahead of the first
4313           test of _POSIX_VERSION.
4315         * lib/xgetcwd.c: Remove _POSIX_VERSION, rely only on HAVE_GETCWD.
4317 Mon Sep 26 16:43:01 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4319         * configure.in: Add AC_CONFIG_HEADER.
4320         * find/*.c locate/*.c xargs/*.c: Include config.h.
4321         * locate/updatedb.sh: Add --version; --old -> --old-format.
4323 Sun Sep 25 23:43:37 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4325         * find/* [__STDC__]: Prototype declarations.
4327         * locate/updatedb.sh: Account for renaming code and frcode.
4329         * find/find.c (process_path): Store dev and ino of directories in
4330           current branch to avoid symlink loops.  From DJ Delorie
4331           <dj@ctron.com>.
4332           (process_dir): If following symlinks, don't cd to ..; instead,
4333           cd to the starting directory and then to the parent directory.
4334           (main) [HAVE_FCHDIR]: Save the dev, ino of the starting directory.
4335           (process_top_path) [HAVE_FCHDIR]: Use it.
4336         * find/pred.c (launch) [HAVE_FCHDIR]: Likewise.
4337         * defs.h [HAVE_FCHDIR]: Declare starting_desc instead of starting_dir.
4338         * configure.in: Check for dev_t, ino_t, fchdir, fcntl.h.
4340 Fri Sep 23 11:55:38 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4342         * lib/listfile.c: Change #ifdef S_IFLNK to #ifdef S_ISLNK.
4343         From Andreas Luik <luik@isa.de>.
4345 Thu Sep 22 11:42:40 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4347         * locate/locate.c (last_literal_end): Dynamically allocate enough
4348           memory for the subpattern.
4350 Wed Sep 21 06:12:56 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4352         * locate/locate.c (locate): Warn if database is >8 days old.
4353         From Ian Lance Taylor.
4355         * xargs/xargs.c (do_exec), find/pred.c (launch): Set SIGCHLD to
4356           default.  From tsi@gpu.srv.ualberta.ca (Marc Aurele La France).
4357         * find/find.c pred.c util.c lib/listfile.c: Remove fflush(stdout)
4358           calls before error.  error does it, and doesn't trash errno.
4359           From tsi@gpu.srv.ualberta.ca (Marc Aurele La France).
4361         * find/fstype.c (filesystem_type_uncached): Don't trust mtab dev
4362           number on HPUX.  From Andreas Luik <luik@isa.de>.
4363           (filesystem_type_uncached): Don't cache unknown file system
4364           types.  From casper@fwi.uva.nl (Casper Dik).
4366         * locate/updatedb.sh: Collect results in temp file and rename it
4367           atomically.  From Andreas Luik <luik@isa.de>.
4369         * xargs/xargs.c (parse_num): Print a long using %ld.  From Jim
4370           Meyering.
4372         * find/defs.h find.c parser.c pred.c util.c, lib/nextelem.c:
4373           Emulate strchr and strrchr with index and rindex, not vice versa.
4375         Remove man directory; move man pages to the directories of the
4376         programs they document.
4378         * locate/frcode.c: Renamed from code.c.
4379         * locate/frcode.c (put_short): Renamed from puthalfword.
4380         * locate/locate.c (get_short): Renamed from gethalfword.
4381         (last_literal_end): Renamed from patprep.
4382         (locate): Recognize old-format databases too.
4383         * locate/locatedb.h: Add defines for old-format databases.
4384         * locate/bigram.c locate/code.c: Put back programs to create
4385         old-format databases.
4386         * locate/updatedb.sh: Take --old option to use them.
4388 Tue Sep 20 15:41:11 1994  David MacKenzie  <djm@geech.gnu.ai.mit.edu>
4390         * configure.in: Update for Autoconf v2.
4391         * find/pred.c lib/savedir.c: Use new symbols for dir header.
4392         * locate/updatedb.sh: Add --help option.
4394 Sun Feb 13 11:21:58 1994  Jim Meyering  (meyering@comco.com)
4396         * man/Makefile.in [man1ext, man5ext]: Set man5ext (not man1ext) to 5.
4398 Sun Aug  1 22:30:55 1993  David J. MacKenzie  (djm@goldman.gnu.ai.mit.edu)
4400         * bigram.c: File removed.
4401         * getline.c, memcmp.c, locatedb.h, updatedb.1, locatedb.5: New files.
4402         * updatedb.sh: Take command line options.
4403         Don't do bigram compression.
4404         * code.c, locate.c: Don't do bigram compression.
4405         Write and read counts in network byte order.
4406         Handle arbitrarily long paths.
4407         Use a magic number at the start of the databases.
4409 Thu Jul 29 20:44:53 1993  David J. MacKenzie  (djm@wookumz.gnu.ai.mit.edu)
4411         * Makefile.in (config.status): Run config.status --recheck, not
4412         configure, to get the right args passed.
4414 Thu Jul 22 12:53:12 1993  David J. MacKenzie  (djm@goldman.gnu.ai.mit.edu)
4416         * listfile.c (list_file): Print inode as a long.
4418 Wed Jul 14 14:14:45 1993  David J. MacKenzie  (djm@goldman.gnu.ai.mit.edu)
4420         * fstype.c [STDC_HEADERS]: Include stdlib.h.
4422         * Move unistd.h include from parser.c and pred.c to defs.h.
4424 Wed Jun 30 14:14:47 1993  David J. MacKenzie  (djm@goldman.gnu.ai.mit.edu)
4426         * updatedb.sh: Construct PRUNEREGEX from PRUNEPATHS with sed.
4427         Prune /afs.  Change NFSUSER to NETUSER and NFSPATHS to NETPATHS.
4429 Tue Jun 29 12:19:58 1993  David J. MacKenzie  (djm@goldman.gnu.ai.mit.edu)
4431         * pred.c (pred_fprintf): Abort in switch if `c' is not A, C, or T.
4433 Mon Jun 28 00:18:52 1993  David J. MacKenzie  (djm@wookumz.gnu.ai.mit.edu)
4435         * fstype.c (in_afs) [AFS]: New function, derived from code by
4436         Sanjay Ramamurthy <ramams@rpi.edu>.
4437         (filesystem_type_uncached) [AFS]: Call it if the fs type is
4438         otherwise unknown.
4440         * parser.c (parse_size): Recognize b and w suffixes for dd
4441         compatibility. 
4443         * code.c (puthalfword): New function.
4444         (main): Call it.
4445         * locate.c (gethalfword): New function.
4446         (locate): Call it.
4447         From ifado!wb@germany.eu.net (Wilhelm B. Kloke).
4449         * listfile.c: Include pathmax.h.
4450         (get_link_name): Always allocate PATH_MAX + 1 bytes for
4451         readlink buffers.
4452         * pred.c (pred_fprintf, insert_lname): Call get_link_name.
4454         * fstype.c (filesystem_type, filesystem_type_uncached),
4455         listfile.c (list_file): Take an arg for the path to access.
4456         * pred.c (pred_ls, pred_fstype, pred_fprintf): Pass it.
4458         * find.c (process_dir): Renamed from scan_directory.
4460         Changes from jrs@world.std.com (Rick Sladkey) to chdir into
4461         subdirectories instead of using string concatenation, for speed:
4462         * find.c (process_top_path): New function.
4463         (main): Call it, and xgetcwd.
4464         (process_path, scan_directory): Take new arg, the pathname
4465         relative to ".".  Use it and pass it on.
4466         * pred.c (pred_and, pred_comma, pred_negate, pred_or,
4467         pred_xtype, pred_fprintf, pred_empty, insert_lname):
4468         access rel_pathname instead of pathname.
4469         (launch): chdir to starting_dir.
4470         * defs.h: Declare rel_pathname and starting_dir.
4471         * find.c: Define them.
4473         * xgetcwd.c: New file.
4475         * updatedb.sh: Recognize -fstype NFS as well as nfs.
4476         * locate.c (patprep): Skip trailing character classes correctly.
4477         From luik@pharao.stgt.sub.org (Andreas Luik).
4479         * parser.c (parse_group): Make gid a gid_t, not short or int.
4480         (parse_nogroup): Cast gid to unsigned when using it as an array index.
4481         (parse_user, parse_nouser): Similar changes for uid.
4482         * defs.h: Use uid_t and gid_t.
4484         * parser.c (parse_help): New function.
4485         (parse_table):  Add --version, -help, and --help options.
4486         Rename struct parser_table_t to struct parser_table.
4487         (parse_version): Exit after printing message, on
4488         stdout not stderr.
4490         * xargs.c, locate.c (main, usage): Add --version and --help
4491         options.
4493 Wed Mar 31 22:39:57 1993  Jim Meyering  (meyering@comco.com)
4495         * parser.c: Define isascii macro to be 1 also if STDC_HEADERS.
4496         * xargs.c: Ditto.
4498 Wed Mar 31 16:04:07 1993  David J. MacKenzie  (djm@kropotkin.gnu.ai.mit.edu)
4500         * pred.c (pred_fprintf): If curdepth is 0, don't nuke
4501         segment->text; nuke cp.
4503 Mon Mar 29 15:57:20 1993  David J. MacKenzie  (djm@kropotkin.gnu.ai.mit.edu)
4505         * Version 3.8.
4507 Fri Mar 26 16:36:59 1993  David J. MacKenzie  (djm@hal.gnu.ai.mit.edu)
4509         * pred.c (pred_ilname, pred_iname, pred_ipath): New functions.
4510         (pred_table): Add them.
4511         (insert_lname): New function.
4512         (pred_lname): Call it.
4513         * parser.c (parse_ilname, parse_iname, parse_ipath,
4514         parse_iregex): New functions.
4515         (parse_table): Add them.
4516         (insert_regex): New function.
4517         (parse_regex): Call it.
4519         * fstype.c (filesystem_type): Cache previous result.
4520         (filesystem_type_uncached): New function.
4521         pred.c (pred_fstype, pred_fprintf): Adjust callers to not cache.
4523         * parser.c: Don't define const.
4525         * fstype.c [FSTYPE_STATFS] (fstype_to_string): #ifdef
4526         MOUNT_PC for 386bsd.
4528 Thu Mar 25 18:32:24 1993  David J. MacKenzie  (djm@goldman.gnu.ai.mit.edu)
4530         * parser.c (parse_regex): If ignore_case, set up a translate
4531         table for the regex.
4533         * defs.h: Include string.h or strings.h.
4534         * find.c fstype.c parser.c pred.c util.c: Don't.
4536         * nextelem.c [index]: Don't redefine.
4538 Wed Mar 24 17:47:10 1993  David J. MacKenzie  (djm@kropotkin.gnu.ai.mit.edu)
4540         * xargs.c (wait_for_proc): Exit with a nonrunnable command's exit
4541         status, not the wait status value.  From
4542         Andreas Schwab <schwab@lamothe.informatik.uni-dortmund.de>.
4544         * parser.c (make_segment, insert_fprintf), pred.c
4545         (pred_fprintf): Add '%F' to print filesystem type.
4547         * parser.c (parse_fprintf): Check if second arg is missing.
4549 Tue Mar 23 13:18:08 1993  David J. MacKenzie  (djm@kropotkin.gnu.ai.mit.edu)
4551         * pred.c (pred_fprintf): For %P, don't move past an assumed
4552         slash if the ARGV element ends with one, because in that case
4553         we didn't add one.
4555         * parser.c (parse_printf): Check for missing arg.
4556         From smj@cats.com (Steve James).
4558         * parser.c: Add #ifdef around atol decl for Linux.
4560 Fri Dec 11 08:17:07 1992  Jim Meyering  (meyering@comco.com)
4562         * defs.h: Remove dcl of process_path.
4563         * find.c: Put dcl of p
4565         * pred.c (pred_fprintf): Don't print "\n" unless it's in the
4566         format string.
4568 Mon Oct 21 22:30:35 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
4570         * defs.h, parser.c, pred.c: Rename some types that conflict
4571         with reserved POSIX.1 namespace (ended in _t).
4573         
4574         
4575 Thu Oct 17 22:39:06 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
4577         * xargs.c: Don't determine memory.h based on POSIX, which
4578         doesn't mention it.
4580 Sat Oct  5 16:11:05 1991  Jim Meyering (meyering at churchy.gnu.ai.mit.edu)
4582         * parser.c (parse_perm): Parse new `-perm +mode' notation.
4583         * pred.c (pred_perm): Interpret same.
4585 Fri Sep 13 14:58:27 1991  David J. MacKenzie  (djm at churchy.gnu.ai.mit.edu)
4587         * xargs.c [POSIX]: Always use sysconf to get ARG_MAX.
4589 Thu Sep  5 23:57:06 1991  David J. MacKenzie  (djm at apple-gunkies)
4591         * bigram.c, code.c (main): Make path_max int, not unsigned.
4592         * locate.c (main): Check for pathconf failure.
4594 Thu Sep  5 11:54:44 1991 Jim Meyering (meyering at churchy.gnu.ai.mit.edu)
4596         * parser.c (insert_fprintf): Add `\\' escape and fixed `%%'
4597         interpretation.
4598         * pred.c (pred_fprintf): fixed off-by-one indexing problem
4599         when handling [gGuU] printf formats.
4601 Wed Aug 28 20:53:57 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
4603         * Version 3.2.
4605 Mon Aug 26 18:57:32 1991  David J. MacKenzie  (djm at pogo.gnu.ai.mit.edu)
4607         * bigram.c, code.c: Fix handling of PATH_MAX.
4608         Check for anomalous input line lengths.
4609         From Bruce Evans.
4611 Fri Aug 23 11:00:18 1991  David J. MacKenzie  (djm at apple-gunkies)
4613         * pred.c (pred_fprintf): Round block number up to get K.
4615 Thu Aug 22 10:46:30 1991  David J. MacKenzie  (djm at apple-gunkies)
4617         * pred.c (pred_fprintf, pred_lname) [_AIX]: Allocate PATH_MAX
4618         byte for link object since st_size is wrong.
4620         * listfile.c (list_file): Don't convert blocks to kilobytes if
4621         env. var POSIX_ME_HARDER is defined.
4623         * fstype.c [FS_AIX_STATFS]: New case.
4625         * configure: Make sure the sys/mount.h is the 4.4BSD version
4626         with grep instead of just testing whether it exists.
4628         * listfile.c (list_file): Add 1 to number of 512-byte blocks
4629         before dividing to get 1K blocks (so we round up, not down).
4631 Wed Aug 21 13:02:46 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
4633         * Version 3.1.
4635         * parser.c (parse_fprintf), pred.c (pred_fprintf): Add %k
4636         conversion to print 1K blocks.
4638         * listfile.c: Print counts of 1K blocks, for consistency with
4639         new fileutils release.  Bad timing, there.
4641         * Version 3.0.
4643         * pred.c [VOID_CLOSEDIR]: Fake a return value for closedir,
4644         which returns void on some systems, like Sequents.
4645         * configure: Check sys/dir.h for 'void closedir'.
4647 Thu Aug 15 16:07:46 1991  David J. MacKenzie  (djm at frob)
4649         * modetype.h: Define POSIX.1 stat stuff if missing.
4650         * pred.c, parser.c, find.c, fstype.c: Don't define it.
4651         * updatedb.sh: Use a variable substitution method like configure's.
4652         * Makefile.in: Add datadir variable to separate programs from
4653         data file.
4655         * parser.c, pred.c: Rename -fulldays to -daystart.
4657         * defs.h, find.c, parser.c, pred.c: Add many new predicates
4658         from Jay Plett (jay@princeton.edu).
4660 Wed Aug 14 14:37:06 1991  David J. MacKenzie  (djm at bleen)
4662         * parser.c (parse_size), pred.c (pred_size), defs.h (struct
4663         size_t): Allow `k' to follow number to measure size in Kbytes.
4664         * parser.c (parse_size, get_num, insert_num), defs.h (struct
4665         size_t): Use enum comparison_type instead of short.
4667 Fri Aug  9 00:49:32 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
4669         * xargs.c (read_line): Use isblank, to support POSIX locales.
4671         * fstype [FS_STATVFS]: New code for SVR4, from slootman@dri.nl
4672         (Paul Slootman).
4673         * configure: Figure out when to use it.
4675         * configure: Check for st_blocks in struct stat.
4676         * listfile.c (ST_NBLOCKS): New macro.
4677         (list_file): Print file's block count.
4678         Use S_ISLNK instead of S_IFLNK.
4679         * fileblocks.c: New file, from fileutils.
4681 Thu Aug  8 17:20:19 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
4683         * parser.c, pred.c [CACHE_IDS]: Optional code to turn uid and
4684         gid lookups into table lookups.
4686 Wed Aug  7 00:22:29 1991  David J. MacKenzie  (djm at wheat-chex)
4688         * configure, Makefile.in's: Support +srcdir option via VPATH.
4689         Clean up clean targets.
4691 Sat Jul 20 01:11:51 1991  David J. MacKenzie  (djm at apple-gunkies)
4693         * configure: Filter /etc and /usr/etc from path.
4695         * xargs.c (wait_for_proc): Fix handling of child exit status.
4696         (main): Exit with a nonzero status if any child did.
4698         * pred.c (launch): Flush stdout and stderr before forking.
4700         * fstype.c (filesystem_type) [FS_MNTENT]: Skip entries of
4701         type "ignore".
4703 Fri Jul 19 22:53:42 1991  David J. MacKenzie  (djm at bleen)
4705         * pred.c, locate.c: Use fnmatch instead of glob_match.
4706         * fnmatch.c, fnmatch.h: New files.
4708         * Many files: Use string.h if STDC_HEADERS, as well as if USG.
4710         * locate.c, code.c, bigram.c: Possibly use pathconf to get
4711         PATH_MAX.  Use malloc to allocate path arrays.
4713         * xargs.c: Possibly use sysconf to get ARG_MAX.
4714         (env_size): Make definition unconditional.
4715         (main): Do arg_max adjustment that can't be done with
4716         preprocessor now that ARG_MAX might be a function call.
4717         (do_exec): Exit with status 126 or 127 after failed exec, for
4718         POSIX.2 draft 11.1.
4720         * xargs.c, pred.c, listfile.c: Use POSIX, not UNISTD_MISSING.
4721         * wait.h: Use POSIX, not WAIT_MACROS_MISSING.
4723         * COPYING: Use version 2.  Update all files.
4725         * Replace Makefile and lib/Makefile with Makefile.in,
4726         lib/Makefile.in and configure.  Update README.
4728 Fri Apr  5 12:49:09 1991  David J. MacKenzie  (djm at apple-gunkies)
4730         * Version 2.2.
4732 Fri Mar 15 20:44:45 1991  David J. MacKenzie  (djm at geech.ai.mit.edu)
4734         * xargs.c (main): Always run the command if some args are left over.
4735         Rename some variables.
4737 Fri Jan 18 03:35:57 1991  David J. MacKenzie  (djm at geech.ai.mit.edu)
4739         * bigram.c, code.c, locate.c: Use LIMITS_MISSING, not
4740         _POSIX_SOURCE, to decide whether to include limits.h.
4742         * parser.c, pred.c, listfile.c: Use POSIX, not _POSIX_SOURCE,
4743         to decide whether to declare getpwuid and getgrgid.
4745         * xargs.c: Use POSIX, not _POSIX_SOURCE, to determine whether
4746         to include memory.h.
4748 Sat Jan 12 04:12:34 1991  David J. MacKenzie  (djm at wookumz.ai.mit.edu)
4750         * defs.h, find.c, parser.c, pred.c: Remove -permmask option.
4752 Thu Jan 10 04:32:52 1991  David J. MacKenzie  (djm at albert.ai.mit.edu)
4754         * wait.h: Include sys/types.h to get pid_t.
4756         * xargs.c [USG && !STDC_HEADERS]: Only include memory.h if not
4757         _POSIX_SOURCE.
4759 Tue Jan  1 23:53:32 1991  David J. MacKenzie  (djm at albert.ai.mit.edu)
4761         * Version 2.1.
4763 Wed Dec 26 03:25:51 1990  David J. MacKenzie  (djm at apple-gunkies)
4765         * locate.c, bigram.c, code.c: Attempt to get max. path length
4766         on more kinds of systems, incl. POSIX.
4768         * pred.c, listfile.c, xargs.c: Get some decls from unistd.h,
4769         if available. 
4771         * find.c, defs.h: Make `cur_day_start' a time_t, not long.
4773 Fri Dec 21 01:49:12 1990  David J. MacKenzie  (djm at egypt)
4775         * defs.h, parser.c: Remove unused field from `struct exec_t'.
4777         * xargs.c: Add +no-run-if-empty option to cause the command to
4778         not be run if the input is empty.
4780         * defs.h (struct exec_t): Change the array of offsets into an
4781         array of `struct path_arg'.
4782         * parser.c (insert_exec_ok): Fill in new fields, to allow "{}"
4783         to be substituted (multiple times) anywhere in an arg to -exec
4784         or -ok.
4785         * pred.c (pred_exec): Add code to substitute "{}" within args.
4786         (pred_ok): After prompting, just run pred_exec.
4788 Thu Dec 20 02:32:09 1990  David J. MacKenzie  (djm at egypt)
4790         * fstype.c (filesystem_type) [FS_MNTENT]: Allow for optional
4791         "0x" at front of "dev=" mount option, which amd puts there but
4792         Sun automounter doesn't.
4794 Sat Dec 15 19:01:12 1990  David J. MacKenzie  (djm at egypt)
4796         * find.c (main), util.c (usage): Make directory args optional,
4797         defaulting to ".".
4799 Sat Dec 15 18:36:29 1990  David J. MacKenzie  (djm at apple-gunkies)
4801         * listfile.c: Define major and minor if not defined (as in POSIX).
4803 Mon Dec  3 01:04:35 1990  David J. MacKenzie  (djm at alborz)
4805         * find.c, fstype.c, parser.c, pred.c, util.c: Flush stdout before
4806         writing to stderr, in case they have been redirected to the
4807         same file descriptor.
4809         * pred.c (launch): Use POSIX wait macros from wait.h.
4811         * xargs.c (print_xargs): Read from tty_stream, not stdin.
4813 Tue Nov 20 16:48:24 1990  David J. MacKenzie  (djm at apple-gunkies)
4815         * Version 2.0.
4817         * fstype.c [FS_USG_STATFS]: New code.
4818         [FS_STATFS]: For symlinks, statfs the directory the link is in
4819         instead of the link.
4820         * Various files: Conditionalize some declarations on
4821         STDC_HEADERS or _POSIX_SOURCE.
4823 Fri Nov 16 12:24:43 1990  David J. MacKenzie  (djm at egypt)
4825         * modetype.h: New file.
4826         parser.c, pred.c: Use it.
4828 Thu Nov 15 18:05:54 1990  David J. MacKenzie  (djm at apple-gunkies)
4830         * xmalloc.c: New file from fileutils.
4832         * fstype.c (fstype_to_string): Add case for MFS.
4833         (filesystem_type): Take a pathname as a second arg.
4834         [FS_STATFS] return "unknown" instead of exiting if statfs
4835         fails because of ENOENT.
4836         * pred.c (pred_fstype): Pass the pathname.  Set current_dev.
4837         * find.c (process_path): Make root_dev local again.
4839 Mon Nov 12 02:54:00 1990  David J. MacKenzie  (djm at apple-gunkies)
4841         * pred.c (pred_fstype): Free old fs type.
4843         * fstype.c, pred.c (pred_fstype), parser.c (parse_fstype): 
4844         Reread the file system type info. every time a filesystem
4845         mount point is crossed, to allow for automounting.
4847         * xstrdup.c: New file from fileutils.
4849         * find.c (process_path): Rename root_dev to current_dev and
4850         make it global, for -fstype.
4852         * wait.h: New file taken from xargs.c.
4854         * xargs.c: Make limits.h vs. sys/param.h conditional on
4855         LIMITS_MISSING instead of USG, to accomodate SVR2.
4857 Thu Nov  8 11:52:22 1990  David J. MacKenzie  (djm at apple-gunkies)
4859         * parser.c, pred.c, listfile.c: If not _POSIX_SOURCE, declare
4860         getpwuid and getgrgid.  Use them.
4862         * listfile.c: If not _POSIX_SOURCE, define S_ISDIR and
4863         S_ISBLK.  Use them. 
4865         * find.c: Use S_ISDIR instead of S_IFDIR, and define if not
4866         _POSIX_SOURCE. 
4868         * Makefile: Define AR and RANLIB and pass to child makes.
4869         lib/Makefile: Use them.
4871         * xargs.c (WIFSIGNALED): Redefine so it works.
4873 Mon Nov  5 00:02:01 1990  David J. MacKenzie  (djm at apple-gunkies)
4875         * find.c (process_path): For -xdev, process filesystem
4876         mountpoints (but don't descend them), instead of skipping them
4877         entirely. 
4879         * find.c, parser.c, defs.h: Add -follow predicate.
4881         * xargs.c: Change ifdefs to support STDC POSIX systems.
4883 Sat Nov  3 20:18:05 1990  David J. MacKenzie  (djm at apple-gunkies)
4885         * xargs.c (do_exec): Child process exits with status 255, not
4886         127, if command can't be run.
4888 Fri Nov  2 02:11:42 1990  David J. MacKenzie  (djm at apple-gunkies)
4890         * xargs.c: Exit with status 127 if running commmand fails, as
4891         required by POSIX.
4893         * fstype.c: Support -fstype for Ultrix (-DFS_GETMNT).
4894         Sun/BSD code is now -DFS_MNTENT.
4896 Thu Nov  1 13:06:01 1990  David J. MacKenzie  (djm at egypt)
4898         * Reorganize into subdirectories and add xargs.  Rewrite Makefiles.
4900         * find.c (process_path, main): Allow a maxdepth of 0, meaning
4901         only process command line args.
4903         * parser.c, pred.c: Add -print0 predicate.
4905         * xargs.c: Add -0 option and long options.  Move standard
4906         library functions into separate files.  Use error instead of
4907         fatal and fprintf/perror.  Use POSIX macros for examining exit
4908         status from wait.
4909         (read_string): New function.
4911 Fri Sep 21 10:21:09 1990  David J. MacKenzie  (djm at apple-gunkies)
4913         * find.c (process_path): Take DEPTH as an arg instead of ROOT,
4914         and change callers.
4916 Thu Sep 20 23:58:47 1990  David J. MacKenzie  (djm at apple-gunkies)
4918         * parser.c (parse_maxdepth): New function.
4919         * find.c (process_path): If -maxdepth was given, don't go
4920         more than that many levels deep.
4921         * defs.h: Declare maxdepth.
4923 Wed Sep 12 02:12:31 1990  David J. MacKenzie  (djm at apple-gunkies)
4925         * parser.c: Add -not as synonym for !.
4927 Sun Aug 26 06:16:08 1990  Jim Kingdon  (kingdon at pogo.ai.mit.edu)
4929         * Makefile (TAGS): New target.
4931 Sun Aug 12 00:32:01 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
4933         * xargs.c (main): Tell getopt to not permute.
4935 Sat Aug  4 21:43:45 1990  David J. MacKenzie  (djm at pogo.ai.mit.edu)
4937         * parser.c (parse_perm), pred.c (pred_perm): Always compare
4938         bits 07777.
4940         * locate.c, Makefile: Rename 'fastfind' program to 'locate',
4941         following comment in POSIX.2 draft 10 rationale for find.
4943 Wed Jul 25 18:45:03 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
4945         * listfile.c (getuser, getgroup): Make uid and gid unsigned
4946         short, not int.
4948 Mon Jul 16 13:40:13 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
4950         * defs.h: Don't declare fprintf and printf, in case they have
4951         prototypes in stdio.h (important for functions that use stdarg).
4953 Sun Jul 15 23:39:39 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
4955         * parser.c (parse_and): New function, for compatibility.
4957 Wed Jul  4 00:17:57 1990  David J. MacKenzie  (djm at apple-gunkies)
4959         * find.c (main): Only enclose expressions that produce no side
4960         effects within `( ... )'.
4962 Tue Jul  3 01:59:39 1990  David J. MacKenzie  (djm at apple-gunkies)
4964         * parser.c (strspn): Stop when end of string reached.
4966         * Version 1.2.
4968         * Move version number from Makefile to new file version.c.
4969         * parser.c: Recognize new -version predicate.
4971         * find.c (main): If no predicates that produce output are
4972         given, default to -print if the entire expression is true, not
4973         just the last part of an alternation.
4974         * Print the names of predicates with invalid arguments.
4976 Mon Jul  2 23:48:17 1990  David J. MacKenzie  (djm at apple-gunkies)
4978         * pred.c: Don't check for invalid comparison types in numeric
4979         predicate functions.
4981 Thu Jun 28 00:34:57 1990  David J. MacKenzie  (djm at apple-gunkies)
4983         * parser.c (parse_regex): Set fastmap and translate before
4984         compiling regex.
4986 Mon Jun 25 18:08:59 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
4988         * fastfind.c (fastfind): Initialize count to 0.
4990         * lib/updatedb.sh: Only do regex comparison on directories,
4991         for speed.
4993         * listfile.c (list_file): Truncate user and group name to 8 chars.
4995 Sun Jun 24 13:51:27 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
4997         * Version 1.1.
4999         * Makefile [DISTFILES]: Add COPYING.
5001 Fri Jun 22 03:54:27 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5003         * Version 1.0.
5005 Tue Jun 19 03:55:28 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5007         * lib/updatedb.sh: Prune entries that match PRUNEREGEX.
5008         Split up finding files from computing bigrams.
5009         Use redirection instead of nonportable grep -s to detect sort
5010         failure.  Optionally search network filesystems as well as
5011         local ones.
5013         * pred.c (pred_regex): Match against full pathname instead of
5014         just last element.
5015         * util.c (basename): Return "/", not "", if given "/".
5017         * find.c (process_path): Fix error in handling "/" directory.
5019 Mon Jun 18 01:49:16 1990  David J. MacKenzie  (djm at apple-gunkies)
5021         * parser.c [STRSPN_MISSING] (strspn): New function.
5023 Sun Jun 17 13:54:09 1990  David J. MacKenzie  (djm at apple-gunkies)
5025         * listfile.c: New file.
5026         * parser.c (parse_ls): New function.
5027         * pred.c (pred_ls): New function.
5029         * find.c (main): Remove interface to fastfind, to prevent
5030         conflict with POSIX syntax.
5031         * util.c (usage): Remove fastfind syntax from message.
5032         * fastfind.c (main): New function.
5033         * Makefile: Make fastfind a separate program.
5035         * find.c (main): Print correct message if a predicate arg is
5036         missing. 
5038         * parser.c (insert_exec_ok): Make args that start with a ';' but
5039         contain other characters not terminate the command.
5041 Fri Jun 15 00:33:45 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5043         * fstype.c: If MOUNTED isn't defined but MNT_MNTTAB is, use it
5044         instead.  True for HP/UX, at least.
5046 Thu Jun 14 10:10:25 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5048         * savedir.c: New file; now find won't run out of file
5049         descriptors in deep trees.
5050         * find.c (process_path): Use savedir.
5052 Sat Jun  9 03:15:21 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5054         * parser.c (parse_permmask): Allow symbolic mode masks.
5055         (parse_perm): Free 'struct change' when done with it.
5056         (get_oct): Function removed.
5058         * find.c (process_path): Allow arbitrarily-long filenames.
5059         More efficient string copying.  Initialize perm_mask to 07777
5060         instead of -1.
5062 Thu Jun  7 04:22:42 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5064         * Makefile, find.c: Use DIRENT to control whether <dirent.h>
5065         is used.
5067 Thu May 31 04:46:11 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5069         * parser.c (parse_regex): New function.
5070         * pred.c (pred_regex): New function.
5072         * fstype.c (read_mtab): If mtab entry has a "dev=" option
5073         (like in SunOS 4.1), use it, so there is no need to stat the
5074         special file later on.
5075         (xatoi, strstr): New functions.
5077 Mon May 21 01:04:42 1990  David J. MacKenzie  (djm at abyss)
5079         * lib/updatedb.sh: Put BINDIR in PATH.
5081         * fstype.c: Do nothing if MNTENT_MISSING is defined.
5083         * fstype.c: New file.
5084         * parser.c (parse_fstype): New function.
5085         * pred.c (pred_fstype): New function.
5087         * parser.c (parse_newer): Failure to stat -newer file is a
5088         fatal error.
5090         * pred.c (pred_ok): Flush output before reading.  Use getchar
5091         instead of scanf.
5093         * pred.c (pred_prune): Return false if -depth given.
5094         * find.c: Apply the predicates to the dir when -depth and
5095         -prune are given.
5097 Sun May 20 19:55:30 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5099         * pred.c (pred_prune): Set new global var `stop_at_current_level'.
5100         * find.c (process_path): Test and reset it.
5102 Fri May 18 01:56:17 1990  David J. MacKenzie  (djm at abyss)
5104         * modechange.c, modechange.h: New files.
5105         * parser.c (parse_perm): Use mode_compile and mode_adjust to
5106         parse arg, to allow symbolic mode for POSIX.
5108 Thu May 17 02:07:44 1990  David J. MacKenzie  (djm at abyss)
5110         * parser.c (get_oct): Don't consider an empty string a valid number.
5112         * parser.c (parse_perm): If arg starts with '-', set flag bit
5113         for special comparison (POSIX).
5114         * pred.c (pred_perm): If flag bit set, compare s[ug]id &
5115         sticky bits as well, and return true if the given perms are
5116         set, ignoring other bits.
5118         * find.c: New global var `exit_status'.  Use it.  (POSIX)
5119         * parser.c: Set `exit_status' if lstat on -newer file fails.
5121         * fastfind.c: New file.
5122         * find.c (main): Call fastfind if given only 1 arg.
5123         * util.c (usage): Update message. 
5124         * lib/{Makefile,updatedb.sh,bigram.c,code.c}: New files.
5125         * Makefile: Add 'all' and 'install' targets.
5127 Wed May 16 23:23:35 1990  David J. MacKenzie  (djm at abyss)
5129         * parser.c (parse_nogroup, parse_nouser): Implement.
5130         * pred.c (pred_nogroup, pred_nouser): Implement.
5132 Mon May 14 00:09:35 1990  David J. MacKenzie  (djm at abyss)
5134         * find.c: Add variable `stay_on_filesystem' for -xdev.
5135         (process_path): Take an arg determining whether this call is
5136         the root of a tree.  Use lstat instead of stat.  If
5137         stay_on_filesystem, don't process a dir on a different
5138         filesystem. 
5140         * parser.c (parse_newer): Use lstat instead of stat.  Is this right?
5141         (parse_xdev): Set stay_on_filesystem.
5143         * parser.c: Add dummy parse_nogroup, parse_nouser,
5144         parse_prune, and parse_xdev; to be written later.
5145         * pred.c: Add dummy pred_nogroup, pred_nouser, pred_prune.
5147         * find.c: Support System V directory library/headers.
5149         * find.c (process_path): Don't continue with a file that stat
5150         fails on.
5152         * defs.h, parser.c, pred.c: Change 'u_long' and 'u_short' to
5153         'unsigned long' and 'unsigned short'.
5154         * find.c, defs.h: Remove 'convert_glob' variable.
5155         * parser.c (parse_fullregex): Function removed.
5156         (parse_name): Remove regular expression code.
5157         (parse_type): Recognize sockets.
5158         Add code to check for missing arguments to many parse_* functions.
5159         * pred.c (pred_name): Use glob_match instead of regex.
5161 Sun May 13 17:45:09 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5163         * Replace fprintf, simple_error, and mem_error with error and
5164         usage. 
5166         * Fix string header includes for USG.
5168 Tue Mar 27 12:40:29 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5170         * defs.h: Change some #defines to enums.
5172 Sun Mar 25 22:08:58 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
5174         * find.c (main): Don't take basename of argv[0].
5176         * util.c (xmalloc): New function.
5177         * find.c, parser.c, utils.c: Use xmalloc instead of malloc.
5179         * pred.c: Remove emulation of regex for BSD and use GNU
5180         library version in regcmp.c instead.
5181         * parser.c: Remove emulation of regcmp for BSD and use GNU
5182         library version in regcmp.c instead.
5183         * Makefile: Link with regex.o and regcmp.o.
5184         Add a DISTFILES macro and dist target.
5186         * Indent source code.  Move RCS logs to this file.
5188 Wed Mar 21 09:30:18 1990  David J. MacKenzie  (djm at pogo.ai.mit.edu)
5190         * xargs.c: Indent.  Comment and rename some global variables.
5191         (main): Use getopt to parse options.  Open new global var
5192         `tty_stream' to /dev/tty if querying requested.
5193         (print_args): Read response from tty_stream, not stdin.
5194         (xmalloc): New function.
5195         Global: Use xmalloc instead of malloc.
5196         (usage): Revise message.
5198 87/02/22  20:01:20  20:01:20  cire (Eric B. Decker)
5200         * pred.c: added guts to pred_size
5202 87/02/22  00:59:42  00:59:42  cire (Eric B. Decker)
5204         * pred.c: added guts to perm and permmask.
5206 87/02/21  23:02:21  23:02:21  cire (Eric B. Decker)
5208         * pred.c: made pred_name only look at the last component of
5209         the path.
5211 87/02/21  22:26:47  22:26:47  cire (Eric B. Decker)
5213         * pred.c: added guts to name.  useds regex and regcmp to do
5214         regular expression handling.
5216 87/02/21  00:17:21  00:17:21  cire (Eric B. Decker)
5218         * pred.c: added predicate newer
5220 87/02/20  11:40:07  11:40:07  cire (Eric B. Decker)
5222         * pred.c: added guts to pred_ok
5224 87/02/19  23:52:37  23:52:37  cire (Eric B. Decker)
5226         * pred.c: finished exec.
5228 87/02/22  20:01:09  20:01:09  cire (Eric B. Decker)
5230         * parser.c: added guts to parse_size
5232 87/02/22  00:59:16  00:59:16  cire (Eric B. Decker)
5234         * parser.c: added guts of perm and permmask.  added getoct
5235         routine for perm and permmask
5237 87/02/21  23:32:50  23:32:50  cire (Eric B. Decker)
5239         * parser.c: added -fre, -fullregex predicate to turn off
5240         globbing conversion
5242 87/02/21  23:01:01  23:01:01  cire (Eric B. Decker)
5244         * parser.c: reworked name so the regexpr pattern includes $ at
5245         the end to force globbing to work correctly.  End of the
5246         pattern refers to the end of the filename.
5248 87/02/21  22:25:34  22:25:34  cire (Eric B. Decker)
5250         * parser.c: added guts to name.  uses a conversion from
5251         globbing to regexp format.  uses regex and regcmp to actually
5252         to the comparison.
5254 87/02/21  00:17:11  00:17:11  cire (Eric B. Decker)
5256         * parser.c: added predicate newer
5258 87/02/20  11:39:35  11:39:35  cire (Eric B. Decker)
5260         * parser.c: added ok guts.  consolidated exec and ok to using
5261         insert_exec_ok
5263 87/02/19  00:20:54  00:20:54  cire (Eric B. Decker)
5265         * parser.c: minor bug in -fulldays predicate parser.  It
5266         should have set the flag full_days to true.
5268 87/02/22  00:58:32  00:58:32  cire (Eric B. Decker)
5270         * find.c: changed where we are setting perm_mask to -1.  need
5271         to make sure that this happens before every apply_predicate.
5273 87/02/21  23:32:11  23:32:11  cire (Eric B. Decker)
5275         * find.c: added error checking for no paths.  better error
5276         message if illegal ordering.
5278 87/02/21  22:19:58  22:19:58  cire (Eric B. Decker)
5280         * find.c: added global convert_glob
5282 87/02/22  20:00:12  20:00:12  cire (Eric B. Decker)
5284         * defs.h: added definition of BLKSIZE for size
5286 87/02/21  22:19:25  22:19:25  cire (Eric B. Decker)
5288         * defs.h: added global convert_glob for name