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
67 lines
1.5 KiB
INI
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
|