./sysutils/coreutils, GNU basic file, shell and text manipulation utilities

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 9.1, Package name: coreutils-9.1, Maintainer: pkgsrc-users

The GNU Core Utilities are the basic file, shell and text manipulation
utilities of the GNU operating system. These are the core utilities which
are expected to exist on every operating system.

Previously these utilities were offered as three individual sets of GNU
utilities, fileutils, shellutils, and textutils. Those three have been
combined into a single set of utilities called the coreutils.

MESSAGE.gsu [+/-]

Required to build:

Master sites: (Expand)

Filesize: 5578.227 KB

Version history: (Expand)

CVS history: (Expand)

   2022-07-27 16:34:10 by Ryo ONODERA | Files touched by this commit (1)
Log message:
coreutils: Reset PKGREVISION
   2022-07-27 16:32:37 by Ryo ONODERA | Files touched by this commit (1)
Log message:
coreutils, gnuls: Add forgotten patch
   2022-07-27 16:31:31 by Ryo ONODERA | Files touched by this commit (2)
Log message:
coreutils, gnuls: Update to 9.1

* Noteworthy changes in release 9.1 (2022-04-15) [stable]

** Bug fixes

  chmod -R no longer exits with error status when encountering symlinks.
  All files would be processed correctly, but the exit status was incorrect.
  [bug introduced in coreutils-9.0]

  If 'cp -Z A B' checks B's status and some other process then removes B,
  cp no longer creates B with a too-generous SELinux security context
  before adjusting it to the correct value.
  [bug introduced in coreutils-8.17]

  'cp --preserve=ownership A B' no longer ignores the umask when creating B.
  Also, 'cp --preserve-xattr A B' is less likely to temporarily chmod u+w B.
  [bug introduced in coreutils-6.7]

  On macOS, 'cp A B' no longer miscopies when A is in an APFS file system
  and B is in some other file system.
  [bug introduced in coreutils-9.0]

  On macOS, fmt no longer corrupts multi-byte characters
  by misdetecting their component bytes as spaces.
  [This bug was present in "the beginning".]

  'id xyz' now uses the name 'xyz' to determine groups, instead of xyz's uid.
  [bug introduced in coreutils-8.22]

  'ls -v' and 'sort -V' no longer mishandle corner cases like "a..a" \ 
vs "a.+"
  or lines containing NULs.  Their behavior now matches the documentation
  for file names like ".m4" that consist entirely of an extension,
  and the documentation has been clarified for unusual cases.
  [bug introduced in coreutils-7.0]

  On macOS, 'mv A B' no longer fails with "Operation not supported"
  when A and B are in the same tmpfs file system.
  [bug introduced in coreutils-9.0]

  'mv -T --backup=numbered A B/' no longer miscalculates the backup number
  for B when A is a directory, possibly inflooping.
  [bug introduced in coreutils-6.3]

** Changes in behavior

  cat now uses the copy_file_range syscall if available, when doing
  simple copies between regular files.  This may be more efficient, by avoiding
  user space copies, and possibly employing copy offloading or reflinking.

  chown and chroot now warn about usages like "chown root.root f",
  which have the nonstandard and long-obsolete "." separator that
  causes problems on platforms where user names contain ".".
  Applications should use ":" instead of ".".

  cksum no longer allows abbreviated algorithm names,
  so that forward compatibility and robustness is improved.

  date +'%-N' now suppresses excess trailing digits, instead of always
  padding them with zeros to 9 digits.  It uses clock_getres and
  clock_gettime to infer the clock resolution.

  dd conv=fsync now synchronizes output even after a write error,
  and similarly for dd conv=fdatasync.

  dd now counts bytes instead of blocks if a block count ends in "B".
  For example, 'dd count=100KiB' now copies 100 KiB of data, not
  102,400 blocks of data.  The flags count_bytes, skip_bytes and
  seek_bytes are therefore obsolescent and are no longer documented,
  though they still work.

  ls no longer colors files with capabilities by default, as file-based
  capabilties are very rarely used, and lookup increases processing per file by
  about 30%.  It's best to use getcap [-r] to identify files with capabilities.

  ls no longer tries to automount files, reverting to the behavior
  before the statx() call was introduced in coreutils-8.32.

  stat no longer tries to automount files by default, reverting to the
  behavior before the statx() call was introduced in coreutils-8.32.
  Only `stat --cached=never` will continue to automount files.

  timeout --foreground --kill-after=... will now exit with status 137
  if the kill signal was sent, which is consistent with the behavior
  when the --foreground option is not specified.  This allows users to
  distinguish if the command was more forcefully terminated.

