tox.ini
[tox]
envlist =
py310-{dj40,dj41,dj42,dj50}-{sqlite,postgres},
py311-{dj41,dj42,dj50}-{sqlite,postgres},
py312-{dj42,dj50}-{sqlite,postgres},
py313-{dj51}-{sqlite,postgres},
[gh-actions]
python =
3.10: py310
3.11: py311
3.12: py312
3.13: py313
[testenv]
passenv = CI,GITHUB_WORKFLOW
setenv =
sqlite: DATABASE_ENGINE=sqlite
# mysql: DATABASE_ENGINE=mysql
postgres: DATABASE_ENGINE=postgres
deps =
dj40: Django == 4.0.*
dj41: Django == 4.1.*
dj42: Django == 4.2.*
dj50: Django == 5.0.*
dj51: Django == 5.1.*
-r requirements.txt
-r requirements-test.txt
commands =
pre-commit run -a
coverage run --append --source=extra_settings runtests.py
coverage report --show-missing --ignore-errors
[testenv:migrations]
setenv =
DJANGO_SETTINGS_MODULE=tests.settings
DATABASE_ENGINE=sqlite
deps =
-r requirements.txt
commands =
python -m django makemigrations --check
[testenv:translations]
setenv =
DJANGO_SETTINGS_MODULE=tests.settings
DATABASE_ENGINE=sqlite
deps =
-r requirements.txt
allowlist_externals = git
commands =
python -m django makemessages --ignore ".tox" --ignore "venv" --all --add-location "file" --extension "html,py"
python -m django compilemessages --ignore ".tox" --ignore "venv"
git diff extra_settings/locale/
git diff-index --quiet HEAD extra_settings/locale/