Noorul Islam K M <noorul_at_collab.net> writes:
> While working on issue 3799, in one of the review comments julianf said
> the following about number 10 test in external_tests.py.
>
> <quote>
> A/B/gamma is only an external: it does not appear in the WC until
> Subversion processes the external definitions.
>
> It looks to me like that failure was showing us a bug. If I run the
> test, without your patch, in verbose mode, I see:
>
> CMD: svn export svn-test-work/working_copies/externals_tests-10
> svn-test-work/working_copies/externals_tests-10.export [...]
> A svn-test-work/working_copies/externals_tests-10.export/A
> A svn-test-work/working_copies/externals_tests-10.export/A/B
> A svn-test-work/working_copies/externals_tests-10.export/A/B/lambda
> A svn-test-work/working_copies/externals_tests-10.export/A/B/gamma
> [...]
> A svn-test-work/working_copies/externals_tests-10.export/A/B/gamma
> [...]
> CMD: svn export --ignore-externals
> svn-test-work/working_copies/externals_tests-10
> svn-test-work/working_copies/externals_tests-10.export [...]
> A svn-test-work/working_copies/externals_tests-10.export/A
> A svn-test-work/working_copies/externals_tests-10.export/A/B
> A svn-test-work/working_copies/externals_tests-10.export/A/B/lambda
> A svn-test-work/working_copies/externals_tests-10.export/A/B/gamma
> [...]
>
> There is a comment in the test about --ignore-externals not ignoring
> A/B/gamma. That's a bug. And the first export (without
> --ignore-externals) is also buggy. It shouldn't export A/B/gamma twice.
>
> We shouldn't just quietly tweak the test to hide the bug. We should
> write a new test specifically to check for that bug, or fix the bug, or
> file an issue, or write to the dev@ list about it. Something.
>
> - Julian
> </quote>
>
> I tried to re-create this out of test environment and I came up with a
> reproduction script which is attached.
>
> Here I have a repository with the following files
>
> A/B/lambda
> A/D/gamma
>
> Along with this I have an external set on A/B as
>
> "^/A/D/gamma gamma"
>
> Now while exporting the working copy. A/B/gamma is exported twice which
> looks like a bug and while exporting the WC with --ignore-externals
> A/B/gamma is exported once which also seems to be a bug since A/B/gamma
> is an external.
>
> I can go ahead and create an issue for this if people can confirm this.
>
Somehow I missed the attachment. Here is it.
Thanks and Regards
Noorul
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
svn=~/projects/subversion/builds/trunk/bin/svn
svnadmin=~/projects/subversion/builds/trunk/bin/svnadmin
repo=/tmp/repo
wc=/tmp/wc
exp=/tmp/export
rm -r -f $repo $wc
$svnadmin create $repo
$svn co file://$repo $wc
mkdir -p $wc/A/B
mkdir -p $wc/A/D
touch $wc/A/B/lambda
touch $wc/A/D/gamma
$svn add $wc/A
$svn ci $wc -m "Adding folder A"
$svn ps svn:externals "^/A/D/gamma gamma" $wc/A/B
$svn ci $wc -m "Setting svn:externals on A/B"
$svn up $wc
rm -r -f $exp
echo "\nSimple export"
$svn export $wc /tmp/export
rm -r -f $exp
echo "\nExport with --ignore-externals"
$svn export --ignore-externals $wc /tmp/export
Received on 2011-05-31 11:23:32 CEST