From 8f2a3b90fb46a6027ea4da0bb5b58e9b4e542570 Mon Sep 17 00:00:00 2001 From: mrbean-bremen Date: Wed, 28 Oct 2026 20:45:06 +0100 Subject: [PATCH] Declare support for Python 3.15 - add CI tests for Python 3.15 and pytest 9.2 --- .github/workflows/pythontests.yml | 2 +- CHANGELOG.md | 23 +++++++++++++---------- docs/source/intro.rst | 2 +- pyproject.toml | 1 + tox.ini | 9 +++++---- 5 files changed, 21 insertions(+), 16 deletions(-) diff --git a/.github/workflows/pythontests.yml b/.github/workflows/pythontests.yml index c3d3a6c..b5dc434 100644 --- a/.github/workflows/pythontests.yml +++ b/.github/workflows/pythontests.yml @@ -14,7 +14,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, windows-latest] - python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] + python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15"] include: - python-version: "pypy-3.10" os: ubuntu-latest diff --git a/CHANGELOG.md b/CHANGELOG.md index 623497f..457c6b0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,9 +2,12 @@ ## Unreleased +### Changes +- added official support for Python 3.15 + ### Fixes -* Class-scoped ordering handles parameter IDs containing `::`, such as IPv6 addresses. -* `--order-marker-prefix` uses the complete marker suffix as the order index, +- Class-scoped ordering handles parameter IDs containing `::`, such as IPv6 addresses. +- `--order-marker-prefix` uses the complete marker suffix as the order index, so multi-digit and negative indices work; negative indices can be written as `neg` (for example `m_neg1` for -1) @@ -12,7 +15,7 @@ Adds option to abort tests after a failed ordering. ### New features -* added option `--fail-all-on-failed-ordering` to abort the whole test run +- added option `--fail-all-on-failed-ordering` to abort the whole test run without executing any tests if some tests could not be ordered ### Fixes @@ -22,20 +25,20 @@ Adds option to abort tests after a failed ordering. Allows the plugin to run after `--failed-first` and similar options. ### Changes -* removed official support for Python 3.7-3.9 (EOL), added Python 3.13 and 3.14 +- removed official support for Python 3.7-3.9 (EOL), added Python 3.13 and 3.14 ### New features -* added option `--order-after-ff`, that allows to run `pytest-order` after built-in hooks +- added option `--order-after-ff`, that allows to run `pytest-order` after built-in hooks like the `--failed-first` option (see [#234](https://github.com/pytest-dev/pytest-order/issues/234)) ### Infrastructure -* use trusted publisher for release (see https://docs.pypi.org/trusted-publishers/) -* use `pyproject.toml` for project setup +- use trusted publisher for release (see https://docs.pypi.org/trusted-publishers/) +- use `pyproject.toml` for project setup ### Documentation -* use a theme for documentation supporting dark mode -* added use case for ordering test modules (see [#51](https://github.com/pytest-dev/pytest-order/issues/51)) -* fixed documentation for `--indulgent-ordering` option +- use a theme for documentation supporting dark mode +- added use case for ordering test modules (see [#51](https://github.com/pytest-dev/pytest-order/issues/51)) +- fixed documentation for `--indulgent-ordering` option ## [Version 1.3.0](https://pypi.org/project/pytest-order/1.3.0/) (2024-08-22) Allows to fail tests that cannot be ordered. diff --git a/docs/source/intro.rst b/docs/source/intro.rst index c7ed704..58cc32d 100644 --- a/docs/source/intro.rst +++ b/docs/source/intro.rst @@ -38,7 +38,7 @@ ordering, all configuration options) that are not available in Supported Python and pytest versions ------------------------------------ -``pytest-order`` supports python 3.10 - 3.14 and pypy3, and is +``pytest-order`` supports python 3.10 - 3.15 and pypy3, and is compatible with pytest 6.2.4 or newer (pytest >= 7.4 for Python 3.14). All supported combinations of Python and pytest versions are tested in diff --git a/pyproject.toml b/pyproject.toml index 9ee3ee3..13bd15c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -34,6 +34,7 @@ classifiers = [ "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", + "Programming Language :: Python :: 3.15", "Operating System :: POSIX :: Linux", "Operating System :: MacOS", "Operating System :: Microsoft :: Windows", diff --git a/tox.ini b/tox.ini index f17c8cc..658f2af 100644 --- a/tox.ini +++ b/tox.ini @@ -1,7 +1,7 @@ [tox] envlist = - {py310,py311,py312,py313,pypy310,pypy311}-pytest{624,70,74,80,83,90} - py314-pytest{74,80,83,90} + {py310,py311,py312,py313,pypy310,pypy311}-pytest{624,70,74,80,83,90,92} + {py314,py315}-pytest{74,80,83,90,92} [testenv] deps = pytest624: pytest>=6.2.4,<6.3 @@ -9,10 +9,11 @@ deps = pytest74: pytest>=7.3,<8.0 pytest80: pytest==8.0.1 pytest83: pytest>=8.3,<9.0 - pytest90: pytest>=9.0,<10.0 + pytest90: pytest>=9.0,<9.1 + pytest92: pytest>=9.2,<10.0 pytest-cov<2.10 pytest{50,54}: pytest-xdist<2.0.0 - pytest{60,62,624,70,74,80,83,90}: pytest-xdist + pytest{60,62,624,70,74,80,83,90,92}: pytest-xdist pytest-dependency>=0.5.1 pytest-mock