setup.py
author Pierre-Yves David <pierre-yves.david@fb.com>
Tue, 17 Nov 2015 22:43:17 -0800
changeset 1533 74cf5a69f201
parent 1452 1bcbd14cf159
child 1617 160968654581
permissions -rw-r--r--
_inhibitmarkers: turn the result from generator into a list A generator object is always True, we have to turn it into a list in order to be able to use it in the tests. Before this patch we were rewriting the 'obsinhibit' file all the time, this had a performance impact especially on repository where transaction are expensive (hooks, cache invalidation, etc). Writing this file less often have a minor effect on test where a stripped changeset does not get removed from the obsinhibit file is still inhibited when unbundled back. I think this is fine and I'm moving forward.

# Copied from histedit setup.py
# Credit to Augie Fackler <durin42@gmail.com>

import os
from distutils.core import setup
from os.path import dirname, join

def get_version(relpath):
    '''Read version info from a file without importing it'''
    for line in open(join(dirname(__file__), relpath), 'rb'):
        # Decode to a fail-safe string for PY3
        # (gives unicode object in PY2)
        line = line.decode('utf8')
        if '__version__' in line:
          if "'" in line:
            return line.split("'")[1]

py_modules = [
    'hgext.evolve',
]

if os.environ.get('INCLUDE_INHIBIT'):
    py_modules.append('hgext.inhibit')
    py_modules.append('hgext.directaccess')

setup(
    name='hg-evolve',
    version=get_version('hgext/evolve.py'),
    author='Pierre-Yves David',
    maintainer='Pierre-Yves David',
    maintainer_email='pierre-yves.david@ens-lyon.org',
    url='https://bitbucket.org/marmoute/mutable-history',
    description='Flexible evolution of Mercurial history.',
    long_description=open('README').read(),
    keywords='hg mercurial',
    license='GPLv2+',
    py_modules=py_modules
)