-
Notifications
You must be signed in to change notification settings - Fork 3
/
tox.ini
90 lines (83 loc) · 1.78 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
86
87
88
89
90
[tox]
skipsdist = true
args_are_paths = false
envlist =
black
flake8
isort
mypy
pypi
py{38,39}-4.2-{sqlite,postgresql,mysql}
py310-{4.2,5.0,5.1,main}-{sqlite,postgresql,mysql}
py{311,312}-{4.2,5.0,5.1,main}-{sqlite,postgresql,mysql}
[gh-actions]
python =
3.8: py38, black, flake8, isort, mypy
3.9: py39
3.10: py310
3.11: py311
3.12: py312
[testenv]
basepython =
py38: python3.8
py39: python3.9
py310: python3.10
py311: python3.11
py312: python3.12
usedevelop = true
setenv =
DJANGO_SETTINGS_MODULE=tests.settings
postgresql: DJANGO_SETTINGS_MODULE=tests.settings.postgresql
mysql: DJANGO_SETTINGS_MODULE=tests.settings.mysql
passenv =
GITHUB_*
DB_*
commands =
{envpython} -R -Wonce {envbindir}/coverage run -a -m django test -v2 {posargs}
coverage report
deps =
coverage
4.2: Django>=4.2,<5
5.0: Django>=5,<5.1
5.1: Django>=5.1,<5.2
main: https://github.com/django/django/archive/main.tar.gz
postgresql: psycopg2-binary
mysql: mysqlclient
ignore_outcome =
main: true
[testenv:black]
usedevelop = false
basepython = python3.8
commands = black --check syzygy tests
deps = black
[testenv:flake8]
usedevelop = false
basepython = python3.8
commands = flake8
deps = flake8
[testenv:isort]
usedevelop = false
basepython = python3.8
commands = isort --check-only --diff syzygy tests
deps =
isort
Django>=3.2,<4
[testenv:mypy]
usedevelop = false
basepython = python3.8
commands = mypy -p syzygy --warn-redundant-casts --warn-unused-ignores
deps =
mypy
django-stubs
Django>=3.2,<4
[testenv:pypi]
usedevelop = false
basepython = python3.8
commands =
python setup.py sdist --format=gztar bdist_wheel
twine check dist/*
deps =
pip
setuptools
twine
wheel