Files
oslo.middleware/tox.ini
Stephen Finucane e050ac6947 Run mypy from tox
This avoids the need to duplicate our dependency list in multiple
places and allows us to take advantage of tox's dependency management
infrastructure, to ensure we always get the latest and greatest version
of a package allowed by upper-constraints.

Note that the change brings in stevedore type hints, which necessitates
some small fixes.

Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Change-Id: I17d8e2d78d95c0d780dbefe084092738962016f0
2025-12-04 18:16:19 +00:00

67 lines
1.5 KiB
INI

[tox]
minversion = 3.18.0
envlist = py3,pep8
[testenv]
deps =
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/test-requirements.txt
commands = stestr run --slowest {posargs}
[testenv:pep8]
description =
Run style checks.
deps =
pre-commit
{[testenv:mypy]deps}
commands =
pre-commit run -a
{[testenv:mypy]commands}
[testenv:mypy]
description =
Run type checks.
deps =
{[testenv]deps}
mypy
types-greenlet
types-requests
types-WebOb>=1.8.0.20250822
commands =
mypy --cache-dir="{envdir}/mypy_cache" {posargs:oslo_middleware}
[testenv:venv]
commands = {posargs}
[testenv:docs]
allowlist_externals =
rm
deps =
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/doc/requirements.txt
commands =
rm -fr doc/build
sphinx-build -W --keep-going -b html doc/source doc/build/html
[testenv:cover]
commands = python setup.py test --coverage --coverage-package-name=oslo_middleware --testr-args='{posargs}'
[testenv:releasenotes]
allowlist_externals =
rm
deps = {[testenv:docs]deps}
commands =
rm -rf releasenotes/build
sphinx-build -a -E -W -d releasenotes/build/doctrees --keep-going -b html releasenotes/source releasenotes/build/html
[flake8]
show-source = True
exclude = .venv,.git,.tox,dist,doc,*lib/python*,*egg,build,__init__.py
# We only enable the hacking (H) checks
select = H
# H301 Black will put commas after imports that can't fit on one line
ignore = H301
[hacking]
import_exceptions = oslo_middleware._i18n