Noorul Islam K M <noo...@collab.net> writes: > Noorul Islam K M <noo...@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 >
Really sorry about the previous mail in which I attached the script inline and also script had some issues. Please find attached the correct one. Thanks and Regards Noorul
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