The code is here if you are interested (dunno
if it's publicly accessible or not but I believe
so).


https://svn.apache.org/repos/infra/infrastructure/trunk/projects/svn_check_path/




>________________________________
> From: Joe Schaefer <joe_schae...@yahoo.com>
>To: Greg Stein <gst...@gmail.com> 
>Cc: "dev@subversion.apache.org" <dev@subversion.apache.org> 
>Sent: Sunday, February 3, 2013 12:10 PM
>Subject: Re: Coniguring 301/302 redirects to track an fspath rename
> 
>
>I backed off with the idea of trying to coax
>new behavior out of svn clients by munging OPTIONS
>responses, but GET and HEAD are now doing
>interesting things even with ?p= set.  For our
>purposes someday it would be nice to just have
>a graduating podling's checkouts all auto-switch
>to the moved location.  Whether that's
>accomplished by augmenting an OPTIONS request
>with revision details or just using the existing
>GET/HEAD support or some other method would be
>just fine with me.
>
>
>
>
>
>
>>________________________________
>> From: Joe Schaefer <joe_schae...@yahoo.com>
>>To: Greg Stein <gst...@gmail.com> 
>>Cc: "dev@subversion.apache.org" <dev@subversion.apache.org> 
>>Sent: Saturday, February 2, 2013 2:07 AM
>>Subject: Re: Coniguring 301/302 redirects to track an fspath rename
>> 
>>
>>The (pegrev) revision is typically available on
>>the command-line: all I want is for svn to distinguish
>>between
>>
>>
>>    svn ls foo@1000000
>>
>>
>>and
>>
>>
>>    svn ls foo
>>
>>
>>
>>as far as making redirects pegrev-aware.
>>
>>
>>
>>
>>
>>
>>>________________________________
>>> From: Greg Stein <gst...@gmail.com>
>>>To: Joe Schaefer <joe_schae...@yahoo.com> 
>>>Cc: dev@subversion.apache.org 
>>>Sent: Saturday, February 2, 2013 1:53 AM
>>>Subject: Re: Coniguring 301/302 redirects to track an fspath rename
>>> 
>>>
>>>Oh, and to the second part: the code which sends OPTIONS has no knowledge 
>>>about the future operations. There is no way to send <revision/>, or 
>>>similar. *Very* disconnected, as in: not even cheesy-hackable.
>>>Cheers,
>>>-g
>>>On Feb 2, 2013 1:49 AM, "Greg Stein" <gst...@gmail.com> wrote:
>>>
>>>That OPTIONS request is generic, and contains no information about the 
>>>future operation(s) that will be performed on the connection. It is used for 
>>>the client to validate and gather information about the server.
>>>>Cheers,
>>>>-g
>>>>On Feb 2, 2013 1:23 AM, "Joe Schaefer" <joe_schae...@yahoo.com> wrote:
>>>>
>>>>So I now see the request body (xml payload)
>>>>>in the OPTIONS request, but nothing there nor
>>>>>in the headers tells me about revision numbers.
>>>>>If I can convince you to add a <revision/> block
>>>>>to the OPTIONS request body I can handle the rest
>>>>>from the httpd side.  Obviously this won't help
>>>>>existing clients, but hey it's a gee-whiz feature
>>>>>anyhow.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>________________________________
>>>>>> From: Joe Schaefer <joe_schae...@yahoo.com>
>>>>>>To: 'Daniel Shahaf' <d...@daniel.shahaf.name>; Bert Huijben 
>>>>>><b...@qqmail.nl> 
>>>>>>Cc: "dev@subversion.apache.org" <dev@subversion.apache.org> 
>>>>>>Sent: Friday, February 1, 2013 9:26 PM
>>>>>>Subject: Re: Coniguring 301/302 redirects to track an fspath rename
>>>>>> 
>>>>>>
>>>>>>So I have this implemented about as well
>>>>>>as I can with what I know about OPTIONS
>>>>>>requests that svn generates.  It would
>>>>>>help if I knew how svn supplies revision
>>>>>>information in the OPTIONS request headers
>>>>>>so I can pass that along to the codebase
>>>>>>instead of always using the youngest rev.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>________________________________
>>>>>>> From: 'Daniel Shahaf' <d...@daniel.shahaf.name>
>>>>>>>To: Bert Huijben <b...@qqmail.nl> 
>>>>>>>Cc: dev@subversion.apache.org 
>>>>>>>Sent: Friday, February 1, 2013 3:33 PM
>>>>>>>Subject: Re: Coniguring 301/302 redirects to track an fspath rename
>>>>>>> 
>>>>>>>Bert Huijben wrote on Fri, Feb 01, 2013 at 21:28:10 +0100:
>>>>>>>> 
>>>>>>>> 
>>>>>>>> > -----Original Message-----
>>>>>>>> > From: Daniel Shahaf [mailto:d...@daniel.shahaf.name]
>>>>>>>> > Sent: vrijdag 1 februari 2013 19:11
>>>>>>>> > To: dev@subversion.apache.org
>>>>>>>> > Subject: Coniguring 301/302 redirects to track an fspath rename
>>>>>>>> > 
>>>>>>>> > Does anyone have an example of how to configure a server to issue
>>>>>>>> > 301/302 redirects for an fspath that had been renamed?
>>>>>>>> > 
>>>>>>>> > For example we have
>>>>>>>> > 
>>>>>>>> >     <Location /repos/asf>
>>>>>>>> >     SVNPath ...
>>>>>>>> >     </Location>
>>>>>>>> > 
>>>>>>>> > And we'd like to do:
>>>>>>>> > 
>>>>>>>> > 
    # The project was renamed
