forked from Kinto/kinto
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsetup.py
119 lines (103 loc) · 3.02 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
113
114
115
116
117
118
119
import codecs
import os
from setuptools import setup, find_packages
# abspath here because setup.py may be __main__, in which case
# __file__ is not guaranteed to be absolute
here = os.path.abspath(os.path.dirname(__file__))
def read_file(filename):
"""Open a related file and return its content."""
with codecs.open(os.path.join(here, filename), encoding='utf-8') as f:
content = f.read()
return content
README = read_file('README.rst')
CHANGELOG = read_file('CHANGELOG.rst')
CONTRIBUTORS = read_file('CONTRIBUTORS.rst')
REQUIREMENTS = [
'bcrypt',
'colander >= 1.4.0',
'cornice >= 2.4',
'cornice_swagger >= 0.5.1',
'dockerflow',
'jsonschema',
'jsonpatch',
'logging-color-formatter >= 1.0.1', # Message interpolations.
'python-dateutil',
'pyramid >= 1.9.1, < 2.0',
'pyramid_multiauth >= 0.8', # User on policy selected event.
'transaction',
# pyramid_tm changed the location of their tween in 2.x and one of
# our tests fails on 2.0.
'pyramid_tm >= 2.1',
'requests',
'waitress',
'ujson >= 1.35',
]
POSTGRESQL_REQUIRES = [
'SQLAlchemy',
'psycopg2 > 2.5',
'zope.sqlalchemy',
]
REDIS_REQUIRES = [
'kinto_redis'
]
MEMCACHED_REQUIRES = [
'python-memcached'
]
SETUP_REQUIRES = [
'pytest-runner'
]
TEST_REQUIREMENTS = [
'bravado_core',
'pytest',
'WebTest'
]
DEPENDENCY_LINKS = []
MONITORING_REQUIRES = [
'raven',
'statsd',
'newrelic',
'werkzeug',
]
ENTRY_POINTS = {
'paste.app_factory': [
'main = kinto:main',
],
'console_scripts': [
'kinto = kinto.__main__:main'
],
}
setup(name='kinto',
version='8.1.4.dev0',
description='Kinto Web Service - Store, Sync, Share, and Self-Host.',
long_description='{}\n\n{}\n\n{}'.format(README, CHANGELOG, CONTRIBUTORS),
license='Apache License (2.0)',
classifiers=[
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: Implementation :: CPython',
'Topic :: Internet :: WWW/HTTP',
'Topic :: Internet :: WWW/HTTP :: WSGI :: Application',
'License :: OSI Approved :: Apache Software License'
],
keywords='web sync json storage services',
author='Mozilla Services',
author_email='[email protected]',
url='https://github.com/Kinto/kinto',
packages=find_packages(),
package_data={'': ['*.rst', '*.py', '*.yaml']},
include_package_data=True,
zip_safe=False,
setup_requires=SETUP_REQUIRES,
tests_require=TEST_REQUIREMENTS,
install_requires=REQUIREMENTS,
extras_require={
'redis': REDIS_REQUIRES,
'memcached': MEMCACHED_REQUIRES,
'postgresql': POSTGRESQL_REQUIRES,
'monitoring': MONITORING_REQUIRES,
},
test_suite='tests',
dependency_links=DEPENDENCY_LINKS,
entry_points=ENTRY_POINTS)