-
Notifications
You must be signed in to change notification settings - Fork 45
/
setup.py
76 lines (71 loc) · 2.62 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
"""
Release process:
1. Update ibflex.__version__.__version__
2. Change download_url below
3. Commit changes & push
4. Test: `python setup.py sdist`
5. Test: `twine upload --repository-url https://test.pypi.org/legacy/ dist/*`
6. Test result: Check https://test.pypi.org/project/ibflex
7. `git tag` the release
8. `git push --tags`
9. Verify that new tag shows at https://github.com/csingley/ibflex/releases
10. `twine upload dist/*`
11. `make clean`
12. Change download_url back to master; commit & push
"""
import os.path
from setuptools import setup, find_packages
__here__ = os.path.dirname(os.path.realpath(__file__))
ABOUT = {}
with open(os.path.join(__here__, "ibflex", "__version__.py"), "r") as f:
exec(f.read(), ABOUT)
with open(os.path.join(__here__, "README.rst"), "r") as f:
README = f.read()
URL_BASE = "{}/tarball".format(ABOUT["__url__"])
setup(
name=ABOUT["__title__"],
version=ABOUT["__version__"],
description=ABOUT["__description__"],
long_description=README,
long_description_content_type="text/x-rst",
author=ABOUT["__author__"],
author_email=ABOUT["__author_email__"],
url=ABOUT["__url__"],
packages=find_packages(),
package_data={
"ibflex": ["README.rst", "tests/*", "py.typed"],
},
python_requires=">=3.7",
license=ABOUT["__license__"],
# Note: change 'master' to the tag name when releasing a new verion
# download_url="{}/master".format(URL_BASE),
download_url="{}/{}".format(URL_BASE, ABOUT["__version__"]),
classifiers=[
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"Intended Audience :: Financial and Insurance Industry",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Utilities",
"Topic :: Office/Business",
"Topic :: Office/Business :: Financial",
"Topic :: Office/Business :: Financial :: Accounting",
"Topic :: Office/Business :: Financial :: Investment",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Natural Language :: English",
"Programming Language :: Python",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
],
keywords=["Interactive Brokers", "ibkr", "flex", "xml"],
extras_require={
"web": ["requests"],
},
entry_points={
"console_scripts": [
"flexget=ibflex.client:main [web]",
],
},
)