diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index fc16527d..97be8f04 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -33,11 +33,9 @@ jobs: strategy: fail-fast: false matrix: - python: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14", "pypy3.10"] + python: ["3.10", "3.11", "3.12", "3.13", "3.14", "pypy3.10"] os: [ubuntu-latest, windows-latest] include: - - python: "3.9" - tox_env: "py39-pytest8" - python: "3.10" tox_env: "py310-pytest8" - python: "3.11" @@ -61,7 +59,7 @@ jobs: path: dist - name: Set up Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: ${{ matrix.python }} allow-prereleases: true @@ -85,14 +83,10 @@ jobs: strategy: fail-fast: false matrix: - pytest: ["5", "6", "7"] + pytest: ["7"] include: - - pytest: "5" - tox_env: "py39-pytest5" - - pytest: "6" - tox_env: "py39-pytest6" - pytest: "7" - tox_env: "py39-pytest7" + tox_env: "py310-pytest7" steps: - uses: actions/checkout@v4 @@ -104,9 +98,9 @@ jobs: path: dist - name: Set up Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: - python-version: "3.9" + python-version: "3.10" - name: Install tox run: | diff --git a/CHANGES.rst b/CHANGES.rst index 1a3e9ddb..69d54117 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -1,6 +1,11 @@ Release Notes ------------- +**Unreleased (2026-ХХХ-ХХ)** + +* Removals + * Remove support for Python 3.9, as they are EOL + **0.9.4 (2025-Apr-5)** * Additions diff --git a/README.rst b/README.rst index f89bb8a3..521a563e 100644 --- a/README.rst +++ b/README.rst @@ -30,8 +30,8 @@ Requirements You will need the following prerequisites in order to use pytest-repeat: -- Python 3.9+ or PyPy3 -- pytest 5 or newer +- Python 3.10+ or PyPy3 +- pytest 7 or newer Installation ------------ diff --git a/pyproject.toml b/pyproject.toml index 9c8fe599..6bc56c3f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ description = "pytest plugin for repeating tests" readme = "README.rst" license = {file = "LICENSE"} authors = [{name = "Bob Silverberg"}] -requires-python = ">=3.9" +requires-python = ">=3.10" classifiers = [ "Development Status :: 5 - Production/Stable", "Framework :: Pytest", @@ -15,11 +15,11 @@ classifiers = [ "Operating System :: POSIX", "Programming Language :: Python", "Programming Language :: Python :: 3 :: Only", - "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", + "Programming Language :: Python :: 3.14", "Topic :: Software Development :: Quality Assurance", "Topic :: Software Development :: Testing", "Topic :: Utilities", diff --git a/pytest_repeat.py b/pytest_repeat.py index 455872a0..9d4108d0 100644 --- a/pytest_repeat.py +++ b/pytest_repeat.py @@ -37,7 +37,7 @@ class UnexpectedError(Exception): @pytest.fixture() def __pytest_repeat_step_number(request): marker = request.node.get_closest_marker("repeat") - count = marker and marker.args[0] or request.config.option.count + count = (marker and marker.args[0]) or request.config.option.count if count > 1: try: return request.param diff --git a/tox.ini b/tox.ini index ad59222c..38a35422 100644 --- a/tox.ini +++ b/tox.ini @@ -3,7 +3,7 @@ minversion = 4.0 isolated_build = true envlist = py{310,311,312,313,314,py3}-pytest8 - py39-pytest{5,6,7,8} + py310-pytest{7} flake8 @@ -12,8 +12,6 @@ commands = pytest {posargs} package = wheel wheel_build_env = .pkg deps = - pytest5: pytest~=5.4 - pytest6: pytest~=6.2 pytest7: pytest>=7 pytest8: pytest>=8