You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by da...@apache.org on 2010/08/30 17:46:38 UTC
svn commit: r990826 - in /subversion/trunk/subversion: include/
libsvn_client/ libsvn_ra/ libsvn_ra_local/ libsvn_ra_neon/ libsvn_ra_serf/
libsvn_ra_svn/ libsvn_wc/ svnserve/ tests/cmdline/
Author: dannas
Date: Mon Aug 30 15:46:37 2010
New Revision: 990826
URL: http://svn.apache.org/viewvc?rev=990826&view=rev
Log:
Revert r990790 and r990804. "Make the diff editor able to receive
copyfrom info"
It turns out that determing copyfrom information is more involved
than I first anticipated. We first need a proper definition of
what kind of information the server should send.
Modified:
subversion/trunk/subversion/include/svn_ra.h
subversion/trunk/subversion/libsvn_client/diff.c
subversion/trunk/subversion/libsvn_client/repos_diff.c
subversion/trunk/subversion/libsvn_ra/deprecated.c
subversion/trunk/subversion/libsvn_ra/ra_loader.c
subversion/trunk/subversion/libsvn_ra/ra_loader.h
subversion/trunk/subversion/libsvn_ra/wrapper_template.h
subversion/trunk/subversion/libsvn_ra_local/ra_plugin.c
subversion/trunk/subversion/libsvn_ra_neon/fetch.c
subversion/trunk/subversion/libsvn_ra_neon/ra_neon.h
subversion/trunk/subversion/libsvn_ra_serf/ra_serf.h
subversion/trunk/subversion/libsvn_ra_serf/update.c
subversion/trunk/subversion/libsvn_ra_svn/client.c
subversion/trunk/subversion/libsvn_ra_svn/protocol
subversion/trunk/subversion/libsvn_wc/diff.c
subversion/trunk/subversion/svnserve/serve.c
subversion/trunk/subversion/tests/cmdline/diff_tests.py
Modified: subversion/trunk/subversion/include/svn_ra.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/include/svn_ra.h?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/include/svn_ra.h (original)
+++ subversion/trunk/subversion/include/svn_ra.h Mon Aug 30 15:46:37 2010
@@ -1291,30 +1291,8 @@ svn_ra_do_status(svn_ra_session_t *sessi
* needed, and sending too much data back, a pre-1.5 'recurse'
* directive may be sent to the server, based on @a depth.
*
- * @since New in 1.7.
- */
-svn_error_t *
-svn_ra_do_diff4(svn_ra_session_t *session,
- const svn_ra_reporter3_t **reporter,
- void **report_baton,
- svn_revnum_t revision,
- const char *diff_target,
- svn_depth_t depth,
- svn_boolean_t send_copyfrom_args,
- svn_boolean_t ignore_ancestry,
- svn_boolean_t text_deltas,
- const char *versus_url,
- const svn_delta_editor_t *diff_editor,
- void *diff_baton,
- apr_pool_t *pool);
-
-/**
- * Similar to svn_ra_do_diff4(), but with @c send_copyfrom_args set to
- * FALSE.
- *
- * @deprecated Provided for compatibility with the 1.5 API.
+ * @since New in 1.5.
*/
-SVN_DEPRECATED
svn_error_t *
svn_ra_do_diff3(svn_ra_session_t *session,
const svn_ra_reporter3_t **reporter,
Modified: subversion/trunk/subversion/libsvn_client/diff.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/diff.c?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/diff.c (original)
+++ subversion/trunk/subversion/libsvn_client/diff.c Mon Aug 30 15:46:37 2010
@@ -1737,10 +1737,9 @@ diff_repos_repos(const svn_wc_diff_callb
&diff_editor, &diff_edit_baton, pool));
/* We want to switch our txn into URL2 */
- SVN_ERR(svn_ra_do_diff4
+ SVN_ERR(svn_ra_do_diff3
(ra_session, &reporter, &reporter_baton, rev2, target1,
- depth, TRUE /* send_copyfrom_args */,
- ignore_ancestry, TRUE,
+ depth, ignore_ancestry, TRUE,
url2, diff_editor, diff_edit_baton, pool));
/* Drive the reporter; do the diff. */
@@ -1879,12 +1878,11 @@ diff_repos_wc(const char *path1,
else
callback_baton->revnum2 = rev;
- SVN_ERR(svn_ra_do_diff4(ra_session,
+ SVN_ERR(svn_ra_do_diff3(ra_session,
&reporter, &reporter_baton,
rev,
target ? svn_path_uri_decode(target, pool) : NULL,
depth,
- TRUE, /* send_copyfrom_args */
ignore_ancestry,
TRUE, /* text_deltas */
url1,
@@ -2022,10 +2020,9 @@ diff_summarize_repos_repos(svn_client_di
ctx->cancel_baton, &diff_editor, &diff_edit_baton, pool));
/* We want to switch our txn into URL2 */
- SVN_ERR(svn_ra_do_diff4
+ SVN_ERR(svn_ra_do_diff3
(ra_session, &reporter, &reporter_baton, rev2, target1,
- depth, TRUE /* send_copyfrom_args */,
- ignore_ancestry,
+ depth, ignore_ancestry,
FALSE /* do not create text delta */, url2, diff_editor,
diff_edit_baton, pool));
Modified: subversion/trunk/subversion/libsvn_client/repos_diff.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/repos_diff.c?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/repos_diff.c (original)
+++ subversion/trunk/subversion/libsvn_client/repos_diff.c Mon Aug 30 15:46:37 2010
@@ -791,9 +791,7 @@ add_file(const char *path,
struct dir_baton *pb = parent_baton;
struct file_baton *b;
- /* ### TODO: We have copyfrom info, now start recording it!
- * ### Note that we need to check that copyfrom_revision is within span of
- * ### the diff operation. */
+ /* ### TODO: support copyfrom? */
b = make_file_baton(path, TRUE, pb->edit_baton, pool);
*file_baton = b;
@@ -959,8 +957,6 @@ close_file(void *file_baton,
else if (err)
return svn_error_return(err);
- /* ### Allow copied paths with no text or prop modifications to call
- * ### file_added()! */
if (b->path_end_revision || b->propchanges->nelts > 0)
{
const char *mimetype1, *mimetype2;
Modified: subversion/trunk/subversion/libsvn_ra/deprecated.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra/deprecated.c?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra/deprecated.c (original)
+++ subversion/trunk/subversion/libsvn_ra/deprecated.c Mon Aug 30 15:46:37 2010
@@ -239,30 +239,6 @@ svn_error_t *svn_ra_get_commit_editor(sv
keep_locks, pool);
}
-svn_error_t *svn_ra_do_diff3(svn_ra_session_t *session,
- const svn_ra_reporter3_t **reporter,
- void **report_baton,
- svn_revnum_t revision,
- const char *diff_target,
- svn_depth_t depth,
- svn_boolean_t ignore_ancestry,
- svn_boolean_t text_deltas,
- const char *versus_url,
- const svn_delta_editor_t *diff_editor,
- void *diff_baton,
- apr_pool_t *pool)
-{
- SVN_ERR_ASSERT(svn_path_is_empty(diff_target)
- || svn_path_is_single_path_component(diff_target));
- return session->vtable->do_diff(session,
- reporter, report_baton,
- revision, diff_target,
- depth, FALSE /* send_copyfrom_args */,
- ignore_ancestry, text_deltas, versus_url,
- diff_editor, diff_baton, pool);
-}
-
-
svn_error_t *svn_ra_do_diff2(svn_ra_session_t *session,
const svn_ra_reporter2_t **reporter,
void **report_baton,
@@ -281,7 +257,8 @@ svn_error_t *svn_ra_do_diff2(svn_ra_sess
|| svn_path_is_single_path_component(diff_target));
*reporter = &reporter_3in2_wrapper;
*report_baton = b;
- return svn_ra_do_diff3(session, &(b->reporter3), &(b->reporter3_baton),
+ return session->vtable->do_diff(session,
+ &(b->reporter3), &(b->reporter3_baton),
revision, diff_target,
SVN_DEPTH_INFINITY_OR_FILES(recurse),
ignore_ancestry, text_deltas, versus_url,
Modified: subversion/trunk/subversion/libsvn_ra/ra_loader.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra/ra_loader.c?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra/ra_loader.c (original)
+++ subversion/trunk/subversion/libsvn_ra/ra_loader.c Mon Aug 30 15:46:37 2010
@@ -820,13 +820,12 @@ svn_error_t *svn_ra_do_status2(svn_ra_se
status_editor, status_baton, pool);
}
-svn_error_t *svn_ra_do_diff4(svn_ra_session_t *session,
+svn_error_t *svn_ra_do_diff3(svn_ra_session_t *session,
const svn_ra_reporter3_t **reporter,
void **report_baton,
svn_revnum_t revision,
const char *diff_target,
svn_depth_t depth,
- svn_boolean_t send_copyfrom_args,
svn_boolean_t ignore_ancestry,
svn_boolean_t text_deltas,
const char *versus_url,
@@ -839,7 +838,7 @@ svn_error_t *svn_ra_do_diff4(svn_ra_sess
return session->vtable->do_diff(session,
reporter, report_baton,
revision, diff_target,
- depth, send_copyfrom_args, ignore_ancestry,
+ depth, ignore_ancestry,
text_deltas, versus_url, diff_editor,
diff_baton, pool);
}
Modified: subversion/trunk/subversion/libsvn_ra/ra_loader.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra/ra_loader.h?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra/ra_loader.h (original)
+++ subversion/trunk/subversion/libsvn_ra/ra_loader.h Mon Aug 30 15:46:37 2010
@@ -155,7 +155,6 @@ typedef struct svn_ra__vtable_t {
svn_revnum_t revision,
const char *diff_target,
svn_depth_t depth,
- svn_boolean_t send_copyfrom_args,
svn_boolean_t ignore_ancestry,
svn_boolean_t text_deltas,
const char *versus_url,
Modified: subversion/trunk/subversion/libsvn_ra/wrapper_template.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra/wrapper_template.h?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra/wrapper_template.h (original)
+++ subversion/trunk/subversion/libsvn_ra/wrapper_template.h Mon Aug 30 15:46:37 2010
@@ -361,7 +361,7 @@ static svn_error_t *compat_do_diff(void
svn_depth_t depth = SVN_DEPTH_INFINITY_OR_FILES(recurse);
SVN_ERR(VTBL.do_diff(session_baton, &reporter3, &baton3, revision,
- diff_target, depth, FALSE, ignore_ancestry, TRUE,
+ diff_target, depth, ignore_ancestry, TRUE,
versus_url, diff_editor, diff_baton, pool));
compat_wrap_reporter(reporter, report_baton, reporter3, baton3, pool);
Modified: subversion/trunk/subversion/libsvn_ra_local/ra_plugin.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_local/ra_plugin.c?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_local/ra_plugin.c (original)
+++ subversion/trunk/subversion/libsvn_ra_local/ra_plugin.c Mon Aug 30 15:46:37 2010
@@ -810,7 +810,6 @@ svn_ra_local__do_diff(svn_ra_session_t *
svn_revnum_t update_revision,
const char *update_target,
svn_depth_t depth,
- svn_boolean_t send_copyfrom_args,
svn_boolean_t ignore_ancestry,
svn_boolean_t text_deltas,
const char *switch_url,
@@ -826,7 +825,7 @@ svn_ra_local__do_diff(svn_ra_session_t *
switch_url,
text_deltas,
depth,
- send_copyfrom_args,
+ FALSE,
ignore_ancestry,
update_editor,
update_baton,
Modified: subversion/trunk/subversion/libsvn_ra_neon/fetch.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/fetch.c?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/fetch.c (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/fetch.c Mon Aug 30 15:46:37 2010
@@ -2792,7 +2792,6 @@ svn_error_t * svn_ra_neon__do_diff(svn_r
svn_revnum_t revision,
const char *diff_target,
svn_depth_t depth,
- svn_boolean_t send_copyfrom_args,
svn_boolean_t ignore_ancestry,
svn_boolean_t text_deltas,
const char *versus_url,
@@ -2807,7 +2806,7 @@ svn_error_t * svn_ra_neon__do_diff(svn_r
diff_target,
versus_url,
depth,
- send_copyfrom_args,
+ FALSE,
ignore_ancestry,
FALSE,
wc_diff,
Modified: subversion/trunk/subversion/libsvn_ra_neon/ra_neon.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_neon/ra_neon.h?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_neon/ra_neon.h (original)
+++ subversion/trunk/subversion/libsvn_ra_neon/ra_neon.h Mon Aug 30 15:46:37 2010
@@ -344,7 +344,6 @@ svn_error_t * svn_ra_neon__do_diff(svn_r
svn_revnum_t revision,
const char *diff_target,
svn_depth_t depth,
- svn_boolean_t send_copyfrom_args,
svn_boolean_t ignore_ancestry,
svn_boolean_t text_deltas,
const char *versus_url,
Modified: subversion/trunk/subversion/libsvn_ra_serf/ra_serf.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_serf/ra_serf.h?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_serf/ra_serf.h (original)
+++ subversion/trunk/subversion/libsvn_ra_serf/ra_serf.h Mon Aug 30 15:46:37 2010
@@ -1231,7 +1231,6 @@ svn_ra_serf__do_diff(svn_ra_session_t *s
svn_revnum_t revision,
const char *diff_target,
svn_depth_t depth,
- svn_boolean_t send_copyfrom_args,
svn_boolean_t ignore_ancestry,
svn_boolean_t text_deltas,
const char *versus_url,
Modified: subversion/trunk/subversion/libsvn_ra_serf/update.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_serf/update.c?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_serf/update.c (original)
+++ subversion/trunk/subversion/libsvn_ra_serf/update.c Mon Aug 30 15:46:37 2010
@@ -2626,7 +2626,6 @@ svn_ra_serf__do_diff(svn_ra_session_t *r
svn_revnum_t revision,
const char *diff_target,
svn_depth_t depth,
- svn_boolean_t send_copyfrom_args,
svn_boolean_t ignore_ancestry,
svn_boolean_t text_deltas,
const char *versus_url,
@@ -2639,9 +2638,8 @@ svn_ra_serf__do_diff(svn_ra_session_t *r
return make_update_reporter(ra_session, reporter, report_baton,
revision,
session->repos_url.path, versus_url, diff_target,
- depth, ignore_ancestry, text_deltas,
- send_copyfrom_args, diff_editor, diff_baton,
- pool);
+ depth, ignore_ancestry, text_deltas, FALSE,
+ diff_editor, diff_baton, pool);
}
svn_error_t *
Modified: subversion/trunk/subversion/libsvn_ra_svn/client.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_svn/client.c?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_svn/client.c (original)
+++ subversion/trunk/subversion/libsvn_ra_svn/client.c Mon Aug 30 15:46:37 2010
@@ -1255,7 +1255,6 @@ static svn_error_t *ra_svn_diff(svn_ra_s
void **report_baton,
svn_revnum_t rev, const char *target,
svn_depth_t depth,
- svn_boolean_t send_copyfrom_args,
svn_boolean_t ignore_ancestry,
svn_boolean_t text_deltas,
const char *versus_url,
@@ -1267,11 +1266,10 @@ static svn_error_t *ra_svn_diff(svn_ra_s
svn_boolean_t recurse = DEPTH_TO_RECURSE(depth);
/* Tell the server we want to start a diff. */
- SVN_ERR(svn_ra_svn_write_cmd(conn, pool, "diff", "(?r)cbbcbwb", rev,
+ SVN_ERR(svn_ra_svn_write_cmd(conn, pool, "diff", "(?r)cbbcbw", rev,
target, recurse, ignore_ancestry,
versus_url, text_deltas,
- svn_depth_to_word(depth),
- send_copyfrom_args));
+ svn_depth_to_word(depth)));
SVN_ERR(handle_auth_request(sess_baton, pool));
/* Fetch a reporter for the caller to drive. The reporter will drive
Modified: subversion/trunk/subversion/libsvn_ra_svn/protocol
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_svn/protocol?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_svn/protocol (original)
+++ subversion/trunk/subversion/libsvn_ra_svn/protocol Mon Aug 30 15:46:37 2010
@@ -345,8 +345,7 @@ second place for auth-request point as n
diff
params: ( [ rev:number ] target:string recurse:bool ignore-ancestry:bool
- url:string ? text-deltas:bool ? depth:word
- ? send_copyfrom_param:bool )
+ url:string ? text-deltas:bool ? depth:word )
Client switches to report command set.
Upon finish-report, server sends auth-request.
After auth exchange completes, server switches to editor command set.
Modified: subversion/trunk/subversion/libsvn_wc/diff.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/diff.c?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/diff.c (original)
+++ subversion/trunk/subversion/libsvn_wc/diff.c Mon Aug 30 15:46:37 2010
@@ -1437,9 +1437,7 @@ add_file(const char *path,
struct file_baton *fb;
const char *full_path;
- /* ### TODO: We have copyfrom info, now start recording it!
- * ### Note that we need to check that copyfrom_revision is within span of
- * ### the diff operation. */
+ /* ### TODO: support copyfrom? */
full_path = svn_dirent_join(pb->eb->anchor_path, path, file_pool);
fb = make_file_baton(full_path, TRUE, pb, file_pool);
Modified: subversion/trunk/subversion/svnserve/serve.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svnserve/serve.c?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/svnserve/serve.c (original)
+++ subversion/trunk/subversion/svnserve/serve.c Mon Aug 30 15:46:37 2010
@@ -1670,8 +1670,6 @@ static svn_error_t *diff(svn_ra_svn_conn
/* Default to unknown. Old clients won't send depth, but we'll
handle that by converting recurse if necessary. */
svn_depth_t depth = svn_depth_unknown;
- apr_uint64_t send_copyfrom_param;
- svn_boolean_t send_copyfrom_args;
/* Parse the arguments. */
if (params->nelts == 5)
@@ -1684,11 +1682,10 @@ static svn_error_t *diff(svn_ra_svn_conn
}
else
{
- SVN_ERR(svn_ra_svn_parse_tuple(params, pool, "(?r)cbbcb?w?B",
+ SVN_ERR(svn_ra_svn_parse_tuple(params, pool, "(?r)cbbcb?w",
&rev, &target, &recurse,
&ignore_ancestry, &versus_url,
- &text_deltas, &depth_word,
- &send_copyfrom_param));
+ &text_deltas, &depth_word));
}
target = svn_uri_canonicalize(target, pool);
versus_url = svn_uri_canonicalize(versus_url, pool);
@@ -1698,9 +1695,6 @@ static svn_error_t *diff(svn_ra_svn_conn
else
depth = SVN_DEPTH_INFINITY_OR_FILES(recurse);
- send_copyfrom_args = (send_copyfrom_param == SVN_RA_SVN_UNSPECIFIED_NUMBER) ?
- FALSE : (svn_boolean_t) send_copyfrom_param;
-
SVN_ERR(trivial_auth_request(conn, pool, b));
if (!SVN_IS_VALID_REVNUM(rev))
@@ -1714,8 +1708,7 @@ static svn_error_t *diff(svn_ra_svn_conn
svn_revnum_t from_rev;
SVN_ERR(accept_report(NULL, &from_rev,
conn, pool, b, rev, target, versus_path,
- text_deltas, depth, send_copyfrom_args,
- ignore_ancestry));
+ text_deltas, depth, FALSE, ignore_ancestry));
SVN_ERR(log_command(b, conn, pool, "%s",
svn_log__diff(full_path, from_rev, versus_path,
rev, depth, ignore_ancestry,
Modified: subversion/trunk/subversion/tests/cmdline/diff_tests.py
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/diff_tests.py?rev=990826&r1=990825&r2=990826&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/diff_tests.py (original)
+++ subversion/trunk/subversion/tests/cmdline/diff_tests.py Mon Aug 30 15:46:37 2010
@@ -33,7 +33,6 @@ import svntest
# (abbreviation)
Skip = svntest.testcase.Skip
-SkipUnless = svntest.testcase.SkipUnless
XFail = svntest.testcase.XFail
Item = svntest.wc.StateItem
@@ -3793,8 +3792,7 @@ test_list = [ None,
XFail(diff_in_renamed_folder),
diff_with_depth,
diff_ignore_eolstyle_empty_lines,
- SkipUnless(diff_backward_repos_wc_copy,
- svntest.main.is_ra_type_dav_neon),
+ diff_backward_repos_wc_copy,
diff_summarize_xml,
diff_file_depth_empty,
diff_wrong_extension_type,