-
Notifications
You must be signed in to change notification settings - Fork 3
/
pyproject.toml
129 lines (116 loc) · 3 KB
/
pyproject.toml
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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
[build-system]
requires = ["flit_core >=2,<4"]
build-backend = "flit_core.buildapi"
[tool.flit.sdist]
exclude = [".idea", "tmp", "dist", ".tox", ".pytest_cache"]
[tool.flit.metadata]
module = "pytools"
author = "Boston Consulting Group (BCG)"
home-page = "https://github.com/BCG-X-Official/pytools"
description-file = "pypi_description.rst"
dist-name = "gamma-pytools"
license = "Apache Software License v2.0"
requires = [
"joblib ~=1.0",
"matplotlib ~=3.6",
"numpy >=1.23,<3a", # cannot use ~= due to conda bug
"pandas >=1.5",
"scipy ~=1.9",
"typing_inspect ~=0.7",
"typing_extensions ~=4.0",
]
requires-python = ">=3.10,<4a"
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: Apache Software License",
"Operating System :: MacOS",
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX :: Linux",
"Operating System :: Unix",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Topic :: Scientific/Engineering",
]
[tool.flit.metadata.requires-extra]
testing = [
"pytest ~= 7.1",
"pytest-cov ~= 2.12",
]
docs = [
"sphinx ~= 4.5",
"sphinx-autodoc-typehints ~= 1.19",
"pydata-sphinx-theme ~= 0.8.1",
"jinja2 ~= 2.11",
"nbsphinx ~= 0.8.9",
"jupyter == 1",
"docutils ~= 0.17",
"xlrd ~= 1.2",
"m2r ~= 0.2",
"mypy ~= 1.10",
]
[tool.flit.metadata.urls]
Documentation = "https://bcg-x-official.github.io/pytools/"
Repository = "https://github.com/BCG-X-Official/pytools"
[build]
# comma-separated list of packages to be built from source in pip min builds
no-binary.min = []
[build.matrix.min]
# minimum requirements of gamma-pytools
joblib = "~=1.0.1"
matplotlib = "~=3.6.3"
numpy = ">=1.23.5,<1.24a" # cannot use ~= due to conda bug
pandas = "~=1.5.3"
python = ">=3.10.14,<3.11a" # cannot use ~= due to conda bug
scipy = "~=1.9.3"
typing_inspect = "~=0.7.1"
typing_extensions = "~=4.0.0"
[build.matrix.max]
# maximum requirements of gamma-pytools
joblib = "~=1.3"
matplotlib = "~=3.8"
numpy = ">=2,<3a" # cannot use ~= due to conda bug
pandas = "~=2.0"
python = ">=3.12,<4a" # cannot use ~= due to conda bug
scipy = "~=1.12"
typing_inspect = "~=0.7"
typing_extensions = "~=4.3"
[tool.black]
required-version = '24.4.2'
line-length = 88
target_version = ['py311']
include = '\.pyi?$'
exclude = '''
(
/(
\.eggs # exclude a few common directories in the
| \.git # root of the project
| \.hg
| \.mypy_cache
| \.tox
| \.venv
| data
| docs
| notebooks
| sphinx
)/
)
'''
[tool.mypy]
show_error_codes = true
strict = true
[[tool.mypy.overrides]]
module = [
"docutils.*",
"packaging.*",
"pandas.*",
"matplotlib.*",
"joblib.*",
"scipy.*",
"sphinx.*",
"typing_inspect.*",
"google.*",
"IPython.*",
]
ignore_missing_imports = true