-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathtox.ini
More file actions
120 lines (106 loc) · 2.01 KB
/
Copy pathtox.ini
File metadata and controls
120 lines (106 loc) · 2.01 KB
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
[tox]
envlist = py3,help,cov
isolated_build = true
minversion = 4.0
[env_run_base]
default_base_python = ["3.12"]
[tox:.package]
basepython = python3.12
[testenv]
runner = uv-venv-lock-runner
basepython = 3.12
setenv =
package = aliquotmaf
PYTHONHASHSEED = 0
passenv =
PIP_*
UV_*
skip_install = false
uv_sync_flags = --no-binary
uv_python_preference = only-managed
extras = test
commands = pytest -vv {posargs}
[testenv:dev]
extras =
dev
test
[testenv:detect-secrets]
deps =
detect-secrets==1.5.0
skip_install = true
commands =
detect-secrets scan > .secrets.baseline
[testenv:compile]
deps = uv
skip_install = true
commands =
uv pip compile -o requirements.txt pyproject.toml
[testenv:help]
skip_install = false
runner = uv-venv-lock-runner
uv_sync_flags = --no-binary
uv_python_preference = only-managed
basepython = 3.12
commands =
python -m {env:package} --help
[testenv:cov]
extras = test
runner = uv-venv-lock-runner
uv_sync_flags = --no-binary
uv_python_preference = only-managed
basepython = 3.12
commands =
uv run coverage run -m pytest tests/
uv run coverage combine
uv run coverage report -m
uv run coverage xml
uv run coverage xml -o test-reports/results.xml
ignore_outcome = true
[testenv:ruff]
skip_install = false
deps = ruff
commands =
ruff check {env:package}/ tests/
[testenv:type]
skip_install = false
deps =
mypy
extras = type
commands =
mypy {env:package}/
ignore_outcome = true
[testenv:build]
skip_install = false
isolated_build = false
extras = build
commands =
python -m setuptools_scm
uv run flit build
[testenv:publish]
isolated_build = false
allowlist_externals = just
skip_install = false
passenv =
TWINE_USERNAME
TWINE_PASSWORD
TWINE_REPOSITORY_URL
extras = build
commands =
uv run setuptools_scm
uv run flit build
twine check dist/*
twine upload dist/*
[testenv:version]
skip_install = True
allowlist_externals =
git
deps =
commands =
git describe --tags --always
[testenv:cruft]
skip_install = True
deps = cruft
allowlist_externals =
git
commands =
cruft check