commit | author | age
|
612d74
|
1 |
############################################################################## |
CM |
2 |
# |
b23b13
|
3 |
# Copyright (c) 2008-2013 Agendaless Consulting and Contributors. |
612d74
|
4 |
# All Rights Reserved. |
CM |
5 |
# |
|
6 |
# This software is subject to the provisions of the BSD-like license at |
|
7 |
# http://www.repoze.org/LICENSE.txt. A copy of the license should accompany |
|
8 |
# this distribution. THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL |
|
9 |
# EXPRESS OR IMPLIED WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, |
|
10 |
# THE IMPLIED WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND |
|
11 |
# FITNESS FOR A PARTICULAR PURPOSE |
|
12 |
# |
|
13 |
############################################################################## |
|
14 |
|
|
15 |
import os |
a9fed7
|
16 |
import sys |
612d74
|
17 |
|
CM |
18 |
from setuptools import setup, find_packages |
|
19 |
|
602453
|
20 |
py_version = sys.version_info[:2] |
ddbd96
|
21 |
is_pypy = '__pypy__' in sys.builtin_module_names |
795253
|
22 |
|
602453
|
23 |
PY3 = py_version[0] == 3 |
CM |
24 |
|
|
25 |
if PY3: |
ddbd96
|
26 |
if py_version < (3, 3) and not is_pypy: # PyPy3 masquerades as Python 3.2... |
BJR |
27 |
raise RuntimeError('On Python 3, Pyramid requires Python 3.3 or better') |
602453
|
28 |
else: |
ccd9e1
|
29 |
if py_version < (2, 6): |
BJR |
30 |
raise RuntimeError('On Python 2, Pyramid requires Python 2.6 or better') |
e6c2d2
|
31 |
|
612d74
|
32 |
here = os.path.abspath(os.path.dirname(__file__)) |
357b40
|
33 |
try: |
e2ec94
|
34 |
with open(os.path.join(here, 'README.rst')) as f: |
eb3cee
|
35 |
README = f.read() |
TL |
36 |
with open(os.path.join(here, 'CHANGES.txt')) as f: |
|
37 |
CHANGES = f.read() |
357b40
|
38 |
except IOError: |
CM |
39 |
README = CHANGES = '' |
01a6e5
|
40 |
|
764b5d
|
41 |
install_requires = [ |
c9b78f
|
42 |
'setuptools', |
0506e7
|
43 |
'WebOb >= 1.3.1', # request.domain and CookieProfile |
c9b78f
|
44 |
'repoze.lru >= 0.4', # py3 compat |
0dde01
|
45 |
'zope.interface >= 3.8.0', # has zope.interface.registry |
c9b78f
|
46 |
'zope.deprecation >= 3.5.0', # py3 compat |
e4b8fa
|
47 |
'venusian >= 1.0a3', # ``ignore`` |
c9b78f
|
48 |
'translationstring >= 0.4', # py3 compat |
337960
|
49 |
'PasteDeploy >= 1.5.0', # py3 compat |
01a6e5
|
50 |
] |
e6c2d2
|
51 |
|
a3744b
|
52 |
tests_require = [ |
c9b78f
|
53 |
'WebTest >= 1.3.1', # py3 compat |
e6c2d2
|
54 |
] |
CM |
55 |
|
795253
|
56 |
if not PY3: |
90da3b
|
57 |
tests_require.append('zope.component>=3.11.0') |
c75e50
|
58 |
|
aca78f
|
59 |
docs_extras = [ |
1779c2
|
60 |
'Sphinx >= 1.3.5', |
aca78f
|
61 |
'docutils', |
CM |
62 |
'repoze.sphinx.autointerface', |
5699df
|
63 |
'pylons_sphinx_latesturl', |
896349
|
64 |
'pylons-sphinx-themes', |
50dd2e
|
65 |
'sphinxcontrib-programoutput', |
90da3b
|
66 |
] |
CM |
67 |
|
|
68 |
testing_extras = tests_require + [ |
|
69 |
'nose', |
|
70 |
'coverage', |
|
71 |
'virtualenv', # for scaffolding tests |
aca78f
|
72 |
] |
1e0e9b
|
73 |
|
b60bdb
|
74 |
setup(name='pyramid', |
1eea18
|
75 |
version='1.7a1', |
78b41e
|
76 |
description='The Pyramid Web Framework, a Pylons project', |
764b5d
|
77 |
long_description=README + '\n\n' + CHANGES, |
612d74
|
78 |
classifiers=[ |
764b5d
|
79 |
"Development Status :: 6 - Mature", |
BJR |
80 |
"Intended Audience :: Developers", |
|
81 |
"Programming Language :: Python", |
|
82 |
"Programming Language :: Python :: 2.7", |
|
83 |
"Programming Language :: Python :: 3", |
|
84 |
"Programming Language :: Python :: 3.3", |
|
85 |
"Programming Language :: Python :: 3.4", |
|
86 |
"Programming Language :: Python :: 3.5", |
|
87 |
"Programming Language :: Python :: Implementation :: CPython", |
|
88 |
"Programming Language :: Python :: Implementation :: PyPy", |
|
89 |
"Framework :: Pyramid", |
|
90 |
"Topic :: Internet :: WWW/HTTP", |
|
91 |
"Topic :: Internet :: WWW/HTTP :: WSGI", |
|
92 |
"License :: Repoze Public License", |
|
93 |
], |
e8e655
|
94 |
keywords='web wsgi pylons pyramid', |
4dc529
|
95 |
author="Chris McDonough, Agendaless Consulting", |
b4ecce
|
96 |
author_email="pylons-discuss@googlegroups.com", |
afd04c
|
97 |
url="https://trypyramid.com", |
612d74
|
98 |
license="BSD-derived (http://www.repoze.org/LICENSE.txt)", |
CM |
99 |
packages=find_packages(), |
|
100 |
include_package_data=True, |
|
101 |
zip_safe=False, |
764b5d
|
102 |
install_requires=install_requires, |
BJR |
103 |
extras_require={ |
|
104 |
'testing': testing_extras, |
|
105 |
'docs': docs_extras, |
a3744b
|
106 |
}, |
764b5d
|
107 |
tests_require=tests_require, |
beb87d
|
108 |
test_suite="pyramid.tests", |
764b5d
|
109 |
entry_points="""\ |
a30a39
|
110 |
[pyramid.scaffold] |
CM |
111 |
starter=pyramid.scaffolds:StarterProjectTemplate |
|
112 |
zodb=pyramid.scaffolds:ZODBProjectTemplate |
|
113 |
alchemy=pyramid.scaffolds:AlchemyProjectTemplate |
b7350e
|
114 |
[pyramid.pshell_runner] |
MM |
115 |
python=pyramid.scripts.pshell:python_shell_runner |
68a711
|
116 |
[console_scripts] |
a30a39
|
117 |
pcreate = pyramid.scripts.pcreate:main |
0e0cb7
|
118 |
pserve = pyramid.scripts.pserve:main |
337960
|
119 |
pshell = pyramid.scripts.pshell:main |
CM |
120 |
proutes = pyramid.scripts.proutes:main |
|
121 |
pviews = pyramid.scripts.pviews:main |
|
122 |
ptweens = pyramid.scripts.ptweens:main |
4eab20
|
123 |
prequest = pyramid.scripts.prequest:main |
b210ce
|
124 |
pdistreport = pyramid.scripts.pdistreport:main |
0e0cb7
|
125 |
[paste.server_runner] |
CM |
126 |
wsgiref = pyramid.scripts.pserve:wsgiref_server_runner |
a0e3cb
|
127 |
cherrypy = pyramid.scripts.pserve:cherrypy_server_runner |
612d74
|
128 |
""" |
CM |
129 |
) |