Login | Register
My pages Projects Community openCollabNet

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

subversion
Discussion topic

2020-04-07: This site is going to be decommissioned and shut down on 2020-07-01. Please copy and archive any data you wish to keep before that date.

Hide all messages in topic

All messages in topic

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

Author Paul Burba <ptburba at gmail dot com>
Full name Paul Burba <ptburba at gmail dot com>
Date 2009-05-18 10:08:17 PDT
Message On Wed, May 6, 2009 at 11:10 AM, C. Michael Pilato <cmpilato at collab dot 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.ti​gris.org/issues/show​_bug.cgi?id=3126#des​c5.
>>
>> 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.ti​gris.org/issues/show​_bug.cgi?id=3126#des​c5.
>>
>> * subversion/include/s​vn_mergeinfo.h
>>   (svn_mergeinfo_remove, svn_mergeinfo_intersect): Deprecate.
>>   (svn_mergeinfo_remove2, svn_mergeinfo_intersect2): New.
>>
>> * subversion/libsvn_cl​ient/mergeinfo.c
>>   (svn_client_mergeinf​o_log_merged, svn_client_mergeinfo​_log_eligible):
>>   Consider non-inheritable ranges as merged.
>>
>> * subversion/libsvn_su​br/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/cmd​line/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.ti​gris.org/ds/viewMess​age.do?dsForumId=462​&dsMessageId=208​1417
>>
>
>
> --
> C. Michael Pilato <cmpilato at collab dot net>
> CollabNet   <>   www.collab.net   <>   Distributed Development On Demand
>
>

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

Author cmpilato
Full name C. Michael Pilato
Date 2009-05-06 08:10:32 PDT
Message 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.ti​gris.org/issues/show​_bug.cgi?id=3126#des​c5.
>
> 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.ti​gris.org/issues/show​_bug.cgi?id=3126#des​c5.
>
> * subversion/include/s​vn_mergeinfo.h
> (svn_mergeinfo_remove, svn_mergeinfo_intersect): Deprecate.
> (svn_mergeinfo_remove2, svn_mergeinfo_intersect2): New.
>
> * subversion/libsvn_cl​ient/mergeinfo.c
> (svn_client_mergeinf​o_log_merged, svn_client_mergeinfo​_log_eligible):
> Consider non-inheritable ranges as merged.
>
> * subversion/libsvn_su​br/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/cmd​line/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.ti​gris.org/ds/viewMess​age.do?dsForumId=462​&dsMessageId=208​1417
>


--
C. Michael Pilato <cmpilato at collab dot net>
CollabNet <> www.collab.net <> Distributed Development On Demand
Attachments

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

Author Paul Burba <ptburba at gmail dot com>
Full name Paul Burba <ptburba at gmail dot com>
Date 2009-05-06 07:45:38 PDT
Message Right now the svn mergeinfo subcommand doesn't consider
non-inheritable ranges as merged, see
http://subversion.ti​gris.org/issues/show​_bug.cgi?id=3126#des​c5.

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.ti​gris.org/issues/show​_bug.cgi?id=3126#des​c5.

* subversion/include/s​vn_mergeinfo.h
  (svn_mergeinfo_remove, svn_mergeinfo_intersect): Deprecate.
  (svn_mergeinfo_remove2, svn_mergeinfo_intersect2): New.

* subversion/libsvn_cl​ient/mergeinfo.c
  (svn_client_mergeinf​o_log_merged, svn_client_mergeinfo​_log_eligible):
  Consider non-inheritable ranges as merged.

* subversion/libsvn_su​br/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/cmd​line/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
Attachments
Messages per page: