Files
e3-core/tox.ini
cookiecutter-e3 12115370c1 Remove python 3.9
Python 3.9 was still minimally supported and maintained. However, with the Python team discontinuing support for it, we are also withdrawing our support completely.

This commit removes the reference to Python 3.9 in tox.ini

it/org/software-supply-chain/production-pipeline/issues#187

See merge request it/cookiecutter-e3!96 of the template
2025-12-15 16:11:49 +00:00

67 lines
1.9 KiB
INI

[tox]
envlist =
py313-cov-xdist,
check
isolated_build=True
[testenv]
passenv = CI,GITHUB_*,CODECOV_*
deps =
xdist: pytest-xdist[psutil]
cov: pytest-cov
codecov: codecov
extras = test
# Speed up coverage on Python >= 3.12
setenv =
# Set COVERAGE_CORE only for Python >= 3.12
COVERAGE_CORE=sysmon
py311: COVERAGE_CORE=
py310: COVERAGE_CORE=
# Run testsuite with coverage when '-cov' and with multi-threading when '-xdist'
# is in the env name
commands=
pytest -vvv --ignore=build --html=pytest-report.html \
--junit-xml=pytest-report.xml --self-contained-html \
--durations=10 \
xdist: -n auto \
cov: --e3-cov-rewrite {envsitepackagesdir} src \
cov: --cov {envsitepackagesdir}/e3/ \
[]
codecov: codecov
[testenv:check]
extras =
config
check
commands =
# Run bandit checks. Accept yaml.load(), pickle, and exec since this
# is needed by e3. There is also e3.env.tmp_dir that returns the TMPDIR
# environment variable. Don't check for that.
# Ignore B324 that is no longer similar to B303 since Python3.9.
bandit -r {toxinidir}/src -ll -ii -s B102,B108,B301,B506,B303,B324,B202
mypy {toxinidir}/src
[testenv:docs]
changedir = docs
deps =
astroid>=3,<4
sphinx==7.2.6
sphinx-autoapi
sphinx_rtd_theme==1.3.0
commands =
sphinx-build -q -b html -d build/doctrees source build/html
[flake8]
exclude = .git,__pycache__,build,dist,.tox
ignore = B301,C901,E203,E266,E501,W503,D100,D101,D102,D102,D103,D104,D105,D106,D107,D203,D403,D213,E704,A003,A005,B028,B906,B907
# line length is intentionally set to 80 here because black uses Bugbear
# See https://github.com/psf/black/blob/master/README.md#line-length for more details
max-line-length = 80
select = B,C,D,E,F,W,T4,B9,A,ANN,BLK,ISC,RST
# To avoid RST303 error for sphinx specific RST directive.
rst-directives = seealso
rst-roles = py:meth