diff options
author | holger krekel <holger@merlinux.eu> | 2015-05-13 01:27:42 +0200 |
---|---|---|
committer | holger krekel <holger@merlinux.eu> | 2015-05-13 01:27:42 +0200 |
commit | dff8a9e0776b82feb18a29e7ba3da6b9e267aa9b (patch) | |
tree | 5271ac34742ba0f5dfec3e5321d599d5db22408e /setup.py | |
parent | 397adfb5a0bc2bf84435f59aa8608eeda86810aa (diff) | |
download | tox-dff8a9e0776b82feb18a29e7ba3da6b9e267aa9b.tar.gz |
fix wheel packaging to properly require argparse on py26.2.0.1
Diffstat (limited to 'setup.py')
-rw-r--r-- | setup.py | 33 |
1 files changed, 28 insertions, 5 deletions
@@ -1,5 +1,5 @@ import sys -from setuptools import setup +import setuptools from setuptools.command.test import test as TestCommand @@ -15,18 +15,40 @@ class Tox(TestCommand): import tox tox.cmdline(self.test_args) +def has_environment_marker_support(): + """ + Tests that setuptools has support for PEP-426 environment marker support. + + The first known release to support it is 0.7 (and the earliest on PyPI seems to be 0.7.2 + so we're using that), see: http://pythonhosted.org/setuptools/history.html#id142 + + References: + + * https://wheel.readthedocs.org/en/latest/index.html#defining-conditional-dependencies + * https://www.python.org/dev/peps/pep-0426/#environment-markers + """ + import pkg_resources + try: + return pkg_resources.parse_version(setuptools.__version__) >= pkg_resources.parse_version('0.7.2') + except Exception as exc: + sys.stderr.write("Could not test setuptool's version: %s\n" % exc) + return False def main(): version = sys.version_info[:2] install_requires = ['virtualenv>=1.11.2', 'py>=1.4.17', 'pluggy>=0.3.0,<0.4.0'] - if version < (2, 7): - install_requires += ['argparse'] - setup( + extras_require = {} + if has_environment_marker_support(): + extras_require[':python_version=="2.6"'] = ['argparse'] + else: + if version < (2, 7): + install_requires += ['argparse'] + setuptools.setup( name='tox', description='virtualenv-based automation of test activities', long_description=open("README.rst").read(), url='http://tox.testrun.org/', - version='2.0.0', + version='2.0.1', license='http://opensource.org/licenses/MIT', platforms=['unix', 'linux', 'osx', 'cygwin', 'win32'], author='holger krekel', @@ -38,6 +60,7 @@ def main(): tests_require=['tox'], cmdclass={"test": Tox}, install_requires=install_requires, + extras_require=extras_require, classifiers=[ 'Development Status :: 5 - Production/Stable', 'Intended Audience :: Developers', |