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

Re: [PATCH] Fix XFail merge test 62

From: Kamesh Jayachandran <kamesh_at_collab.net>
Date: 2007-08-31 12:13:43 CEST

Senthil,

With this patch merge_tests-65 fails.

Cause of it being we get the 'depth' of the wc target entry from
svn_client_merg3 and svn_client_merge_peg3 if depth is not
specified.(Sorry I did not see this while commenting on your patch
earlier.).

Looking at the way 'non-inheritable mergeinfo' is implemented your
origianl patch at
http://subversion.tigris.org/servlets/ReadMsg?list=dev&msgNo=129501
should fix the problem.

But that patch fails to record the 'non-heritable mergeinfo' on a
'infinite wc while merge being 'immediates' and 'files', So the patch at
http://subversion.tigris.org/servlets/ReadMsg?list=dev&msgNo=129501 can
not be applied without fixing that.

I have opened issue 2899 to track setting 'non-inheritable mergeinfo'
for shallow merges.

With regards
Kamesh Jayachandran

Kamesh Jayachandran wrote:
> Senthil,
>
> In concept it looks fine though I have to test it yet.
>
> I have a difficulty in replying to your mails with patch. I need to
> copy the relevant snippets and painfully prepend '>'.
>
> Here is my comment. You can move this below code just closer to your
> 'depth empty check'.
> Why there exists a difference between depth_files and depth_immediates
> in comparing the 'path_parent' and target.
> I think it is not needed.
>
> >+ /* If depth is files we need not recurse down the directory. */
> >+ if ((wb->depth == svn_depth_files)
> >+ && (strcmp(path_parent, target_parent) != 0))
> >+ return SVN_NO_ERROR;
> >+
> >+ /* If depth is immediates we need not recurse down each directory. */
> >+ if ((wb->depth == svn_depth_immediates)
> >+ && (strcmp(path_parent, wb->merge_target_path) != 0))
> >+ return SVN_NO_ERROR;
> >+
>
> Will tweak your patch with above comments and test three 'ra layers'
> and commit.
>
> Thanks for the patch.
>
> With regards
> Kamesh Jayachandran
> Senthil Kumaran S wrote:
>> Hi Kamesh,
>>
>> Kamesh Jayachandran wrote:
>>> a)Change get_mergeinfo_paths to get only the desired level of depth
>>> entries (Remember you pass recursive adm_access now).
>>> b)Change discover_and_merge_children to do subtree(dir) merge only
>>> for 'depth=infinity'.
>>> c)Change discover_and_merge_children to remove the corresponding
>>> item from 'children_with_mergeinfo'.
>>
>> With the above things, I ve come up with a new patch. Please have a
>> look at it and let me know if there is any changes.
>>
>> [[[
>> Fix XFail merge test - merge with depth files
>>
>> * subversion/libsvn_client/merge.c
>> (get_mergeinfo_walk_baton): Add depth to mergeinfo walk baton.
>> (get_mergeinfo_walk_cb): Make mergeinfo walk callback understand
>> depth.
>> (get_mergeinfo_paths): Add depth argument to the function and based
>> on the depth argument value walk through the WC.
>> (discover_and_merge_children): Pass depth argument to
>> get_mergeinfo_paths.
>> Do subtree(dir) merge only for 'depth=infinity' and remove the
>> corresponding item from 'children_with_mergeinfo'.
>> (svn_client_merge_peg3): Initialize the administrative area lock to
>> infinite depth. Some formatting changes.
>> (svn_client_merge3): Initialize the administrative area lock to
>> infinite depth. Some formatting changes.
>>
>> * subversion/tests/cmdline/merge_tests.py
>> (test_list): Remove XFail tag from 'merge_with_depth_files'
>> in test_list.
>>
>> Patch by: Senthil Kumaran <senthil@collab.net>
>> ]]]
>>
>> Thank You.
>>
>> --
>> Senthil Kumaran S
>> http://www.stylesen.org/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: dev-help@subversion.tigris.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Fri Aug 31 12:29:15 2007

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