Repository navigation
Conversation
requires-python has been ^3.11 since 2.1.0, but the classifiers still advertised 3.8-3.10 and the docs said 3.7+. Align everything on 3.11+: - classifiers: drop 3.8-3.10, add 3.14 and "3 :: Only" - docs: state 3.11+ and document the supported-versions policy (follow CPython EOL) - CI: add 3.14 to the test matrix; lint and publish run on 3.14 - drop a stale comment about Python 3.8/asynctest Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
3 tasks
rpds-py 0.20.1 (transitive via jsonschema/referencing) and markupsafe 3.0.2 ship no cp314 wheels; rpds-py's source build fails on 3.14 because its bundled PyO3 tops out at 3.13. Bump to versions with 3.14 wheels. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2 of 3 tasks
Closed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Since 2.1.0,
pyproject.tomlhas requiredpython = "^3.11", but the rest of the repo disagrees:docs/source/installation.rstsays "Python 3.7 or higher".This mismatch is what #740 reported: on 3.10 (for example Ubuntu 22.04), pip silently skips 2.1.0 even though the metadata and docs say 3.10 is supported.
Decision: keep the 3.11 minimum rather than lowering it
#740 proposed lowering the minimum to 3.9. We're not doing that:
requires-pythonmatches the running interpreter.Policy, now written in the docs: support every CPython version that has not reached end-of-life. Add new versions when they're released, and drop a version in the first minor release after it reaches end-of-life.
Changes
pyproject.toml:Python :: 3 :: Only.docs/source/installation.rst: changed to "Python 3.11 or higher" and added a "Supported Python versions" section with the policy above..github/workflows/pull-request.yml: added 3.14 to the test matrix (the matrix checks the interpreter since ci: run the test matrix on the actual matrix interpreter, split lint from tests #768). The lint job now runs on 3.14..github/workflows/publish-to-pypi.yml: publishes using 3.14.poetry.lock: bumpedrpds-py0.20.1 → 2026.6.3 (a transitive dependency via jsonschema/referencing) andmarkupsafe3.0.2 → 3.0.4. Neither old version has 3.14 wheels, and buildingrpds-pyfrom source fails on 3.14 because its bundled PyO3 only supports up to 3.13. No direct dependencies changed.Verification
make tests(lint + 184 tests) passes locally in fresh Poetry venvs bound to 3.11 and 3.14, with the interpreter and therpds-pyversion confirmed inside each venv.asyncio.*_event_loop_policydeprecation warnings. They come from the test dependency, not from ocpp, and can be handled in a separate dev-dependency bump.Requires-Python: >=3.11,<4.0and classifiers for 3.11–3.14 only.Supersedes #740.
🤖 Generated with Claude Code