There have been disproportionately many bug fixes since coreutils-7.5. It's an interesting mix of fixes for recent regressions and for a few older bugs.
coreutils snapshot: http://meyering.net/cu/coreutils-ss.tar.gz http://meyering.net/cu/coreutils-ss.tar.xz http://meyering.net/cu/coreutils-ss.tar.gz.sig http://meyering.net/cu/coreutils-ss.tar.xz.sig aka http://meyering.net/cu/coreutils-7.5.65-61cc6.tar.gz http://meyering.net/cu/coreutils-7.5.65-61cc6.tar.xz There have been many changes in gnulib, too, and this snapshot includes the very latest. I expect to release coreutils-7.6 on Thursday or Friday. Here's the NEWS I expect to see for coreutils-7.6: ** Bug fixes cp, mv now ignore failure to preserve a symlink time stamp, when it is due to their running on a kernel older than what was implied by headers and libraries tested at configure time. [bug introduced in coreutils-7.5] cp --reflink --preserve now preserves attributes when cloning a file. [bug introduced in coreutils-7.5] cp --preserve=xattr no longer leaks resources on each preservation failure. [bug introduced in coreutils-7.1] dd now exits with non-zero status when it encounters a write error while printing a summary to stderr. [bug introduced in coreutils-6.11] df no longer requires that each command-line argument be readable [bug introduced in coreutils-7.3] ls -i now prints consistent inode numbers also for mount points. This makes ls -i DIR less efficient on systems with dysfunctional readdir, because ls must stat every file in order to obtain a guaranteed-valid inode number. [bug introduced in coreutils-6.0] tail -f (inotify-enabled) now flushes any initial output before blocking. Before, this would print nothing and wait: stdbuf -o 4K tail -f /etc/passwd Note that this bug affects tail -f only when its standard output is buffered, which is relatively unusual. [bug introduced in coreutils-7.5] tail -f once again works with standard input. inotify-enabled tail -f would fail when operating on a nameless stdin. I.e., tail -f < /etc/passwd would say "tail: cannot watch `-': No such file or directory", yet the relatively baroque tail -f /dev/stdin < /etc/passwd would work. Now, the offending usage causes tail to revert to its conventional sleep-based (i.e., not inotify-based) implementation. [bug introduced in coreutils-7.5] ** New features cp --reflink accepts a new "auto" parameter which falls back to a standard copy if creating a copy-on-write clone is not possible. ---------------------------------------------------------------------- Changes in coreutils since 7.5 Eric Blake (5): dd: detect closed stderr build: avoid unused variable warnings on cygwin mv, cp: tweak LINK_FOLLOWS_SYMLINKS logic ln: add comments related to POSIX 2008 build: update from gnulib Jim Meyering (43): post-release administrivia build: update from gnulib build: update from *public* gnulib tests: skip (don't fail) a cp test, upon mount-related failure cp: ignore obscure failure to preserve symlink time stamps, global: convert indentation-TABs to spaces maint: teach "make syntax-check" the space-only indentation rule doc: HACKING: mention the new space-only indentation policy maint: remove Local Variables: indent-tabs-mode: nil from all sources maint: ensure we don't embed Emacs indent-tabs-mode setting lines tests: tail-2/assert: avoid risk of race condition tests: mkdir/selinux: avoid spurious failure on some SELinux systems build: stop earlier if touching ChangeLog fails build: prefix a few rules with $(AM_V_GEN) maint: ignore only man/*.1, not all *.1 files tests: cp/reflink-auto guard against a pathological $TMPDIR tests: move a coreutils-specific test from maint.mk to Makefile.am build: update from gnulib tests: other-fs-tmpdir: don't misbehave for quote-unfriendly $TMPDIR build: update bootstrap from gnulib doc: cp: update note on preserving symlink time stamps build: quiet "make check" in src/ maint: stdbuf: move a declaration; no-semantic-change maint: revert my stdbuf change: the result didn't even compile ls -i: print consistent inode numbers also for mount points maint: mbsalign.c: remove unnecessary assignment maint: tail: remove unnecessary initialization maint: dd: remove unnecessary initialization maint: shred: remove unnecessary initialization maint: chown, chgrp, chmod, chcon: remove unnecessary initialization maint: du: remove unnecessary initialization chcon, chmod, chgrp, chown, du: do not ignore fts_close failure build: update from gnulib df: don't fail due to an unreadable argument build: update gnulib submodule to latest tests: ls/stat-vs-dirent: avoid spurious test failure maint: remove unused file: lib/fdopendir-glibc.c tail: flush initial output before possibly blocking tests: ls-misc: don't let a bogus umask cause test failure tests: tail-2/flush-initial: correct race avoidance code tail -f: handle "-"/stdin once again doc: tweak NEWS build: update gnulib submodule to latest Kamil Dudka (1): doc: install -C: fix bug in the texi documentation Mike Frysinger (1): build: fix libcap configure flag handling Ondřej Vašík (1): cp: don't leak resources for each xattr preservation failure Petr Salinger (2): tests: fix a tail-2/pid failure on GNU/kFreeBSD stty: use TAB0, TAB1, and TAB2 only if defined Pádraig Brady (12): stdbuf: fix a small typo in --help output cp --reflink: add an "auto" parameter to fall back to a normal copy cp --reflink: preserve attributes on cloned files if asked tests: don't misbehave if $TMPDIR contains spaces timeout: defensive handling of all wait() errors timeout: remove a redundant assignment chcon, chmod, chgrp, chown, du: report fts_close failure tests: simplify and fix a race in 2 tail --follow tests tests: fix a failure when running tail-2/wait as root tests: test old tail -f method even on systems with inotify maint: remove some tab indentation from copy.c doc: make the tail --sleep-interval help less confusing