<feed xmlns='http://www.w3.org/2005/Atom'>
<title>coreutils/tests/cp, branch v8.8</title>
<subtitle>Mirror of https://https.git.savannah.gnu.org/git/coreutils.git/
</subtitle>
<id>https://git.shady.money/coreutils/atom?h=v8.8</id>
<link rel='self' href='https://git.shady.money/coreutils/atom?h=v8.8'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/'/>
<updated>2010-12-19T00:36:29Z</updated>
<entry>
<title>cp: ensure backups are created when -T specified</title>
<updated>2010-12-19T00:36:29Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2010-12-18T02:50:33Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=e66948c3b59045bf8b9f6bd1e0dcc3bb93488cab'/>
<id>urn:sha1:e66948c3b59045bf8b9f6bd1e0dcc3bb93488cab</id>
<content type='text'>
* src/cp.c (do_copy): When -T is specified, initialize
the NEW_DST and SB variables, which are checked when
running: cp -T --force --backup file file
* tests/cp/backup-1: Add the -T case
</content>
</entry>
<entry>
<title>tests: cleanup rm -rf fails under NFS</title>
<updated>2010-12-03T19:09:27Z</updated>
<author>
<name>Paul Eggert</name>
<email>eggert@cs.ucla.edu</email>
</author>
<published>2010-12-03T19:08:48Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=b6ef652e50f49e55871c5d08c43ee250950f1cbb'/>
<id>urn:sha1:b6ef652e50f49e55871c5d08c43ee250950f1cbb</id>
<content type='text'>
This problem was observed on RHEL 5.5 x86-64 when running as a
client of a NetApp FAS2050.
* tests/cp/cp-mv-backup: Don't leave a file descriptor open to
a file in a directory that will be cleaned up with "rm -rf".
Under NFS, when the rm unlinks that file, it is instead renamed
to .nfsXXXX and then rm cannot remove the parent directory,
and the test fails.
* tests/cp/same-file: Likewise.
</content>
</entry>
<entry>
<title>tests: convert the multi-prog $VERBOSE/--version uses</title>
<updated>2010-11-17T20:46:25Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2010-11-17T20:38:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=8f9be76b0d6995919ee960ce5864715faa11ea5b'/>
<id>urn:sha1:8f9be76b0d6995919ee960ce5864715faa11ea5b</id>
<content type='text'>
E.g.,

-test "$VERBOSE" = yes &amp;&amp; { env -- pwd --version; readlink --version; }
+print_ver_ pwd readlink

-test "$VERBOSE" = yes &amp;&amp; { stdbuf --version; mv --version; }
+print_ver_ stdbuf mv

Use this command:
git grep -l 'VERBOSE.*--version'|xargs perl -ni \
  -e '/^test "\$VERBOSE" = yes &amp;&amp; { .*--version/ or print,next;' \
  -e 's/env -- //g;' \
  -e 's/test "\$VERBOSE" = yes &amp;&amp; { /print_ver_ /;' \
  -e ' s/(\w+) --version;/$1/g; s/ *}$//; print'
</content>
</entry>
<entry>
<title>tests: substitute the single-program $VERBOSE/--version uses</title>
<updated>2010-11-17T20:45:51Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2010-11-17T20:35:31Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=293c37b9061c1afd0acd143bbded637a8f00b3a0'/>
<id>urn:sha1:293c37b9061c1afd0acd143bbded637a8f00b3a0</id>
<content type='text'>
Automatically make all of the changes like this:

  -test "$VERBOSE" = yes &amp;&amp; chgrp --version
  +print_ver_ chgrp

git grep -l 'VERBOSE.*--version'|xargs perl -pi -e \
  's/test "\$VERBOSE" = yes &amp;&amp; (\w+) --version/print_ver_ $1/'
</content>
</entry>
<entry>
<title>tests: convert remaining uses of test-lib.sh to init.sh</title>
<updated>2010-11-17T19:48:57Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2010-11-14T11:07:57Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=fbcc100f5bc4e5d57370544093fc9edfbde411d3'/>
<id>urn:sha1:fbcc100f5bc4e5d57370544093fc9edfbde411d3</id>
<content type='text'>
RHS='. "\${srcdir=.}/init.sh"; path_prepend_ ../src'
git grep -l test-lib.sh \
  | xargs perl -pi -e 's,^\. \$srcdir/test-lib\.sh$,'"$RHS",
