On 04/20/2013 05:00 AM, Bert Huijben wrote: > Instead of patching more and more corner cases with individual extra ra > calls I think svn_client_log should call svn_client__repos_locations() > once to obtain the history of the path to look at over the entire range > of versions. (=over MAX(rev):MIN(rev)) and then use that information > directly as the paths for the rest of the log calls.
Agreed. Was thinking exactly the same thing.
I wonder, though: isn't this rev-range support better situated in the RA
layer itself, extended up to the server? I ask because IIRC, the fallback
implementation of svn_ra_get_repos_locations() uses none other than the
'log' functionality.
So I see this:
BEST CASE: client's RA layer and server can handle log-with-ranges
FALLBACK 1: client RA layer works around server's lack of log-with-ranges
support by using get_locations() and a series of log requests
FALLBACK 2: client RA layer works around server's lack of log-with-ranges
support and lack of get_locations support by using a single
log request from which disinteresting revisions are merely filtered
out.
--
C. Michael Pilato <[email protected]>
CollabNet <> www.collab.net <> Enterprise Cloud Development
signature.asc
Description: OpenPGP digital signature

