diff options
-rw-r--r-- | NEWS | 60 | ||||
m--------- | gnulib | 0 | ||||
-rwxr-xr-x | tests/init.sh | 31 |
3 files changed, 50 insertions, 41 deletions
@@ -4,46 +4,52 @@ GNU coreutils NEWS -*- outline -*- ** Bug fixes - cp, mv, and install no longer run into undefined behavior when - handling ACLs on Cygwin and Solaris platforms. [bug introduced in - coreutils-8.24] + cp, mv, and install no longer run into undefined behavior when + handling ACLs on Cygwin and Solaris platforms. [bug introduced in + coreutils-8.24] - date, du, ls, and pr no longer mishandle time zone abbreviations on - System V style platforms where this information is available only - in the global variable 'tzname'. [bug introduced in coreutils-8.24] + chcon, chgrp, chmod, chown, du, and rm, or specifically utilities + using the FTS interface, now diagnose failures returned by readdir(). + [this bug was inherent in the use of fts: thus, for rm the bug was + introduced in coreutils-8.0. du, chmod, chgrp and chown started using + fts in 6.0. chcon was added in coreutils-6.9.91 with fts support. ] - nl now resets numbering for each page section rather than just for each page. - [This bug was present in "the beginning".] + date, du, ls, and pr no longer mishandle time zone abbreviations on + System V style platforms where this information is available only + in the global variable 'tzname'. [bug introduced in coreutils-8.24] - stty --help no longer outputs extraneous gettext header lines - for translated languages. [bug introduced in coreutils-8.24] + nl now resets numbering for each page section rather than just for each page. + [This bug was present in "the beginning".] - seq now immediately exits upon write errors. - [This bug was present in "the beginning".] + stty --help no longer outputs extraneous gettext header lines + for translated languages. [bug introduced in coreutils-8.24] - yes now handles short writes, rather than assuming all writes complete. - [bug introduced in coreutils-8.24] + seq now immediately exits upon write errors. + [This bug was present in "the beginning".] + + yes now handles short writes, rather than assuming all writes complete. + [bug introduced in coreutils-8.24] ** Changes in behavior - seq no longer accepts 0 value as increment, and now also rejects NaN - values for any argument. + seq no longer accepts 0 value as increment, and now also rejects NaN + values for any argument. - stat now outputs nanosecond information for time stamps even if - they are out of localtime range. + stat now outputs nanosecond information for time stamps even if + they are out of localtime range. - sort, tail, and uniq now support traditional usage like 'sort +2' - and 'tail +10' on systems conforming to POSIX 1003.1-2008 and later. - The 2008 edition of POSIX dropped the requirement that arguments - like '+2' must be treated as file names. + sort, tail, and uniq now support traditional usage like 'sort +2' + and 'tail +10' on systems conforming to POSIX 1003.1-2008 and later. + The 2008 edition of POSIX dropped the requirement that arguments + like '+2' must be treated as file names. ** Improvements - stat and tail now know about "prl_fs" (a parallels file system), - "m1fs" (a Plexistor file system), "wslfs" (Windows Subsystem for Linux), - and "smb2". stat -f --format=%T now reports the file system type, and - tail -f uses polling for "prl_fs" and "smb2", inotify for "m1fs", - and attempts inotify for "wslfs". + stat and tail now know about "prl_fs" (a parallels file system), + "m1fs" (a Plexistor file system), "wslfs" (Windows Subsystem for Linux), + and "smb2". stat -f --format=%T now reports the file system type, and + tail -f uses polling for "prl_fs" and "smb2", inotify for "m1fs", + and attempts inotify for "wslfs". * Noteworthy changes in release 8.25 (2016-01-20) [stable] diff --git a/gnulib b/gnulib -Subproject 841c4fa800b4c5c930c3350e5a9a164b204a79c +Subproject 6835fc458f30b94f15d69c35a79cbc2dfabe2d0 diff --git a/tests/init.sh b/tests/init.sh index ee0802241..97e4e4ba5 100755 --- a/tests/init.sh +++ b/tests/init.sh @@ -308,13 +308,19 @@ if diff_out_=`exec 2>/dev/null; diff -u "$0" "$0" < /dev/null` \ fi } fi -elif diff_out_=`exec 2>/dev/null; diff -c "$0" "$0" < /dev/null`; then +elif + for diff_opt_ in -U3 -c '' no; do + test "$diff_opt_" = no && break + diff_out_=`exec 2>/dev/null; diff $diff_opt_ "$0" "$0" </dev/null` && break + done + test "$diff_opt_" != no +then if test -z "$diff_out_"; then - compare_ () { diff -c "$@"; } + compare_ () { diff $diff_opt_ "$@"; } else compare_ () { - if diff -c "$@" > diff.out; then + if diff $diff_opt_ "$@" > diff.out; then # No differences were found, but AIX and HP-UX 'diff' produce output # "No differences encountered" or "There are no differences between the # files.". Hide this output. @@ -466,7 +472,6 @@ setup_ () fi initial_cwd_=$PWD - fail=0 pfx_=`testdir_prefix_` test_dir_=`mktempd_ "$initial_cwd_" "$pfx_-$ME_.XXXX"` \ @@ -550,8 +555,9 @@ mktempd_ () # Disallow any trailing slash on specified destdir: # it would subvert the post-mktemp "case"-based destdir test. case $destdir_ in - /) ;; + / | //) destdir_slash_=$destdir;; */) fail_ "invalid destination dir: remove trailing slash(es)";; + *) destdir_slash_=$destdir_/;; esac case $template_ in @@ -561,20 +567,17 @@ mktempd_ () esac # First, try to use mktemp. - d=`unset TMPDIR; { mktemp -d -t -p "$destdir_" "$template_"; } 2>/dev/null` \ - || fail=1 + d=`unset TMPDIR; { mktemp -d -t -p "$destdir_" "$template_"; } 2>/dev/null` && # The resulting name must be in the specified directory. - case $d in "$destdir_"*);; *) fail=1;; esac + case $d in "$destdir_slash_"*) :;; *) false;; esac && # It must have created the directory. - test -d "$d" || fail=1 + test -d "$d" && # It must have 0700 permissions. Handle sticky "S" bits. - perms=`ls -dgo "$d" 2>/dev/null|tr S -` || fail=1 - case $perms in drwx------*) ;; *) fail=1;; esac - - test $fail = 0 && { + perms=`ls -dgo "$d" 2>/dev/null` && + case $perms in drwx--[-S]---*) :;; *) false;; esac && { echo "$d" return } @@ -593,7 +596,7 @@ mktempd_ () i_=1 while :; do X_=`rand_bytes_ $nx_` - candidate_dir_="$destdir_/$base_template_$X_" + candidate_dir_="$destdir_slash_$base_template_$X_" err_=`mkdir -m 0700 "$candidate_dir_" 2>&1` \ && { echo "$candidate_dir_"; return; } test $MAX_TRIES_ -le $i_ && break; |