-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathtox.ini
85 lines (77 loc) · 1.55 KB
/
tox.ini
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
[tox]
min_version = 3.28.0
isolated_build = True
envlist =
py{38,39,310,311,312},
lint,
docs,
typing,
build,
codespell
[tox:.package]
basepython = python3
[gh-actions]
python =
3.8: py38
3.9: py39
3.10: py310
3.11: py311
3.12: py312
[testenv]
allowlist_externals = make
package = wheel
deps =
.[all] # Install all dependencies from pyproject.toml
pytest >= 6.2.5
commands =
pytest {posargs} -v --basetemp="{envtmpdir}" --log-level=DEBUG
[testenv:lint]
skip_install = true
description = Lint code using Ruff
deps =
ruff >= 0.3.0
commands =
ruff check . --ignore RUF003,C901
[testenv:docs]
description = Build documentation using Sphinx
changedir = docs
deps =
sphinx >= 5.3.0
sphinx-autodoc-typehints >= 1.19.5
sphinx-rtd-theme >= 1.1.1
nbsphinx >= 0.8.10
nbsphinx-link >= 1.3.0
doc8 >= 0.10.1
rstcheck >= 3.3.1
pandoc >= 2.0.1
IPython >= 7.0
commands =
make clean html
doc8 .
[testenv:typing]
skip_install = true
description = Run type checks with mypy
deps =
mypy >= 0.991
pandas-stubs
pytest
types-pytz
types-tqdm
types-requests
types-numpy
types-pyyaml
commands =
mypy {posargs:. tests}
[testenv:build]
description = Build the project using Poetry
deps =
poetry >= 1.1.7
commands =
poetry build
[testenv:codespell]
skip_install = true
description = Check for spelling errors
deps =
codespell >= 2.3.0
commands =
codespell --skip="docs,_build,imgs,schemes,poetry.lock" --ignore-words-list="dotA,TE"