| by Arround The Web | No comments

coreutils @ Savannah: coreutils-9.11 released [stable]

This is to announce coreutils-9.11, a stable release.

Notable changes include:
 - cut(1), nl(1), and un/expand(1) are multi-byte character aware
 - cut(1) supports new -w, -F, -O options for better compatibility
 - cat(1) and yes(1) use zero-copy I/O on Linux (up to 15x faster)
 - date(1) now parses dot delimited dd.mm.yy format
 - cksum --check uses more defensive file name quoting
 - shuf -i operates up to 2x faster by using unlocked stdio
 - wc -l operates up to 4.5x faster on hosts with neon instructions
 - wc -m is up to 2.6x faster when processing multi-byte characters

There have also been many bug fixes and other changes
as summarized in the NEWS below.

There have been 306 commits by 12 people in the 10 weeks since 9.10
Thanks to everyone who has contributed!

  Bruno Haible (2)                Paul Eggert (15)
  Chris Down (2)                  Pádraig Brady (156)
  Collin Funk (91)                Sam James (1)
  Dr. David Alan Gilbert (1)      Sylvestre Ledru (17)
  Gabriel (1)                     Weixie Cui (2)
  Lukáš Zaoral (2)                oech3 (19)

Pádraig [on behalf of the coreutils maintainers] ==================================================================

Here is the GNU coreutils home page:
    https://gnu.org/s/coreutils/

Here are the compressed sources:
  https://ftp.gnu.org/gnu/coreutils/coreutils-9.11.tar.gz   (16MB)
  https://ftp.gnu.org/gnu/coreutils/coreutils-9.11.tar.xz   (6.3MB)

Here are the GPG detached signatures:
  https://ftp.gnu.org/gnu/coreutils/coreutils-9.11.tar.gz.sig
  https://ftp.gnu.org/gnu/coreutils/coreutils-9.11.tar.xz.sig

Use a mirror for higher download bandwidth:
  https://www.gnu.org/order/ftp.html

Here are the SHA256 and SHA3-256 checksums:

  SHA256 (coreutils-9.11.tar.gz) = IDO4owScBr/0mp486nK99Gg7zQy+uXUhHdVtuvi3Nq4=
  SHA3-256 (coreutils-9.11.tar.gz) = TwFrSgPuppf+jNggT+aXj037UfVVS2BmYBxXiPLYKxs=
  SHA256 (coreutils-9.11.tar.xz) = OUAk7aCllVIXztqc0SAeZdyPo6opwpURNaSVIdV8PMM=
  SHA3-256 (coreutils-9.11.tar.xz) = RkpNMip8O4ly+z3Fef9X20AsotbT1ycBZ5UbG84SiNM=

Verify the base64 SHA256 checksum with 'cksum -a sha256 --check'
from coreutils-9.2 or OpenBSD's cksum since 2007.

Verify the base64 SHA3-256 checksum with 'cksum -a sha3 --check'
from coreutils-9.8.

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-9.11.tar.gz.sig

The signature should match the fingerprint of the following key:

  pub   rsa4096/0xDF6FD971306037D9 2011-09-23 [SC]         Key fingerprint = 6C37 DC12 121A 5006 BC1D  B804 DF6F D971 3060 37D9
  uid                   [ultimate] Pádraig Brady <P@draigBrady.com>
  uid                   [ultimate] Pádraig Brady <pixelbeat@gnu.org>

If that command fails because you don't have the required public key,
or that public key has expired, try the following commands to retrieve
or refresh it, and then rerun the 'gpg --verify' command.

  gpg --locate-external-key P@draigBrady.com

  gpg --recv-keys DF6FD971306037D9

  wget -q -O- 'https://savannah.gnu.org/project/release-gpgkeys.php?group=coreutils&download=1' | gpg --import -

As a last resort to find the key, you can try the official GNU
keyring:

  wget -q https://ftp.gnu.org/gnu/gnu-keyring.gpg
  gpg --keyring gnu-keyring.gpg --verify coreutils-9.11.tar.gz.sig

This release is based on the coreutils git repository, available as

  git clone https://https.git.savannah.gnu.org/git/coreutils.git

with commit c01fd163a47468a8296fb369f5233853bb551bb6 tagged as v9.11.

For a summary of changes and contributors, see:

  https://gitweb.git.savannah.gnu.org/gitweb/?p=coreutils.git;a=shortlog;h=v9.11

or run this command from a git-cloned coreutils directory:

  git shortlog v9.10..v9.11

