[Top][All Lists]

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

new snapshot available: coreutils-8.12.178-df9cd

From: Jim Meyering
Subject: new snapshot available: coreutils-8.12.178-df9cd
Date: Wed, 31 Aug 2011 21:40:06 +0200

Wow.  There have been nearly 1000 commits in *gnulib* since coreutils-8.12.
With 178 in coreutils proper, that is well above average[*].
If all goes well, I'll release coreutils-8.13 early next week,
so please beat this up (i.e., test) on a whatever systems you can.

A first for this snapshot, I've Cc'd the brand new platform-testers
mailing list:

coreutils snapshot: (.gz files are here, too)      4.8 MB

There are .gz and .sig files here, too:

Here's the NEWS, followed by git-shortlog output, followed
by a summary of commits per release since 6.9.
I've omitted the 969 lines of gnulib's shortlog output.


** Bug fixes

  chown and chgrp with the -v --from= options, now output the correct owner.
  I.E. for skipped files, the original ownership is output, not the new one.
  [bug introduced in sh-utils-2.0g]

  cp -r could mistakenly change the permissions of an existing destination
  directory.  [bug introduced in coreutils-6.8]

  cp -u -p would fail to preserve one hard link for each up-to-date copy
  of a src-hard-linked name in the destination tree.  I.e., if s/a and s/b
  are hard-linked and dst/s/a is up to date, "cp -up s dst" would copy s/b
  to dst/s/b rather than simply linking dst/s/b to dst/s/a.
  [This bug appears to have been present in "the beginning".]

  fts-using tools (rm, du, chmod, chgrp, chown, chcon) no longer use memory
  proportional to the number of entries in each directory they process.
  Before, rm -rf 4-million-entry-directory would consume about 1GiB of memory.
  Now, it uses less than 30MB, no matter how many entries there are.
  [this bug was inherent in the use of fts: thus, for rm the bug was
  introduced in coreutils-8.0.  The prior implementation of rm did not use
  as much memory.  du, chmod, chgrp and chown started using fts in 6.0.
  chcon was added in coreutils-6.9.91 with fts support.  ]

  pr -T no longer ignores a specified LAST_PAGE to stop at.
  [bug introduced in textutils-1.19q]

  printf '%d' '"' no longer accesses out-of-bounds memory in the diagnostic.
  [bug introduced in sh-utils-1.16]

  split --number l/... no longer creates extraneous files in certain cases.
  [bug introduced in coreutils-8.8]

  timeout now sends signals to commands that create their own process group.
  timeout is no longer confused when starting off with a child process.
  [bugs introduced in coreutils-7.0]

  unexpand -a now aligns correctly when there are spaces spanning a tabstop,
  followed by a tab.  In that case a space was dropped, causing misalignment.
  We also now ensure that a space never precedes a tab.
  [bug introduced in coreutils-5.3.0]

** Changes in behavior

  chmod, chown and chgrp now output the original attributes in messages,
  when -v or -c specified.

  cp -au (where --preserve=links is implicit) may now replace newer
  files in the destination, to mirror hard links from the source.

** New features

  md5sum accepts the new --strict option.  With --check, it makes the
  tool exit non-zero for any invalid input line, rather than just warning.
  This also affects sha1sum, sha224sum, sha384sum and sha512sum.

  split accepts a new --filter=CMD option.  With it, split filters output
  through CMD.  CMD may use the $FILE environment variable, which is set to
  the nominal output file name for each invocation of CMD.  For example, to
  split a file into 3 approximately equal parts, which are then compressed:
    split -n3 --filter='xz > $FILE.xz' big
  Note the use of single quotes, not double quotes.
  That creates files named xaa.xz, xab.xz and xac.xz.

  timeout accepts a new --foreground option, to support commands not started
  directly from a shell prompt, where the command is interactive or needs to
  receive signals initiated from the terminal.

