From 0bf9f136e46c175e73aba4bba00f2a5530ab09ef Mon Sep 17 00:00:00 2001 From: Bruno Oliveira Date: Tue, 8 Oct 2024 07:01:20 -0300 Subject: [PATCH 1/4] Drop Python 3.8 support, add 3.13 --- .github/workflows/test.yml | 11 ++++++++--- CHANGELOG.rst | 6 ++++++ README.rst | 2 -- setup.py | 4 ++-- tox.ini | 2 +- 5 files changed, 17 insertions(+), 8 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 8eb17bd8..6af88f79 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,6 +1,11 @@ name: test -on: [push, pull_request] +on: + push: + branches: + - main + + pull_request: # Cancel running jobs for the same workflow and branch. concurrency: @@ -24,7 +29,7 @@ jobs: fail-fast: false matrix: - python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] + python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] qt-lib: [pyqt5, pyqt6, pyside2, pyside6] os: [ubuntu-latest, windows-latest, macos-latest] exclude: @@ -40,7 +45,7 @@ jobs: - uses: actions/checkout@v3 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v3 + uses: actions/setup-python@v5.2.0 with: python-version: ${{ matrix.python-version }} diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 12684954..7fbe4b2d 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,3 +1,9 @@ +UNRELEASED +---------- + +* Added official support for Python 3.13. +* Dropped support for EOL Python 3.8. + 4.4.0 (2024-02-07) ------------------ diff --git a/README.rst b/README.rst index 76ab13b6..ca9c6f97 100644 --- a/README.rst +++ b/README.rst @@ -74,8 +74,6 @@ Features Requirements ============ -Since version 4.1.0, ``pytest-qt`` requires Python 3.7+. - Works with either PySide6_, PySide2_, PyQt6_ or PyQt5_. If any of the above libraries is already imported by the time the tests execute, that library will be used. diff --git a/setup.py b/setup.py index 1f99bd62..cc64bf2c 100644 --- a/setup.py +++ b/setup.py @@ -24,7 +24,7 @@ url="http://github.com/pytest-dev/pytest-qt", use_scm_version={"write_to": "src/pytestqt/_version.py"}, setup_requires=["setuptools_scm"], - python_requires=">=3.8", + python_requires=">=3.9", classifiers=[ "Development Status :: 5 - Production/Stable", "Framework :: Pytest", @@ -32,11 +32,11 @@ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Topic :: Desktop Environment :: Window Managers", "Topic :: Software Development :: Quality Assurance", "Topic :: Software Development :: Testing", diff --git a/tox.ini b/tox.ini index e3f965fc..e1203e3a 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py{38,39,310,311,312}-{pyqt5,pyside2,pyside6,pyqt6} +envlist = py{39,310,311,312,313}-{pyqt5,pyside2,pyside6,pyqt6} [testenv] deps= From f22533427c3d8d86d652b867e31730cdff769dd8 Mon Sep 17 00:00:00 2001 From: Bruno Oliveira Date: Tue, 8 Oct 2024 07:12:06 -0300 Subject: [PATCH 2/4] Add dependabot.yml for automatic update of GitHub Actions --- .github/dependabot.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 00000000..be006de9 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,13 @@ +# Keep GitHub Actions up to date with GitHub's Dependabot... +# https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot +# https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#package-ecosystem +version: 2 +updates: + - package-ecosystem: github-actions + directory: / + groups: + github-actions: + patterns: + - "*" # Group all Actions updates into a single larger pull request + schedule: + interval: weekly From cbe077c9a91cb44b42b22296026ba77fb3f978e8 Mon Sep 17 00:00:00 2001 From: Bruno Oliveira Date: Wed, 11 Dec 2024 08:17:33 -0300 Subject: [PATCH 3/4] Fix test_catch_exceptions_in_virtual_methods for pyside6 The latest release seems to have changed the message: ``` ValueError: Error calling Python override of QObject::event(): mistakes were made' ``` --- tests/test_exceptions.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_exceptions.py b/tests/test_exceptions.py index 70af2196..8627f9b9 100644 --- a/tests/test_exceptions.py +++ b/tests/test_exceptions.py @@ -59,7 +59,7 @@ def test_exceptions(qtbot): expected_lines = [ "*RuntimeError: original error", "*app.sendEvent*", - "*ValueError: mistakes were made*", + "*ValueError:*mistakes were made*", "*1 failed*", ] else: From 28223c0656387a789c21a0a40f4a1319607e83d8 Mon Sep 17 00:00:00 2001 From: Bruno Oliveira Date: Wed, 11 Dec 2024 08:56:18 -0300 Subject: [PATCH 4/4] Skip some pyside2 builds Not available yet on Python 3.13 on all platforms. Not available on MacOS. --- .github/workflows/test.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 6af88f79..f02ff8c7 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -40,6 +40,10 @@ jobs: os: windows-latest - python-version: "3.12" qt-lib: pyside2 + - python-version: "3.13" + qt-lib: pyside2 + - qt-lib: pyside2 + os: macos-latest steps: - uses: actions/checkout@v3