forked from TurboGears/tg2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
94 lines (81 loc) · 2.74 KB
/
setup.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
import os
here = os.path.abspath(os.path.dirname(__file__))
exec(compile(open(os.path.join(here, 'tg', 'release.py')).read(), 'release.py', 'exec'), globals(), locals())
from setuptools import find_packages, setup
import sys
py_version = sys.version_info[:2]
if py_version < (2, 6):
raise RuntimeError('TurboGears2 requires Python 2.6 or better')
if py_version[0] == 3 and py_version < (3, 2):
raise RuntimeError('When using Python3 TurboGears2 requires at least Python3.2')
test_requirements = ['nose',
'zope.sqlalchemy >= 0.4',
'repoze.who',
'repoze.who.plugins.sa >= 1.0.1',
'Genshi >= 0.5.1',
'Mako',
'WebTest < 2.0',
'backlash >= 0.0.7',
'sqlalchemy',
'raven < 4.1.0',
'formencode>=1.3.0a1',
'tw2.forms',
'Beaker',
'Kajiki >= 0.4.4']
if py_version == (3, 2):
# jinja2 2.7 is incompatible with Python 3.2
test_requirements.append('jinja2 < 2.7')
# coverage 4.0 is incompatible with Python 3.2
test_requirements.append('coverage < 4.0')
else:
test_requirements.append('jinja2')
test_requirements.append('coverage')
if py_version != (3, 2):
# Ming is not compatible with Python3.2
test_requirements.append('ming > 0.5.0')
if py_version[0] == 2:
test_requirements.extend(['TurboKid >= 1.0.4',
'tgming',
'tw.forms'])
install_requires=[
'WebOb >= 1.2',
'crank >= 0.8.0, < 0.9.0',
'repoze.lru'
]
if py_version == (3, 2):
# markupsafe 0.16 is incompatible with Python 3.2
install_requires.append('MarkupSafe < 0.16')
else:
install_requires.append('MarkupSafe')
setup(
name='TurboGears2',
version=version,
description=description,
long_description=long_description,
classifiers=[
'Intended Audience :: Developers',
'Environment :: Web Environment',
'Programming Language :: Python :: 3',
'Programming Language :: Python',
'Topic :: Internet :: WWW/HTTP',
'Topic :: Internet :: WWW/HTTP :: WSGI',
],
keywords='turbogears',
author=author,
author_email=email,
url=url,
license=license,
packages=find_packages(exclude=['ez_setup', 'examples']),
include_package_data=True,
zip_safe=False,
install_requires=install_requires,
extras_require={
# Used by Travis and Coverage due to setup.py nosetests
# causing a coredump when used with coverage
'testing':test_requirements,
},
test_suite='nose.collector',
tests_require = test_requirements,
entry_points='''
'''
)