summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortoofar <toofar@spalge.com>2024-04-28 13:58:15 +1200
committertoofar <toofar@spalge.com>2024-04-28 13:59:09 +1200
commitce562b771de22d6834796f450a6bcb426c20c666 (patch)
tree02fc5f26e65db3cf007f257cce3942243ef73937
parentbdbbb93cd2120d8d58108da2b5fe72d65bff19f7 (diff)
downloadqutebrowser-ce562b771de22d6834796f450a6bcb426c20c666.tar.gz
qutebrowser-ce562b771de22d6834796f450a6bcb426c20c666.zip
Update requirements and CI for PyQt6.7
6.7 is released now, some distros are already shipping it! This commit: 1. adds a new 6.7 requirements file (the plain 6 one has already been updated by the bot) 2. adds a new tox env referring to the new requirements file 3. updates the mac and windows installer jobs to run with pyqt67 with the assumption we'll be including that in our next release 4. adds two new CI environments for 6.7, one each for python 3.11 and 3.12 (3.12 only came out like 6 months ago) 5. updates a couple of references to the py37 tox env that looked like they were missed, 3.7 support was dropped in 93c7fdd 6. updates various ubuntu containers to the latest LTS instead of the previous related one - this is quite unrelated to this change but I thought I would give it a go, no need to use the old one unless we are specifically testing on it? - linters - they use tox but probably use system libraries - these all run in nested containers anyway, should be fully isolated - codeql - eh, uses a third party action, check the docs if it fails - irc - as above
-rw-r--r--.github/workflows/ci.yml26
-rw-r--r--misc/requirements/requirements-pyqt-6.7.txt7
-rw-r--r--misc/requirements/requirements-pyqt-6.7.txt-raw4
-rw-r--r--tox.ini3
4 files changed, 30 insertions, 10 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 599ba3b1b..f62d2bdc5 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -14,7 +14,7 @@ jobs:
linters:
if: "!contains(github.event.head_commit.message, '[ci skip]')"
timeout-minutes: 10
- runs-on: ubuntu-20.04
+ runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
@@ -86,7 +86,7 @@ jobs:
tests-docker:
if: "!contains(github.event.head_commit.message, '[ci skip]')"
timeout-minutes: 45
- runs-on: ubuntu-20.04
+ runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
@@ -129,7 +129,7 @@ jobs:
matrix:
include:
### PyQt 5.15.2 (Python 3.8)
- - testenv: py37-pyqt5152
+ - testenv: py38-pyqt5152
os: ubuntu-20.04
python: "3.8"
### PyQt 5.15 (Python 3.10, with coverage)
@@ -142,7 +142,7 @@ jobs:
os: ubuntu-20.04
python: "3.11"
### PyQt 6.2 (Python 3.8)
- - testenv: py37-pyqt62
+ - testenv: py38-pyqt62
os: ubuntu-20.04
python: "3.8"
### PyQt 6.3 (Python 3.8)
@@ -165,18 +165,26 @@ jobs:
- testenv: py312-pyqt66
os: ubuntu-22.04
python: "3.12"
+ ### PyQt 6.7 (Python 3.11)
+ - testenv: py311-pyqt67
+ os: ubuntu-22.04
+ python: "3.11"
+ ### PyQt 6.7 (Python 3.12)
+ - testenv: py312-pyqt67
+ os: ubuntu-22.04
+ python: "3.12"
### macOS Big Sur
- - testenv: py312-pyqt66
+ - testenv: py312-pyqt67
os: macos-11
python: "3.12"
args: "tests/unit" # Only run unit tests on macOS
### macOS Monterey
- - testenv: py312-pyqt66
+ - testenv: py312-pyqt67
os: macos-12
python: "3.12"
args: "tests/unit" # Only run unit tests on macOS
### Windows
- - testenv: py312-pyqt66
+ - testenv: py312-pyqt67
os: windows-2019
python: "3.12"
runs-on: "${{ matrix.os }}"
@@ -226,7 +234,7 @@ jobs:
permissions:
security-events: write
timeout-minutes: 15
- runs-on: ubuntu-20.04
+ runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@v4
@@ -243,7 +251,7 @@ jobs:
irc:
timeout-minutes: 2
continue-on-error: true
- runs-on: ubuntu-20.04
+ runs-on: ubuntu-22.04
needs: [linters, tests, tests-docker, codeql]
if: "always() && github.repository_owner == 'qutebrowser'"
steps:
diff --git a/misc/requirements/requirements-pyqt-6.7.txt b/misc/requirements/requirements-pyqt-6.7.txt
new file mode 100644
index 000000000..b33f919ee
--- /dev/null
+++ b/misc/requirements/requirements-pyqt-6.7.txt
@@ -0,0 +1,7 @@
+# This file is automatically generated by scripts/dev/recompile_requirements.py
+
+PyQt6==6.7.0
+PyQt6-Qt6==6.7.0
+PyQt6-sip==13.6.0
+PyQt6-WebEngine==6.7.0
+PyQt6-WebEngine-Qt6==6.7.0
diff --git a/misc/requirements/requirements-pyqt-6.7.txt-raw b/misc/requirements/requirements-pyqt-6.7.txt-raw
new file mode 100644
index 000000000..98b1340b2
--- /dev/null
+++ b/misc/requirements/requirements-pyqt-6.7.txt-raw
@@ -0,0 +1,4 @@
+PyQt6 >= 6.7, < 6.8
+PyQt6-Qt6 >= 6.7, < 6.8
+PyQt6-WebEngine >= 6.7, < 6.8
+PyQt6-WebEngine-Qt6 >= 6.7, < 6.8
diff --git a/tox.ini b/tox.ini
index 31e06e396..8ce7b22b3 100644
--- a/tox.ini
+++ b/tox.ini
@@ -50,8 +50,9 @@ deps =
pyqt64: -r{toxinidir}/misc/requirements/requirements-pyqt-6.4.txt
pyqt65: -r{toxinidir}/misc/requirements/requirements-pyqt-6.5.txt
pyqt66: -r{toxinidir}/misc/requirements/requirements-pyqt-6.6.txt
+ pyqt67: -r{toxinidir}/misc/requirements/requirements-pyqt-6.7.txt
commands =
- !pyqt-!pyqt515-!pyqt5152-!pyqt62-!pyqt63-!pyqt64-!pyqt65-!pyqt66: {envpython} scripts/link_pyqt.py --tox {envdir}
+ !pyqt-!pyqt515-!pyqt5152-!pyqt62-!pyqt63-!pyqt64-!pyqt65-!pyqt66-!pyqt67: {envpython} scripts/link_pyqt.py --tox {envdir}
{envpython} -bb -m pytest {posargs:tests}
cov: {envpython} scripts/dev/check_coverage.py {posargs}