** Improvements

  cp and ls now support HP-UX 11.11's ACLs, thanks to improved support
  in gnulib.

  df now supports disk partitions larger than 4 TiB on MacOS X 10.5
  or newer and on AIX 5.2 or newer.

  join --check-order now prints "join: FILE:LINE_NUMBER: bad_line" for an
  unsorted input, rather than e.g., "join: file 1 is not in sorted order".

  shuf outputs small subsets of large permutations much more efficiently.
  For example `shuf -i1-$((2**32-1)) -n2` no longer exhausts memory.

  stat -f now recognizes the GPFS, MQUEUE and PSTOREFS file system types.

  timeout now supports sub-second timeouts.

** Build-related

  Changes inherited from gnulib address a build failure on HP-UX 11.11
  when using /opt/ansic/bin/cc.


Benoît Knecht (6):
      doc: note date's %k, %l are space-padded and equivalent to %_H and %_I
      doc: note that cp -l creates _hard_ links
      doc: don't terminate SEE ALSO sections with a period
      dircolors: highlight .webm multimedia files
      doc: note the order in which wc counts are printed
      doc: describe the file permissions set by mktemp

Bernhard Voelker (6):
      chmod: output the original mode in verbose mode
      tests: improve by removing w2_
      tests: cp/sparse-fiemap: use "head -n99" in place of "head -99"
      tests: stat-free-color: do not count stat calls before main
      maint: fix warning 'possible use of "=" where "==" was intended'
      maint: remove empty statement after jump label

Bruno Haible (1):
      doc: mention the restrictions for stdbuf more prominently

Eric Blake (2):
      build: update to latest gnulib
      build: list makeinfo 4.13 as a build-from-git requirement

Erik Auerswald (1):
      doc: correct typo in yesterday's NEWS entry: 30GB -> 30MB

Ivan Sichmann Freitas (2):
      maint: fix comment typos in df.c
      doc: add a vim indentation example

James Youngman (2):
      maint: use stat-size module from gnulib
      maint: typo: insert omitted word in test comment

Jeff Liu (1):
      copy: correct misuse of quote in diagnostic

