<html><body><div style="color:#000; background-color:#fff; font-family:lucida console, sans-serif;font-size:13px"><div id="yui_3_16_0_1_1437510125940_13670" dir="ltr">Hi Yuya,</div><div id="yui_3_16_0_1_1437510125940_13671" dir="ltr"><br></div><div id="yui_3_16_0_1_1437510125940_13672" dir="ltr">Thanks for the feedback and clarifying the intention. They are good points; I have included revised patch below.<br></div><div id="yui_3_16_0_1_1437510125940_33064" dir="ltr"><br></div><div id="yui_3_16_0_1_1437510125940_32013"><br></div><div id="yui_3_16_0_1_1437510125940_32012" dir="ltr"># HG changeset patch<br class="" id="yui_3_16_0_1_1437510125940_31921"># User Peter Elmers <peter.elmers@yahoo.com><br class="" id="yui_3_16_0_1_1437510125940_31923"># Date 1437512568 25200<br class="" id="yui_3_16_0_1_1437510125940_31925"># Tue Jul 21 14:02:48 2015 -0700<br class="" id="yui_3_16_0_1_1437510125940_31927"># Node ID 1b327fa07920e0717cf72438f07cb2afa985a833<br class="" id="yui_3_16_0_1_1437510125940_31929"># Parent ec935041d1ff0fd2aa8cb666d79e6dcca398ddba<br class="" id="yui_3_16_0_1_1437510125940_31931">Issue 3924: parse PKG-INFO for version information.<br class="" id="yui_3_16_0_1_1437510125940_31933"><br class="" id="yui_3_16_0_1_1437510125940_31935">diff --git a/setup.py b/setup.py<br class="" id="yui_3_16_0_1_1437510125940_31937">--- a/setup.py<br class="" id="yui_3_16_0_1_1437510125940_31939">+++ b/setup.py<br class="" id="yui_3_16_0_1_1437510125940_31941">@@ -1,12 +1,12 @@<br class="" id="yui_3_16_0_1_1437510125940_31943"> import os, time<br class="" id="yui_3_16_0_1_1437510125940_31945"> from distutils.core import setup<br class="" id="yui_3_16_0_1_1437510125940_31947"> <br class="" id="yui_3_16_0_1_1437510125940_31949">-# query Mercurial for version number<br class="" id="yui_3_16_0_1_1437510125940_31951">+# query Mercurial for version number, or pull from PKG-INFO<br class="" id="yui_3_16_0_1_1437510125940_31953"> version = 'unknown'<br class="" id="yui_3_16_0_1_1437510125940_31955"> if os.path.isdir('.hg'):<br class="" id="yui_3_16_0_1_1437510125940_31957"> cmd = "hg id -i -t"<br class="" id="yui_3_16_0_1_1437510125940_31959"> l = os.popen(cmd).read().split()<br class="" id="yui_3_16_0_1_1437510125940_31961"> while len(l) > 1 and l[-1][0].isalpha(): # remove non-numbered tags<br class="" id="yui_3_16_0_1_1437510125940_31963"> l.pop()<br class="" id="yui_3_16_0_1_1437510125940_31965"> if len(l) > 1: # tag found<br class="" id="yui_3_16_0_1_1437510125940_31967"> version = l[-1]<br class="" id="yui_3_16_0_1_1437510125940_31969">@@ -21,16 +21,20 @@ elif os.path.exists('.hg_archival.txt'):<br class="" id="yui_3_16_0_1_1437510125940_31971"> kw = dict([[t.strip() for t in l.split(':', 1)]<br class="" id="yui_3_16_0_1_1437510125940_31973"> for l in open('.hg_archival.txt')])<br class="" id="yui_3_16_0_1_1437510125940_31975"> if 'tag' in kw:<br class="" id="yui_3_16_0_1_1437510125940_31977"> version = kw['tag']<br class="" id="yui_3_16_0_1_1437510125940_31979"> elif 'latesttag' in kw:<br class="" id="yui_3_16_0_1_1437510125940_31981"> version = '%(latesttag)s+%(latesttagdistance)s-%(node).12s' % kw<br class="" id="yui_3_16_0_1_1437510125940_31983"> else:<br class="" id="yui_3_16_0_1_1437510125940_31985"> version = kw.get('node', '')[:12]<br class="" id="yui_3_16_0_1_1437510125940_31987">+elif os.path.exists('PKG-INFO'):<br class="" id="yui_3_16_0_1_1437510125940_31989">+ kw = dict([[t.strip() for t in l.split(':', 1)]<br class="" id="yui_3_16_0_1_1437510125940_31991">+ for l in open('PKG-INFO') if ':' in l])<br class="" id="yui_3_16_0_1_1437510125940_31993">+ version = kw.get('Version', version)<br class="" id="yui_3_16_0_1_1437510125940_31995"> <br class="" id="yui_3_16_0_1_1437510125940_31997"> setup(<br class="" id="yui_3_16_0_1_1437510125940_31999"> name='python-hglib',<br class="" id="yui_3_16_0_1_1437510125940_32001"> version=version,<br class="" id="yui_3_16_0_1_1437510125940_32003"> author='Idan Kamara',<br class="" id="yui_3_16_0_1_1437510125940_32005"> author_email='idankk86@gmail.com',<br class="" id="yui_3_16_0_1_1437510125940_32007"> url='http://selenic.com/repo/python-hglib',<br class="" id="yui_3_16_0_1_1437510125940_32009"> description='Mercurial Python library',<br class="" id="yui_3_16_0_1_1437510125940_32011"><br></div><div id="yui_3_16_0_1_1437510125940_15999" class="qtdSeparateBR"><br><br></div><div id="yui_3_16_0_1_1437510125940_17042" style="display: block;" class="yahoo_quoted"> <div id="yui_3_16_0_1_1437510125940_17041" style="font-family: lucida console, sans-serif; font-size: 13px;"> <div id="yui_3_16_0_1_1437510125940_17040" style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 16px;"> <div id="yui_3_16_0_1_1437510125940_25187" dir="ltr"> <font id="yui_3_16_0_1_1437510125940_25186" face="Arial" size="2"> On Tuesday, July 21, 2015 8:40 AM, Yuya Nishihara <yuya@tcha.org> wrote:<br> </font> </div> <br><br> <div id="yui_3_16_0_1_1437510125940_17039" class="y_msg_container">On Mon, 20 Jul 2015 23:27:02 +0000 (UTC), Peter Elmers wrote:<br clear="none">> # HG changeset patch<br clear="none">> # User Peter Elmers <<a shape="rect" ymailto="mailto:peter.elmers@yahoo.com" href="mailto:peter.elmers@yahoo.com">peter.elmers@yahoo.com</a>><br clear="none">> # Date 1437434738 25200<br clear="none">> # Mon Jul 20 16:25:38 2015 -0700<br clear="none">> # Node ID c0f73a10ceb96a60c178f6057ce90309d08d3974<br clear="none">> # Parent ec935041d1ff0fd2aa8cb666d79e6dcca398ddba<br clear="none">> Issue 3924: default version to 1.6, parse PKG-INFO.<br clear="none"><br clear="none">Thanks for the revised patch, but we prefer patch in body, not as an<br clear="none">attachment.<br clear="none"><br clear="none"><a id="yui_3_16_0_1_1437510125940_25188" shape="rect" href="https://mercurial.selenic.com/wiki/ContributingChanges#Submission_checklist" target="_blank">https://mercurial.selenic.com/wiki/ContributingChanges#Submission_checklist</a><br clear="none"><br clear="none">Couple of comments follow...<br clear="none"><br clear="none">> -# query Mercurial for version number<br clear="none">> -version = 'unknown'<br clear="none">> +version = '1.6'<br clear="none"><br clear="none">Hmm, it must be updated per release? That is what we want to avoid.<br clear="none"><br clear="none">> elif os.path.exists('.hg_archival.txt'):<br clear="none">> kw = dict([[t.strip() for t in l.split(':', 1)]<br clear="none">> for l in open('.hg_archival.txt')])<br clear="none">> if 'tag' in kw:<br clear="none">> - version = kw['tag']<br clear="none">> + version = kw['tag']<br clear="none"><br clear="none">Good catch, but whitespace cleanup should be a separate patch.<br clear="none"><br clear="none">> elif 'latesttag' in kw:<br clear="none">> version = '%(latesttag)s+%(latesttagdistance)s-%(node).12s' % kw<br clear="none">> else:<br clear="none">> version = kw.get('node', '')[:12]<br clear="none">> +elif os.path.exists('PKG-INFO'):<br clear="none">> + with open('PKG-INFO') as pkginfo:<br clear="none">> + kw = dict([[t.strip() for t in l.split(':', 1)]<br clear="none">> + for l in pkginfo if ':' in l])<br clear="none">> + version = kw.get('Version', version)<br clear="none"><br clear="none">Perhaps hglib should be compatible with ancient Python, so I think "with"<br clear="none">statement isn't allowed.<div class="yqt1148858716" id="yqtfd46568"><br clear="none"></div><br><br></div> </div> </div> </div></div></body></html>