</content>
</entry>
<entry>
<title>tests: convert 'if test "$VERBOSE" = yes; then' to test ... &amp;&amp;</title>
<updated>2010-11-17T19:48:57Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2010-11-14T11:02:39Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=ff7f0ff85c40174f1885ec61fa4ab6b73d02b555'/>
<id>urn:sha1:ff7f0ff85c40174f1885ec61fa4ab6b73d02b555</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tests: convert first batch of tests from test-lib.sh to init.sh</title>
<updated>2010-11-17T19:48:57Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2010-11-14T10:05:05Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=f38becab02472e6872048a1951b249b2a3c054df'/>
<id>urn:sha1:f38becab02472e6872048a1951b249b2a3c054df</id>
<content type='text'>
Initially, I did this,
git grep -l srcdir/test-lib.sh|xargs perl -p0i -e '~180-byte script'
but that line would have been much longer than the maximum permitted
by coreutils' commit hook, and wasn't readable besides, so here's a
more readable version:

lhs=$(printf '%s\\n' \
'if test "$VERBOSE" = yes; then' \
'  set -x' \
'  touch --version' \
'fi' \
'' \
'. $srcdir/test-lib.sh' \
  | sed 's/\$/\\\$/g;s/touch/(\\w+)/')

rhs=$(printf '%s\\n' \
'. "${srcdir=.}/init.sh"; path_prepend_ ../src' \
'test "$VERBOSE" = yes &amp;&amp; FIXME --version' \
  | sed 's/\$/\\\$/g;s/FIXME/\$1/')

git grep -l srcdir/test-lib.sh|xargs perl -p0i -e "s,$lhs,$rhs,"
</content>
</entry>
<entry>
<title>cp: make --attributes-only override --reflink completely</title>
<updated>2010-10-27T10:18:51Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2010-10-26T16:55:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=883ac22239036025896ff99bd4b2a6d02712f39f'/>
<id>urn:sha1:883ac22239036025896ff99bd4b2a6d02712f39f</id>
<content type='text'>
* doc/coreutils.texi (cp invocation): Change the description slightly
so as users might not immediately discount using this option.
Mention that --reflink is overridden by the other linking options and
--attributes-only, and give an example where this might be useful.
* src/copy.c (copy_internal): Bypass the reflink if
--attributes-only is specifed.
* tests/cp/reflink-perm: Ensure both --reflink modes are
overridden by --attributes-only.
* NEWS: Mention the change in behavior.
Reported by Jim Meyering.
</content>
</entry>
<entry>
<title>tests: exclude some tests when running on NFS</title>
<updated>2010-09-07T09:49:55Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2010-09-02T12:22:41Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=437671accc0af8fa43a3f9bda6c150cb63fc42cb'/>
<id>urn:sha1:437671accc0af8fa43a3f9bda6c150cb63fc42cb</id>
<content type='text'>
All tests currently pass on NFS on Linux kernel 2.6.22 at least,
but some fail on 2.6.9, so we exclude those here.

* tests/init.cfg (is_local_dir_): A new function
returning if the specified directory is on a local file system.
(require_local_dir_): A new function to skip tests
if the current directory is not on a local file system.
* tests/cp/existing-perm-race: Skip if non local.
* tests/cp/file-perm-race: Likewise.
* tests/cp/parent-perm: Likewise.
* tests/cp/parent-perm-race: Likewise.
* tests/cp/preserve-2: Likewise.
* tests/mv/part-symlink: Likewise.
* tests/du/basic: Use refactored function.
* tests/install/basic-1: Likewise.
* tests/mkdir/p-3: Likewise.
* tests/dd/skip-seek-past-dev: Likewise.
* tests/du/slink: Likewise.  Remove redundant test
for NFS file system.
* tests/misc/join: s/local/locale/.
</content>
</entry>
<entry>
<title>cp: add an option to only copy the file attributes</title>
<updated>2010-07-01T13:33:27Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2009-09-21T07:43:03Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=1af81dfb4d24d104777b8917544d81097db0deab'/>
<id>urn:sha1:1af81dfb4d24d104777b8917544d81097db0deab</id>
<content type='text'>
* src/copy.c (copy_attr): A new function which merges copy_attr_by_fd
and copy_attr_by_name.  Also display all errors when --attributes-only
* src/copy.c (copy_reg): Skip copying the file contents if specified.
Refactor the SELinux error handling code a little and display all
SELinux errors when only copying attributes.
* src/copy.h (struct cp_options): Add a data_copy_required boolean
* src/cp.c (main): Default to copying data but don't if specified
* src/install.c: Default to copying data
* src/mv.c: Likewise
tests/cp/reflink-perm: Add a test to check that --attributes-only
does not copy data
* tests/cp/acl: Likewise. Also refactor to remove redundant
acl manipulation
* doc/coreutils.texi (cp invocation): Describe the new option
* NEWS: Mention the new feature
</content>
</entry>
</feed>