Jim Meyering (89):
      post-release administrivia
      tests: write skip explanation from perl scripts also to outer stderr
      tests: remove useless test: misc/pwd-unreadable-parent
      tests: distribute new file,
      maint: adjust split.c formatting to conform
      build: avoid bootstrap failure when $GZIP is set
      copy: fix my typo
      doc: remove a name from that is derived from git log
      maint: remove unnecessary listing of update-copyright in
      maint: remove use of gnulib's obsolete strtol module
      build: update gnulib submodule to latest
      tests: test split's new --filter=CMD option
      doc: document split's new --filter=CMD option
      tests: don't fail the split --filter=CMD test if xz is not available
      maint: tail: mark a global variable as static
      maint: remove syntax-checking sc_tight_scope rule
      build: update gnulib submodule to latest
      maint: use <unistd.h>, not "group-member.h"
      ls: allow stat-free use of --color
      tests: use skip_test_, not skip_
      maint: add new syntax-check rule to prohibit use of skip_
      maint: avoid syntax-check failure due to long line
      maint: correct typos involving misuse of "a" and "an"
      doc: fix a formatting nit in od's texinfo documentation
      tests: fix typo in tac-continue
      doc: describe how kernel inotify support affects tail -f
      maint: avoid trivial syntax-check failure
      touch: placate static analyzers: no NULL-deref is possible
      doc: make README-hacking slightly more generic
      maint: accommodate gnulib's newer tight_scope rule
      tests: ls/stat-free-color: fix unwarranted failure on a 32-bit system
      shred: placate coverity and fix a comment
      maint: env.c: remove unnecessary use of strchr
      maint: enforce cpp indentation policy
      maint: accommodate gcc's -Wstrict-overflow option
      build: --enable-gcc-warnings: enable -Wstrict-overflow in src/
      tests: move tests/misc/split-* into tests/split/...
      maint: remove useless (off_t) cast of lseek arg
      ls: placate gcc-4.7.0's -Wstrict-overflow
      maint: placate -Wsign-compare when it's non-invasive
      maint: remove unnecessary gnulib .diff file
      tail: fix an inconsequential bug spotted by coverity
      tests: stat-free-color: accommodate stat of /selinux on rawhide
      maint: remove now-spurious curly braces
      build: require at least 2-year old autoconf-2.64 (was 2.62)
      tests: inotify-rotate: avoid false positive under heavy load
      tests: avoid sort-spinlock-abuse false positive under heavy load
      doc: add NEWS items for recent gnulib fixes accommodate shells for which 1>&$stderr_fileno_ fails
      maint: revert previous commit sync from gnulib
      tests: accommodate HP-UX and ksh-derived shells
      tests: use printf, not echo in's warn_ function
      tests: make's warn_ emit to both the tty and the log file
      tests: remove skip_test_ function; use new skip_ instead
      tests: avoid sort-spinlock-abuse false positive under heavy load
      maint: use modules/tempname.diff file, not a replacement; update gnulib
      tests: sort-debug-keys: fix a bug with translated diagnostics
      stdbuf: fix automake variable name to work with cutting edge automake
      maint: update
      tests: use "sed 1q" in place of "head -1"
      build: bootstrap: remove obsolete gettext-related file exclusions
      maint: don't use gnulib's pathmax module; define PATH_MAX if needed
      doc: clarify an improvement from coreutils-7.0
      doc: improve ls --help grammar
      buffer_lcm: declare with _GL_ATTRIBUTE_CONST
      maint: use "const" and "pure" function attributes where possible
      stat: recognize GPFS as a file system type
      tests: exercise md5sum's new --strict option
      maint: add syntax-check rule to prohibit "."-terminated "SEE ALSO"
      build: update gnulib submodule to latest
      df: support partitions larger than 4 TiB on MacOS >= 10.5 & AIX >=5.2
      build: update gnulib to fix a build warning/error in a test program
      cp -up: preserve all hard links
      maint: use consistent style in C and test scripts
      doc: mention cp's dir-permissions fix
      build: update gnulib, for "make syntax-check" fix
      build: require gnulib's fclose module
      maint: accommodate old-NEWS update
      maint: prevent accidental future use of the old shell function name
      maint: add copyright notice to init.cfg
      maint: use xcalloc rather than xmalloc+memset (no semantic change)
      join: with --check-order print offending file name, line number and data
      tests: avoid lack-of-support du test failure on HP-UX 11.31
      maint: use gnulib's new largefile modulue
      rm, du, chmod, chown, chgrp: use much less memory for large directories
      tests: adjust the new, very expensive rm test to be less expensive
      maint: rename a test
      date: support parsing of ISO-8601-with-"T" dates

Karl Berry (1):
      maint: README-hacking clarifications

Karl Heuer (1):
      split: accept new output --filter=CMD option

Marek Polacek (1):
      yes.c: do not use exit after error

Mike Frysinger (1):
      dircolors: add screen.Eterm terminal type

Patrick Schoenfeld (1):
      md5sum, sha1sum, etc: accept new option: --strict

