diff options
Diffstat (limited to 'NEWS')
-rw-r--r-- | NEWS | 303 |
1 files changed, 302 insertions, 1 deletions
@@ -1,5 +1,302 @@ GNU coreutils NEWS -*- outline -*- +* Noteworthy changes in release 8.21 (2013-02-14) [stable] + +** New programs + + numfmt: reformat numbers + +** New features + + df now accepts the --output[=FIELD_LIST] option to define the list of columns + to include in the output, or all available columns if the FIELD_LIST is + omitted. Note this enables df to output both block and inode fields together. + + du now accepts the --threshold=SIZE option to restrict the output to entries + with such a minimum SIZE (or a maximum SIZE if it is negative). + du recognizes -t SIZE as equivalent, for compatibility with FreeBSD. + +** Bug fixes + + cp --no-preserve=mode now no longer exits non-zero. + [bug introduced in coreutils-8.20] + + cut with a range like "N-" no longer allocates N/8 bytes. That buffer + would never be used, and allocation failure could cause cut to fail. + [bug introduced in coreutils-8.10] + + cut no longer accepts the invalid range 0-, which made it print empty lines. + Instead, cut now fails and emits an appropriate diagnostic. + [This bug was present in "the beginning".] + + cut now handles overlapping to-EOL ranges properly. Before, it would + interpret "-b2-,3-" like "-b3-". Now it's treated like "-b2-". + [This bug was present in "the beginning".] + + cut no longer prints extraneous delimiters when a to-EOL range subsumes + another range. Before, "echo 123|cut --output-delim=: -b2-,3" would print + "2:3". Now it prints "23". [bug introduced in 5.3.0] + + cut -f no longer inspects input line N+1 before fully outputting line N, + which avoids delayed output for intermittent input. + [bug introduced in TEXTUTILS-1_8b] + + factor no longer loops infinitely on 32 bit powerpc or sparc systems. + [bug introduced in coreutils-8.20] + + install -m M SOURCE DEST no longer has a race condition where DEST's + permissions are temporarily derived from SOURCE instead of from M. + + pr -n no longer crashes when passed values >= 32. Also, line numbers are + consistently padded with spaces, rather than with zeros for certain widths. + [bug introduced in TEXTUTILS-1_22i] + + seq -w ensures that for numbers input in scientific notation, + the output numbers are properly aligned and of the correct width. + [This bug was present in "the beginning".] + + seq -w ensures correct alignment when the step value includes a precision + while the start value does not, and the number sequence narrows. + [This bug was present in "the beginning".] + + seq -s no longer prints an erroneous newline after the first number, and + outputs a newline after the last number rather than a trailing separator. + Also seq no longer ignores a specified step value when the end value is 1. + [bugs introduced in coreutils-8.20] + + timeout now ensures that blocking of ALRM signals is not inherited from + its parent, which would cause timeouts to be ignored. + [the bug dates back to the initial implementation] + +** Changes in behavior + + df --total now prints '-' into the target column (mount point) of the + summary line, accommodating the --output option where the target field + can be in any column. If there is no source column, then df prints + 'total' in the target column. + + df now properly outputs file system information with bind mounts present on + the system by skipping duplicate entries (identified by the device number). + Consequently, df also elides the early-boot pseudo file system type "rootfs". + + nl no longer supports the --page-increment option, which has been + deprecated since coreutils-7.5. Use --line-increment instead. + +** Improvements + + readlink now supports multiple arguments, and a complementary + -z, --zero option to delimit output items with the NUL character. + + stat and tail now know about CEPH. stat -f --format=%T now reports the file + system type, and tail -f uses polling for files on CEPH file systems. + + stty now supports configuring DTR/DSR hardware flow control where available. + +** Build-related + + Perl is now more of a prerequisite. It has long been required in order + to run (not skip) a significant percentage of the tests. Now, it is + also required in order to generate proper man pages, via help2man. The + generated man/*.1 man pages are no longer distributed. Building without + perl, you would create stub man pages. Thus, while perl is not an + official prerequisite (build and "make check" will still succeed), any + resulting man pages would be inferior. In addition, this fixes a bug + in distributed (not from clone) Makefile.in that could cause parallel + build failure when building from modified sources, as is common practice + for a patched distribution package. + + factor now builds on x86_64 with x32 ABI, 32 bit MIPS, and all HPPA systems, + by avoiding incompatible asm. [bug introduced in coreutils-8.20] + + A root-only test predicate would always fail. Its job was to determine + whether our dummy user, $NON_ROOT_USERNAME, was able to run binaries from + the build directory. As a result, all dependent tests were always skipped. + Now, those tests may be run once again. [bug introduced in coreutils-8.20] + + +* Noteworthy changes in release 8.20 (2012-10-23) [stable] + +** New features + + dd now accepts 'status=none' to suppress all informational output. + + md5sum now accepts the --tag option to print BSD-style output with GNU + file name escaping. This also affects sha1sum, sha224sum, sha256sum, + sha384sum and sha512sum. + +** Bug fixes + + cp could read from freed memory and could even make corrupt copies. + This could happen with a very fragmented and sparse input file, + on GNU/Linux file systems supporting fiemap extent scanning. + This bug also affects mv when it resorts to copying, and install. + [bug introduced in coreutils-8.11] + + cp --no-preserve=mode now no longer preserves the original file's + permissions but correctly sets mode specified by 0666 & ~umask + + du no longer emits a "disk-corrupted"-style diagnostic when it detects + a directory cycle that is due to a bind-mounted directory. Instead, + it detects this precise type of cycle, diagnoses it as such and + eventually exits nonzero. + + factor (when using gmp) would mistakenly declare some composite numbers + to be prime, e.g., 465658903, 2242724851, 6635692801 and many more. + The fix makes factor somewhat slower (~25%) for ranges of consecutive + numbers, and up to 8 times slower for some worst-case individual numbers. + [bug introduced in coreutils-7.0, with GNU MP support] + + ls now correctly colors dangling symlinks when listing their containing + directories, with orphaned symlink coloring disabled in LS_COLORS. + [bug introduced in coreutils-8.14] + + rm -i -d now prompts the user then removes an empty directory, rather + than ignoring the -d option and failing with an 'Is a directory' error. + [bug introduced in coreutils-8.19, with the addition of --dir (-d)] + + rm -r S/ (where S is a symlink-to-directory) no longer gives the invalid + "Too many levels of symbolic links" diagnostic. + [bug introduced in coreutils-8.6] + + seq now handles arbitrarily long non-negative whole numbers when the + increment is 1 and when no format-changing option is specified. + Before, this would infloop: + b=100000000000000000000; seq $b $b + [the bug dates back to the initial implementation] + +** Changes in behavior + + nproc now diagnoses with an error, non option command line parameters. + +** Improvements + + factor's core has been rewritten for speed and increased range. + It can now factor numbers up to 2^128, even without GMP support. + Its speed is from a few times better (for small numbers) to over + 10,000 times better (just below 2^64). The new code also runs a + deterministic primality test for each prime factor, not just a + probabilistic test. + + seq is now up to 70 times faster than it was in coreutils-8.19 and prior, + but only with non-negative whole numbers, an increment of 1, and no + format-changing options. + + stat and tail know about ZFS, VZFS and VMHGFS. stat -f --format=%T now + reports the file system type, and tail -f now uses inotify for files on + ZFS and VZFS file systems, rather than the default (for unknown file + system types) of issuing a warning and reverting to polling. tail -f + still uses polling for files on VMHGFS file systems. + +** Build-related + + root-only tests now check for permissions of our dummy user, + $NON_ROOT_USERNAME, before trying to run binaries from the build directory. + Before, we would get hard-to-diagnose reports of failing root-only tests. + Now, those tests are skipped with a useful diagnostic when the root tests + are run without following the instructions in README. + + We now build most directories using non-recursive make rules. I.e., + rather than running make in man/, lib/, src/, tests/, instead, the top + level Makefile.am includes a $dir/local.mk that describes how to build + the targets in the corresponding directory. Two directories remain + unconverted: po/, gnulib-tests/. One nice side-effect is that the more + accurate dependencies have eliminated a nagging occasional failure that + was seen when running parallel "make syntax-check". + + +* Noteworthy changes in release 8.19 (2012-08-20) [stable] + +** Bug fixes + + df now fails when the list of mounted file systems (/etc/mtab) cannot + be read, yet the file system type information is needed to process + certain options like -a, -l, -t and -x. + [This bug was present in "the beginning".] + + sort -u could fail to output one or more result lines. + For example, this command would fail to print "1": + (yes 7 | head -11; echo 1) | sort --p=1 -S32b -u + [bug introduced in coreutils-8.6] + + sort -u could read freed memory. + For example, this evokes a read from freed memory: + perl -le 'print "a\n"."0"x900'|valgrind sort --p=1 -S32b -u>/dev/null + [bug introduced in coreutils-8.6] + +** New features + + rm now accepts the --dir (-d) option which makes it remove empty directories. + Since removing empty directories is relatively safe, this option can be + used as a part of the alias rm='rm --dir'. This improves compatibility + with Mac OS X and BSD systems which also honor the -d option. + + +* Noteworthy changes in release 8.18 (2012-08-12) [stable] + +** Bug fixes + + cksum now prints checksums atomically so that concurrent + processes will not intersperse their output. + [the bug dates back to the initial implementation] + + date -d "$(printf '\xb0')" would print 00:00:00 with today's date + rather than diagnosing the invalid input. Now it reports this: + date: invalid date '\260' + [This bug was present in "the beginning".] + + df no longer outputs control characters present in the mount point name. + Such characters are replaced with '?', so for example, scripts consuming + lines output by df, can work reliably. + [This bug was present in "the beginning".] + + df --total now exits with an appropriate diagnostic and error code, when + file system --type options do not lead to a processed file system. + [This bug dates back to when --total was added in coreutils-7.0] + + head --lines=-N (-n-N) now resets the read pointer of a seekable input file. + This means that "head -n-3" no longer consumes all of its input, and lines + not output by head may be processed by other programs. For example, this + command now prints the final line, 2, while before it would print nothing: + seq 2 > k; (head -n-1 > /dev/null; cat) < k + [This bug was present in "the beginning".] + + ls --color would mis-color relative-named symlinks in / + [bug introduced in coreutils-8.17] + + split now ensures it doesn't overwrite the input file with generated output. + [the bug dates back to the initial implementation] + + stat and df now report the correct file system usage, + in all situations on GNU/Linux, by correctly determining the block size. + [df bug since coreutils-5.0.91, stat bug since the initial implementation] + + tail -f no longer tries to use inotify on AUFS or PanFS file systems + [you might say this was introduced in coreutils-7.5, along with inotify + support, but even now, its magic number isn't in the usual place.] + +** New features + + stat -f recognizes the new remote file system types: aufs, panfs. + +** Changes in behavior + + su: this program has been removed. We stopped installing "su" by + default with the release of coreutils-6.9.90 on 2007-12-01. Now, + that the util-linux package has the union of the Suse and Fedora + patches as well as enough support to build on the Hurd, we no longer + have any reason to include it here. + +** Improvements + + sort avoids redundant processing in the presence of inaccessible inputs, + or unwritable output. Sort now diagnoses certain errors at start-up, + rather than after potentially expensive processing. + + sort now allocates no more than 75% of physical memory by default, + to better share system resources, and thus operate more efficiently. + [The default max memory usage changed from 50% to 100% in coreutils-8.16] + + * Noteworthy changes in release 8.17 (2012-05-10) [stable] ** Bug fixes @@ -415,6 +712,10 @@ GNU coreutils NEWS -*- outline -*- join --header now skips the ordering check for the first line even if the other file is empty. [bug introduced in coreutils-8.5] + join -v2 now ensures the default output format prints the match field + at the start of the line when it is different to the match field for + the first file. [bug present in "the beginning".] + rm -f no longer fails for EINVAL or EILSEQ on file systems that reject file names invalid for that file system. @@ -3590,7 +3891,7 @@ packages, see ./old/*/NEWS. ======================================================================== -Copyright (C) 2001-2012 Free Software Foundation, Inc. +Copyright (C) 2001-2013 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or |