Ratchet down Python warnings in tox
authorJeremy Stanley <fungi@yuggoth.org>
Sun, 23 Aug 2020 21:14:43 +0000 (21:14 +0000)
committerJeremy Stanley <fungi@yuggoth.org>
Sun, 23 Aug 2020 21:17:57 +0000 (21:17 +0000)
Where possible, have tox envs treat any Python warning as an error.
This is not currently possible for any envs which invoke certain PBR
functionality, since it has a couple of outstanding fixes under
review to make it cease calling into deprecated code on newer Python
releases. Eventually this should be set in the global testenv when
possible, and only rolled back in case of dependency regressions or
new errors introduced by future interpreter versions.

tox.ini

diff --git a/tox.ini b/tox.ini
index bab7cce..daef9a3 100644 (file)
--- a/tox.ini
+++ b/tox.ini
@@ -12,11 +12,16 @@ ignore_basepython_conflict = True
 basepython = python3
 usedevelop = True
 install_command = pip install {opts} {packages}
+# TODO(fungi) Switch this to "error" and remove env-specific copies once
+# https://review.opendev.org/735433 and https://review.opendev.org/735443
+# merge and appear in a new PBR release
 setenv =
     PYTHONWARNINGS=default::DeprecationWarning
 commands = mudpy_selftest mudpy/tests/fixtures/test_daemon.yaml
 
 [testenv:bandit]
+setenv =
+    PYTHONWARNINGS=error
 deps = bandit
 commands = bandit -r mudpy -x mudpy/tests {posargs}
 usedevelop = False
@@ -37,6 +42,8 @@ commands =
 usedevelop = False
 
 [testenv:docs]
+setenv =
+    PYTHONWARNINGS=error
 whitelist_externals = rm
 deps =
     -r{toxinidir}/requirements.txt
@@ -47,6 +54,8 @@ commands =
 usedevelop = False
 
 [testenv:flake8]
+setenv =
+    PYTHONWARNINGS=error
 deps =
     flake8
     flake8-bugbear
@@ -57,6 +66,8 @@ usedevelop = False
 commands = mudpy_selftest etc/mudpy.yaml
 
 [testenv:yamllint]
+setenv =
+    PYTHONWARNINGS=error
 deps = yamllint
 commands = yamllint --strict {posargs} .
 usedevelop = False