Paul Eggert (18):
      * doc/coreutils.texi (sort invocation): I/0 -> I/O (sr#107504)
      * src/fiemap.h (struct fiemap.fm_extents): Change size to 1.
      * src/dd.c: Remove obsolete comments re POSIX.
      csplit: don't prematurely terminate cleanup (Bug#9076)
      dd: port to NonStop (Bug#9076)
      ls: port to NonStop (Bug#9076)
      timeout: port to NonStop (Bug#9077)
      * src/timeout.c (main): Use waitpid, not wait (Bug#9098).
      Fix capiTalization in comments.
      timeout: treat seconds counts like 'sleep' does
      timeout: add regression test (Bug#9098)
      * NEWS: Mention fix for Bug#9098.
      dd, shred: use fdatasync only if declared
      cp: don't mishandle existing dir dest permissions (Bug#9170)
      * NEWS: Say that 6.12 preserved ns-resolution timestamps.
      mktemp: stir in enough entropy (Bug#6683)
      bootstrap: use latest gnulib bootstrap, gettext
      pathchk: port to hosts where mbstate_t is replaced

Pádraig Brady (39):
      df: fix crash in mem exhaustion edge case
      sort: fix a contradictory --debug warning
      maint: remove -Wmissing-field-initializers workarounds
      shuf: use memory more efficiently when returning a subset
      tests: refactor more tests to use mkfifo_or_skip_
      doc: mention that ls time ordering is newest first
      printf: fix an out-of-bounds memory access
      doc: improve tail -f vs. inotify description and advice
      split: fix cases where -n l/... creates extraneous files
      split: fix an edge case where -n l/... creates an extra file
      split: return success even if a --filter exits
      split: exit when we can no longer write to a --filter
      split: diagnose when --filter is used with a chunk number
      maint: split: remove --filter specific code from other paths
      maint: fix a -Wstrict-overflow build failure with gcc 4.5
      chown,chgrp: output the correct ownership in -v messages
      chown,chgrp: output the original ownership in -v messages
      doc: add examples to date --help
      maint: remove unneeded includes
      tests: avoid a false failure on HPUX systems
      maint: remove duplicate names from THANKS
      maint: avoid a false positive syntax check
      stat: recognize MQUEUE and PSTOREFS file systems
      doc: detail the effect of disabling input buffering with stdbuf
      timeout: add --foreground to support interactive commands
      timeout: support cascaded timeouts
      timeout: handle signals more transparently
      doc: list all new file system types recognized by stat -f
      build: avoid a fiemap compile failure on some systems
      build: avoid a st_blksize compile failure on some systems
      unexpand: fix misalignment when spaces span a tabstop
      maint: remove a redundant call to gl_CLOCK_TIME
      timeout: support sub-second timeouts
      tests: cp/preserve-link: test all relevant paths
      maint: copy: refactor hard link creation
      doc: mention the new mirroring behavior of cp -au
      pr: fix so that LAST_PAGE is honored with -T
      timeout: revert signal propagation enhancement
      build: heap.c: make possible gnulib candidate c89 compatible

Stefano Lattarini (5):
      maint: fix typo in comment in
      tests: make test runner a script, not a shell function
      tests: avoid extra forks in the testsuite
      tests: remove obsolete 'error_' shell function
      tests: complete the renaming framework_failure -> framework_failure_

Stéphane Raimbault (1):
      doc: add a missing space in timeout --help

* gnulib a81348d...9926b90 (969):
...<969 lines elided>...

Wondering about average commits per release, I wrote this tiny script:

{ git tag | grep '^v' | sort -V; echo HEAD; } | \
  while read v; do
    printf $v
    test -z $prev && { echo; prev=$v; continue; }
    n=$(git rev-list $prev..$v|wc -l)
    printf "\t%3d\n" $n


Here's its output for coreutils:

    v6.9.89 381
    v6.9.90  68
    v6.9.91  15
    v6.9.92  27
    v6.10    12
    v6.11   201
    v6.12   112
    v7.0    226
    v7.1    195
    v7.2     90
    v7.3     72
    v7.4     11
    v7.5    135
    v7.6     82
    v8.0     66
    v8.1    130
    v8.2     39
    v8.3     59
    v8.4     15
    v8.5    103
    v8.6    200
    v8.7     37
    v8.8     83
    v8.9     14
    v8.10    81
    v8.11    74
    v8.12    21
    HEAD    178

So, yes, "178" is above the average (for the above subset) of 97.4.

reply via email to

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