forked from instructlab/eval
-
Notifications
You must be signed in to change notification settings - Fork 0
/
tox.ini
61 lines (55 loc) · 1.58 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
# SPDX-License-Identifier: Apache-2.0
[tox]
# py3-unit runs unit tests with 'python3'
# py311-unit runs the same tests with 'python3.11'
envlist = ruff, lint, mypy, spellcheck
minversion = 4.4
# format, check, and linting targets don't build and install the project to
# speed up testing.
[testenv:lint]
description = lint with pylint
skip_install = true
skipsdist = true
deps = -r requirements-dev.txt
commands =
{envpython} -m pylint --load-plugins pylint_pydantic src/instructlab/eval/
[testenv:fastlint]
description = fast lint with pylint (without 3rd party modules)
skip_install = true
skipsdist = true
deps =
pylint
pylint-pydantic
commands =
{envpython} -m pylint --load-plugins pylint_pydantic {posargs:--disable=import-error src/instructlab/eval/}
[testenv:ruff]
description = reformat and fix code with Ruff (and isort)
skip_install = True
skipsdist = true
# keep in sync with .pre-commit-config.yaml
deps =
ruff==0.3.4
isort==5.11.5
# supports 'fix', 'check', or abitrary args to 'ruff' command
commands =
./scripts/ruff.sh {posargs:fix}
allowlist_externals = ./scripts/ruff.sh
[testenv:spellcheck]
description = spell check (needs 'aspell' command)
skip_install = true
skipsdist = true
deps =
pyspelling
commands =
sh -c 'command -v aspell || (echo "aspell is not installed. Please install it." && exit 1)'
{envpython} -m pyspelling --config {toxinidir}/.spellcheck.yml --spellchecker aspell
allowlist_externals = sh
[testenv:mypy]
description = Python type checking with mypy
deps =
mypy>=1.10.0,<2.0
types-tqdm
types-PyYAML
pytest
commands =
mypy src