Hi, I recently discovered what I think is a bug in Subversion. As per the bug reporting instructions, I'm posting on this mailing list first to confirm. I'm seeing this issue in fully-updated Ubuntu 16.04 with subversion 1.9.3, as well as the subversion trunk revision 1801307. It seems to be related to svn:externals with root-relative URLs (^/). If I attempt to export a specific revision from a checkout, and that revision contains root-relative externals, svn will error out:
svn: subversion/libsvn_subr/dirent_uri.c:324: canonicalize: Assertion `*src != '/'' failed. Aborted (core dumped) It only seems to be a problem if I'm exporting from a checkout rather than a repository URL. Here is an example set of steps to reproduce this problem: # Set up a repository with root-relative externals svnadmin create /tmp/testrepo svn co file:///tmp/testrepo /tmp/testrepo-co cd /tmp/testrepo-co touch test1.txt svn add test1.txt svn mkdir ext svn propset svn:externals '^/test1.txt test2.txt' ext svn commit -m "test commit 1" svn update # Exporting without the -r option succeeds svn export /tmp/testrepo-co /tmp/testexport1 # Exporting from the repository URL with -r succeeds svn export -r 1 file:///tmp/testrepo /tmp/testexport2 # Exporting from a checkout with -r errors out with the following message: # svn: subversion/libsvn_subr/dirent_uri.c:324: canonicalize: Assertion `*src != '/'' failed. svn export -r 1 /tmp/testrepo-co /tmp/testexport3 I believe that it's a bug and I should still be able to use the -r option when exporting from a checkout. Anybody have any thoughts? Am I OK to make a report in the issue tracker? I am not subscribed to this list, so please CC me with any responses. Thanks! Doug