This release was bootstrapped with the following tools:
  Autoconf 2.73.1-b400b
  Automake 1.18.1
  Gnulib 2026-04-19 fb7312fa8d3df29f0ca0678f669b9a5b88a078ec
  Bison 3.8.2

NEWS

* Noteworthy changes in release 9.11 (2026-04-20) [stable]

** Bug fixes

  'dd' now always diagnoses partial writes correctly upon write failure.
  Previously it may have indicated that only full writes were performed.
  [This bug was present in "the beginning".]

  'fold' will no longer truncate output when encountering 0xFF bytes.
  [bug introduced in coreutils-9.8]

  'fold' is again responsive to its input.  Previously it would have delayed
  processing until 256KiB was read from the input.
  [bug introduced in coreutils-9.8]

  'kill --help' now has links to valid anchors in the html manual.
  [bug introduced in coreutils-9.10]

  When configured with --enable-systemd, the commands 'pinky',
  'uptime', 'users', and 'who' no longer consider the systemd session
  classes 'greeter', 'lock-screen', 'background', 'background-light',
  and 'none' to be users.
  [bug introduced in coreutils-9.4]

  'pwd' on ancient systems will no longer overflow a buffer
  when operating in deep paths longer than twice the system PATH_MAX.
  [bug introduced in coreutils-9.6]

  'stat --printf=%%N' no longer performs unnecessary checks of the QUOTING_STYLE
  environment variable.
  [bug introduced in coreutils-8.26]

  'timeout' no longer exits abruptly when its parent is the init process, e.g.,
  when started by the entrypoint of a container.
  [bug introduced in coreutils-9.10]

** New Features

  'cut' now supports multi-byte input and delimiters.  Consequently
  the -c option is now honored, and no longer an alias for -b, and
  the -n option is now honored, and no longer ignored.
  Also the -d option supports multi-byte delimiters.

  'cut' adds new options for better compatibility:
  The -w,--whitespace-delimited option was added to support blank aligned fields
  and for better compatibility with FreeBSD/macOS.
  The -O option was added as an alias for the --output-delimiter option,
  for better compatibility with busybox/toybox.
  The -F option was added as an alias for -w -O ' '
  for better compatibility with busybox/toybox.

  'date --date' now parses dot delimited dd.mm.yy format common in Europe.
  This is in addition to the already supported mm/dd/yy and yy-mm-dd formats.

** Changes in behavior

  'cksum --check' now uses shell quoting when required, to more robustly
  escape file names output in diagnostics.
  This also affects md5sum, sha*sum, and b2sum.

** Improvements

  'cat' now uses zero-copy I/O on Linux when appropriate, to improve throughput.
  E.g., throughput improved 6x from 12.9GiB/s to 81.8GiB/s on a Power10 system.

  'df --local' recognises more file system types as remote.
  Specifically: autofs, ncpfs, smb, smb2, gfs, gfs2, userlandfs.

  'df' improves duplicate mount suppression, by checking each mount against
  all previously kept entries for the same device, not just the latest one.

  'expand' and 'unexpand' now support multi-byte characters.

  'groups' and 'id' will now exit sooner after a write error,
  which is significant when listing information for many users.

  'install' now allows the combination of the --compare and
  --preserve-timestamps options.

  'fold', 'join', 'numfmt', 'uniq' now use more consistent blank character
  determination on non GLIBC platforms.  For example \u3000 (ideographic space)
  will be considered a blank character on all platforms.

  'nl' now supports multi-byte --section-delimiter characters.

  'shuf -i' now operates up to two times faster on systems with unlocked stdio
  functions.

  'tac' will now exit sooner after a write error, which is significant when
  operating on a file with many lines.

  'timeout' now properly detects when it is reparented by a subreaper process on
  Linux instead of init, e.g., the 'systemd --user' process.

  'wc -l' now operates up to four and a half times faster on hosts that support
  Neon instructions.

  'wc -m' now operates up to 2.6 times faster on GLIBC when processing
  non-ASCII UTF-8 characters.

  'yes' now uses zero-copy I/O on Linux to significantly increase throughput.
  E.g., throughput improved 15x from 11.6GiB/s to 175GiB/s on a Power10 system.

** Build-related

  ./configure --enable-single-binary=hardlinks is now supported on systems
  with dash as the system shell at /bin/sh.
  [issue introduced in coreutils-9.10]

  The test suite may have failed with a "Hangup" error if run non-interactively.
  [issue introduced in coreutils-9.10]

Source: Planet GNU