You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by "C. Michael Pilato" <cm...@collab.net> on 2009/05/06 15:10:29 UTC

Re: [PATCH] Issue #3126 - svn mergeinfo should consider non-inheritable ranges as merged

Your logic is undeniable.  You will ensure mankind's continued existence.

Paul Burba wrote:
> Right now the svn mergeinfo subcommand doesn't consider
> non-inheritable ranges as merged, see
> http://subversion.tigris.org/issues/show_bug.cgi?id=3126#desc5.
> 
> Quick example, if a path has this mergeinfo:
> 
>   >svn pg svn:mergeinfo -vR A_COPY
>   Properties on 'A_COPY':
>     svn:mergeinfo
>       /A:4,6*
> 
> svn mergeinfo considers r6 as eligible:
> 
>   >svn mergeinfo --show-revs eligible %url%/A A_COPY
>   r3
>   r5
>   r6
> 
> Nor does it consider it merged:
> 
>   >svn mergeinfo --show-revs merged %url%/A A_COPY
>   r4
> 
> This seems completely wrong, r6 *has* been merged to A_COPY, just not
> any deeper, so r6 should show as merged.
> 
> Keep in mind that the mergeinfo subcommand as it stands today tells us
> what has/hasn't been merged to a path, but doesn't consider differing
> mergeinfo under that path.  Since non-inheritable mergeinfo is about
> what is under a path it shouldn't matter either.
> 
> The attached patch corrects this and adds a test.  Does anyone
> disagree with this change?
> 
> [[[
> Make 'svn mergeinfo' consider non-inheritable ranges as merged.
> 
> See Issue #3126,
> http://subversion.tigris.org/issues/show_bug.cgi?id=3126#desc5.
> 
> * subversion/include/svn_mergeinfo.h
>   (svn_mergeinfo_remove, svn_mergeinfo_intersect): Deprecate.
>   (svn_mergeinfo_remove2, svn_mergeinfo_intersect2): New.
> 
> * subversion/libsvn_client/mergeinfo.c
>   (svn_client_mergeinfo_log_merged, svn_client_mergeinfo_log_eligible):
>   Consider non-inheritable ranges as merged.
> 
> * subversion/libsvn_subr/mergeinfo.c
>   (svn_mergeinfo_remove): Wrap svn_mergeinfo_remove2.
>   (svn_mergeinfo_remove2): New.
>   (svn_mergeinfo_intersect): Wrap svn_mergeinfo_intersect2.
>   (svn_mergeinfo_intersect2): New.
> 
> * subversion/tests/cmdline/mergeinfo_tests.py
>   (merge_tests.set_up_branch, merge_tests.expected_merge_output): Import.
>   (non_inheritable_mergeinfo): New test.
>   (test_list): Add non_inheritable_mergeinfo.
> ]]]
> 
> Paul
> 
> ------------------------------------------------------
> http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2081417
> 


-- 
C. Michael Pilato <cm...@collab.net>
CollabNet   <>   www.collab.net   <>   Distributed Development On Demand

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2081671

Re: [PATCH] Issue #3126 - svn mergeinfo should consider non-inheritable ranges as merged

Posted by Paul Burba <pt...@gmail.com>.
On Wed, May 6, 2009 at 11:10 AM, C. Michael Pilato <cm...@collab.net> wrote:
> Your logic is undeniable.  You will ensure mankind's continued existence.

Committed in r37627 and nominated for backport to 1.6.3.

> Paul Burba wrote:
>> Right now the svn mergeinfo subcommand doesn't consider
>> non-inheritable ranges as merged, see
>> http://subversion.tigris.org/issues/show_bug.cgi?id=3126#desc5.
>>
>> Quick example, if a path has this mergeinfo:
>>
>>   >svn pg svn:mergeinfo -vR A_COPY
>>   Properties on 'A_COPY':
>>     svn:mergeinfo
>>       /A:4,6*
>>
>> svn mergeinfo considers r6 as eligible:
>>
>>   >svn mergeinfo --show-revs eligible %url%/A A_COPY
>>   r3
>>   r5
>>   r6
>>
>> Nor does it consider it merged:
>>
>>   >svn mergeinfo --show-revs merged %url%/A A_COPY
>>   r4
>>
>> This seems completely wrong, r6 *has* been merged to A_COPY, just not
>> any deeper, so r6 should show as merged.
>>
>> Keep in mind that the mergeinfo subcommand as it stands today tells us
>> what has/hasn't been merged to a path, but doesn't consider differing
>> mergeinfo under that path.  Since non-inheritable mergeinfo is about
>> what is under a path it shouldn't matter either.
>>
>> The attached patch corrects this and adds a test.  Does anyone
>> disagree with this change?
>>
>> [[[
>> Make 'svn mergeinfo' consider non-inheritable ranges as merged.
>>
>> See Issue #3126,
>> http://subversion.tigris.org/issues/show_bug.cgi?id=3126#desc5.
>>
>> * subversion/include/svn_mergeinfo.h
>>   (svn_mergeinfo_remove, svn_mergeinfo_intersect): Deprecate.
>>   (svn_mergeinfo_remove2, svn_mergeinfo_intersect2): New.
>>
>> * subversion/libsvn_client/mergeinfo.c
>>   (svn_client_mergeinfo_log_merged, svn_client_mergeinfo_log_eligible):
>>   Consider non-inheritable ranges as merged.
>>
>> * subversion/libsvn_subr/mergeinfo.c
>>   (svn_mergeinfo_remove): Wrap svn_mergeinfo_remove2.
>>   (svn_mergeinfo_remove2): New.
>>   (svn_mergeinfo_intersect): Wrap svn_mergeinfo_intersect2.
>>   (svn_mergeinfo_intersect2): New.
>>
>> * subversion/tests/cmdline/mergeinfo_tests.py
>>   (merge_tests.set_up_branch, merge_tests.expected_merge_output): Import.
>>   (non_inheritable_mergeinfo): New test.
>>   (test_list): Add non_inheritable_mergeinfo.
>> ]]]
>>
>> Paul
>>
>> ------------------------------------------------------
>> http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2081417
>>
>
>
> --
> C. Michael Pilato <cm...@collab.net>
> CollabNet   <>   www.collab.net   <>   Distributed Development On Demand
>
>

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2302202