Bert Huijben wrote on Sun, May 26, 2013 at 20:51:10 +0200: > > > > -----Original Message----- > > From: danie...@apache.org [mailto:danie...@apache.org] > > Sent: zondag 26 mei 2013 08:49 > > To: comm...@subversion.apache.org > > Subject: svn commit: r1486397 - /subversion/branches/1.8.x/STATUS > > > > Author: danielsh > > Date: Sun May 26 06:48:49 2013 > > New Revision: 1486397 > > > > URL: http://svn.apache.org/r1486397 > > Log: > > * STATUS: Ask a question about r1485127. > > > > Modified: > > subversion/branches/1.8.x/STATUS > > > > Modified: subversion/branches/1.8.x/STATUS > > URL: > > http://svn.apache.org/viewvc/subversion/branches/1.8.x/STATUS?rev=1486 > > 397&r1=1486396&r2=1486397&view=diff > > ========================================================== > > ==================== > > --- subversion/branches/1.8.x/STATUS (original) > > +++ subversion/branches/1.8.x/STATUS Sun May 26 06:48:49 2013 > > @@ -104,6 +104,10 @@ Candidate changes: > > Restores functionality that was lost in 1.8 compared to 1.7. > > Votes: > > +1: rhuijben (for 1.8.1 or soak restart) > > + +0: danielsh (looks right, but all this does is cause sess->repos_url > > + to be set to a non-canonical value; I wonder if the > > right > > + fix is to add a canonicalize() call in front of a > > strcmp() > > + in libsvn_client) > > I wish it were that simple. > > The usage of file://localhost/some/location to a repository on > /some/location has been hardcoded in ra_local since before 1.0, but is > not part of our canonicalization rules in svn_uri_canonicalize(). > > The 'simple fix' to change the canonicalization rules by including > this rule would require a working copy format bump, as this prefix is > currently perfectly valid as a repository location.
What is the libsvn_wc problem that setting svn_ra_session_t.repos_root_url to a different value fixes? (You haven't said that yet either in the log message or in this thread; you only said what URLs are involved in it.) It is still not clear to me why we are fixing a libsvn_wc issue by changing an implementation detail of libsvn_ra_local. It sounds like libsvn_wc could invent its own notion of "equal URL" which ignores drives letters and considers file:/// and file://localhost/ equivalent, with no changes to libsvn_ra*. With the new code, will svn_ra_session_t->repos_root_url always be set to a canonical value? The code before your change would. Thanks for the additional background. Daniel > And then for this > example the api works for us, but is not really part of any RFC. > > That 'localhost' refers to the local machine is a convention on many > platforms, but not really a standard. > > On Windows we also have file:///some/path urls that refers to > E:\some\path when E: happens to be the current harddrive. And this has > similar conversion problems. > > > I think that for 1.8 we have to keep the same one to many relation > between local dirents and repository urls, as in 1.0-1.7 :( > > For 1.9+ we might be able to apply new canonicalization rules via > a proper upgrade, but doing this now would just delay 1.8, at no real > gain for our users. > > Bert > > > > > > > > * r1485447, r1485449 > > Make 'SQLITE_VERSION=3.7.15.1 ./get-deps.sh' work. > > > >