newsGNU Core Utilities - News: coreutils-8.16 released [stable]

Latest News
coreutils-9.4 released [stable] posted by pixelbeat, Tue 29 Aug 2023 03:16:59 PM UTC
coreutils-9.3 released [stable] posted by pixelbeat, Tue 18 Apr 2023 03:11:21 PM UTC
coreutils-9.2 released [stable] posted by pixelbeat, Mon 20 Mar 2023 03:53:57 PM UTC
coreutils-9.1 released [stable] posted by pixelbeat, Fri 15 Apr 2022 10:34:37 PM UTC
Subject: coreutils-9.0 released [stable] posted by pixelbeat, Fri 24 Sep 2021 01:55:23 PM UTC

coreutils-8.16 released [stable]

Item posted by Jim Meyering <meyering> on Mon 26 Mar 2012 01:35:22 PM UTC.

This is to announce coreutils-8.16, yet another stable release.

There have been 93 commits by 9 people in the 11 weeks since 8.15.
This adds a few bug fixes (notably, a du regression from 8.15), many
new options, features and improvements, all of which seem safe.

See the NEWS below for a brief summary.

Thanks to everyone who has contributed!
I'll be listing committers here, from now on.
These people contributed changes to this release[*]:

  Bernhard Voelker (4)
  Eric Blake (7)
  Harald Hoyer (1)
  Jim Meyering (44)
  Jérémy Compostella (11)
  Paul Eggert (5)
  Pádraig Brady (19)
  Rodrigo Campos (1)
  Roman Rybalko (1)

Jim [on behalf of the coreutils maintainers]

[*] The committer list is produced by running this command, and
excludes the 472 commits in the gnulib submodule since 8.15.
  git shortlog v8.15..v8.16|perl -lne '/^(\w.*):/ and print $1

Here is the GNU Coreutils home page:

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

To summarize the many gnulib-related changes, run these commands from
a git-cloned coreutils directory:
  git checkout v8.16
  git submodule summary v8.15

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.16.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 7FD9FCCB000BEEEE

and rerun the 'gpg --verify' command.

This release was bootstrapped with the following tools:
  Autoconf 2.68b.17-a7476
  Automake 1.11a
  Gnulib v0.0-7249-g880a2f6
  Bison 2.4.701-16d94


* Noteworthy changes in release 8.16 (2012-03-26) [stable]

** New features

  As a GNU extension, 'chmod', 'mkdir', and 'install' now accept operators
  '-', '+', '=' followed by octal modes; for example, 'chmod +40 FOO' enables
  and 'chmod -40 FOO' disables FOO's group-read permissions.  Operator
  numeric modes can be combined with symbolic modes by separating them with
  commas; for example, =0,u+r clears all permissions except for enabling
  user-read permissions.  Unlike ordinary numeric modes, operator numeric
  modes do not preserve directory setuid and setgid bits; for example,
  'chmod =0 FOO' clears all of FOO's permissions, including setuid and setgid.

  Also, ordinary numeric modes with five or more digits no longer preserve
  setuid and setgid bits, so that 'chmod 00755 FOO' now clears FOO's setuid
  and setgid bits.  This allows scripts to be portable to other systems which
  lack the GNU extension mentioned previously, and where ordinary numeric
  modes do not preserve directory setuid and setgid bits.

  dd now accepts the count_bytes, skip_bytes iflags and the seek_bytes
  oflag, to more easily allow processing portions of a file.

  dd now accepts the conv=sparse flag to attempt to create sparse
  output, by seeking rather than writing to the output file.

  ln now accepts the --relative option, to generate a relative
  symbolic link to a target, irrespective of how the target is specified.

  split now accepts an optional "from" argument to --numeric-suffixes,
  which changes the start number from the default of 0.

  split now accepts the --additional-suffix option, to append an
  additional static suffix to output file names.

  basename now supports the -a and -s options, which allow processing
  of more than one argument at a time.  Also the complementary
  -z option was added to delimit output items with the NUL character.

  dirname now supports more than one argument.  Also the complementary
  -z option was added to delimit output items with the NUL character.

** Bug fixes

  du --one-file-system (-x) would ignore any non-directory specified on
  the command line.  For example, "touch f; du -x f" would print nothing.
  [bug introduced in coreutils-8.15]

  mv now lets you move a symlink onto a same-inode destination file that
  has two or more hard links.  Before, it would reject that, saying that
  they are the same, implicitly warning you that the move would result in
  data loss.  In this unusual case, when not moving the symlink onto its
  referent, there is no risk of data loss, since the symlink will
  typically still point to one of the hard links.

  "mv A B" could succeed, yet A would remain.  This would happen only when
  both A and B were hard links to the same symlink, and with a kernel for
  which rename("A","B") does nothing and returns 0 (POSIX mandates this
  surprising rename no-op behavior).  Now, mv handles this case by skipping
  the usually-useless rename and simply unlinking A.

  realpath no longer mishandles a root directory.  This was most
  noticeable on platforms where // is a different directory than /,
  but could also be observed with --relative-base=/ or
  --relative-to=/.  [bug since the beginning, in 8.15]

** Improvements

  ls can be much more efficient, especially with large directories on file
  systems for which getfilecon-, ACL-check- and XATTR-check-induced syscalls
  fail with ENOTSUP or similar.

  'realpath --relative-base=dir' in isolation now implies '--relative-to=dir'
  instead of causing a usage failure.

  split now supports an unlimited number of split files as default behavior.


Back to the top

Powered by Savane 3.12