[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[coreutils] new snapshot available: coreutils-8.7.66-561f8
From: |
Jim Meyering |
Subject: |
[coreutils] new snapshot available: coreutils-8.7.66-561f8 |
Date: |
Fri, 17 Dec 2010 11:07:11 +0100 |
Here's a preview of what should soon appear as coreutils-8.8.
This is mostly a bug-fix release, with numerous fixes to our
newly-parallelized sort. Any testing you can perform over
the weekend would be most welcome.
coreutils snapshot: (.gz files are here, too)
http://meyering.net/cu/coreutils-ss.tar.xz 4.6 MB
http://meyering.net/cu/coreutils-ss.tar.xz.sig
http://meyering.net/cu/coreutils-8.7.66-561f8.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.7.66-561f8.tar.xz
Thanks to Paul Eggert, Chen Guo and Pádraig Brady for all the
time they spent contributing to this release.
=====================================================================
The only significant non-bug-fix change was to add a useful set of
features to split that lets you split input into N roughly-equal pieces,
with options to split on line boundaries or not, and, when honoring line
boundaries, to distribute lines in a round-robin fashion or not.
Here are some split examples that I'll add to coreutils.texi:
Notice how, by default, one line may be split onto two or more:
$ seq -w 6 10 > k; split -n3 k; head xa?
:
==> xaa <==
06
07
==> xab <==
08
0
==> xac <==
9
10
Use the "l/" modifier to suppress that:
$ seq -w 6 10 > k; split -nl/3 k; head xa?
:
==> xaa <==
06
07
==> xab <==
08
09
==> xac <==
10
Use the "r/" modifier to distribute lines in a round-robin fashion:
$ seq -w 6 10 > k; split -nr/3 k; head xa?
:
==> xaa <==
06
09
==> xab <==
07
10
==> xac <==
08
You can also extract just the Kth chunk.
This extracts and prints just the 7th "chunk" of 33:
$ seq 100 > k; split -nl/7/33 k
20
21
22
=====================================================================
Here is the NEWS:
** Bug fixes
cp -u no longer does unnecessary copying merely because the source
has finer-grained time stamps than the destination.
od now prints floating-point numbers without losing information, and
it no longer omits spaces between floating-point columns in some cases.
sort -u with at least two threads could attempt to read through a
corrupted pointer. [bug introduced in coreutils-8.6]
sort with at least two threads and with blocked output would busy-loop
(spinlock) all threads, often using 100% of available CPU cycles to
do no work. I.e., "sort < big-file | less" could waste a lot of power.
[bug introduced in coreutils-8.6]
sort with at least two threads no longer segfaults due to use of pointers
into the stack of an expired thread. [bug introduced in coreutils-8.6]
sort --compress no longer mishandles subprocesses' exit statuses,
no longer hangs indefinitely due to a bug in waiting for subprocesses,
and no longer generates many more than NMERGE subprocesses.
sort -m -o f f ... f no longer dumps core when file descriptors are limited.
** New features
split accepts the --number option to generate a specific number of files.
Here is "git shortlog" output:
=====================================================================
Changes in coreutils since v8.7:
Chen Guo (3):
split: add --number to generate a particular number of files
sort: use mutexes, not spinlocks (avoid busy loop on blocked output)
sort: preallocate merge tree nodes to heap.
Jim Meyering (27):
post-release administrivia
maint: add a NEWS-checking syntax-check rule
tests: move a comment so automated conversion works
tests: convert first batch of tests from test-lib.sh to init.sh
tests: convert 'if test "$VERBOSE" = yes; then' to test ... &&
tests: convert remaining uses of test-lib.sh to init.sh
tests: remove test-lib.sh; now all tests use gnulib's init.sh
tests: factor out VERBOSE-only --version-printing code
tests: substitute the single-program $VERBOSE/--version uses
tests: convert "... env -- prog --version" uses
tests: convert the multi-prog $VERBOSE/--version uses
tests: convert tests/misc/selinux manually
maint: syntax-check: prevent new $VERBOSE/--version tests
maint: avoid NEWS-related syntax-check failure
build: update gnulib to fix a syntax error in a test
tests: test for parallel sort spinlock abuse
tests: don't let the OMP_NUM_THREADS envvar affect sort tests
tests: add test for parallel sort -u segfault bug
tests: make it harder to lose a race in spinlock-abuse
tests: remove useless definition of $SORT in sort-compress
sort: syntax cleanup
sort: avoid segfault when using two or more threads
tests: avoid FP failure when run under valgrind
tests: mark new test as very expensive
tests: tweak basic-1 to use warn_ rather than literal "exit 77"
doc: tail: semi-deprecate --sleep-interval and --max-unchanged-stats
build: update gnulib submodule to latest
Paul R. Eggert (27):
doc: tweak NEWS and coreutils.texi
build: update gnulib submodule to latest
od: fix bugs in displaying floating-point values
cp: give a better diagnostic for nonexistent dest/
sort -u: fix a thread-race pointer corruption bug
sort: fix bug on 64-bit hosts with at least 32768 processors
build: update gnulib submodule to latest
cp: fix bug with fine-grained src to nearby coarse-grained dest
tests: cleanup rm -rf fails under NFS
sort: Clarify comments
sort: tune struct_merge_node slightly
sort: put queue arg first
sort: simplify write_unique
sort: fix problems with merge node dest pointer
sort: clarify queue_check_insert
sort: merge_queue -> queue
sort: comment fix
sort: integer overflow checks in thread counts, etc.
tests: test for access to stale thread memory
tests: typo fix
sort: fix some --compress reaper bugs
tests: default to /tmp as the temporary directory
sort: document --compress reaper fixes
sort: fix very-unlikely buffer overrun when merging to input file
sort: don't dump core when merging from input twice
sort: fix hang with sort --compress
sort: do not generate thousands of subprocesses for 16-way merge
Pádraig Brady (9):
maint: add a missed fadvise-tests module
build: enable the -Wpointer-sign gcc warning
maint: fix a new -Wpointer-sign gcc warning
truncate: fix a very unlikely case for undiagnosed errors
split: fail immediately if impossible to create a large file
build: add `patch` as a bootstrap dependency
maint: update the valgrind support script
tsort: suppress a valgrind memory leak warning
split: fix a case where --elide-empty causes invalid chunking
Changes in gnulib since v8.7:
* gnulib a14bd22...c96bccb (71):
> memmem: rearrange memmem and expand memmem-simple modules
> Improve cross-compilation guesses for uClibc.
> configmake: provide fallbacks for oldest supported autotools
> read-file: reorganize to avoid various issues
> cloexec, fcntl: relax license
> autoupdate
> Tweak last ChangeLog entry.
> Tests for module 'pipe-posix.
> Oops, fix mistake in last commit.
> pipe-posix: Make it work in C++ mode.
> Rename module 'pipe' to 'spawn-pipe'.
> pipe-posix: new module
> * build-aux/gendocs.sh: restore x bit
> autoupdate
> unistr/u8-strcmp: Avoid collision with libc function on Solaris 11.
> Update internal documentation.
> Put more information about failed tests into the test return codes.
> Update for Solaris 11 2010-11.
> nproc: Relax license.
> maint: restore executable bit
> utimecmp: fine-grained src to nearby coarse-grained dest
> strerror_r-posix: Fix autoconf test.
> Tests for module 'getdomainname'.
> getdomainname: Use the system function when possible.
> sys_socket: Ensure ss_family field on AIX.
> readline: Improve configure output.
> *printf-posix: Detect a bug on Solaris 10/x86.
> Fix link error when module libunistring-optional is in use.
> regex: Mention link dependencies.
> ftoastr: Fix compilation error on Solaris.
> Oops, fix typo in last commit.
> autoupdate
> autoupdate
> getloadavg: Update documentation.
> sys_socket: Fix test whether the functions are declared.
> getpass: Make sure to get system declaration on some platforms.
> iconv-h: Fix test-iconv-h-c++ failure on Solaris 11 2010-11.
> ftoastr: comment fix
> stdint: port to GCC 4.3 + OSX + Octave
> doc: Corrections regarding MacOS X 10.4 and 10.5.
> autoupdate
> Uninstall ".bin" files installed by relocwrapper.
> Update for NetBSD 5.0.
> Update for HP-UX 11.23 and HP-UX 11.31.
> Update for MacOS X 10.5.
> bootstrap: add bootstrap_sync option.
> Oops, fix incomplete ChangeLog entry.
> Ensure that <features.h> is included before __GLIBC__ is tested.
> memmem: Fix autoconf test.
> Port to uClibc.
> nproc: Fix condition.
> Fix a comment. * lib/vasnprintf.c (VASNPRINTF): Fix comment.
> ftoastr: don't assume snprintf
> test-rename.h: fix compilation failure
> maint.mk: add a URL discussing the no-@acronym policy
> ftoastr: depend on snprintf, improve comments
> ftoastr: port to hosts lacking strtof and strtold
> c-strtold: Avoid link error on AIX 7.
> intprops: new macro INT_BITS_STRLEN_BOUND
> ftoastr: new module, for lossless conversion of floats to short strings
> autoupdate
> autoupdate
> bootstrap: port to Solaris sed
> maint.mk: rename variable: s/noteworthy/gl_noteworthy_news_/
> remove autoconf-2.57 work-around requiring AC_PROG_EGREP and AC_PROG_CPP
> Line-wrap a ChangeLog entry.
> rename, renameat: Avoid test failures at NFS mounted locations.
> rename, renameat: Document Linux bug with NFS.
> rename test: Add comments.
> maintainer-makefile: cover a few more files
> unistr/u8-mbtouc: Improve handling of ill-formed UTF-8 input.
pgpSdHdHQHaTK.pgp
Description: PGP signature
- [coreutils] new snapshot available: coreutils-8.7.66-561f8,
Jim Meyering <=