From b8e73655e4d91c8515ab0f7de63355dec0186101 Mon Sep 17 00:00:00 2001 From: Rogdham Date: Fri, 9 Oct 2026 21:31:43 +0200 Subject: [PATCH] chore: drop support for Python 3.10 --- .github/workflows/build.yml | 2 -- CHANGELOG.md | 20 ++++++++++++-------- pyproject.toml | 5 ++--- tox.ini | 2 +- 4 files changed, 15 insertions(+), 14 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 262feb1..f0c72c8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -20,12 +20,10 @@ jobs: strategy: matrix: python: - - "3.10" - "3.11" - "3.12" - "3.13" - "3.14" - - "pypy-3.10" - "pypy-3.11" - "pypy-3.12" steps: diff --git a/CHANGELOG.md b/CHANGELOG.md index 60c081a..509197e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,12 +5,22 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/), and this project adheres to [Semantic Versioning](https://semver.org/). +For the purpose of determining breaking changes: + +- Only direct imports from top-level module `xz` are considered public API +- A change that only impacts type hints validation is not considered a breaking change +- Removing support for a version of Python that is not [officially + supported][python-versions] anymore is not considered a breaking change + +[python-versions]: https://devguide.python.org/versions/#supported-versions + ## [Unreleased] [unreleased]: https://github.com/rogdham/python-xz/compare/v0.6.0...HEAD ### :house: Internal +- End of Python 3.10 support - Add tests for PyPy 3.12 - Update dev dependencies - Necessary code changes following dev dependency update: mypy, ruff @@ -19,12 +29,9 @@ adheres to [Semantic Versioning](https://semver.org/). [0.6.0]: https://github.com/rogdham/python-xz/releases/tag/v0.6.0 -### :boom: Breaking changes - -- End of Python 3.7, 3.8, and 3.9 support - ### :house: Internal +- End of Python 3.7, 3.8, and 3.9 support - Fix test xz files generation for xz-utils 5.5.1+ - Update license metadata as per [PEP 639](https://peps.python.org/pep-0639) - Freeze dev dependencies versions @@ -40,12 +47,9 @@ adheres to [Semantic Versioning](https://semver.org/). [0.5.0]: https://github.com/rogdham/python-xz/releases/tag/v0.5.0 -### :boom: Breaking changes - -- End of Python 3.6 support - ### :house: Internal +- End of Python 3.6 support - Necessary code changes following dev dependency update: black, pylint, pytest - Refactor a descriptor following PEP 487 - Add tests for CPython 3.11 and PyPy 3.9 diff --git a/pyproject.toml b/pyproject.toml index deeceb4..d6f4f3c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -13,7 +13,6 @@ classifiers = [ "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", @@ -22,7 +21,7 @@ classifiers = [ "Topic :: System :: Archiving", "Topic :: System :: Archiving :: Compression", ] -requires-python = ">=3.10" +requires-python = ">=3.11" [project.urls] Homepage = "https://github.com/rogdham/python-xz" @@ -138,7 +137,7 @@ testpaths = ["tests"] [tool.ruff] src = ["src"] -target-version = "py310" +target-version = "py311" [tool.ruff.lint] select = ["ALL"] diff --git a/tox.ini b/tox.ini index c97abd2..e0b5b2e 100644 --- a/tox.ini +++ b/tox.ini @@ -2,7 +2,7 @@ [tox] envlist = - py, py310, py311, py312, py313, py314, pypy3 + py, py311, py312, py313, py314, pypy3 build, generate-integration-files, lint, type [testenv]