This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[ANNOUNCEMENT] [1.7] Updated: coreutils-7.0-1


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

For those people testing cygwin 1.7, a new release of coreutils, 7.0-1,
has been uploaded, replacing 6.12-2 as current.  6.10-2 remains current
for cygwin 1.5 users.

NEWS:
=====
This is a new upstream release.  It is designated as a beta release
upstream, because it introduces quite a large set of changes, but appears
to work fine for most common uses (at any rate, a stable coreutils release
will probably occur prior to a stable cygwin 1.7 release).  There are two
new utilities: timeout and truncate.  This release also takes advantage of
the new d_type support to speed up several utilities; one notable
exception, unfortunately, is that the Linux patch to use d_type and inode
sorting to speed up rm from quadratic to linear on directories with a
large number of files did not apply to cygwin because of differences in
statfs.  If you encounter a regression, please report it here rather than
upstream.

I've attached a list of changes since 6.10.  See also the upstream
documentation in /usr/share/doc/coreutils/.

DESCRIPTION:
============
GNU coreutils provides a collection of commonly used utilities essential
to a standard POSIX environment.  It comprises the former textutils,
sh-utils, and fileutils packages.  The following executables are included:

[ arch base64 basename cat chcon chgrp chmod chown chroot cksum comm cp
csplit cut date dd df dir dircolors dirname du echo env expand expr factor
false fmt fold gkill groups head hostid hostname id install join link ln
logname ls md5sum mkdir mkfifo mknod mktemp mv nice nl nohup od paste
pathchk pinky pr printenv printf ptx pwd readlink rm rmdir runcon seq
sha1sum sha224sum sha256sum sha384sum sha512sum shred shuf sleep sort
split stat stty su sum sync tac tail tee test timeout touch tr true
truncate tsort tty uname unexpand uniq unlink users vdir wc who whoami yes

UPDATE:
=======
To update your installation, click on the "Install Cygwin now" link on the
http://cygwin.com/ web page.  This downloads setup.exe to your system.
Save it and run setup, answer the questions, then look for 'coreutils' in
the 'Base' category (it should already be selected).

DOWNLOAD:
=========
Note that downloads from sources.redhat.com (aka cygwin.com) aren't
allowed due to bandwidth limitations.  This means that you will need to
find a mirror which has this update, please choose the one nearest to you:
http://cygwin.com/mirrors.html

QUESTIONS:
==========
If you want to make a point or ask a question the Cygwin mailing list is
the appropriate place.

- --
Eric Blake
volunteer cygwin coreutils maintainer

CYGWIN-ANNOUNCE UNSUBSCRIBE INFO:
=================================
To unsubscribe to the cygwin-announce mailing list, look at the
"List-Unsubscribe: " tag in the email header of this message.  Send email
to the address specified there.  It will be in the format:

cygwin-announce-unsubscribe-YOU=YOURDOMAIN.COM@cygwin.com

If you need more information on unsubscribing, start reading here:

http://sources.redhat.com/lists.html#unsubscribe-simple

Please read *all* of the information on unsubscribing that is available
starting at this URL.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAklHJT4ACgkQ84KuGfSFAYDFdQCaA/+2BTRoyvJyrc3gs9IoLBqf
SD4An0DI81ulhmA9nAZjE5FF+r1JZ2Yy
=l7hS
-----END PGP SIGNATURE-----
* Noteworthy changes in release 7.0 (2008-10-05) [beta]

** New programs

  timeout: Run a command with bounded time.
  truncate: Set the size of a file to a specified size.

** New features

  chgrp, chmod, chown, chcon, du, rm: now all display linear performance,
  even when operating on million-entry directories on ext3 and ext4 file
  systems.  Before, they would exhibit O(N^2) performance, due to linear
  per-entry seek time cost when operating on entries in readdir order.
  Rm was improved directly, while the others inherit the improvement
  from the newer version of fts in gnulib.

  comm now verifies that the inputs are in sorted order.  This check can
  be turned off with the --nocheck-order option.

  comm accepts new option, --output-delimiter=STR, that allows specification
  of an output delimiter other than the default single TAB.

  cp and mv: the deprecated --reply=X option is now also undocumented.

  dd accepts iflag=fullblock to make it accumulate full input blocks.
  With this new option, after a short read, dd repeatedly calls read,
  until it fills the incomplete block, reaches EOF, or encounters an error.

  df accepts a new option --total, which produces a grand total of all
  arguments after all arguments have been processed.

  If the GNU MP library is available at configure time, factor and
  expr support arbitrarily large numbers.  Pollard's rho algorithm is
  used to factor large numbers.

  install accepts a new option --strip-program to specify the program used to
  strip binaries.

  ls now colorizes files with capabilities if libcap is available

  ls -v now uses filevercmp function as sort predicate (instead of strverscmp)

  md5sum now accepts the new option, --quiet, to suppress the printing of
  'OK' messages.  sha1sum, sha224sum, sha384sum, and sha512sum accept it, too.

  sort accepts a new option, --files0-from=F, that specifies a file
  containing a null-separated list of files to sort.  This list is used
  instead of filenames passed on the command-line to avoid problems with
  maximum command-line (argv) length.

  sort accepts a new option --batch-size=NMERGE, where NMERGE
  represents the maximum number of inputs that will be merged at once.
  When processing more than NMERGE inputs, sort uses temporary files.

  sort accepts a new option --version-sort (-V, --sort=version),
  specifying that ordering is to be based on filevercmp.

** Bug fixes

  chcon --verbose now prints a newline after each message

  od no longer suffers from platform bugs in printf(3).  This is
  probably most noticeable when using 'od -tfL' to print long doubles.

  seq -0.1 0.1 2 now prints 2,0 when locale's decimal point is ",".
  Before, it would mistakenly omit the final number in that example.

  shuf honors the --zero-terminated (-z) option, even with --input-range=LO-HI

  shuf --head-count is now correctly documented.  The documentation
  previously claimed it was called --head-lines.

** Improvements

  Improved support for access control lists (ACLs): On MacOS X, Solaris 7..10,
  HP-UX 11, Tru64, AIX, IRIX 6.5, and Cygwin, "ls -l" now displays the presence
  of an ACL on a file via a '+' sign after the mode, and "cp -p" copies ACLs.

  join has significantly better performance due to better memory management

  ls now uses constant memory when not sorting and using one_per_line format,
  no matter how many files are in a given directory

  od now aligns fields across lines when printing multiple -t
  specifiers, and no longer prints fields that resulted entirely from
  padding the input out to the least common multiple width.

** Changes in behavior

  stat's --context (-Z) option has always been a no-op.
  Now it evokes a warning that it is obsolete and will be removed.


* Noteworthy changes in release 6.12 (2008-05-31) [stable]

** Bug fixes

  chcon, runcon: --help output now includes the bug-reporting address

  cp -p copies permissions more portably.  For example, on MacOS X 10.5,
  "cp -p some-fifo some-file" no longer fails while trying to copy the
  permissions from the some-fifo argument.

  id with no options now prints the SELinux context only when invoked
  with no USERNAME argument.

  id and groups once again print the AFS-specific nameless group-ID (PAG).
  Printing of such large-numbered, kernel-only (not in /etc/group) group-IDs
  was suppressed in 6.11 due to ignorance that they are useful.

  uniq: avoid subtle field-skipping malfunction due to isblank misuse.
  In some locales on some systems, isblank(240) (aka &nbsp) is nonzero.
  On such systems, uniq --skip-fields=N would fail to skip the proper
  number of fields for some inputs.

  tac: avoid segfault with --regex (-r) and multiple files, e.g.,
  "echo > x; tac -r x x".  [bug present at least in textutils-1.8b, from 1992]

** Changes in behavior

  install once again sets SELinux context, when possible
  [it was deliberately disabled in 6.9.90]


* Noteworthy changes in release 6.11 (2008-04-19) [stable]

** Bug fixes

  configure --enable-no-install-program=groups now works.

  "cp -fR fifo E" now succeeds with an existing E.  Before this fix, using
  -fR to copy a fifo or "special" file onto an existing file would fail
  with EEXIST.  Now, it once again unlinks the destination before trying
  to create the destination file.  [bug introduced in coreutils-5.90]

  dd once again works with unnecessary options like if=/dev/stdin and
  of=/dev/stdout.  [bug introduced in fileutils-4.0h]

  id now uses getgrouplist, when possible.  This results in
  much better performance when there are many users and/or groups.

  ls no longer segfaults on files in /proc when linked with an older version
  of libselinux.  E.g., ls -l /proc/sys would dereference a NULL pointer.

  md5sum would segfault for invalid BSD-style input, e.g.,
  echo 'MD5 (' | md5sum -c -  Now, md5sum ignores that line.
  sha1sum, sha224sum, sha384sum, and sha512sum are affected, too.
  [bug introduced in coreutils-5.1.0]

  md5sum -c would accept a NUL-containing checksum string like "abcd\0..."
  and would unnecessarily read and compute the checksum of the named file,
  and then compare that checksum to the invalid one: guaranteed to fail.
  Now, it recognizes that the line is not valid and skips it.
  sha1sum, sha224sum, sha384sum, and sha512sum are affected, too.
  [bug present in the original version, in coreutils-4.5.1, 1995]

  "mkdir -Z x dir" no longer segfaults when diagnosing invalid context "x"
  mkfifo and mknod would fail similarly.  Now they're fixed.

  mv would mistakenly unlink a destination file before calling rename,
  when the destination had two or more hard links.  It no longer does that.
  [bug introduced in coreutils-5.3.0]

  "paste -d'\' file" no longer overruns memory (heap since coreutils-5.1.2,
  stack before then) [bug present in the original version, in 1992]

  "pr -e" with a mix of backspaces and TABs no longer corrupts the heap
  [bug present in the original version, in 1992]

  "ptx -F'\' long-file-name" would overrun a malloc'd buffer and corrupt
  the heap.  That was triggered by a lone backslash (or odd number of them)
  at the end of the option argument to --flag-truncation=STRING (-F),
  --word-regexp=REGEXP (-W), or --sentence-regexp=REGEXP (-S).

  "rm -r DIR" would mistakenly declare to be "write protected" -- and
  prompt about -- full DIR-relative names longer than MIN (PATH_MAX, 8192).

  "rmdir --ignore-fail-on-non-empty" detects and ignores the failure
  in more cases when a directory is empty.

  "seq -f % 1" would issue the erroneous diagnostic "seq: memory exhausted"
  rather than reporting the invalid string format.
  [bug introduced in coreutils-6.0]

** New features

  join now verifies that the inputs are in sorted order.  This check can
  be turned off with the --nocheck-order option.

  sort accepts the new option --sort=WORD, where WORD can be one of
  general-numeric, month, numeric or random.  These are equivalent to the
  options --general-numeric-sort/-g, --month-sort/-M, --numeric-sort/-n
  and --random-sort/-R, resp.

** Improvements

  id and groups work around an AFS-related bug whereby those programs
  would print an invalid group number, when given no user-name argument.

  ls --color no longer outputs unnecessary escape sequences

  seq gives better diagnostics for invalid formats.

** Portability

  rm now works properly even on systems like BeOS and Haiku,
  which have negative errno values.

** Consistency

  install, mkdir, rmdir and split now write --verbose output to stdout,
  not to stderr.


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]