tox: split mypy env into mypy-{qt5,qt6}
Would be nice to have a bare `mypy` env which ran both the more specific ones in sequence but I don't know how to do that. Not sure if there is a way to pull the CONSTANTS_ARGS stuff out to a non-env parameter and pass it into commands but I couldn't figure out a way. So via the environment it is. TODO: compare PyQt6 as-is with the WIP PyQt6-Stub
This commit is contained in:
parent
8decafefbe
commit
c1738ca550
|
|
@ -22,7 +22,8 @@ jobs:
|
|||
- testenv: pylint
|
||||
- testenv: flake8
|
||||
# FIXME:qt6 (lint)
|
||||
# - testenv: mypy
|
||||
# - testenv: mypy-pyqt5
|
||||
# - testenv: mypy-pyqt6
|
||||
- testenv: docs
|
||||
- testenv: vulture
|
||||
- testenv: misc
|
||||
|
|
|
|||
|
|
@ -12,6 +12,8 @@ mypy-extensions==0.4.3
|
|||
pluggy==1.0.0
|
||||
Pygments==2.13.0
|
||||
PyQt5-stubs==5.15.6.0
|
||||
PyQt6==6.3.1
|
||||
PyQt6-WebEngine==6.3.1
|
||||
tomli==2.0.1
|
||||
types-PyYAML==6.0.11
|
||||
typing_extensions==4.3.0
|
||||
|
|
|
|||
18
tox.ini
18
tox.ini
|
|
@ -180,16 +180,19 @@ deps =
|
|||
whitelist_externals = bash
|
||||
commands = bash scripts/dev/run_shellcheck.sh {posargs}
|
||||
|
||||
[testenv:mypy]
|
||||
[testenv:mypy-{qt5,qt6}]
|
||||
basepython = {env:PYTHON:python3}
|
||||
passenv = TERM MYPY_FORCE_TERMINAL_WIDTH
|
||||
setenv =
|
||||
qt6: CONSTANTS_ARGS=--always-true=USE_PYQT6 --always-false=USE_PYQT5 --always-false=USE_PYSIDE2 --always-false=USE_PYSIDE6 --always-false=IS_QT5 --always-true=IS_QT6
|
||||
qt5: CONSTANTS_ARGS=--always-false=USE_PYQT6 --always-true=USE_PYQT5 --always-false=USE_PYSIDE2 --always-false=USE_PYSIDE6 --always-true=IS_QT5 --always-false=IS_QT6
|
||||
deps =
|
||||
-r{toxinidir}/requirements.txt
|
||||
-r{toxinidir}/misc/requirements/requirements-dev.txt
|
||||
-r{toxinidir}/misc/requirements/requirements-tests.txt
|
||||
-r{toxinidir}/misc/requirements/requirements-mypy.txt
|
||||
commands =
|
||||
{envpython} -m mypy qutebrowser {posargs}
|
||||
{envpython} -m mypy {env:CONSTANTS_ARGS} qutebrowser {posargs}
|
||||
|
||||
[testenv:yamllint]
|
||||
basepython = {env:PYTHON:python3}
|
||||
|
|
@ -204,12 +207,15 @@ whitelist_externals = actionlint
|
|||
commands =
|
||||
actionlint
|
||||
|
||||
[testenv:mypy-diff]
|
||||
[testenv:mypy-{qt5,qt6}-diff]
|
||||
basepython = {env:PYTHON:python3}
|
||||
passenv = {[testenv:mypy]passenv}
|
||||
deps = {[testenv:mypy]deps}
|
||||
passenv = {[testenv:mypy-qt6]passenv}
|
||||
deps = {[testenv:mypy-qt6]deps}
|
||||
setenv =
|
||||
qt6: CONSTANTS_ARGS=--always-true=USE_PYQT6 --always-false=USE_PYQT5 --always-false=USE_PYSIDE2 --always-false=USE_PYSIDE6 --always-false=IS_QT5 --always-true=IS_QT6
|
||||
qt5: CONSTANTS_ARGS=--always-false=USE_PYQT6 --always-true=USE_PYQT5 --always-false=USE_PYSIDE2 --always-false=USE_PYSIDE6 --always-true=IS_QT5 --always-false=IS_QT6
|
||||
commands =
|
||||
{envpython} -m mypy --cobertura-xml-report {envtmpdir} qutebrowser tests {posargs}
|
||||
{envpython} -m mypy --cobertura-xml-report {envtmpdir} {env:CONSTANTS_ARGS} qutebrowser tests {posargs}
|
||||
{envdir}/bin/diff-cover --fail-under=100 --compare-branch={env:DIFF_BRANCH:origin/{env:GITHUB_BASE_REF:master}} {envtmpdir}/cobertura.xml
|
||||
|
||||
[testenv:sphinx]
|
||||
|
|
|
|||
Loading…
Reference in New Issue