-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
62 lines (54 loc) · 2.21 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
"""Install script for setuptools."""
import os
from setuptools import find_namespace_packages
from setuptools import setup
_CURRENT_DIR = os.path.dirname(os.path.abspath(__file__))
def _get_version():
with open(os.path.join(_CURRENT_DIR, "modularbayes", "__init__.py")) as fp:
for line in fp:
if line.startswith("__version__") and "=" in line:
version = line[line.find("=") + 1:].strip(" '\"\n")
if version:
return version
raise ValueError("`__version__` not defined in `modularbayes/__init__.py`")
def _parse_requirements(path):
with open(os.path.join(_CURRENT_DIR, path)) as f:
return [
line.rstrip()
for line in f
if not (line.isspace() or line.startswith("#"))
]
setup(
name="modularbayes",
version=_get_version(),
url="https://github.com/chriscarmona/modularbayes",
license="MIT",
author="Chris Carmona",
description=("Modular Bayesian Inference."),
long_description=open(os.path.join(_CURRENT_DIR, "README.md")).read(),
long_description_content_type="text/markdown",
author_email="[email protected]",
maintainer_email="[email protected]",
keywords="modular bayesian inference cut smi posterior probability distribution",
packages=find_namespace_packages(exclude=["*_test.py"]),
install_requires=_parse_requirements(
os.path.join(_CURRENT_DIR, "requirements", "requirements.txt")),
tests_require=_parse_requirements(
os.path.join(_CURRENT_DIR, "requirements", "requirements-tests.txt")),
zip_safe=False, # Required for full installation.
include_package_data=True,
python_requires=">=3.8",
classifiers=[
"Development Status :: 2 - Pre-Alpha",
"Environment :: Console",
"Intended Audience :: Science/Research",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
"Topic :: Scientific/Engineering :: Mathematics",
"Topic :: Software Development :: Libraries :: Python Modules",
],
)