** New Features

  dd now supports the aliases iseek=N for skip=N, and oseek=N for seek=N,
  like FreeBSD and other operating systems.

  dircolors takes a new --print-ls-colors option to display LS_COLORS
  entries, on separate lines, colored according to the entry color code.

  dircolors will now also match COLORTERM in addition to TERM environment
  variables.  The default config will apply colors with any COLORTERM set.

** Improvements

  cp, mv, and install now use openat-like syscalls when copying to a directory.
  This avoids some race conditions and should be more efficient.

  On macOS, cp creates a copy-on-write clone if source and destination
  are regular files on the same APFS file system, the destination does
  not already exist, and cp is preserving mode and timestamps (e.g.,
  'cp -p', 'cp -a').

  The new 'date' option --resolution outputs the timestamp resolution.

  With conv=fdatasync or conv=fsync, dd status=progress now reports
  any extra final progress just before synchronizing output data,
  since synchronizing can take a long time.

  printf now supports printing the numeric value of multi-byte characters.

  sort --debug now diagnoses issues with --field-separator characters
  that conflict with characters possibly used in numbers.

  'tail -f file | filter' now exits on Solaris when filter exits.

  root invoked coreutils, that are built and run in single binary mode,
  now adjust /proc/$pid/cmdline to be more specific to the utility
  being run, rather than using the general "coreutils" binary name.

** Build-related

  AIX builds no longer fail because some library functions are not found.
  [bug introduced in coreutils-8.32]
   2022-06-28 13:38:00 by Thomas Klausner | Files touched by this commit (3952)
Log message:
*: recursive bump for perl 5.36
   2022-03-28 21:48:29 by Thomas Klausner | Files touched by this commit (1)
Log message:
coreutils: remove unrecognized configure option
   2021-10-26 13:20:30 by Nia Alarie | Files touched by this commit (630)
Log message:
sysutils: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes
   2021-10-07 16:58:44 by Nia Alarie | Files touched by this commit (630)
Log message:
sysutils: Remove SHA1 hashes for distfiles
   2021-10-03 15:11:56 by Ryo ONODERA | Files touched by this commit (3)
Log message:
coreutils: Update to 9.0

* Noteworthy changes in release 9.0 (2021-09-24) [stable]

** Bug fixes

  chmod -v no longer misreports modes of dangling symlinks.
  [bug introduced in coreutils-5.3.0]

  cp -a --attributes-only now never removes destination files,
  even if the destination files are hardlinked, or the source
  is a non regular file.
  [bug introduced in coreutils-8.6]

  csplit --suppress-matched now elides the last matched line
  when a specific number of pattern matches are performed.
  [bug introduced with the --suppress-matched feature in coreutils-8.22]

  df no longer outputs duplicate remote mounts in the presence of bind mounts.
  [bug introduced in coreutils-8.26]

  df no longer mishandles command-line args that it pre-mounts
  [bug introduced in coreutils-8.29]

  du no longer crashes on XFS file systems when the directory hierarchy is
  heavily changed during the run.
  [bug introduced in coreutils-8.25]

  env -S no longer crashes when given unusual whitespace characters
  [bug introduced in coreutils-8.30]

  expr no longer mishandles unmatched \(...\) in regular expressions.
  [bug introduced in coreutils-6.0]

  ls no longer crashes when printing the SELinux context for unstatable files.
  [bug introduced in coreutils-6.9.91]

  mkdir -m no longer mishandles modes more generous than the umask.
  [bug introduced in coreutils-8.22]

  nl now handles single character --section-delimiter arguments,
  by assuming a second ':' character has been specified, as specified by POSIX.
  [This bug was present in "the beginning".]

  pr again adjusts tabs in input, to maintain alignment in multi column output.
  [bug introduced in coreutils-6.9]

  rm no longer skips an extra file when the removal of an empty directory fails.
  [bug introduced by the rewrite to use fts in coreutils-8.0]

  split --number=K/N will again correctly split chunk K of N to stdout.
  Previously a chunk starting after 128KiB, output the wrong part of the file.
  [bug introduced in coreutils-8.26]

  tail -f no longer overruns a stack buffer when given too many files
  to follow and ulimit -n exceeds 1024.
  [bug introduced in coreutils-7.5]

  tr no longer crashes when using --complement with certain
  invalid combinations of case character classes.
  [bug introduced in coreutils-8.6]

  basenc --base64 --decode no longer silently discards decoded characters
  on (1024*5) buffer boundaries
  [bug introduced in coreutils-8.31]

