-
Notifications
You must be signed in to change notification settings - Fork 3
/
setup.py
87 lines (70 loc) · 2.37 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
# prefer setuptools over distutils
from setuptools import setup, find_packages
# use a consistent encoding
from codecs import open
from os import path
import json
here = path.abspath(path.dirname(__file__))
root = path.dirname(here)
readme_rst = path.join(here, 'README.rst')
package_json = path.join(here, 'package.json')
# a workaround when installing locally from git repository with pip install -e .
if not path.isfile(package_json):
package_json = path.join(root, 'package.json')
# long description from README file
with open(readme_rst, encoding='utf-8') as f:
long_description = f.read()
# version number and all other params from package.json
with open(package_json, encoding='utf-8') as f:
package = json.load(f)
setup(
name=package['name'],
version=package['version'],
description=package['description'],
long_description=long_description,
url=package['homepage'],
author=package['author']['name'],
author_email=package['author']['email'],
license=package['license'],
classifiers=[
'Development Status :: 4 - Beta',
'Intended Audience :: Developers',
'Intended Audience :: Financial and Insurance Industry',
'Intended Audience :: Information Technology',
'Topic :: Software Development :: Build Tools',
'Topic :: Office/Business :: Financial :: Investment',
'License :: OSI Approved :: MIT License',
'Programming Language :: Python :: 2',
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.3',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: JavaScript',
'Programming Language :: PHP',
'Operating System :: OS Independent',
'Environment :: Console'
],
keywords=package['keywords'],
packages=find_packages(),
install_requires=[
'setuptools>=38.5.1',
'certifi>=2018.1.18',
'requests>=2.18.4'
],
extras_require={
':python_version>="3.5.3"': [
'aiohttp>=3.0.1',
'cchardet==2.1.1',
'aiodns==1.1.1',
'yarl==1.1.0'
],
'qa': [
'flake8==3.5.0'
],
'doc': [
'Sphinx==1.7.0'
]
}
)