-
Notifications
You must be signed in to change notification settings - Fork 14
/
pyproject.toml
95 lines (82 loc) · 2.33 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
[project]
name = "physt"
version = "0.8.4"
description = "P(i/y)thon h(i/y)stograms."
readme = "README.md"
requires-python = "~=3.9"
license = { file = "LICENSE" }
authors = [{ name = "Jan Pipek", email = "[email protected]" }]
classifiers = [
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Intended Audience :: Developers",
"Intended Audience :: Information Technology",
"Intended Audience :: Science/Research",
"Topic :: Scientific/Engineering",
"Topic :: Software Development :: Libraries :: Python Modules",
]
dependencies = [
"numpy>=1.25",
"packaging",
"typing_extensions",
"hypothesis>=6.96.1",
]
[tool.uv]
dev-dependencies = ["physt[all]"]
[project.optional-dependencies]
dev = ["pytest", "mypy>=1.8", "types-setuptools", "bumpver", "pytest-xdist"]
# doc = ["sphinx", "sphinx_rtd_theme", "sphixncontrib-apidoc", "nbsphinx"]
astropy = ["astropy>=6.0"]
dask = ["dask[array]>=2023.0"]
pandas = ["pandas>=1.3"]
polars = ["polars>=1.0", "physt[pandas]"]
xarray = ["xarray"]
matplotlib = ["matplotlib>=3.0"]
plotly = ["plotly"]
# TODO: Re-enable vega?
# vega3 = ["vega3"]
folium = ["folium"]
# root = ["uproot3"] # TODO: Update to uproot4
terminal = ["xtermcolor", "rich"]
all = [
"physt[astropy,dev,dask,pandas,polars,xarray,matplotlib,plotly,folium,terminal]"
]
[build-system]
requires = ["setuptools>=65.0", "build"]
build-backend = "setuptools.build_meta"
[tool.black]
line-length = 100
target-version = ['py39', 'py310']
include = '\.pyi?$'
[tool.mypy]
# TODO: revisit
ignore_missing_imports = true
plugins = ["numpy.typing.mypy_plugin"]
exclude = ["doc"]
[tool.isort]
profile = "black"
[tool.distutils.bdist_wheel]
universal = true
[tool.setuptools.packages.find]
where = ["src"]
[tool.ruff]
# Be a bit tolerant
# line-length = 100
extend-exclude = ["doc"]
target-version = "py39"
[tool.ruff.per-file-ignores]
"tests/*.py" = ["E402"]
[tool.bumpver]
current_version = "v0.8.4"
version_pattern = "vMAJOR.MINOR.PATCH[PYTAGNUM]"
commit_message = "Bump version: {old_version} → {new_version}"
commit = true
tag = true
push = true
[tool.bumpver.file_patterns]
"pyproject.toml" = [
'current_version = "{version}"',
'version = "{pep440_version}"',
]
"src/physt/version.py" = ['__version__ = "{pep440_version}"']
"conda/meta.yaml" = ['{% set version = "{pep440_version}" %}']