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

Re: [PATCH] Update and switch APIs call conflict resolver at end of operation

From: Julian Foad <julianfoad_at_btopenworld.com>
Date: Tue, 26 Mar 2013 20:18:42 +0000 (GMT)

Stefan Sperling wrote:

> On Tue, Mar 26, 2013 at 04:26:33PM +0000, Julian Foad wrote:
>> With this patch, subversion/svn/update-cmd.c:svn_cl__update() will do this:
>>
>>   * Call svn_client_update4(...)
>>
>>     - with ctx->conflict_func2 set to svn_cl__conflict_func_interactive()
>>       which does interactive or non-interactive (pre-specified) resolution.
>>
>>     - which calls the callback after completing the update, before returning.
>
> I agree that this makes more a whole lot more sense, and would
> like to see the 1.8 API behave this way, if GUI clients can deal
> with it.
>
> What about third-party callers that call the 1.7 and earlier APIs?
> Their callbacks will be called at a different time when they run
> against 1.8 libs, won't they? Is this a problem?

Good point.  I think we should preserve the behaviour of the old APIs exactly.  I'll make that happen.

>> This changes the notifications a bit, as mentioned in the log message
>> (which is in the patch file).
>
> This might also be a backwards-compatibility concern.
>
> If possible, we should try to keep the old APIs working as-is.
> I think this was part of the rationale for doing this within 'svn'.

As above.  The changes in notification are very closely tied to the changes in when the CB is called.  I'll make both happen the old way when calling the old API.

This will extend the patch a bit, and result in bumping the svn_client_update/switch API versions.

- Julian
Received on 2013-03-26 21:19:15 CET

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.