On Wed, Dec 12, 2012 at 9:30 PM, C. Michael Pilato <cmpilato_at_collab.net> wrote:
> On 12/12/2012 03:02 PM, Lieven Govaerts wrote:
>> On Tue, Dec 11, 2012 at 9:29 PM, C. Michael Pilato <cmpilato_at_collab.net> wrote:
>>> Those technical challenges aside, I've since started to doubt the wisdom of
>>> adding special treatment of the starting revision to this API anyway. I'll
>>> continue pondering other options.
>>>
>>
>> What about my earlier suggestion?
>
> I considered it.
>
> And ... then I considered it a nasty hack. Seriously, this is really not
> the kind of thing that *should* be exposed through an API.
>
> ...
> svn_boolean_t honor_editor_api_promises;
> ...
>
> Really? :-)
>
Depends a bit on how you name that function of course, you could call
it relax_editor_depth_first_promise(svn_boolean_t) - with default to
true. This is my reading of the conclusion of your issue 2932: we're
relaxing the rules a bit, but we think it's safe to do so we make this
the new default.
> It does occur to me that one way to work around this is to add an API that
> seems generally useful:
>
> svn_ra_do_checkout()
>
> This would be Yet Another Flavor Of Update-ish Thing, but wouldn't generate
> a reporter/reporter_baton pair, and would immediately begin driving the
> provided editor/editor_baton. And ra_serf's implementation thereof would,
> of course, use send-all mode.
Note that send-all is not the solution if the server insists on skelta
mode (see my previous comment), so if you do an update or a checkout,
you still have to tell serf to limit to one connection.
>
> svnrdump is only trying to do essentally that anyway -- a update of
> ${NOTHING} to ${SOME_REV}. It calls svn_ra_do_update(), uses the provided
> reporter to say "I've got nothing", then finalizes the report and away she
> goes. Would it not be more straightforward to offer a compact API for just
> those sorts of use-cases -- the "fake update from nothing to something"
> use-cases?
Maybe, but would anything else besides svnrdump use this new API? svn
checkout/export solve this in a different manner already.
Lieven
Received on 2012-12-12 22:05:28 CET