[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: https://lists.gnu.org/mailman/listinfo/platform-testers
coreutils snapshot: (.gz files are here, too)
http://meyering.net/cu/coreutils-ss.tar.xz 4.8 MB
http://meyering.net/cu/coreutils-ss.tar.xz.sig
http://meyering.net/cu/coreutils-8.12.178-df9cd.tar.xz
There are .gz and .sig files here, too:
http://people.redhat.com/meyering/cu/coreutils-ss.tar.xz
http://people.redhat.com/meyering/cu/coreutils-8.12.178-df9cd.tar.xz
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 init.sh 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, CuSkip.pm
maint: adjust split.c formatting to conform
build: avoid bootstrap failure when $GZIP is set
copy: fix my typo
doc: remove a name from THANKS.in that is derived from git log
maint: remove unnecessary listing of update-copyright in Makefile.am
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
init.sh: accommodate shells for which 1>&$stderr_fileno_ fails
maint: revert previous commit
init.sh: sync from gnulib
tests: accommodate HP-UX and ksh-derived shells
tests: use printf, not echo in init.sh's warn_ function
tests: make init.sh'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 THANKS.in
tests: init.sh: 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 configure.ac
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:
#!/bin/sh
prev=
{ 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
prev=$v
done
exit
----------------------
Here's its output for coreutils:
v6.9
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.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- new snapshot available: coreutils-8.12.178-df9cd,
Jim Meyering <=