[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

coreutils-8.28 released [stable]

From: Pádraig Brady
Subject: coreutils-8.28 released [stable]
Date: Fri, 1 Sep 2017 19:47:43 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0

This is to announce coreutils-8.28, a stable release.
See the NEWS below for more details.

Thanks to everyone who has contributed!
The following people contributed changes to this release:

There have been 108 commits by 18 people in the 25 weeks since 8.27

  Andreas Schwab (1)      Josef Cejka (1)
  Assaf Gordon (5)        Kamil Dudka (1)
  Bo Rydberg (1)          Ludovic Courtès (1)
  Bogdan Drozdowski (1)   Michael Heimpold (1)
  Chris Davies (1)        Paul Eggert (25)
  Colin Watson (1)        Philipp Thomas (1)
  Jaak Ristioja (1)       Prateek saxena (1)
  Jacob Keller (1)        Pádraig Brady (56)
  Jim Meyering (10)       Sebastian Kisela (2)

Pádraig [on behalf of the coreutils maintainers]


Here is the GNU coreutils home page:

For a summary of changes and contributors, see:;a=shortlog;h=v8.28
or run this command from a git-cloned coreutils directory:
  git shortlog v8.27..v8.28

To summarize the 363 gnulib-related changes, run these commands
from a git-cloned coreutils directory:
  git checkout v8.28
  git submodule summary v8.27


Here are the compressed sources and a GPG detached signature[*]:

Use a mirror for higher download bandwidth:

[*] Use a .sig file to verify that the corresponding file (without the
.sig suffix) is intact.  First, be sure to download both the .sig file
and the corresponding tarball.  Then, run a command like this:

  gpg --verify coreutils-8.28.tar.xz.sig

If that command fails because you don't have the required public key,
then run this command to import it:

  gpg --keyserver --recv-keys DF6FD971306037D9

and rerun the 'gpg --verify' command.

This release was bootstrapped with the following tools:
  Autoconf 2.69
  Automake 1.15
  Gnulib v0.1-1546-ga20922f
  Bison 3.0.4


* Noteworthy changes in release 8.28 (2017-09-01) [stable]

** Bug fixes

  cp and mv now merely warn about any failure to preserve symlink ownership.
  Before, cp (without -p) would exit with a failure status, and a cross-device
  mv would leave such symlinks behind in the source file system.
  [the bug dates back to the initial implementation]

  When creating numbered backups, cp, install, ln, and mv now avoid
  races that could lose backup data in unlikely circumstances.  Since
  the fix relies on the renameat2 system call of Linux kernel 3.15 and
  later, the races are still present on other platforms.
  [the bug dates back to the initial implementation]

  cp, install, ln, and mv no longer lose data when asked to copy a
  backup file to its original via a differently-spelled file name.
  E.g., 'rm -f a a~; : > a; echo data > a~; cp --backup=simple a~ ./a'
  now fails instead of losing the data.
  [the bug dates back to the initial implementation]

  cp, install, ln, and mv now ignore nonsensical backup suffixes.
  For example, --suffix='/' and --suffix='' are now no-ops.
  [the bug dates back to the initial implementation]

  date and touch no longer overwrite the heap with large
  user specified TZ values (CVE-2017-7476).
  [bug introduced in coreutils-8.27]

  dd status=progress now just counts seconds; e.g., it outputs "6 s"
  consistently rather than sometimes outputting "6.00001 s".
  [bug introduced in coreutils-8.24]

  df no longer interacts with excluded file system types, so for example
  specifying -x nfs no longer hangs with problematic nfs mounts.
  [bug introduced in coreutils-8.21]

  df no longer interacts with dummy file system types, so for example
  no longer hangs with problematic nfs mounted via system.automount(5).
  [bug introduced in coreutils-8.21]

  `groups inva:lid root` no longer exits immediately upon failure.
  Now, it prints a diagnostic or a line to stdout for each argument.
  [bug introduced in the bourne-shell-to-C rewrite for coreutils-6.11]

  kill now converts from number to signal name correctly on AIX.
  Previously it would have always returned the 'EXIT' name.
  [bug introduced in fileutils-4.1.9]

  ls now quotes symlink targets consistently.  Previously it may not
  have quoted the target name if the link name itself didn't need quoting.
  [bug introduced in coreutils-8.26]

  split no longer exits when invocations of a --filter return EPIPE.
  [bug introduced in coreutils-8.26]

  md5sum --check no longer incorrectly enables BSD reversed format mode when
  ignoring some non checksum lines.  This also affects sha*sum and b2sum.
  [bug introduced in coreutils-8.14]

  tail -F 'dir/file' is now monitored even when 'dir' is replaced.
  [bug introduced with inotify support added in coreutils-7.5]

  tail -f with --pid=PID now processes all inotify events.
  Previously events may have been ignored completely upon PID death,
  or ignored until future events on the monitored files.
  [bug introduced with inotify support added in coreutils-7.5]

  tail -f /dev/tty is now supported by not using inotify when any
  non regular files are specified, as inotify is ineffective with these.
  [bug introduced with inotify support added in coreutils-7.5]

  uptime no longer outputs the AM/PM component of the current time,
  as that's inconsistent with the 24 hour time format used.
  [bug introduced in coreutils-7.0]

  expr now returns number of characters matched (instead of incorrect
  number of bytes matched) with 'match'/':' operators on multibyte strings.

** New features

  expand and unexpand now support specifying an offset for tab stops
  by prefixing the last specified number like --tabs=1,+8 which is
  useful for visualizing diff output for example.

  ls supports a new --hyperlink[=when] option to output file://
  format links to files, supported by some terminals.

  split supports a new --hex-suffixes[=from] option to create files with
  lower case hexadecimal suffixes, similar to the --numeric-suffixes option.

  env now has a --chdir (-C) option to change the working directory before
  executing the subsidiary program.

  expr supports multibyte strings for all string operations.

** Improvements

  mv --verbose now distinguishes rename and copy operations.

  stat -f -c %l, used to output the max file name length on a file system,
  is now supported on FreeBSD and OpenBSD.

  tail -f now exits immediately if the output is piped
  and the reader of the pipe terminates.

  tail -f no longer erroneously warns about being ineffective
  when following a single tty, as the simple blocking loop used
  is effective in this case.

Also posted at

Attachment: signature.asc
Description: OpenPGP digital signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]