forked from wyuenho/blueberrypy
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathsetup.py
112 lines (94 loc) · 3.95 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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
from __future__ import print_function
import os.path
import sys
from setuptools import setup, find_packages
install_requires = ["CherryPy[testing]>=8.3",
"docopt>=0.6",
"Jinja2>=2.7",
"PyYAML>=3.10",
"python-dateutil>=2.2"]
speedup_requires = ["hiredis>=0.1.0",
"simplejson>=3.4"]
if sys.version_info < (3, 3) and not (sys.version_info < (3, 0, 0) and 'PyPy' in sys.version.split('\n')[-1]):
speedup_requires.append("m3-cdecimal>=2.3")
tests_require = [
"nose>=1.3",
"nose-testconfig>=0.9",
"openstack.nose-plugin",
"coverage>=3.7",
"flexmock>=0.9.7",
"lazr.smtptest>=2.0"
if sys.version_info < (3, 5)
else "aiosmtpd>=1.0a5",
"tox>=1.7",
]
if sys.version_info < (3, 0, 0):
tests_require += ["mock"]
docs_require = ["Sphinx>=1.2" if sys.version_info[:2] != (3, 3)
else "Sphinx<1.5"]
dev_requires = tests_require + docs_require
db_requires = [
'psycopg2'
if 'PyPy' not in sys.version.split('\n')[-1] else
'psycopg2cffi'
]
geospatial_requires = ["Shapely>=1.3",
"GeoAlchemy2>=0.2.4"]
ipython_requires = ["ipython<=5.3.0" if sys.version_info < (3, 3)
else "ipython>=6.0.0"]
generic_requires = ["SQLAlchemy>=0.9",
"redis>=2.9",
"webassets>=0.9",
"Routes>=2.0",
"backlash>=0.0.5"]
if sys.version_info < (2, 7):
print("blueberrypy doesn't support python <= 2.6. Sorry!", file=sys.stderr)
sys.exit(1)
readme_file = open(os.path.abspath(os.path.join(os.path.dirname(__file__), "README.rst")), "r")
readme = readme_file.read()
readme_file.close()
setup(name="blueberrypy",
version="0.6",
author="Jimmy Yuen Ho Wong",
author_email="[email protected]",
url="http://bitbucket.org/wyuenho/blueberrypy",
description="CherryPy plugins and tools for integration with various libraries, including "
"logging, Redis, SQLAlchemy and Jinja2 and webassets.",
long_description=readme,
classifiers=["Development Status :: 4 - Beta",
"Environment :: Plugins",
"Environment :: Web Environment",
"Framework :: CherryPy",
"Intended Audience :: Developers",
"License :: OSI Approved :: BSD License",
"Natural Language :: English",
"Operating System :: OS Independent",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3.3",
"Programming Language :: Python :: 3.4",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Topic :: Database",
"Topic :: Internet :: WWW/HTTP :: Session",
"Topic :: Software Development :: Libraries",
"Topic :: Utilities"],
license="BSD",
package_dir={"": "src"},
packages=find_packages("src"),
include_package_data=True,
use_2to3=True,
entry_points={"console_scripts": ["blueberrypy = blueberrypy.command:main"]},
zip_safe=False,
install_requires=install_requires,
tests_require=tests_require,
extras_require={"speedups": speedup_requires,
"all": (generic_requires
+ geospatial_requires
+ ipython_requires),
"geospatial": geospatial_requires,
"db": db_requires,
"ipython": ipython_requires,
"docs": docs_require,
"testing": tests_require,
"dev": dev_requires})