setup.py
author Ian Moody <moz-ian@perix.co.uk>
Thu, 03 Oct 2019 23:48:50 +0100
branchstable
changeset 4878 095bab0d0cd7
parent 4876 1a47cc2728ff
child 4900 155e986045eb
permissions -rw-r--r--
py3: return unicode from setup.py's get_version py3 expects the version number for eggs to be unicode, so despite 9.2.0 being the first evolve release with beta py3 support it isn't currently pip installable since it dies with: File "*/setuptools/command/egg_info.py", line *, in tagged_version return safe_version(version + self.vtags) TypeError: can't concat str to bytes The `setup.py install` test added in a previous commit should cover this since it died in a different but similar way before.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1242
cf846d47bb7e setup: allow including inhibit in the build
Durham Goode <durham@fb.com>
parents: 1149
diff changeset
     1
import os
1839
1bc5e62fc0c7 Initial dumb version of topics.
Augie Fackler <augie@google.com>
parents:
diff changeset
     2
from distutils.core import setup
1149
a206ee74f129 evolve: add various version info to save time on troubleshooting
anatoly techtonik <techtonik@gmail.com>
parents: 1138
diff changeset
     3
from os.path import dirname, join
a206ee74f129 evolve: add various version info to save time on troubleshooting
anatoly techtonik <techtonik@gmail.com>
parents: 1138
diff changeset
     4
2049
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
     5
META_PATH = 'hgext3rd/evolve/metadata.py'
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
     6
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
     7
def get_metadata():
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
     8
    meta = {}
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
     9
    fullpath = join(dirname(__file__), META_PATH)
4792
9f2e480ad786 py3: make setup.py py3 compatible
Ludovic Chabant <ludovic@chabant.com>
parents: 3424
diff changeset
    10
    with open(fullpath, 'r') as fp:
9f2e480ad786 py3: make setup.py py3 compatible
Ludovic Chabant <ludovic@chabant.com>
parents: 3424
diff changeset
    11
        exec(fp.read(), meta)
2049
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
    12
    return meta
496
d3d9df795b4d [pkg] Add a setup.py
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    13
2049
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
    14
def get_version():
2020
143c8e4dc22d topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1808 2016
diff changeset
    15
    '''Read version info from a file without importing it'''
4878
095bab0d0cd7 py3: return unicode from setup.py's get_version
Ian Moody <moz-ian@perix.co.uk>
parents: 4876
diff changeset
    16
    return u'%s' % get_metadata()['__version__']
2049
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
    17
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
    18
def min_hg_version():
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
    19
    '''Read version info from a file without importing it'''
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
    20
    return get_metadata()['minimumhgversion']
2020
143c8e4dc22d topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1808 2016
diff changeset
    21
1808
202ac6c94b7f hgext3rd: move 'simple4server' as 'evolve.serveronly'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1807
diff changeset
    22
py_modules = [
3206
3ccde4699cf0 topic: introduce a minimal extensions to enable topic on the server
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2069
diff changeset
    23
    'hgext3rd.serverminitopic',
1808
202ac6c94b7f hgext3rd: move 'simple4server' as 'evolve.serveronly'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1807
diff changeset
    24
]
1806
9f42f819267b evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1642
diff changeset
    25
py_packages = [
9f42f819267b evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1642
diff changeset
    26
    'hgext3rd',
2052
05170e635e26 setup.py: include all evolve submodule
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2049
diff changeset
    27
    'hgext3rd.evolve',
3424
efac9aad0963 packaging: properly install the evolve.thirdparty module
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3206
diff changeset
    28
    'hgext3rd.evolve.thirdparty',
2020
143c8e4dc22d topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1808 2016
diff changeset
    29
    'hgext3rd.topic',
1242
cf846d47bb7e setup: allow including inhibit in the build
Durham Goode <durham@fb.com>
parents: 1149
diff changeset
    30
]
4876
1a47cc2728ff setup: make runnable from other dirs
Ian Moody <moz-ian@perix.co.uk>
parents: 4817
diff changeset
    31
