Mercurial > python-hglib
view setup.py @ 213:388820908580 2.6.2
hglib: update grep to cope with behavior change in hg 5.2.
Since version 5.2, revision filed not printed without all argument.
Fixed inaccurate pasring result with lastest hg and changed test case.
author | Daehyeok Mun <daehyeok@gmail.com> |
---|---|
date | Sat, 21 Mar 2020 19:59:50 -0700 |
parents | d06b48001662 |
children | ae6427d1c8f7 |
line wrap: on
line source
import os, time from distutils.core import setup # query Mercurial for version number, or pull from PKG-INFO version = 'unknown' if os.path.isdir('.hg'): cmd = "hg id -i -t" l = os.popen(cmd).read().split() while len(l) > 1 and l[-1][0].isalpha(): # remove non-numbered tags l.pop() if len(l) > 1: # tag found version = l[-1] if l[0].endswith('+'): # propagate the dirty status to the tag version += '+' elif len(l) == 1: # no tag found cmd = 'hg parents --template "{latesttag}+{latesttagdistance}-"' version = os.popen(cmd).read() + l[0] if version.endswith('+'): version += time.strftime('%Y%m%d') elif os.path.exists('.hg_archival.txt'): kw = dict([[t.strip() for t in l.split(':', 1)] for l in open('.hg_archival.txt')]) if 'tag' in kw: version = kw['tag'] elif 'latesttag' in kw: version = '%(latesttag)s+%(latesttagdistance)s-%(node).12s' % kw else: version = kw.get('node', '')[:12] elif os.path.exists('PKG-INFO'): kw = dict([[t.strip() for t in l.split(':', 1)] for l in open('PKG-INFO') if ':' in l]) version = kw.get('Version', version) setup( name='python-hglib', version=version, author='Idan Kamara', author_email='idankk86@gmail.com', url='https://www.mercurial-scm.org/wiki/PythonHglibs', description='Mercurial Python library', long_description=open(os.path.join(os.path.dirname(__file__), 'README')).read(), classifiers=[ 'Programming Language :: Python', 'Programming Language :: Python :: 2.4', 'Programming Language :: Python :: 2.5', 'Programming Language :: Python :: 2.6', 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3', 'Programming Language :: Python :: 3.4', ], license='MIT', packages=['hglib'])