[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [vote] pin-externals branch to trunk

From: Branko ─îibej <brane_at_wandisco.com>
Date: Wed, 28 Jan 2015 11:11:11 +0100

On 28.01.2015 10:54, Stefan Sperling wrote:
> There is a known problem where relative URLs in the externals definition
> may become absolute when pinned. This happens if the URL of an external
> resolves to a different path at its last-changed revision. For instance,
> an external definition at r600 might look like this:
> ^/moo/bar ext_bar
> If the last-changed revision of /moo/bar resolves to r500, and 'moo'
> was renamed from 'foo' between r500 and r600, then the pinned external
> will use an absolute URL in the current implementation:
> http://svn.example.com/svn/repos/foo/bar@500 ext_bar
> This problem could probably be solved by adding additional APIs which
> resolve the URL http://svn.example.com/svn/repos/foo/bar to a particular
> type of relative URL (such as ^/foo/bar, /svn/repos/foo/bar, ../foo/bar,
> //svn.example.com/svn/repos/foo/bar, or ^/../repos/foo/bar). Additionally,
> APIs which provide information about the type of a given relative external
> URL would be neded. Currently, our APIs don't offer such functionality.

Ouch. This shouldn't stop the merge, but I really think we can't release
with this restriction. A major problem here is that the generated
absolute URL depends on the access method being used for the copy, or
the one used during checkout for a WC->WC copy. Depending on server
configuration, this could easily make the resulting copy (tag) unusable;
consider a configuration where everyone has read-only access to http://
but read/write access through https:// always requires authentication.
Read-only users would not be able to export or check out from the tag.

More review later ...

-- Brane
Received on 2015-01-28 11:11:43 CET

This is an archived mail posted to the Subversion Dev mailing list.