-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathsetup.py
73 lines (64 loc) · 1.66 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
#!/usr/bin/env python
# Copyright (C) 2018, 2019 - 2021 Richard Kemp
# $Id$
# -*- coding: utf-8; py-indent-offset:4 -*-
"""Python library standard setup configuration."""
import sys
from setuptools import setup
from setuptools.config import read_configuration
config = read_configuration("./setup.cfg")
name = config["metadata"]["name"]
if sys.version_info < (3, 6):
sys.exit(f"ERROR: {name} requires Python 3.6+")
extras_packages = {
"extra_datasource_alphavantage": [
"alpha_vantage==2.3.1",
],
"extra_datasource_quandl": [
"quandl==3.6.1",
],
"extra_broker_ig": [
"requests",
],
"extra_broker_oanda": [
"oandapyV20==0.6.3",
],
}
extras = []
for value in extras_packages.values():
extras.extend(value)
if __name__ == "__main__":
setup(
install_requires=[
"numpy==1.20.1",
"pandas==1.2.2",
"ta-lib==0.4.19",
"websockets",
],
extras_require={
"dev": [
"flake8",
"mypy",
"pandas-stubs",
"twine",
],
"doc": [
"pdoc3",
],
"extras": extras,
"test": [
"flake8-annotations-coverage",
"flake8-bandit",
"flake8-builtins",
"flake8-commas",
"flake8-docstrings",
"flake8-import-order",
"flake8-quotes",
"pytest",
"pytest-cov",
"pytest-flake8",
"pep8-naming",
],
**extras_packages,
},
)