[Python-checkins] cpython (2.6): Added tag v2.6.8rc2 for changeset bd9e1a02e3e3

Georg Brandl g.brandl at gmx.net
Sun Mar 18 00:03:57 CET 2012


On 03/17/2012 11:43 PM, Barry Warsaw wrote:
> On Mar 17, 2012, at 11:34 PM, barry.warsaw wrote:
> 
>>http://hg.python.org/cpython/rev/6144a0748a95
>>changeset:   75809:6144a0748a95
>>branch:      2.6
>>parent:      75806:bd9e1a02e3e3
>>user:        Barry Warsaw <barry at python.org>
>>date:        Sat Mar 17 18:34:05 2012 -0400
>>summary:
>>  Added tag v2.6.8rc2 for changeset bd9e1a02e3e3
>>
>>files:
>>  .hgtags |  1 +
>>  1 files changed, 1 insertions(+), 0 deletions(-)
>>
>>
>>diff --git a/.hgtags b/.hgtags
>>--- a/.hgtags
>>+++ b/.hgtags
>>@@ -140,3 +140,4 @@
>> caab08cd2b3eb5a6f78479b2513b65d36c754f41 v2.6.8rc1
>> 5356b6c7fd66664679f9bd71f7cd085239934e43 v2.6.8rc1
>> 1d1b7b9fad48bd0dc60dc8a06cca4459ef273127 v2.6.8rc2
>>+bd9e1a02e3e329fa7b6da06113090a401909c4ea v2.6.8rc2

It seems you did this with 2.6.8rc1 already.  It also has two tags.

> I don't know why Mercurial does this.  Here's what *I* did:
> 
> * After I committed the last of my PEP 101 changes to the 2.6 branch, I did
>   release.py --tag 2.6.8rc2.  It sure looks like that added the tag.
> 
> * Then I switched to the 2.7 branch, pulled and merged the changes from 2.6,
>   `hg revert -ar .` then marked all conflicts as resolved `hg resolve -am`.
>   AFAICT, that's the way to null merge 2.6 to 2.7.
> 
> * Then I pushed my changes.
> 
> * Switching back to my 2.6 branch, I then tried to `release -export 2.6.8rc2`
>   and got an error that v2.6.8rc2 tag wasn't found.  At this point I
>   *retagged* for 2.6.8rc2, switch to default and pushed.
> 
> This makes me a little wary about what's actually in the 2.6.8rc2 tarball, but
> I'm building and testing it now, and from visual inspection it *looks* okay,
> so I'm inclined to chalk this up to either a Mercurial wart, or my boneheaded
> use of it.

I'm afraid it's the latter: tags are entries in .hgtags. So when you completely
null-merge your 2.6 changes into 2.7, you are basically removing the tag from
the 2.7 branch.  And since to find tags, Mercurial looks in the .hgtags files
of all active branch heads, you are basically hiding the tag when you merge
2.6 into 2.7, at which point it becomes an inactive branch head.

Georg



More information about the Python-checkins mailing list