summaryrefslogtreecommitdiff
path: root/NEWS
AgeCommit message (Collapse)Author
2012-01-06maint: post-release administriviaJim Meyering
* NEWS: Add header line for next release. * .prev-version: Record previous version. * cfg.mk (old_NEWS_hash): Auto-update.
2012-01-06version 8.15Jim Meyering
* NEWS: Record release date.
2012-01-05split: avoid failure due to leftover 'errno' valueBruno Haible
* src/split.c (lines_chunk_split): Fix logic bug that led to unwarranted failure of "split -n l/2 /dev/zero" on NetBSD 5.1. The same would happen when splitting a growing file, where open/lseek-end gives one size, but by the time we read, there is more data available. (bytes_chunk_extract): Likewise. * NEWS (Bug fixes): Mention this. * tests/split/l-chunk: The latter case was not exercised. Add code to do that. Bug introduced with the chunk-selecting feature in v8.7-25-gbe10739. Co-authored-by: Jim Meyering <meyering@redhat.com>
2012-01-03doc: adjust NEWSJim Meyering
* NEWS (New programs): Move this small section to the top. (df): Reword entry, from Pádraig Brady.
2012-01-03df: work around long-named /dev/disk/by-uuid/... symlinksJim Meyering
On systems with recent kernel/tools, a symlink from /etc/mtab to /proc/mounts, and a by-UUID mount (i.e., soon, nearly everyone), you will see something like the following when running "df -hT": (this has been truncated to fit in a width-limited ChangeLog file) Filesystem Type Siz... rootfs rootfs 11G udev devtmpfs 3.8G tmpfs tmpfs 774M /dev/disk/by-uuid/828fc648-9f30-43d8-a0b1-f7096a2edb66 ext4 11G tmpfs tmpfs 1.6G /dev/sda2 ext3 494M /dev/sda5 ext4 12G /dev/sda6 ext4 9.9G Contrast that with what we're used to seeing (modulo the two entries mounted on "/", which is a separate problem): Filesystem Type Size Used Avail Use% Mounted on rootfs rootfs 11G 1.9G 8.0G 19% / udev devtmpfs 3.8G 0 3.8G 0% /dev tmpfs tmpfs 774M 376K 774M 1% /run /dev/sda3 ext4 11G 1.9G 8.0G 19% / tmpfs tmpfs 1.6G 8.0K 1.6G 1% /run/shm /dev/sda2 ext3 494M 78M 392M 17% /boot /dev/sda5 ext4 12G 7.6G 3.7G 68% /usr /dev/sda6 ext4 9.9G 6.6G 2.8G 71% /var When that long /dev/disk/by-uuid/... name is merely a symlink to a much shorter (and often more useful) device name like "/dev/sda3", and when it's part of a listing of all file systems, I would much prefer to see only the latter. Similarly, when using an encrypted root file system, you would see a name like /dev/mapper/luks-828fc648-9f30-43d8-a0b1-f7196a2edb66 pointing to say, /dev/dm-0, I prefer the shorter name. I.e., if I explicitly run "df -hT /dev/disk/by-uuid/828fc648-9f30-43d8-a0b1-f7096a2edb66", then, it's fine -- and expected -- to print to the long name. It was explicitly given. However, with no non-option argument, df should print the shorter name. Note that performing this translation at a lower level (via a change to gnulib's mountlist.c) would make it impossible to distinguish those two cases. * src/df.c: Include "canonicalize.h". (get_dev): Add a parameter, telling when we're in process-all- mount-points mode; update all callers. When true, resolve UUID-suffixed symlinks. * NEWS (Changes in behavior): Mention it. Reported by Dan Jacobson in http://bugs.gnu.org/10363
2012-01-03realpath: a new program to print the resolved pathPádraig Brady
This program is compatible with other realpath(1) implementations, and also incorporates relpath like support, through the --relative options. The relpath support was suggested by Peng Yu, who also provided an initial implemenation of that functionality. * AUTHORS: Add my name. * NEWS: Mention the new command. * README: Likewise. * doc/coreutils.texi (realpath invocation): Add realpath info. * man/Makefile.am (realpath.1): Add dependency. * man/realpath.x: New template. * man/.gitignore: Ignore generated man page. * po/POTFILES.in: Add src/realpath.c. * src/.gitignore: Exclude realpath. * src/Makefile.am (EXTRA_PROGRAMS): Add realpath. * src/realpath.c: New file. * scripts/git-hooks/commit-msg: Add realpath to the list of prefixes. * tests/Makefile.am (TESTS): Add misc/realpath. * tests/misc/realpath: New file.
2012-01-01maint: update all copyright year number rangesJim Meyering
Run "make update-copyright".
2011-12-26stat,tail: recognize new FS type: pipefsJim Meyering
* src/stat.c (human_fstype) [S_MAGIC_PIPEFS]: New case. * NEWS (Bug fixes): Mention this.
2011-12-23tail: with -f, use polling when a file is on an FS of unknown typeJim Meyering
Before, we would use inotify in that case, which would work as long as updates were taking place locally, but not at all when remote. Move hard-coded list of known remote FS types into a more maintainable table in stat.c, alongside the list of FS names and magic numbers. Generate a new is_local_fs_type function. * src/Makefile.am (fs-is-local.h): New rule, generated file. * src/extract-magic: Revamp to parse local/remote keyword after each magic number in src/stat.c's case statements. Accept new --local option. * src/.gitignore: Ignore the generated fs-is-local.h. * src/tail.c [HAVE_INOTIFY]: Include fs-is-local.h. (fremote) [HAVE_INOTIFY]: Use the new function in place of the switch stmt with hard-coded list of FS types. Emit a warning when processing a file on a file system of unknown type. * NEWS (Changes in behavior): Mention it. Suggested by Sven Breuner.
2011-12-22tail,stat: add support for FhGFSJim Meyering
* src/stat.c (human_fstype): Add a case: fhgfs, 0x19830326. * src/tail.c (fremote): Add S_MAGIC_FHGFS. * NEWS (Bug fixes): Update the entry for GPFS to mention FhGFS, too. Reported by Sven Breuner.
2011-12-14du: -x should not count files in other file systemsPaul Eggert
This fixes Bug#10293, which I guess was introduced in commit 95c948b06a dated 2003-10-02. * NEWS: Document fix. * src/du.c (process_file): Don't count files in different file systems if -x is given. * tests/du/one-file-system: Test for this bug.
2011-12-08ls: be responsive to interrupts when color-listing large directoriesJim Meyering
Starting with commit adc30a83, when using --color, ls inhibited interrupts to avoid corrupting the state of an output terminal. However, for very large directories, that inhibition rendered ls uninterruptible for too long, including a potentially long period even before any output is generated. * src/ls.c: Two phases of processing are time-consuming enough that they can provoke this: the readdir loop and the printing loop. The printing was supposed to be covered by a call to process_signals in (print_name_with_quoting): ... but that call was mistakenly guarded by a condition that might be false for many or even all files being processed. Call process_signals unconditionally. (print_dir): Also call process_signals in the readdir loop. * NEWS (Bug fixes): Mention it. Reported by Arkadiusz Miśkiewicz in http://bugs.gnu.org/10243 Co-authored-by: Eric Blake <eblake@redhat.com>
2011-11-12ls: plug a per-argument leakJim Meyering
Using ls -l on an SELinux-enabled system would leak one SELinux context string per non-empty-directory command-line argument. * src/ls.c (free_ent): New function, factored out of... (clear_files): ...here. Use it. (extract_dirs_from_files): Call free_ent (f), rather than simply free (f->name). The latter failed to free the possibly-malloc'd linkname and scontext members, and thus could leak one of those strings per command-line argument. * THANKS.in: Update. * NEWS (Bug fixes): Mention it. Reported by Juraj Marko in http://bugzilla.redhat.com/751974.
2011-11-11ls: -k no longer affects -l's file sizesPaul Eggert
This fixes an incompatibility with POSIX 2008 and with BSD. Problem reported by Abdallah Clark (Bug#9939) via Alan Curry (Bug#10016). * NEWS: Document this. * doc/coreutils.texi (General output formatting): Document the new -k behavior, and --kibibytes. * src/ls.c (file_human_output_opts): New static var. (long_options, usage): Add --kibibytes. (decode_switches, gobble_file, print_long_format): Implement the new -k behavior. * tests/ls/block-size: New file. * tests/Makefile.am (TESTS): Add it.
2011-10-24doc: NEWS: correct "bug introduced in ..." version numberEric Blake
* NEWS: s/7.0/8.0/
2011-10-24rm: update gnulib to get an fts fix for Cygwin+NWFS/NcFsd file systemsJim Meyering
* NEWS (Bug fixes): Mention it. As far as we know, this fix affects only Cygwin with NWFS or NcFsd file systems. See these: http://git.sv.gnu.org/cgit/gnulib.git/commit/?id=71f13422f3e634 http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/28739 http://cygwin.com/ml/cygwin/2011-10/msg00365.html * src/system.h (ENODATA): Remove fall-back definition, now that gnulib provides one. Caught by the sc_prohibit_always-defined_macros syntax-check rule. Also remove now-irrelevant "Don't use bcopy..." comment.
2011-10-21tail: with -f, use nanosleep (not inotify) on a GPFS file systemMartial Bornet
Because tail's fremote function did not designate GPFS as a remote file system type, tail -f would mistakenly attempt to use inotify, which cannot work with a remote file system. * src/tail.c (fremote): List GPFS as a remote file system type. * NEWS (Bug fixes): Mention it. Reported in http://bugs.debian.org/646022.
2011-10-17tac: don't misbehave with multiple non-seekable inputsJim Meyering
* src/tac.c (copy_to_temp): Do not reuse the template buffer. Instead, scribble only on a freshly-xstrdup'd copy each time. Free that buffer both here, upon failure, and ... (tac_nonseekable): ...free the buffer in caller, upon success. * tests/misc/tac-2-nonseekable: New file. * tests/Makefile.am (TESTS): Add it. * NEWS (Bug fixes): Mention it. Reported by Ambrose Feinstein in http://debbugs.gnu.org/9762.
2011-10-12maint: post-release administriviaJim Meyering
* NEWS: Add header line for next release. * .prev-version: Record previous version. * cfg.mk (old_NEWS_hash): Auto-update.
2011-10-12version 8.14Jim Meyering
* NEWS: Record release date.
2011-10-05doc: clean up NEWSJim Meyering
* NEWS: Mention when the sort -g infloop bug was introduced and alphabetize entries. Clarify a sentence in the pwd-improvement entry.
2011-10-05tests: add a test to exercise today's ls-lL-vs-ACL bugJim Meyering
* tests/ls/slink-acl: New file. * tests/Makefile.am (TESTS): Add it. * tests/init.cfg (require_setfacl_): New function. * gnulib: Update to latest, for file-has-acl changes. * NEWS (Bug fixes): Mention it. See http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/28538. This ":>k; setfacl -m m::r k; ln -s k s; ls -Log s" should print e.g., -rw-r-----+ 1 0 Oct 5 19:22 s With the ls from coreutils-8.13, it would print this (with "." or nothing in place of the "+"): -rw-r-----. 1 0 Oct 5 19:22 s
2011-10-01build: stop distributing gzip'd releases; xz is enoughJim Meyering
* configure.ac (AM_INIT_AUTOMAKE): Add no-dist-gzip. * NEWS (Build-related): Mention that we're dropping .tar.gz.
2011-10-01doc: mention the recent ls -L "argetm" fix in NEWSPádraig Brady
* NEWS: Mention the bug fix
2011-09-27sort: avoid a NaN-induced infloopJim Meyering
These commands would fail to terminate: yes -- -nan | head -156903 | sort -g > /dev/null echo nan > F; sort -m -g F F That can happen with any strtold implementation that includes uninitialized data in its return value. The problem arises in the mergefps function when bubble-sorting the two or more lines, each from one of the input streams being merged: compare(a,b) returns 64, yet compare(b,a) also returns a positive value. With a broken comparison function like that, the bubble sort never terminates. Why do the long-double bit strings corresponding to two identical "nan" strings not compare equal? Because some parts of the result are uninitialized and thus depend on the state of the stack. For more details, see http://bugs.gnu.org/9612. * src/sort.c (nan_compare): New function. (general_numcompare): Use it rather than bare memcmp. Reported by Aaron Denney in http://bugs.debian.org/642557. * NEWS (Bug fixes): Mention it. * tests/misc/sort-NaN-infloop: New file. * tests/Makefile.am (TESTS): Add it.
2011-09-22timeout: handle implicitly created threadsPádraig Brady
On some systems like glibc on GNU/kFreeBSD, a thread is implicitly created when timer_settime() is used. This breaks our scheme to ignore signals we've sent ourselves. * src/timeout.c (send_sig): Change the scheme used to ignore signals we've sent ourselves, to a more robust but perhaps limited scheme of ignoring all signals of a certain type after we've sent that signal to the job. * NEWS: Mention the change in behavior.
2011-09-19gnulib: update for getcwd fix on systems without openatJim Meyering
This fixes a bug in pwd and all getcwd-using applications (for some uses: df, readlink, stat) when run from a directory whose absolute name contains more than PATH_MAX / 3 components. For more details, see http://git.sv.gnu.org/cgit/gnulib.git/commit/?id=f6fe351fc534ae1 * gnulib: Update. * NEWS (Improvements): Mention it.
2011-09-16md5sum: handle BSD reversed format checksumsPádraig Brady
* src/md5sum.c (split_3): Detect and handle BSD reversed format checksums. * tests/misc/md5sum-bsd: Add a new test. * tests/Makefile.am: Reference new test. * NEWS: Mention the improvement Suggested by Rimas Kudelis.
2011-09-08maint: post-release administriviaJim Meyering
* NEWS: Add header line for next release. * .prev-version: Record previous version. * cfg.mk (old_NEWS_hash): Auto-update.
2011-09-08version 8.13Jim Meyering
* NEWS: Record release date.
2011-09-07cp: update gnulib to get support for NFSv4 ACLsJim Meyering
* NEWS (Improvements): Mention the cp-vs-NFSv4-ACL improvement we have inherited via gnulib. For details, see http://article.gmane.org/gmane.comp.lib.gnulib.bugs/28100 and the following messages in that thread. * gnulib: Update to latest, for numerous ACL-related improvements.
2011-08-31date: support parsing of ISO-8601-with-"T" datesJim Meyering
Thanks to an improvement in gnulib's parse-datetime module, commands like this now succeed (output manually indented): $ ./date -u -d 2004-02-29T16:21:42.33+07:00 +%FT%T.%N%z 2004-02-29T09:21:42.330000000+0000 * tests/misc/date: Add a test to exercise the new-in-gnulib parsing of ISO8601-with-"T" dates. * NEWS (New features): Mention it. * gnulib: Update, to pull in this parse-datetime improvement.
2011-08-24pr: fix so that LAST_PAGE is honored with -TPádraig Brady
Ever since the LAST_PAGE functionality was added in commit ed0923a1, 1996-12-05, "Apply big patch (patch-20) from Roland Huebner" it was ignored when -t or -T were specified or when -l <= 10. * src/pr.c (print_page): Increment the current page here. (print_header): Don't increment the current page here. * tests/pr/pr-tests: Add a test case. * NEWS: Mention the fix Reported at http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9347
2011-08-20doc: correct typo in yesterday's NEWS entry: 30GB -> 30MBErik Auerswald
* NEWS: s/30GB/30MB/
2011-08-19rm, du, chmod, chown, chgrp: use much less memory for large directoriesJim Meyering
For details, see the gnulib commit, http://git.sv.gnu.org/cgit/gnulib.git/commit/?id=47cb657e * tests/rm/4-million-entry-dir: New test. * tests/Makefile.am (TESTS): Add it. * NEWS (Bug fixes): Mention it. * gnulib: Update to latest to get the required fts fixes.
2011-08-08join: with --check-order print offending file name, line number and dataJim Meyering
* src/join (g_names): New global (was main's "names"). (main): Update all uses of "names". (line_no[2]): New globals. (get_line): Increment after reading each line. (check_order): Print the standard "file name:line_no: " prefix as well as the offending line when reporting disorder. Here is a sample old/new comparison: -join: file 1 is not in sorted order +join: in:4: is not sorted: contents-of-line-4 * tests/misc/join: Change the two affected tests to expect the new diagnostic. Add new tests for more coverage: mismatch in file 2, two diagnostics, zero-length out-of-order line. * NEWS (Improvements): Mention it. Suggested by David Gast in http://debbugs.gnu.org/9236
2011-07-31doc: mention the new mirroring behavior of cp -auPádraig Brady
* NEWS: Mention the change in behavior. * doc/coreutils.texi (cp invocation): Likewise.
2011-07-31* NEWS: Say that 6.12 preserved ns-resolution timestamps.Paul Eggert
2011-07-26doc: mention cp's dir-permissions fixJim Meyering
* NEWS (Bug fixes): Mention yesterday's dir-permissions fix.
2011-07-25cp -up: preserve all hard linksJim Meyering
* src/copy.c (copy_internal): With --update (-u), this function would return early once it found that the destination is not older than the source, *without* recording the source-dev/ino--to--dest_name mapping. That mapping is required in order to preserve src hard links in the destination tree, so when using cp with --update and --preserve=links (perhaps via -p or -a), cp could fail to preserve one hard link per inode when at least one of the hard-linked names already exists in the destination tree. Reported by Odd Harry Mannsverk in http://debbugs.gnu.org/8419. * tests/cp/preserve-link: New file. Exercise the flaw/fix. * tests/Makefile.am (TESTS): Add it. * NEWS (Bug fixes): Mention it.
2011-07-25timeout: support sub-second timeoutsPádraig Brady
* src/timeout.c (settimeout): A new function to convert from a floating point duration and call alarm() or timer_settime() if that's available. (parse_duration): Return a double rather than unsigned int. (usage): Mention floating point is supported. (main): Pass the double to settimeout() rather than calling alarm() directly with the parsed int. (cleanup): Likewise. * doc/coreutils.texi (timeout invocation): Say floating point timeouts now supported, and mention the caveat with resolution. * bootstrap.conf: Include the timer-time gnulib module. * tests/misc/timeout-parameters: Add a test with nanoseconds. * NEWS: Mention the improvement.
2011-07-24df: support partitions larger than 4 TiB on MacOS >= 10.5 & AIX >=5.2Jim Meyering
This change derives from improvements to gnulib's fsusage module. * NEWS (Improvements): df now supports disk partitions larger than 4 TiB on MacOS X 10.5 or newer and on AIX 5.2 or newer. Alphabetize entries. * gnulib: Update to latest.
2011-07-20unexpand: fix misalignment when spaces span a tabstopPádraig Brady
The following dropped the space from the first field printf "1234567 \t1\n" | unexpand -a Note POSIX says that spaces should not precede tabs. Also a single trailing space should not be converted if the next field starts with non blank characters. So we enforce those rules too, with this change. * src/unexpand.c (unexpand): Implement as per POSIX rules. * tests/misc/unexpand: Add tests, and adjust existing tests as per POSIX rules. * NEWS: Mention the fix. Reported by Hallvard B Furuseth
2011-07-17* NEWS: Mention fix for Bug#9098.Paul Eggert
2011-07-08doc: list all new file system types recognized by stat -fPádraig Brady
NEWS (Improvements): Mention the MQUEUE and PSTOREFS file systems, recognized as of commit 171e1b98.
2011-07-08timeout: support cascaded timeoutsPádraig Brady
* src/timeout.c (cleanup): Send signals directly to the child in case it has started its own process group (like a cascaded timeout command would for example). * test/misc/timeout-group: Add a test case. * NEWS: Mention the fix.
2011-07-08timeout: add --foreground to support interactive commandsPádraig Brady
Or more accurately, commands not started from the shell prompt, that are interactive, or need to receive Ctrl-C etc. from the terminal. * doc/coreutils.texi (timeout invocation): Document --foreground. * src/timeout.c (main): Set the foreground flag and don't create a separate group. (cleanup): Only send a signal directly to the monitored command when the foreground flag is set. (usage): Describe --foreground. * tests/misc/timeout-group: Add a new test. * tests/Makefile.am: Reference new test. NEWS: Mention the new option. Reported by Shay Shimony Analysis by Alan Curry Fix suggested by Paul Eggert
2011-07-07md5sum, sha1sum, etc: accept new option: --strictPatrick Schoenfeld
Use this new option with --check when the input is expected to consist solely of checksum lines. With only --check, an invalid line evokes a warning, but the program can still exit successfully. With --strict, any invalid line makes the program exit non-zero. * src/md5sum.c (strict, STRICT_OPTION): Declare/define. (long_options): Add "strict". (usage): Describe --strict. (digest_check): Count improperly_formatted lines, too, and use that number and the global "strict" to determine the return value. (main): Handle STRICT_OPTION. Reject --strict without --check. * doc/coreutils.texi: Describe it. * NEWS (New features): Mention it.
2011-07-07stat: recognize GPFS as a file system typeJim Meyering
* src/stat.c (human_fstype) [S_MAGIC_GPFS]: Add a case, to handle GPFS_SUPER_MAGIC/0x47504653. Prompted by this discussion: http://thread.gmane.org/gmane.comp.sysutils.autoconf.general/14007 * NEWS (Improvements): Mention it.
2011-06-25doc: clarify an improvement from coreutils-7.0Jim Meyering
* NEWS (7.0 Improvements): Mention the command: "ls -1U". * cfg.mk (old_NEWS_hash): Update.