forked from cherrypy/cherrypy
-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
117 lines (107 loc) · 3.99 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
#! /usr/bin/env python
"""CherryPy package setuptools installer."""
import setuptools
name = 'CherryPy'
repo_slug = 'cherrypy/{}'.format(name.lower())
repo_url = 'https://github.com/{}'.format(repo_slug)
params = dict(
name=name,
use_scm_version=True,
description='Object-Oriented HTTP framework',
author='CherryPy Team',
author_email='team@cherrypy.dev',
classifiers=[
'Development Status :: 5 - Production/Stable',
'Environment :: Web Environment',
'Intended Audience :: Developers',
'License :: Freely Distributable',
'Operating System :: OS Independent',
'Framework :: CherryPy',
'License :: OSI Approved :: BSD License',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: Implementation',
'Programming Language :: Python :: Implementation :: CPython',
'Programming Language :: Python :: Implementation :: Jython',
'Programming Language :: Python :: Implementation :: PyPy',
'Topic :: Internet :: WWW/HTTP',
'Topic :: Internet :: WWW/HTTP :: Dynamic Content',
'Topic :: Internet :: WWW/HTTP :: HTTP Servers',
'Topic :: Internet :: WWW/HTTP :: WSGI',
'Topic :: Internet :: WWW/HTTP :: WSGI :: Application',
'Topic :: Internet :: WWW/HTTP :: WSGI :: Server',
'Topic :: Software Development :: Libraries :: Application Frameworks',
],
url='https://www.cherrypy.dev',
project_urls={
'CI: AppVeyor': 'https://ci.appveyor.com/project/{}'.format(repo_slug),
'CI: Travis': 'https://travis-ci.org/{}'.format(repo_slug),
'CI: Circle': 'https://circleci.com/gh/{}'.format(repo_slug),
'Docs: RTD': 'https://docs.cherrypy.dev',
'GitHub: issues': '{}/issues'.format(repo_url),
'GitHub: repo': repo_url,
'Tidelift: funding':
'https://tidelift.com/subscription/pkg/pypi-cherrypy'
'?utm_source=pypi-cherrypy&utm_medium=referral&utm_campaign=pypi',
},
packages=[
'cherrypy', 'cherrypy.lib',
'cherrypy.tutorial', 'cherrypy.test',
'cherrypy.process',
'cherrypy.scaffold',
],
entry_points={'console_scripts': ['cherryd = cherrypy.__main__:run']},
include_package_data=True,
install_requires=[
'cheroot>=8.2.1',
'portend>=2.1.1',
'more_itertools',
'zc.lockfile',
'jaraco.collections',
],
extras_require={
'docs': [
'sphinx',
'docutils',
'alabaster',
'sphinxcontrib-apidoc>=0.3.0',
'rst.linker>=1.11',
'jaraco.packaging>=3.2',
'setuptools',
],
'json': ['simplejson'],
'routes_dispatcher': ['routes>=2.3.1'],
'ssl': ['pyOpenSSL'],
'testing': [
'coverage', # inspects tests coverage
'codecov', # sends tests coverage to codecov.io
# cherrypy.lib.gctools
'objgraph',
'pytest>=5.3.5',
'pytest-cov',
'pytest-forked',
'pytest-sugar',
'path.py',
'requests_toolbelt',
'pytest-services>=2',
'setuptools',
],
# Enables memcached session support via `cherrypy[memcached_session]`:
'memcached_session': ['python-memcached>=1.58'],
'xcgi': ['flup'],
# https://docs.cherrypy.dev/en/latest/advanced.html?highlight=windows#windows-console-events
':sys_platform == "win32" and implementation_name == "cpython"'
# pywin32 disabled while a build is unavailable. Ref #1920.
' and python_version < "3.10"': [
'pywin32 >= 227',
],
},
setup_requires=[
'setuptools_scm',
],
python_requires='>=3.6',
)
__name__ == '__main__' and setuptools.setup(**params)