(linenum→info "unix/slp.c:2238")

coreutils/6.9/ChangeLog

    1: 2007-03-22  Jim Meyering  <jim@meyering.net>
    2: 
    3:         Version 6.9.
    4:         * NEWS: Record release date and new version number.
    5:         * configure.ac (AC_INIT): New version number.
    6: 
    7:         * tests/mv/hard-3: Correct the preceding change: $3 -> $2.
    8: 
    9: 2007-03-22  Paul Eggert  <eggert@cs.ucla.edu>
   10: 
   11:         Improve a test script.
   12:         * tests/mv/hard-3: Check for 'ls' failure, too.
   13:         Generate more-useful debugging output when 'ls' fails.
   14: 
   15: 2007-03-21  Jim Meyering  <jim@meyering.net>
   16: 
   17:         Fix a test script not to claim an ext2 file system is of type xfs.
   18:         * tests/du/slink: When using df --local and df --type=TYPE,
   19:         test only the exit code.  Don't bother with stdout.
   20:         Prompted by a report by Thomas Schwinge of an inaccurate diagnostic.
   21: 
   22:         * gl/lib/savewd.c: Remove this file, since the savewd_save change
   23:         is now in gnulib.  The other wasn't useful.
   24: 
   25: 2007-03-20  Jim Meyering  <jim@meyering.net>
   26: 
   27:         * gl/lib/acl.c: Remove this file, now that gnulib's version subsumes it.
   28: 
   29:         Skip part of this test when "." is not a local file system.
   30:         * tests/install/basic-1: Otherwise, it would fail on some NFS
   31:         file systems.
   32:         * tests/mkdir/p-3: Likewise.
   33: 
   34: 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
   35: 
   36:         * src/Makefile.am (dir_LDADD, ls_LDADD, vdir_LDADD):
   37:         Add $(LIB_ACL_TRIVIAL).
   38: 
   39: 2007-03-18  Jim Meyering  <jim@meyering.net>
   40: 
   41:         Fix a generic NFS-related test failure.
   42:         * tests/mkdir/p-3: When setting up an unreadable "." in an
   43:         inaccessible parent, make the parent inaccessible *after* making "."
   44:         unreadable.  Otherwise, running "chmod a-r ." in an already-
   45:         inaccessible parent would fail on NFS with "Stale NFS file handle".
   46: 
   47:         Fix a bug in how pr -m -s works.
   48:         * NEWS: Describe how the fix affects pr.
   49:         * src/pr.c (init_parameters): The --merge (-m) option does
   50:         not imply --expand-tabs (-e), so don't set "untabify_input".
   51:         Reported by Wis Macomson.
   52:         * tests/misc/pr: New file.  Test for the above fix.
   53:         * tests/misc/Makefile.am (TESTS): Add pr.
   54:         * THANKS: Update.
   55: 
   56: 2007-03-17  Jim Meyering  <jim@meyering.net>
   57: 
   58:         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
   59:         * bootstrap: Put ""s around use of $build_aux, in case
   60:         someone uses a name containing shell meta-characters.
   61:         Reported by Alfred M. Szmidt.
   62:         * tests/misc/tty-eof: Add shuf to the list of tested commands.
   63: 
   64:         Avoid test failure on NFS-mounted Solaris ZFS file system.
   65:         * tests/du/basic: Skip a test if "." is on a non-local file system.
   66: 
   67:         Avoid an obscure build failure, prefer waitpid over wait.
   68:         * src/install.c (strip): Use waitpid, not wait.  It's equivalent,
   69:         but feels less obsolescent.
   70: 
   71:         * bootstrap: Don't use \> in grep regexp.  For HP-UX.
   72: 
   73: 2007-03-16  Jim Meyering  <jim@meyering.net>
   74: 
   75:         Begin adding support for Solaris ZFS (4 entries per trivial ACL)
   76:         * gl/lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
   77:         (file_has_acl, copy_acl): Use it, rather than enumerating errno values.
   78:         (is_trivial_acl): New function.  Incomplete, for now.
   79:         (file_has_acl, copy_acl): Use the new function, rather than
   80:         counting the number of entries in an ACL.
   81: 
   82:         * bootstrap: Update from gnulib.
   83: 
   84:         * .x-sc_prohibit_atoi_atof: Add TODO here, too.
   85: 
   86: 2007-03-16  Paul Eggert  <eggert@cs.ucla.edu>
   87: 
   88:         * src/copy.c: Include filemode.h.
   89:         (overwrite_prompt): Say "try to overwrite", not "overwrite", to
   90:         make it clearer that the attempt may fail.  Problem reported by
   91:         Dan Jacobson in:
   92:         http://lists.gnu.org/archive/html/bug-coreutils/2007-03/msg00130.html
   93:         Output symbolic mode as well as numeric.
   94:         * tests/mv/i-2 (fail): Adjust to new prompt format.
   95: 
   96: 2007-03-15  Jim Meyering  <jim@meyering.net>
   97: 
   98:         Enforce policy: don't use *scanf functions.
   99:         * Makefile.maint (sc_prohibit_atoi_atof): Add to regexp and diagnostic.
  100:         * .x-sc_prohibit_atoi_atof: Give stty a temporary pass.
  101:         * TODO: note that stty.c needs this small clean-up.
  102: 
  103: 2007-03-13  Jim Meyering  <jim@meyering.net>
  104: 
  105:         Prepare to work on ACL-related failure when using Solaris ZFS.
  106:         * gl/lib/acl.c: New file, copied from gnulib.
  107: 
  108:         Work around a failing test due to an NFS-based race condition.
  109:         * tests/cp/sparse: Accept a report that the copy is *smaller*.
  110: 
  111: 2007-03-12  Jim Meyering  <jim@meyering.net>
  112: 
  113:         Make bootstrap.conf a tiny bit more generic.
  114:         * bootstrap.conf (XGETTEXT_OPTIONS): Exclude gettext-related .m4
  115:         files when e.g., AM_GNU_GETTEXT([external] appears in configure.ac.
  116: 
  117: 2007-03-10  Jim Meyering  <jim@meyering.net>
  118: 
  119:         Try to fix today's NFS-related failure: Treat ESTALE like EACCES.
  120:         * gl/lib/savewd.c: Copy this file from gnulib, then change
  121:         "errno != EACCES" to (errno != EACCES && errno != ESTALE).
  122:         The symptom was this failure in tests/install/basic-1:
  123:         ginstall: cannot create directory `rel/a': Stale NFS file handle
  124: 
  125:         The preceding change solved part of the problem.  Now ginstall fails.
  126:         * tests/install/basic-1: Temporarily, don't redirect ginstall's
  127:         stderr to /dev/null, so I can see why the NFS autobuilder's NFS test
  128:         is failing.
  129: 
  130:         * tests/install/basic-1: When setting up an unreadable "." in an
  131:         inaccessible parent, make the parent inaccessible *after* making "."
  132:         unreadable.  Otherwise, running "chmod a-r ." in an already-
  133:         inaccessible parent would fail on NFS with "Stale NFS file handle".
  134:         Reported by Bob Proulx.
  135: 
  136:         * Makefile.maint (po-check): Exclude c99-to-c89.diff.
  137: 
  138: 2007-03-09  Jim Meyering  <jim@meyering.net>
  139: 
  140:         Avoid test failures on Darwin 7.9.0 (MacOS X 10.3.9)
  141:         * tests/chgrp/basic: Don't let failure by chgrp to set the
  142:         group of a symlink make this test fail.  Do give a diagnostic.
  143:         In the chgrp-no-change-ctime test, add darwin7.9.0 as another
  144:         known-failing system.
  145:         When failing on some other system, print $host_triplet, too.
  146:         Also avoid test failures on Darwin 8.8.x (MacOS X 10.4).
  147:         Reported by Peter Fales.
  148: 
  149: 2007-03-08  Jim Meyering  <jim@meyering.net>
  150: 
  151:         * src/c99-to-c89.diff: Reflect the new c99'ism, update offsets.
  152: 
  153: 2007-03-08  Paul Eggert  <eggert@cs.ucla.edu>
  154: 
  155:         rm without -f: give a better diagnostic when euidaccess fails.
  156:         * src/remove.c (write_protected_non_symlink): Return int, not bool,
  157:         so that we can indicate failure too (as a postive error number).
  158:         (prompt): If write_protected_non_symlink fails, report that error
  159:         number and fail rather than charging ahead and removing the dubious
  160:         entry.  Redo the logic of printing a diagnostic so that we need to
  161:         invoke quote (full_filename (...)) only once.  More details at:
  162:         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/9952/focus=9996>
  163: 
  164: 2007-03-08  Jim Meyering  <jim@meyering.net>
  165: 
  166:         Generalize a few more cvs-isms.
  167:         * bootstrap (checkout_only_file): Rename from CVS_only_file.
  168:         Change comments and diagnostics not to say "CVS".
  169: 
  170:         * bootstrap: Run libtool, if necessary.
  171: 
  172:         Make bootstrap a little more general.
  173:         * bootstrap (build_aux): Factor out/use this definition.
  174:         Formally require a "AC_CONFIG_AUX_DIR($build_aux)" line in configure.ac.
  175:         (insert_sorted_if_absent): Move function definition "up", to
  176:         precede new first use.
  177:         If $build_aux/ doesn't exist initially, create it, and
  178:         mark it as ignored.
  179: 
  180: 2007-03-03  Andrew Church  <achurch@achurch.org>  (tiny change)
  181:             Paul Eggert  <eggert@cs.ucla.edu>
  182: 
  183:         Fix a bug: cp -x would fail to set mount point permissions.
  184:         * NEWS: mention cp -x bug fix
  185:         * src/copy.c (copy_internal): Don't return immediately after
  186:         copying a mount point that we do not intend to recurse under.
  187:         Based on a patch by Andrew Church.
  188: 
  189: 2007-03-03  Jim Meyering  <jim@meyering.net>
  190: 
  191:         pwd-unreadable-parent: Skip test on ia64/Linux, too.
  192:         * tests/misc/pwd-unreadable-parent: Also skip when $REPLACE_GETCWD.
  193:         Reported by Bob Proulx.
  194: 
  195: 2007-03-02  Jim Meyering  <jim@meyering.net>
  196: 
  197:         pwd-unreadable-parent: Skip test on non-Linux/GNU systems.
  198:         * tests/misc/pwd-unreadable-parent: Rather than trying to decide
  199:         whether this test has a chance of succeeding, run it only when
  200:         $(host_os) is linux-gnu.  It was failing on powerpc-apple-darwin8.8.0
  201:         * tests/misc/Makefile.am (TESTS_ENVIRONMENT): Add host_os=$(host_os).
  202: 
  203:         * tests/misc/pwd-long: Also allow "+" in $PWD.
  204: 
  205:         Remove another coreutils-ism.  Formatting cleanup.
  206:         * Makefile.maint (my-distcheck): Update an outdated comment.
  207:         (emit_upload_commands): Use $(PACKAGE) rather than "coreutils".
  208:         (my-distcheck): Skip the c99/c89 check if there's no such .diff file.
  209: 
  210: 2007-03-01  Jim Meyering  <jim@meyering.net>
  211: 
  212:         * Makefile.maint (warn_cflags): Hoist, adding "-Dlint -O".
  213:         (my-distcheck): Use the new variable, instead of too-long literal.
  214: 
  215:         Make "make syntax-check" rules less coreutils-specific.
  216:         * Makefile.maint (sc_cast_of_x_alloc_return_value): Use CVS_LIST_EXCEPT.
  217:         (sc_cast_of_alloca_return_value): Likewise.
  218:         (sc_root_tests): Do nothing if there is no check-root target
  219:         in tests/Makefile.am.
  220: 
  221:         Run the writable-files check only for release-building targets.
  222:         * Makefile.maint (local-checks-available): Remove writable-files.
  223:         (alpha beta major): Put it here, instead.
  224: 
  225:         "make syntax-check" now runs only Makefile.cfg-selected tests
  226:         * Makefile.maint (syntax-check-rules): Hoist this definition so that
  227:         it precedes the indirect use in the definition of $(local-check).
  228:         (local-check): Use :=, not just "=".
  229:         (syntax-check): Depend on $(local-check), not $(syntax-check-rules).
  230: 
  231: 2007-02-28  Bruno Haible  <bruno@clisp.org>
  232: 
  233:         * bootstrap.conf (gnulib_modules): Replace xreadlink with
  234:         xreadlink-with-size. Add xreadlink.
  235:         * src/copy.c (copy_internal): Update.
  236:         * src/ls.c (is_directory): Update.
  237:         * src/stat.c (print_stat): Update.
  238:         * src/readlink.c (main): Use the one-argument xreadlink function.
  239: 
  240: 2007-02-28  Paul Eggert  <eggert@cs.ucla.edu>
  241: 
  242:         * doc/coreutils.texi (Common options): --si outputs "M", not "MB".
  243:         Problem reported by Philip Rowlands in
  244:         <http://lists.gnu.org/archive/html/bug-coreutils/2007-02/msg00283.html>.
  245: 
  246: 2007-02-28  Jim Meyering  <jim@meyering.net>
  247: 
  248:         * .x-sc_file_system: Add the new test, tests/misc/df-P, to this
  249:         list of exceptions, for the "make distcheck" sc_file_system rule.
  250: 
  251:         * Makefile.maint (gnulib_snapshot_date): Remove now-unused definition.
  252: 
  253: 2007-02-27  Paul Eggert  <eggert@cs.ucla.edu>
  254: 
  255:         Make df -P immune to effects of e.g., the BLOCK_SIZE envvar.
  256:         * NEWS: With -P, the default block size and output format is not
  257:         affected by DF_BLOCK_SIZE, BLOCK_SIZE, or BLOCKSIZE.
  258:         * src/df.c (main): Implement this.
  259: 
  260: 2007-02-27  Jim Meyering  <jim@meyering.net>
  261: 
  262:         Add a test for the above.
  263:         * tests/misc/df-P: New file.
  264:         * tests/misc/Makefile.am (TESTS): Add df-P.
  265: 
  266: 2007-02-25  Jim Meyering  <jim@meyering.net>
  267: 
  268:         * Makefile.maint (announcement): Adjust so that it works with
  269:         announce-gen's --gnulib-snapshot-time-stamp option.
  270:         Indent one of the command lines using TAB, not 8 spaces.
  271: 
  272:         Post-release version change.
  273:         * NEWS: Add a line for 6.8+.
  274:         * configure.ac (AC_INIT): Set new version string.
  275: 
  276: 2007-02-24  Jim Meyering  <jim@meyering.net>
  277: 
  278:         Version 6.8.
  279:         * NEWS: Record release date and new version number.
  280:         * configure.ac (AC_INIT): New version number.
  281: 
  282:         Don't skip this test on new-enough Linux/GNU systems.
  283:         * tests/misc/pwd-unreadable-parent: Test $REPLACE_GETCWD = 0,
  284:         rather than for __GETCWD_PREFIX in config.h (the latter is no
  285:         longer defined, ever, due to gnulib changes).
  286:         * tests/misc/Makefile.am (TESTS_ENVIRONMENT): Define REPLACE_GETCWD.
  287: 
  288:         Remove the "gnits" option; it prohibits my using "+" as a version
  289:         string suffix, and all it does (beyond the default "gnu" option)
  290:         is to _require_ the THANKS file.
  291:         * configure.ac (AM_INIT_AUTOMAKE): Remove it.
  292: 
  293:         Remove all AUTOMAKE_OPTIONS settings in Makefile.am files.
  294:         * tests/chgrp/Makefile.am, tests/chmod/Makefile.am:
  295:         * tests/chown/Makefile.am, tests/cp/Makefile.am:
  296:         * tests/du/Makefile.am, tests/expr/Makefile.am:
  297:         * tests/factor/Makefile.am, tests/general/Makefile.am:
  298:         * tests/install/Makefile.am, tests/ln/Makefile.am:
  299:         * tests/ls/Makefile.am, tests/mkdir/Makefile.am:
  300:         * tests/mv/Makefile.am, tests/readlink/Makefile.am:
  301:         * tests/rm/Makefile.am, tests/rmdir/Makefile.am:
  302:         * tests/seq/Makefile.am, tests/stty/Makefile.am:
  303:         * tests/tee/Makefile.am, tests/touch/Makefile.am:
  304: 
  305:         * README: Document the OSF/1 4.0d build failure and work-around.
  306:         Reported by Bruno Haible.
  307: 
  308:         * NEWS: Use a simple "+" suffix to denote pre-release, not "-dirty".
  309:         Nicer connotations.
  310:         * configure.ac: Use 6.7+, not 6.7-dirty.
  311: 
  312: 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
  313: 
  314:         * NEWS: sort no longer compresses temporaries by default.
  315:         * bootstrap.conf: Remove findprog.
  316:         * doc/coreutils.texi (sort invocation): The default is to not
  317:         compress.  Don't treat "" specially.
  318:         * src/sort.c: Don't include findprog.h.
  319:         (create_temp): Compress only if the user specified --compress-program.
  320:         * tests/misc/sort-compress: Adjusts tests to match new behavior.
  321: 
  322: 2007-02-24  Jim Meyering  <jim@meyering.net>
  323: 
  324:         Avoid a shell syntax error, when building with an inadequate Perl.
  325:         * man/Makefile.am (.x.1): Add quotes around $(PERL) in case, since
  326:         it can expand to "/.../missing perl".
  327: 
  328:         * man/Makefile.am (.x.1): Warn when unable to update a man page.
  329:         Suggestion from Bruno Haible.
  330: 
  331: 2007-02-23  Bruno Haible  <bruno@clisp.org>
  332: 
  333:         Handle better the combination of old Perl and a pre-c99 compiler.
  334:         * man/Makefile.am (.x.1): If the autoconf test has determined that
  335:         perl is missing or not a sufficient version, do nothing.
  336: 
  337:         * tests/readlink/can-e: Put the closing double-quote at the end of a
  338:         backquoted word, not in the middle. Works around a bug in sh on
  339:         OSF/1 4.0d.
  340:         * tests/readlink/can-f: Likewise.
  341:         * tests/readlink/can-m: Likewise.
  342: 
  343:         * tests/du/slink: Skip the test if executing on an nfsv3 file system.
  344:         This avoids a test failure at least on OSF/1 4.0d.
  345: 
  346: 2007-02-23  Jim Meyering  <jim@meyering.net>
  347: 
  348:         * src/date.c (usage): Split a diagnostic that had grown to be
  349:         longer than the C89 maximum of 509 bytes.
  350: 
  351: 2007-02-23  Ed Santiago <ed@edsantiago.com>
  352: 
  353:         * src/date.c (usage): Mention that --rfc-3339 uses space, not 'T',
  354:         for a separator.  Include sample RFC 2822 and 3339 output.
  355: 
  356: 2007-02-23  Jim Meyering  <jim@meyering.net>
  357: 
  358:         With -Dlint, make shuf free all heap-allocated storage.
  359:         * src/shuf.c (main): Move declaration of input_lines to
  360:         function scope, and initialize to NULL, so we can free it.
  361:         [lint]: Free all malloc'd memory.
  362:         * tests/misc/shuf: Also test shuf's -e and -i options.
  363: 
  364: 2007-02-22  Jim Meyering  <jim@meyering.net>
  365: 
  366:         Merge in a change from some other incarnation of this file (gzip?)
  367:         * bootstrap (gnulib_tool): Skip get_translations if there is no po/ dir.
  368: 
  369:         Adjust preceding change not to perform an unaligned access.
  370:         * src/copy.c (copy_reg): Undo previous change.  Instead, make
  371:         it clearer that we're using a single-byte sentinel, and
  372:         [lint]: Initialize sizeof (uintptr_t) - 1 bytes after the sentinel.
  373:         Reported by Andreas Schwab.
  374: 
  375:         Placate valgrind, wrt ./cp --sparse=always
  376:         * src/copy.c (copy_reg): Place the sentinel by setting a
  377:         full word's worth of bits, not just a single byte's worth.
  378:         This avoids a harmless (but distracting) case of memory being
  379:         used-uninitialized.
  380: 
  381: 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
  382: 
  383:         Honor dd's noatime flag if possible, even if not supported on build fs
  384:         * doc/coreutils.texi (dd invocation): Warn that noatime might not be
  385:         reliable.
  386:         * src/dd.c (flags, usage): Look at O_NOATIME, not
  387:         HAVE_WORKING_O_NOATIME, to decide whether to support the noatime
  388:         flag, so that dd attempts O_NOATIME even if the build file system
  389:         does not support it.  Problem reported by Jim Meyering today in
  390:         bug-coreutils.
  391:         * tests/dd/misc: Generate a warning, not a failure, if noatime
  392:         exists but fails.
  393: 
  394: 2007-02-21  Jim Meyering  <jim@meyering.net>
  395: 
  396:         * tests/misc/date: Remove vestigial use of Data::Dumper.
  397: 
  398: 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
  399: 
  400:         * src/copy.c (cached_umask): Cast -1 to mode_t to avoid a warning
  401:         about out-of-range initializer with Sun C 5.8.
  402: 
  403: 2007-02-20  Jim Meyering  <jim@meyering.net>
  404: 
  405:         * bootstrap (CVS_only_file): Use README-hacking.
  406: 
  407:         Now that we use GIT, not cvs, rename README-cvs.
  408:         * README-hacking: Renamed from...
  409:         Update to reflect that we now use git.
  410: 
  411:         * README-cvs: ...this.
  412: 
  413:         * src/env.c (main): When invoked with no arguments (i.e. when printing
  414:         the environment), use a local variable to iterate through the global
  415:         "environ" array, rather than "environ" itself.  This is solely to
  416:         avoid changing the environment for an LD_PRELOAD-substituted "puts"
  417:         or "exit" function.  Tiny patch by Harvey Eneman.  See
  418:         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/9735>.
  419:         * THANKS: Update.
  420: 
  421:         * bootstrap: Move definitions of temporary directory names and the
  422:         new bt_regex "up" to precede all uses, so it's clearer what their
  423:         scope is.  Also, use [.], rather than \\., since the former works
  424:         even if eval'd.
  425: 
  426:         * bootstrap: Remove occurrences of $bt (._bootmp) from lib/Makefile.
  427:         Based on the bison 2007-02-19 change by Joel E. Denny.
  428: 
  429: 2007-02-19  Paul Eggert  <eggert@cs.ucla.edu>
  430: 
  431:         * NEWS: sort now uses a --compress-program option rather than
  432:         an environment variable.
  433:         * doc/coreutils.texi (sort invocation): Document this.
  434:         * src/sort.c (usage): Likewise.
  435:         (COMPRESS_PROGRAM_OPTION): New const.
  436:         (long_options, create_temp, main): Support new option.
  437:         * tests/misc/sort-compress: Test it.
  438: 
  439: 2007-02-19  Jim Meyering  <jim@meyering.net>
  440: 
  441:         * bootstrap: Fix typo s/dowloading/downloading/ in --help output.
  442: 
  443: 2007-02-18  Jim Meyering  <jim@meyering.net>
  444: 
  445:         * src/system.h: Don't include exit.h, now that it's subsumed
  446:         by the gnulib-generated stdlib.h.
  447: 
  448:         * tests/rm/fail-eacces: Skip this test when running as root.
  449:         Reported by Matthew Woehlke.
  450: 
  451:         * bootstrap: Use "._bootmp" as the temporary directory name,
  452:         not ".#bootmp".  The latter's "#" caused trouble with the new,
  453:         gnulib-added "LINK_WARNING_H = $(top_srcdir)/.#bootmp/..." line.
  454: 
  455: 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
  456: 
  457:         * bootstrap.conf (gnulib_modules): Add c-strcase.  Remove strcase.
  458:         * src/dircolors.c: Include c-strcase.h.
  459:         (dc_parse_stream): Use c_strcasecmp rather than
  460:         strcasecmp to avoid unreliable results in locales like Turkish
  461:         where strcasecmp is incompatible with the C locale.
  462: 
  463: 2007-02-13  Jim Meyering  <jim@meyering.net>
  464: 
  465:         Also check for and print stderr output, in case a program fails.
  466:         * tests/misc/tty-eof: Occasionally (not reproducible), this
  467:         test would fail, with one or more programs exiting nonzero, e.g.,
  468:         tty-eof: sha224sum exited with status 1 (expected 0)
  469:         Now, maybe we'll get a clue, the next time that happens.
  470: 
  471: 2007-02-12  Jim Meyering  <jim@meyering.net>
  472: 
  473:         * .x-sc_useless_cpp_parens: Ignore a false-positive in a shell script.
  474: 
  475:         * tests/misc/pwd-unreadable-parent: Skip the test if we're
  476:         definitely using the replacement.
  477:         * tests/misc/Makefile.am (TESTS_ENVIRONMENT): Define CONFIG_HEADER.
  478: 
  479: 2007-02-10  Jim Meyering  <jim@meyering.net>
  480: 
  481:         Remove excess leading spaces that would make help2man misbehave.
  482:         * src/printf.c (usage): Remove excess spaces on 2nd line of %b desc.
  483:         * src/nl.c (usage): Remove excess spaces on 2nd line of pBRE desc.
  484:         * src/dd.c (usage): Remove excess spaces on 2nd line of sync desc.
  485:         * src/date.c (usage): Use two spaces after each optional flag, not one.
  486:         Reported by Thomas Huriaux in <http://bugs.debian.org/410407>.
  487: 
  488:         * Makefile.maint (longopt_re): Relax the regexp, making square
  489:         brackets optional, so it matches the newly reported violations, too.
  490: 
  491:         * src/csplit.c (usage): Use two spaces (not one) to separate
  492:         each option string from its description, so help2man formats
  493:         the derived man page properly.  Reported by Thomas Huriaux in
  494:         <http://bugs.debian.org/410407>.
  495:         * src/df.c (usage): Likewise.
  496:         * src/du.c (usage): Likewise.
  497:         * src/install.c (usage): Likewise.
  498:         * src/ls.c (usage): Likewise.
  499: 
  500: 2007-02-03  Jim Meyering  <jim@meyering.net>
  501: 
  502:         Test for today's gnulib/lib/getcwd.c fix affecting pwd and readlink
  503:         * NEWS: Mention the bug fix.
  504:         * tests/misc/pwd-unreadable-parent: New file.
  505:         * tests/misc/Makefile.am (TESTS): Ad pwd-unreadable-parent.
  506: 
  507: 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
  508: 
  509:         * NEWS: Document fix for cp --preserve=mode.
  510:         * src/copy.c (copy_internal): Omit the group- or other-writeable
  511:         permissions when creating a directory, to avoid a race condition
  512:         if the special mode bits aren't right just after the directory is
  513:         created.
  514:         * src/cp.c (make_dir_parents_private): Likewise.
  515:         * tests/cp/parent-perm-race: Test for the "cp --preserve=mode"
  516:         race fix in copy.c.
  517: 
  518:         * NEWS: Document fix for cp --parents.
  519:         * src/cp.c (make_dir_parents_private): Report the error sooner with
  520:         "cp --parents DIR/FILE DEST" when DIR is a non-directory, thus not
  521:         creating the directory, DEST/DIR.
  522:         * tests/cp/cp-parents: Test for the non-race-condition bug fixed
  523:         by the above change.
  524: 
  525: 2007-02-02  Jim Meyering  <jim@meyering.net>
  526: 
  527:         * src/nl.c (proc_text): Use "NULL", not "(struct re_registers *) 0".
  528: 
  529:         * src/c99-to-c89.diff: Make shred.c Index: and a/b prefixes
  530:         consistent, so this can be applied with patch -p0.
  531:         Reported by Matthew Woehlke.
  532: 
  533:         * Makefile.maint (patch-check): Use patch with its -p2 option,
  534:         since that makes this check slightly more strict.
  535: 
  536: 2007-01-29  Jim Meyering  <jim@meyering.net>
  537: 
  538:         Plug a leak in ls.
  539:         * src/ls.c (print_dir): Don't leak a "DIR"+fd upon failure to
  540:         determine dev/inode or upon detecting a symlink loop.
  541: 
  542:         * src/ls.c: Rename three global variables.
  543:         (cwd_file): Rename from 'files'.
  544:         (cwd_n_alloc): Rename from 'nfiles'.
  545:         (cwd_n_used): Rename from 'files_index'.
  546: 
  547:         Shave 8 bytes off the size of "struct fileinfo".
  548:         * src/ls.c (fileinfo): Put all members of type "bool" together.
  549: 
  550: 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
  551: 
  552:         Modify "ls" to sort its data faster, using the new gnulib mpsort
  553:         module rather than qsort.  This is particularly a win in
  554:         environments where strcoll is slow, since mpsort typically calls
  555:         strcoll less often than qsort does.
  556:         * bootstrap.conf (gnulib_modules): Add mpsort.
  557:         * src/ls.c: Include mpsort.h.
  558:         (sorted_file, sorted_file_alloc): New vars, for a new vector of
  559:         pointers to the file info, for speed.
  560:         (clear_files, extract_dirs_from_files, sort_files, print_current_files):
  561:         (print_many_per_line, print_horizontal, print_with_commas):
  562:         (calculate_columns): Set and use new vector.
  563:         (initialize_ordering_vector): New function.
  564: 
  565: 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
  566: 
  567:         Adjust to today's change to gnulib, which added a module for
  568:         string.h to replace the little include files like strcase.h.
  569:         * src/dircolors.c: Don't include strcase.h.
  570:         * src/system.h: Don't include mempcpy.h, memrchr.h, stpcpy.h, strpbrk.h.
  571: 
  572: 2007-01-26  Jim Meyering  <jim@meyering.net>
  573: 
  574:         * src/dd.c (advance_input_after_read_error): Change diagnostic to
  575:         say "invalid file offset" rather than "screwy file offset".
  576: 
  577:         * .x-sc_cast_of_argument_to_free: Remove this file.
  578:         * Makefile.am (EXTRA_DIST): Likewise.
  579: 
  580: 2007-01-25  Dan Hipschman  <dsh@linux.ucla.edu>
  581: 
  582:         * src/sort.c (create_temp): Remove superfluous access-X_OK
  583:         check.  find_in_path does this for us.
  584: 
  585: 2007-01-24  Jim Meyering  <jim@meyering.net>
  586: 
  587:         Remove usually-skipped test.
  588:         * tests/cp/open-perm-race: Remove this file.  It is subsumed
  589:         by parent-perm-race.
  590:         * tests/cp/Makefile.am (TESTS): Remove open-perm-race.
  591:         * tests/sort/Makefile.am: Regenerate.
  592: 
  593:         Pass "make distcheck" again.
  594:         * src/sort.c (usage): Split a diagnostic that had grown to be
  595:         longer than the C89 maximum of 509 bytes.
  596:         * .x-sc_cast_of_argument_to_free: New file.  Allow a cast in sort.c.
  597:         FIXME: this is just temporary, while we wait to remove the offending
  598:         access-calling code.
  599:         * Makefile.am (EXTRA_DIST): Add .x-sc_cast_of_argument_to_free.
  600:         * Makefile.maint (sc_cast_of_argument_to_free): Use the
  601:         canonical, $$($(CVS_LIST_EXCEPT)).
  602:         * m4/.gitignore, m4/.cvsignore, lib/.gitignore, lib/.cvsignore: Update.
  603: 
  604: 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
  605: 
  606:         * NEWS: New option sort -C, proposed by XCU ERN 127, which looks
  607:         like it will be approved.  Also add --check=quiet, --check=silent
  608:         as long aliases, and --check=diagnose-first as an alias for -c.
  609:         * doc/coreutils.texi (sort invocation): Document this.
  610:         Also, mention that sort -c can take at most one file.
  611:         * src/sort.c: Implement this.
  612:         Include argmatch.h.
  613:         (usage): Document the change.
  614:         (CHECK_OPTION): New constant.
  615:         (long_options): --check now takes an optional argument, and is now
  616:         treated differently from 'c'.
  617:         (check_args, check_types): New constant arrays.
  618:         (check): New arg CHECKONLY, which suppresses diagnostic if -C.
  619:         (main): Parse the new options.
  620:         * tests/sort/Test.pm (02d, 02d, incompat5, incompat6):
  621:         New tests for -C.
  622: 
  623: 2007-01-24  Jim Meyering  <jim@meyering.net>
  624: 
  625:         Fix a typo.
  626:         * tests/misc/sort-compress: Use $abs_top_builddir, not $top_builddir.
  627:         * tests/misc/Makefile.am (TESTS_ENVIRONMENT): Likewise.
  628: 
  629:         Don't depend on "which".
  630:         * tests/misc/sort-compress (SORT): Use $abs_builddir, now which.
  631:         * tests/misc/Makefile.am (TESTS_ENVIRONMENT): Export top_builddir.
  632: 
  633: 2007-01-24  Dan Hipschman  <dsh@linux.ucla.edu>
  634: 
  635:         Test sort compression.
  636:         * tests/misc/Makefile.am: Add the test.
  637:         * tests/misc/sort-compress: New file containing the tests.
  638: 
  639: 2007-01-24  Jim Meyering  <jim@meyering.net>
  640: 
  641:         * NEWS: sort temp file compression: tweak wording.
  642:         * src/sort.c (struct sortfile) [name]: Declare member to be const.
  643: 
  644: 2007-01-21  Jim Meyering  <jim@meyering.net>
  645: 
  646:         * src/sort.c (MAX_FORK_RETRIES_COMPRESS, MAX_FORK_RETRIES_DECOMPRESS):
  647:         In pipe_fork callers, use these named constants, not "2" and "8".
  648:         (proctab, nprocs): Declare to be "static".
  649:         (pipe_fork) [lint]: Initialize local, pid,
  650:         to avoid unwarranted may-be-used-uninitialized warning.
  651:         (create_temp): Use the active voice.  Describe parameters, too.
  652: 
  653: 2007-01-21  James Youngman  <jay@gnu.org>
  654: 
  655:         Centralize all the uses of sigprocmask().  Don't restore an invalid
  656:         saved mask.
  657:         * src/sort.c (enter_cs, leave_cs): New functions for protecting
  658:         code sequences against signal delivery.
  659:         * (exit_cleanup): Use enter_cs and leave_cs instead of
  660:         calling sigprocmask directly.
  661:         (create_temp_file, pipe_fork, zaptemp): Likewise
  662: 
  663: 2007-01-21  Dan Hipschman  <dsh@linux.ucla.edu>
  664: 
  665:         Add compression of temp files to sort.
  666:         * NEWS: Mention this.
  667:         * bootstrap.conf: Import findprog.
  668:         * configure.ac: Add AC_FUNC_FORK.
  669:         * doc/coreutils.texi: Document GNUSORT_COMPRESSOR environment
  670:         variable.
  671:         * src/sort.c (compress_program): New global, holds the name of the
  672:         external compression program.
  673:         (struct sortfile): New type used by mergepfs and friends instead
  674:         of filenames to hold PIDs of compressor processes.
  675:         (proctab): New global, holds compressor PIDs on which to wait.
  676:         (enum procstate, struct procnode): New types used by proctab.
  677:         (proctab_hasher, proctab_comparator): New functions for proctab.
  678:         (nprocs): New global, number of forked but unreaped children.
  679:         (reap, reap_some): New function, wait for/cleanup forked processes.
  680:         (register_proc, update_proc, wait_proc): New functions for adding,
  681:         modifying and removing proctab entries.
  682:         (create_temp_file): Change parameter type to pointer to file
  683:         descriptor, and return type to pointer to struct tempnode.
  684:         (dup2_or_die): New function used in create_temp and open_temp.
  685:         (pipe_fork): New function, creates a pipe and child process.
  686:         (create_temp): Creates a temp file and possibly a compression
  687:         program to which we filter output.
  688:         (open_temp): Opens a compressed temp file and creates a
  689:         decompression process through which to filter the input.
  690:         (mergefps): Change FILES parameter type to struct sortfile array
  691:         and update access accordingly.  Use open_temp and reap_some.
  692:         (avoid_trashing_input, merge): Change FILES parameter like
  693:         mergefps and call create_temp instead of create_temp_file.
  694:         (sort): Call create_temp instead of create_temp_file.
  695:         Use reap_some.
  696:         (avoid_trashing_input, merge, sort, main): Adapt to mergefps.
  697: 
  698:         The idea of compressing sorts temporary files was first
  699:         suggested/implemented by Jay Soffian in 1998, and again
  700:         by Charles Randall in 2001.
  701: 
  702: 2007-01-20  Jim Meyering  <jim@meyering.net>
  703: 
  704:         * tests/misc/pwd-long: Work properly even when run from the
  705:         wrong one of two or more bind-mounted sibling directories.
  706:         Suggestion from Mike Stone in <http://bugs.debian.org/380552>.
  707: 
  708: 2007-01-20  Paul Eggert  <eggert@cs.ucla.edu>
  709: 
  710:         Standardize on list of signals when an app catches signals.
  711:         * src/csplit.c (main): Also catch SIGALRM, SIGPIPE, SIGPOLL,
  712:         SIGPROF, SIGVTALRM, SIGXCPU, SIGXFSZ.
  713:         * src/ls.c (main): Likewise (except SIGPIPE was already caught).
  714:         Note that ls.c is special, as it also catches SIGTSTP.
  715:         * src/sort.c (main): Likewise.  Also catch SIGQUIT.  More details in
  716:         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/9510>.
  717: 
  718: 2007-01-19  Dan Hipschman  <dsh@linux.ucla.edu>
  719:         and Paul Eggert  <eggert@cs.ucla.edu>
  720: 
  721:         * src/sort.c (cleanup): Clear temphead at the end.
  722:         (exit_cleanup): New function.
  723:         (main): Don't invoke atexit until we're ready.
  724:         Invoke it with exit_cleanup, not with cleanup and close_stdout,
  725:         to avoid a race condition with cleanup and signal handling.  More
  726:         details: http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/9508
  727: 
  728: 2007-01-18  Jim Meyering  <jim@meyering.net>
  729: 
  730:         * src/c99-to-c89.diff: Adjust remove.c offsets.
  731: 
  732: 2007-01-17  Jim Meyering  <jim@meyering.net>
  733: 
  734:         Make "rm --interactive=never ..." never prompt.
  735:         * NEWS: Mention this.
  736:         * src/remove.h (enum rm_interactive): New ternary type.
  737:         (struct rm_options) [interactive]: Use it, here -- rather than bool.
  738:         * src/remove.c (prompt): Reflect type change.
  739:         * src/mv.c (rm_option_init): Initialize to RMI_NEVER now.
  740:         * src/rm.c (main): Add a FIXME comment for '-d' option.
  741:         Adapt to type change of rm_options.interactive.
  742: 
  743:         * tests/rm/i-never: New file.  Test for the above fix.
  744:         * tests/rm/Makefile.am (TESTS): Add i-never.
  745: 
  746: 2007-01-15  Jim Meyering  <jim@meyering.net>
  747: 
  748:         * bootstrap (gnulib_tool): When adding to .cvsignore and .gitignore,
  749:         emit foo.h, for each foo_.h.  This yields one false-positive, fts.h,
  750:         but that's ok, since fts_.h will eventually be renamed.
  751: 
  752:         * src/remove.c (remove_dir): Don't use errno in diagnostic.
  753: