-
Notifications
You must be signed in to change notification settings - Fork 10
/
setup.py
111 lines (102 loc) · 3 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
import os
import setuptools
# Package meta-data.
NAME = "deep_river"
DESCRIPTION = "Online Deep Learning for river"
LONG_DESCRIPTION_CONTENT_TYPE = "text/markdown"
URL = "https://online-ml.github.io/deep-river/"
EMAIL = "cedric.kulbach@googlemail.com"
AUTHOR = "Cedric Kulbach"
REQUIRES_PYTHON = ">=3.6.0"
# Package requirements.
base_packages = [
"scikit-learn~=1.5.0",
"torch~=2.2.2",
"pandas~=2.2.2",
"numpy~=1.26.4",
"river~=0.21.2",
"scipy~=1.13.0",
"tqdm~=4.66.5",
"ordered-set~=4.1.0",
"torchviz~=0.0.2",
]
dev_packages = [
"graphviz>=0.20.3",
"matplotlib>=3.9.2",
"mypy>=1.11.1",
"pre-commit>=3.8.0",
"pytest>=8.3.2",
"pytest-cov>=5.0.0",
"black>=24.8.0",
"flake8>=7.1.1",
"isort>=5.13.2",
"jupyter>=1.0.0",
"pyupgrade==3.17.0",
]
docs_packages = [
"flask>=3.0.2",
"ipykernel>=6.9.0",
"mike>=0.5.3",
"mkdocs>=1.2.3",
"mkdocs-awesome-pages-plugin>=2.7.0",
"mkdocs-gen-files>=0.3.5",
"mkdocs-charts-plugin>=0.0.8",
"mkdocs-literate-nav>=0.4.1",
"mkdocs-material>=8.1.11",
"mkdocstrings[python]>=0.19.0",
"pytkdocs[numpy-style]>=0.5.0",
"ipython_genutils>=0.1.0",
"mkdocs-jupyter>=0.20.0",
"nbconvert>=6.4.2",
"numpydoc>=1.2",
"spacy>=3.2.2",
"jinja2>=3.0.3",
"dominate",
"jupyter-client",
"mkdocs-charts-plugin",
"python-slugify",
"watermark==2.3.1",
]
here = os.path.abspath(os.path.dirname(__file__))
# Import the README and use it as the long-description.
with open(os.path.join(here, "README.md"), encoding="utf-8") as f:
long_description = "\n" + f.read()
# Load the package's __version__.py module as a dictionary.
about = {}
with open(os.path.join(here, NAME, "__version__.py")) as f:
exec(f.read(), about)
# Where the magic happens:
setuptools.setup(
name=NAME,
version=about["__version__"],
description=DESCRIPTION,
long_description=long_description,
long_description_content_type=LONG_DESCRIPTION_CONTENT_TYPE,
author=AUTHOR,
author_email=EMAIL,
python_requires=REQUIRES_PYTHON,
url=URL,
packages=setuptools.find_packages(exclude=("tests",)),
install_requires=base_packages,
extras_require={
"dev": base_packages + dev_packages,
"docs": base_packages + docs_packages,
"all": dev_packages + docs_packages,
":python_version == '3.6'": ["dataclasses"],
},
include_package_data=True,
license="BSD-3",
classifiers=[
# Trove classifiers
# Full list: https://pypi.python.org/pypi?%3Aaction=list_classifiers
"License :: OSI Approved :: BSD License",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
],
ext_modules=[],
)