On 13.03.2013 17:29, Julian Foad wrote:
> I (Julian Foad) wrote:
>
> [...]
>> PROPOSAL
>>
>> - svn_ra_do_update2(): revise to svn_ra_do_update3(), add the
>> 'ignore_ancestry' option there too, and use two pools while we're at
>>
>> it. Track this change in the RA vtable 'update' method, protocols, etc.
>>
>> - svn_wc__get_switch_editor(): add 'adds_as_modification'.
>>
>> - svn_client__update_internal(), svn_client_update4(): add
>> 'ignore_ancestry'.
>>
>> - svn_client__switch_internal(), svn_client_switch4(): add
>> 'adds_as_modification'.
>>
>>
>> RATIONALE
>>
>> Do I really have to explain why Consistency is Good?
> Consistency alone doesn't require us to add the options where missing; we could also remove them where present. These options exist because we decided at some point that we wanted them, and I think we still want them and we definitely still need them for backward compatibility.
Actually, if we're revving an API, it's just as valid to /remove/
options as it is to add them. IMO.
The backwards-compat behaviour can be encapsulated in the implementation.
So, for example, we could go ahead and remove the ignore-ancestry option
from switch.
-- Brane
--
Branko Čibej
Director of Subversion | WANdisco | www.wandisco.com
Received on 2013-03-13 17:38:20 CET