py_packagedir = {
1a47cc2728ff setup: make runnable from other dirs
Ian Moody <moz-ian@perix.co.uk>
parents: 4817
diff changeset
    32
    'hgext3rd': join(dirname(__file__), 'hgext3rd')
1a47cc2728ff setup: make runnable from other dirs
Ian Moody <moz-ian@perix.co.uk>
parents: 4817
diff changeset
    33
}
1242
cf846d47bb7e setup: allow including inhibit in the build
Durham Goode <durham@fb.com>
parents: 1149
diff changeset
    34
4817
a9b4c4849338 python3: add supported python versions to setup.py
Raphaël Gomès <rgomes@octobus.net>
parents: 4792
diff changeset
    35
py_versions = '>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, <4'
a9b4c4849338 python3: add supported python versions to setup.py
Raphaël Gomès <rgomes@octobus.net>
parents: 4792
diff changeset
    36
1452
1bcbd14cf159 merge back with 3.3 compat branch
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1451
diff changeset
    37
if os.environ.get('INCLUDE_INHIBIT'):
1807
a53efee7d8b0 hgext3rd: move 'directaccess' and 'inhibit' in 'evolve.hack'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1806
diff changeset
    38
    py_modules.append('hgext3rd.evolve.hack.inhibit')
a53efee7d8b0 hgext3rd: move 'directaccess' and 'inhibit' in 'evolve.hack'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1806
diff changeset
    39
    py_modules.append('hgext3rd.evolve.hack.directaccess')
1452
1bcbd14cf159 merge back with 3.3 compat branch
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1451
diff changeset
    40
1839
1bc5e62fc0c7 Initial dumb version of topics.
Augie Fackler <augie@google.com>
parents:
diff changeset
    41
setup(
496
d3d9df795b4d [pkg] Add a setup.py
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    42
    name='hg-evolve',
2049
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
    43
    version=get_version(),
496
d3d9df795b4d [pkg] Add a setup.py
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    44
    author='Pierre-Yves David',
2069
7d15775d8585 setup: add author_email
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2067
diff changeset
    45
    author_email='pierre-yves.david@ens-lyon.org',
496
d3d9df795b4d [pkg] Add a setup.py
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    46
    maintainer='Pierre-Yves David',
916
48e68d3b0144 fix maintainer email
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 859
diff changeset
    47
    maintainer_email='pierre-yves.david@ens-lyon.org',
1642
fb5e479080d8 project: change evolution domain to mercurial-scm
timeless@gmail.com
parents: 1617
diff changeset
    48
    url='https://www.mercurial-scm.org/doc/evolution/',
496
d3d9df795b4d [pkg] Add a setup.py
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    49
    description='Flexible evolution of Mercurial history.',
4876
1a47cc2728ff setup: make runnable from other dirs
Ian Moody <moz-ian@perix.co.uk>
parents: 4817
diff changeset
    50
    long_description=open(join(dirname(__file__), 'README')).read(),
1839
1bc5e62fc0c7 Initial dumb version of topics.
Augie Fackler <augie@google.com>
parents:
diff changeset
    51
    keywords='hg mercurial',
1bc5e62fc0c7 Initial dumb version of topics.
Augie Fackler <augie@google.com>
parents:
diff changeset
    52
    license='GPLv2+',
1806
9f42f819267b evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1642
diff changeset
    53
    py_modules=py_modules,
4817
a9b4c4849338 python3: add supported python versions to setup.py
Raphaël Gomès <rgomes@octobus.net>
parents: 4792
diff changeset
    54
    packages=py_packages,
4876
1a47cc2728ff setup: make runnable from other dirs
Ian Moody <moz-ian@perix.co.uk>
parents: 4817
diff changeset
    55
    package_dir=py_packagedir,
4817
a9b4c4849338 python3: add supported python versions to setup.py
Raphaël Gomès <rgomes@octobus.net>
parents: 4792
diff changeset
    56
    python_requires=py_versions
1839
1bc5e62fc0c7 Initial dumb version of topics.
Augie Fackler <augie@google.com>
parents:
diff changeset
    57
)