From 7cea1b2eaf656edd2da0c561a225ffeec26067f6 Mon Sep 17 00:00:00 2001 From: Jason Madden Date: Mon, 14 Aug 2017 09:13:36 -0500 Subject: Add Python 3.6, drop Python 3.3 - Badges - Enable coverage reporting and coveralls - Less than 100%; see #9 - Enable universal wheels by using environment markers in the dependencies. --- setup.py | 89 +++++++++++++++++++++++----------------------------------------- 1 file changed, 32 insertions(+), 57 deletions(-) (limited to 'setup.py') diff --git a/setup.py b/setup.py index 8c45ee4..69a6a37 100644 --- a/setup.py +++ b/setup.py @@ -19,54 +19,20 @@ """Setup for zope.pagetemplate package """ import os -import sys from setuptools import setup, find_packages -PY3 = sys.version_info[0] >= 3 - def read(*rnames): with open(os.path.join(os.path.dirname(__file__), *rnames)) as f: return f.read() -def _modname(path, base, name=''): - if path == base: - return name - dirname, basename = os.path.split(path) - return _modname(dirname, base, basename + '.' + name) - -def alltests(): - import logging - import pkg_resources - import unittest - - class NullHandler(logging.Handler): - level = 50 - - def emit(self, record): - pass - - logging.getLogger().addHandler(NullHandler()) - - suite = unittest.TestSuite() - base = pkg_resources.working_set.find( - pkg_resources.Requirement.parse('zope.pagetemplate')).location - for dirpath, dirnames, filenames in os.walk(base): - if os.path.basename(dirpath) == 'tests': - for filename in filenames: - if ( filename.endswith('.py') and - filename.startswith('test') ): - mod = __import__( - _modname(dirpath, base, os.path.splitext(filename)[0]), - {}, {}, ['*']) - suite.addTest(mod.test_suite()) - return suite TESTS_REQUIRE = [ - 'zope.testing', 'zope.proxy', 'zope.security', -] + (['zope.untrustedpython'] if not PY3 else []) + 'zope.testing', + 'zope.testrunner', +] setup(name='zope.pagetemplate', @@ -77,8 +43,9 @@ setup(name='zope.pagetemplate', long_description=( read('README.rst') + '\n\n' + + '======================\n' 'Detailed Documentation\n' + - '----------------------' + '======================' + '\n\n' + read('src', 'zope', 'pagetemplate', 'architecture.txt') + '\n\n' + @@ -95,36 +62,44 @@ setup(name='zope.pagetemplate', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.3', 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', + 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: Implementation :: CPython', 'Programming Language :: Python :: Implementation :: PyPy', 'Natural Language :: English', 'Operating System :: OS Independent', 'Topic :: Internet :: WWW/HTTP', - 'Framework :: Zope3'], - url='http://pypi.python.org/pypi/zope.pagetemplate', + 'Framework :: Zope3', + ], + url='http://github.com/zopefoundation/zope.pagetemplate', license='ZPL 2.1', packages=find_packages('src'), package_dir={'': 'src'}, namespace_packages=['zope'], - extras_require=dict( - test=TESTS_REQUIRE, - untrusted=['zope.untrustedpython'] if not PY3 else [], - ), - install_requires=['setuptools', - 'six', - 'zope.interface', - 'zope.component', - 'zope.tales', - 'zope.tal >= 4.2.0', - 'zope.i18n >= 4.0.1', - 'zope.i18nmessageid', - 'zope.traversing', - ], + extras_require={ + 'test': TESTS_REQUIRE, + 'test:python_version == "2.7"': [ + 'zope.untrustedpython', + ], + 'untrusted': [ + ], + 'untrusted:python_version == "2.7"': [ + 'zope.untrustedpython', + ], + }, + install_requires=[ + 'setuptools', + 'six', + 'zope.interface', + 'zope.component', + 'zope.tales', + 'zope.tal >= 4.2.0', + 'zope.i18n >= 4.0.1', + 'zope.i18nmessageid', + 'zope.traversing', + ], include_package_data=True, zip_safe=False, tests_require=TESTS_REQUIRE, - test_suite='__main__.alltests', - ) +) -- cgit v1.2.1