Martin Furter wrote:
> On Thu, 14 May 2009, C. Michael Pilato wrote:
>> Ben Collins-Sussman wrote:
>>> On Thu, May 14, 2009 at 3:18 PM, Branko Cibej <brane_at_xbc.nu> wrote:
>>>> IMHO he should use the exact same query string as was on the original
>>>> URL. Anything else is guesswork, no?
>>> Er, this is tricky. Suppose I type in "http://host/some/dir?p=x&r=y".
>>> This wil locate dir_at_p, then follow the directory back in time to
>>> revision y (where it might exist at a different location).
>>> The children displayed in the output are therefore all being displayed
>>> at revision Y, and at some (possibly new) path. My first instinct is
>>> to point out that they should all therefore have the ?p=y bit attached
>>> to their hrefs, but this doesn't take into account the possibly new
>>> parental path. :-/
>> You're right, this is tricky. But I think the solution is as simple as
>> behaving *literally* in the way we interpret the inputs semantically:
>> respond to PATH?r=REV[&p=PEGREV] with a "301 Redirect" whose
>> destination is
>> the resolved, real location (path + rev) -- that is, REALPATH?p=PEGREV.
> Shouldn't this be a "302 Moved Temporarily" since if r=HEAD it can point
> to a different path later if it is replaced by something else?
> (I guess if REV is not HEAD a 301 is perfectly fine.)
I implemented this solution as part of issue #3425.
C. Michael Pilato <cmpilato_at_collab.net>
CollabNet <> www.collab.net <> Distributed Development On Demand
Received on 2009-06-12 21:13:57 CEST