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

Re: multiple merge notifications

From: Eric Gillespie <epg_at_pretzelnet.org>
Date: 2007-05-11 06:42:37 CEST

"Ben Collins-Sussman" <sussman@red-bean.com> writes:

> Here's a patch in progress, not yet committed, which displays multiple
> merge-range notifications during a merge.

Looks good!

> So, as a stopgap, I've hacked a function in svntest to just filter out
> such lines... and now most tests are passing again. In a separate
> change, I guess I'll fix all the tests.

Fix by making them use the parse testing method? It does sound
like a better approach.

> Index: subversion/libsvn_client/merge.c
> ===================================================================
> --- subversion/libsvn_client/merge.c (revision 24986)
> +++ subversion/libsvn_client/merge.c (working copy)
> @@ -1865,8 +1865,6 @@
> may create holes in range to merge. Loop over the revision
> ranges we have left to merge, getting an editor for each range,
> and applying its delta. */
> - /* ### FIXME: Handle notification callbacks for multiple merges into
> - ### a single versioned resource. */
> for (i = 0; i < remaining_ranges->nelts; i++)
> {
> /* When using this merge range, account for the exclusivity of
> @@ -1875,6 +1873,14 @@
> svn_merge_range_t *r = APR_ARRAY_IDX(remaining_ranges, i,
> svn_merge_range_t *);
>
> + /* ### TODO(sussman): should this whole for loop be using a
> + cleared subpool?? */

Yes! I don't want to have to go on another memory saving spree
like i had to a couple years ago ;->.

> @@ -2211,6 +2215,14 @@
> svn_merge_range_t *r = APR_ARRAY_IDX(remaining_ranges, i,
> svn_merge_range_t *);
>
> + /* ### TODO(sussman): should this whole for loop be using a
> + cleared subpool?? */

nod

> Index: subversion/svn/notify.c
> ===================================================================
> --- subversion/svn/notify.c (revision 24986)
> +++ subversion/svn/notify.c (working copy)
> @@ -410,6 +410,18 @@
> svn_error_clear(n->err);
> break;
>
> + case svn_wc_notify_merge_begin:
> + if (n->merge_range->start == n->merge_range->end)
> + err = svn_cmdline_printf(pool, _("--- Merging revision %ld to
> '%s':\n"),
> + n->merge_range->start, path_local);
> + else
> + err = svn_cmdline_printf(pool, _("--- Merging revisions
> %ld-%ld to '%s':\n"),
> + n->merge_range->start, n->merge_range->end,
> + path_local);

I mostly like this format. What is path_local with the implicit
. (e.g. 'svn merge -r5:8 URL')? Is it "" or "."? And maybe
"into" instead of "to".

-- 
Eric Gillespie <*> epg@pretzelnet.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Fri May 11 06:43:47 2007

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.