diff options
author | Florian Bruhin <me@the-compiler.org> | 2023-03-17 20:30:13 +0100 |
---|---|---|
committer | Florian Bruhin <me@the-compiler.org> | 2023-03-17 20:30:13 +0100 |
commit | 4793070db3e5afec32470c440a63c6add0450880 (patch) | |
tree | d69cba543c311f3e131c76b5cbb9e6006f6fc32c /tox.ini | |
parent | 3d56f57e502ffaad40936f19f44083a2b63f0690 (diff) | |
parent | 30125a2e2e302b79a168db36cb5b3f18ff50f5bd (diff) | |
download | qutebrowser-4793070db3e5afec32470c440a63c6add0450880.tar.gz qutebrowser-4793070db3e5afec32470c440a63c6add0450880.zip |
Merge branch 'qt6-v2' into master-qt6
Diffstat (limited to 'tox.ini')
-rw-r--r-- | tox.ini | 55 |
1 files changed, 36 insertions, 19 deletions
@@ -4,15 +4,17 @@ # and then run "tox" from this directory. [tox] -envlist = py38-pyqt515-cov,mypy,misc,vulture,flake8,pylint,pyroma,check-manifest,eslint,yamllint,actionlint +envlist = py38-pyqt515-cov,mypy-pyqt5,misc,vulture,flake8,pylint,pyroma,check-manifest,eslint,yamllint,actionlint distshare = {toxworkdir} skipsdist = true -minversion = 3.15 +minversion = 3.20 [testenv] setenv = PYTEST_QT_API=pyqt5 - pyqt{,512,513,514,515,5150}: LINK_PYQT_SKIP=true + QUTE_QT_WRAPPER=PyQt5 + pyqt{62,63,64}: PYTEST_QT_API=pyqt6 + pyqt{62,63,64}: QUTE_QT_WRAPPER=PyQt6 cov: PYTEST_ADDOPTS=--cov --cov-report xml --cov-report=html --cov-report= passenv = PYTHON @@ -41,13 +43,13 @@ deps = -r{toxinidir}/misc/requirements/requirements-tests.txt -r{toxinidir}/misc/requirements/requirements-docs.txt pyqt: -r{toxinidir}/misc/requirements/requirements-pyqt.txt - pyqt512: -r{toxinidir}/misc/requirements/requirements-pyqt-5.12.txt - pyqt513: -r{toxinidir}/misc/requirements/requirements-pyqt-5.13.txt - pyqt514: -r{toxinidir}/misc/requirements/requirements-pyqt-5.14.txt pyqt515: -r{toxinidir}/misc/requirements/requirements-pyqt-5.15.txt - pyqt5150: -r{toxinidir}/misc/requirements/requirements-pyqt-5.15.0.txt + pyqt5152: -r{toxinidir}/misc/requirements/requirements-pyqt-5.15.2.txt + pyqt62: -r{toxinidir}/misc/requirements/requirements-pyqt-6.2.txt + pyqt63: -r{toxinidir}/misc/requirements/requirements-pyqt-6.3.txt + pyqt64: -r{toxinidir}/misc/requirements/requirements-pyqt-6.4.txt commands = - {envpython} scripts/link_pyqt.py --tox {envdir} + !pyqt-!pyqt515-!pyqt5152-!pyqt62-!pyqt63-!pyqt64: {envpython} scripts/link_pyqt.py --tox {envdir} {envpython} -bb -m pytest {posargs:tests} cov: {envpython} scripts/dev/check_coverage.py {posargs} @@ -168,16 +170,19 @@ commands = {envpython} scripts/dev/check_doc_changes.py {posargs} {envpython} scripts/asciidoc2html.py {posargs} -[testenv:pyinstaller-{64bit,32bit}] +[testenv:pyinstaller-{64bit,32bit}{,-qt6}] basepython = {env:PYTHON:python3} passenv = APPDATA HOME PYINSTALLER_DEBUG +setenv = + qt6: PYINSTALLER_QT6=true deps = -r{toxinidir}/requirements.txt -r{toxinidir}/misc/requirements/requirements-pyinstaller.txt - -r{toxinidir}/misc/requirements/requirements-pyqt.txt + !qt6: -r{toxinidir}/misc/requirements/requirements-pyqt.txt + qt6: -r{toxinidir}/misc/requirements/requirements-pyqt-6.txt commands = {envbindir}/pyinstaller --noconfirm misc/qutebrowser.spec @@ -195,18 +200,22 @@ deps = allowlist_externals = bash commands = bash scripts/dev/run_shellcheck.sh {posargs} -[testenv:mypy] +[testenv:mypy-{pyqt5,pyqt6}] basepython = {env:PYTHON:python3} passenv = TERM MYPY_FORCE_TERMINAL_WIDTH +setenv = + pyqt6: QUTE_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 + pyqt5: QUTE_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 + pyqt6: -r{toxinidir}/misc/requirements/requirements-pyqt-6.txt commands = - {envpython} -m mypy qutebrowser {posargs} + {envpython} -m mypy {env:QUTE_CONSTANTS_ARGS} qutebrowser {posargs} [testenv:yamllint] basepython = {env:PYTHON:python3} @@ -221,12 +230,15 @@ allowlist_externals = actionlint commands = actionlint -[testenv:mypy-diff] +[testenv:mypy-{pyqt5,pyqt6}-diff] basepython = {env:PYTHON:python3} -passenv = {[testenv:mypy]passenv} -deps = {[testenv:mypy]deps} +passenv = {[testenv:mypy-pyqt6]passenv} +deps = {[testenv:mypy-pyqt6]deps} +setenv = + pyqt6: QUTE_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 + pyqt5: QUTE_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:QUTE_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] @@ -240,16 +252,21 @@ deps = commands = {envpython} -m sphinx -jauto -W --color {posargs} {toxinidir}/doc/extapi/ {toxinidir}/doc/extapi/_build/ -[testenv:build-release] +[testenv:build-release{,-qt6}] basepython = {env:PYTHON:python3} passenv = * +# Override default PyQt5 from [testenv] +setenv = + qt6: QUTE_QT_WRAPPER=PyQt6 usedevelop = true deps = -r{toxinidir}/requirements.txt -r{toxinidir}/misc/requirements/requirements-tox.txt -r{toxinidir}/misc/requirements/requirements-docs.txt - -r{toxinidir}/misc/requirements/requirements-pyqt.txt + !qt6: -r{toxinidir}/misc/requirements/requirements-pyqt.txt + qt6: -r{toxinidir}/misc/requirements/requirements-pyqt-6.txt -r{toxinidir}/misc/requirements/requirements-dev.txt -r{toxinidir}/misc/requirements/requirements-pyinstaller.txt commands = - {envpython} {toxinidir}/scripts/dev/build_release.py {posargs} + !qt6: {envpython} {toxinidir}/scripts/dev/build_release.py {posargs} + qt6: {envpython} {toxinidir}/scripts/dev/build_release.py --qt6 {posargs} |