** Changes in behavior

  cp and install now default to copy-on-write (COW) if available.

  cp, install and mv now use the copy_file_range syscall if available.
  Also, they use lseek+SEEK_HOLE rather than ioctl+FS_IOC_FIEMAP on sparse
  files, as lseek is simpler and more portable.

  On GNU/Linux systems, ls no longer issues an error message on a
  directory merely because it was removed.  This reverts a change
  that was made in release 8.32.

  ptx -T no longer attempts to substitute old-fashioned TeX escapes
  for 8-bit non-ASCII alphabetic characters.  TeX indexes should
  instead use '\usepackage[latin1]{inputenc}' or equivalent.

  stat will use decomposed (major,minor) device numbers in its default format.
  This is less ambiguous, and more consistent with ls.

  sum [-r] will output a file name, even if only a single name is passed.
  This is consistent with sum -s, cksum, and other sum(1) implementations.

** New Features

  cksum now supports the -a (--algorithm) option to select any
  of the existing sum, md5sum, b2sum, sha*sum implementations etc.
  cksum now subsumes all of these programs, and coreutils
  will introduce no future standalone checksum utility.

  cksum -a now supports the 'sm3' argument, to use the SM3 digest algorithm.

  cksum --check now supports auto detecting the digest type to use,
  when verifying tagged format checksums.

  expr and factor now support bignums on all platforms.

  ls --classify now supports the "always", "auto", or \ 
"never" flags,
  to support only outputting classifier characters if connected to a tty.

  ls now accepts the --sort=width option, to sort by file name width.
  This is useful to more compactly organize the default vertical column output.

  ls now accepts the --zero option, to terminate each output line with
  NUL instead of newline.

  nl --line-increment can now take a negative number to decrement the count.

  stat supports more formats for representing decomposed device numbers.
  %Hd,%Ld and %Hr,%Lr will output major,minor device numbers and device types
  respectively.  %d corresponds to st_dev and %r to std_rdev.

** Improvements

  cat --show-ends will now show \r\n as ^M$.  Previously the \r was taken
  literally, thus overwriting the first character in the line with '$'.

  cksum [-a crc] is now up to 4 times faster by using a slice by 8 algorithm,
  and at least 8 times faster where pclmul instructions are supported.
  A new --debug option will indicate if pclmul is being used.

  md5sum --check now supports checksum files with CRLF line endings.
  This also applies to cksum, sha*sum, and b2sum.

  df now recognizes these file systems as remote:
  acfs, coda, fhgfs, gpfs, ibrix, ocfs2, and vxfs.

  rmdir now clarifies the error if a symlink_to_dir/ has not been traversed.
  This is the case on GNU/Linux systems, where the trailing slash is ignored.

  stat and tail now know about the "devmem", "exfat", \ 
"secretmem", "vboxsf",
  and "zonefs" file system types.  stat -f -c%T now reports the file system
  type, and tail -f uses polling for "vboxsf" and inotify for the others.

  timeout now supports sub-second timeouts on macOS.

  wc is up to 5 times faster when counting only new line characters,
  where avx2 instructions are supported.
  A new --debug option will indicate if avx2 is being used.