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

Re: [PATCH] was: [WIP] Enable passing copyfrom information for the diff code when dealing with repository diffs.

From: Daniel Näslund <daniel_at_longitudo.com>
Date: Mon, 16 Aug 2010 15:16:33 +0200

And this time with a patch attached.

On Mon, Aug 16, 2010 at 03:09:49PM +0200, Daniel Näslund wrote:
> I'm touching a lot of code here. Reviews would be much apprecieated.

>
> [[[
> Make the diff editor able to receive copyfrom information. Involves
> passing down a 'send_copyfrom_args' to all RA implemtations.
>
> Note that this commit merely allows the copyfrom args to be passed to
> the client. They copyfrom information is not yet stored and used.
>
> * subversion/libsvn_ra/ra_loader.c
> (svn_ra_do_diff4): New.
> (svn_ra_do_diff3): Move from here ..
>
> * subversion/libsvn_ra/deprecated.c
> (svn_ra_do_diff3): .. To here.
> (svn_ra_do_diff2): Call svn_ra_do_diff3() instead of the vtable
> callback since the signature has changed.
>
> * subversion/libsvn_ra/wrapper_template.h
> (compat_do_diff): Track the new 'send_copyfrom_args' parameter.
>
> * subversion/libsvn_ra/ra_loader.h
> (svn_ra__vtable_t): Add 'send_copyfrom_args' parameter.
>
> * subversion/libsvn_ra_local/ra_plugin.c
> (svn_ra_local__do_diff): Add 'send_copyfrom_args' parameter.
>
> * subversion/tests/cmdline/diff_tests.py
> (test_list): Mark diff_backward_repos_wc_copy() as XFailing.
> The tested code currently does not handle copied paths
> with no text changes. Will be fixed in a follow-up.
>
> * subversion/libsvn_ra_svn/protocol
> (...) Update the diff command description.
>
> * subversion/libsvn_ra_svn/client.c
> (ra_svn_diff): Add 'send_copyfrom_args' to the command to be written.
>
> * subversion/include/svn_ra.h
> (svn_ra_do_diff4): New.
> (svn_ra_do_diff3): Deprecate.
>
> * subversion/libsvn_wc/diff.c
> (add_file): Add TODO about recording the copyfrom info and checking
> that the copyfrom revision is within the span of the diff operation.
>
> * subversion/libsvn_client/repos_diff.c
> (add_file): Add TODO about recording the copyfrom info and checking
> that the copyfrom revision is within the span of the diff operation.
>
> * subversion/libsvn_client/diff.c
> (diff_repos_repos,
> diff_repos_wc,
> diff_summarize_repos_repos): Replace svn_ra_do_diff3() with
> svn_ra_do_diff4().
>
> * subversion/libsvn_ra_neon/ra_neon.h
> (svn_ra_neon__do_diff): Add 'send_copyfrom_args' parameter.
>
> * subversion/libsvn_ra_neon/fetch.c
> (svn_ra_neon__do_diff): Add 'send_copyfrom_args' parameter.
>
> * subversion/libsvn_ra_serf/update.c
> (svn_ra_serf__do_diff): Add 'send_copyfrom_args' parameter.
>
> * subversion/libsvn_ra_serf/ra_serf.h
> (svn_ra_serf__do_diff): Add 'send_copyfrom_args' parameter.
>
> * subversion/svnserve/serve.c
> (diff): Parse the parameters for send_copyfrom_param.
>
> ]]]
>
> Thanks,
> Daniel

Received on 2010-08-16 15:17:27 CEST

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