>>>>>>>> >     Redirect /repos/asf/openejb 
>>>>>>>> >https://svn.apache.org/repos/asf/tomee
>>>>>>>> > 
>>>>>>>> > but we're hitting various problems:
>>>>>>>> > 
>>>>>>>> > - The redirect kicks in for historical revisions (prior to the 'svn 
>>>>>>>> > mv
>>>>>>>> >   ^/openejb ^/tomee' in r1432805) too, such as:
>>>>>>>> >  https://svn.apache.org/repos/asf/openejb?p=1400000
>>>>>>>> > 
>>>>>>>> > - A similar configuration failed to kick in during update/checkout of
>>>>>>>> >   working copy checked out from (a pre-rename revision of) ^/openejb:
>>>>>>>> >   the initial request got matched and redirected, but a subsequent
>>>>>>>> >   request to /repos/asf/!svn/.../openejb failed to match.
>>>>>>>> > 
>>>>>>>> > Ideally we'd like
 to issue a 301 redirect for requests to /openejb that
>>>>>>>> > concern r1432805 or later, but leave requests concerning r1432804 or
>>>>>>>> > earlier untouched.
>>>>>>>> > 
>>>>>>>> > (or maybe what we *really* want is a repos-side symlink... but we're
>>>>>>>> > running 1.7, not 1.9, and we'll appreciate solutions that work within
>>>>>>>> > that limitation :))
>>>>>>>> 
>>>>>>>> We currently only support redirects above the repository level.
>>>>>>>> 
>>>>>>>> Redirections inside would be a completely different feature.
>>>>>>>> 
>>>>>>>
>>>>>>>OK... :(
>>>>>>>
>>>>>>>> Why not just leave a top level folder with some readme?
>>>>>>>> 
>>>>>>>
>>>>>>>Every time a podling graduates from the incubator, we do a rename:
>>>>>>>   svn mv ^/incubator/flex ^/flex
>>>>>>>
>>>>>>>If we can return 301 whenever somebody does 'svn up' in a wc of
>>>>>>>^/incubator/flex, we'll save many users (2-4 projects every month)
>>>>>>>having to learn about 'svn relocate'.
>>>>>>>
>>>>>>>> I think you
 should be able to redirect the normal webbrowser GETs though, as
>>>>>>>> I don't think we use those urls from our ra layers. (Or did we start 
>>>>>>>> using
>>>>>>>> them for HEAD requests in HTTPv2?)
>>>>>>>> 
>>>>>>>
>>>>>>>'svn ls $URL@peg' was affected by the redirects I had.
>>>>>>>
>>>>>>>>     Bert
>>>>>>>> 
>>>>>>>
>>>>>>>Thanks,
>>>>>>>
>>>>>>>Daniel
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>
>>>
>>
>>
>
>

Reply via email to