On 27 February 2014 15:35, Stefan Fuhrmann <stefan.fuhrmann_at_wandisco.com> wrote:
> On Mon, Feb 24, 2014 at 2:45 PM, Ivan Zhakov <ivan_at_visualsvn.com> wrote:
>>
>> On 23 September 2013 02:10, <stefan2_at_apache.org> wrote:
>> > Author: stefan2
>> > Date: Sun Sep 22 22:10:53 2013
>> > New Revision: 1525460
>> >
>> > URL: http://svn.apache.org/r1525460
>> > Log:
>> > Support the MOVes in the RA log API:
>> > Bump svn_ra_get_log to support the move_behavior option.
>> >
>> Hi Stefan, see my comments inline.
>>
>> > For ra_serf, we add an optional move-behavior element to the LOG report.
>> > If not given, it defaults to 1.8 behavior reporting all moves as adds.
>> >
>> > For ra_svn, we append an optional integer parameter determining the
>> > move-behavior option. Same default behavior as above.
>> >
>> mod_dav_svn change is not mention in log message btw.
>
>
> Hm. I see:
>
>
>> * subversion/mod_dav_svn/merge.c
>> (do_resources): add move_behavior in case we want to call this function
>> from places other than dav_svn__merge_response;
>> handle the new change types
>> (dav_svn__merge_response): report commit result as recorded
>
>
> What part is missing?
>
Oops, I missed it. Sorry.
>> >
>> > Modified: subversion/trunk/subversion/libsvn_ra_svn/protocol
>> > URL:
>> > http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_svn/protocol?rev=1525460&r1=1525459&r2=1525460&view=diff
>> >
>> > ==============================================================================
>> > --- subversion/trunk/subversion/libsvn_ra_svn/protocol (original)
>> > +++ subversion/trunk/subversion/libsvn_ra_svn/protocol Sun Sep 22
>> > 22:10:53 2013
>> > @@ -382,11 +382,13 @@ second place for auth-request point as n
>> > [ end-rev:number ] changed-paths:bool strict-node:bool
>> > ? limit:number
>> > ? include-merged-revisions:bool
>> > - all-revprops | revprops ( revprop:string ... ) )
>> > + all-revprops | revprops ( revprop:string ... )
>> > + ? move-behavior:number )
>> > Before sending response, server sends log entries, ending with
>> > "done".
>> > If a client does not want to specify a limit, it should send 0 as
>> > the
>> > limit parameter. rev-props excludes author, date, and log; they
>> > are
>> > sent separately for backwards-compatibility.
>> > + Move-behavior is encoded like enum svn_move_behavior_t.
>> > log-entry: ( ( change:changed-path-entry ... ) rev:number
>> > [ author:string ] [ date:string ] [ message:string ]
>> > ? has-children:bool invalid-revnum:bool
>> >
>> Currently Subversion uses symbolic names to marshal enums over the
>> wire. See svn_depth_t for example. I don't see reason why
>> svn_move_behavior_t should be different.
>
>
> Fair point. That should be modeled similarly to e.g. svn_depth_t.
> The code actually gets simpler using the string encoding.
>
> Mainly quick coding followed by a mere oversight.
> Both protocols have been updated in r1572044.
>
Great! Thanks!
--
Ivan Zhakov
CTO | VisualSVN | http://www.visualsvn.com
Received on 2014-02-27 14:10:56 CET