Hi James,
> $ make BINARY=../src/fsvs TEST_LIST=037\* -C tests ... > An error occurred: Couldn't open a repository (180001) > in url__open_session: > svn_ra_open("file:///tmp/fsvs-test-1000/repos/trunk"): Unable to connect to a > repository at URL 'file:///tmp/fsvs-test-1000/repos/trunk' > make[3]: *** [prepare_wc] Error 2 ... > I didn't get a single successful run of the test. Just sitting in src/ and running "make run-tests TEST_LIST=037*" doesn't work for you? Is the repository in "/tmp/fsvs-test-1000/repos/" created for you? Hmmm, what could be different? I've got /tmp on a tmpfs. > Granted, the abort needs to be fixed, but not being able to run the test > makes it hard to bisect where things broke. Yeah, right. > Ok, during SVN 1.7 development (r957893) moved a bunch of code from > svn_ra_local__split_URL to a new function, > svn_uri_get_dirent_from_file_url. When that happened, the assert you're > hitting was added: > > assert(svn_uri_is_canonical(url, pool)); > > You're not canonicalizing the URL before passing it into svn_ra_open(). > You probably want to use svn_path_canonicalize() (or if you can accept a > minimum SVN version of 1.6, one of svn_dirent_canonicalize, > svn_uri_canonicalize, svn_relpath_canonicalize) in url__parse instead of > manually trying to make it canonical. > > Granted, the assert is new but it's just asserting the contract of the > APIs. The URIs were always supposed to be canonicalized. Yeah, and I even have code that deals with a slash at the end and so on. The other idea is that the requirements have changed - perhaps an UTF8 URL like file:///tmp/fsvs-test-1044/repos/trunk/ä-30305/ö-13157/§-2186 isn't allowed anymore, but the non-ASCII characters have to be encoded? Thank you for your help!