FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

python: move CI to 3.12, and require 3.11 or later by cdecker · Pull Request #9588 · ElementsProject/lightning · GitHub

Repository navigation

python: move CI to 3.12, and require 3.11 or later - #9588

Open
cdecker wants to merge 1 commit into
ElementsProject:masterfrom
cdecker:python/3.12
Open

cdecker wants to merge 1 commit into
ElementsProject:masterfrom
cdecker:python/3.12

Conversation

cdecker commented Sep 29, 2026

Copy link
Copy Markdown
Member

Python 3.10 reaches end-of-life in October 2026. This moves off it in two separate steps, because they are two different promises:

What CI runs: 3.12. Every GitHub workflow that set up 3.10 now uses 3.12: ci.yaml, coverage-nightly, macos, pypi-build and python-docs-nightly. So does readme-rpc-sync, which was still on 3.9. That matches contrib/docker/Dockerfile.builder.fedora, which is already on 3.12.

What the pyln packages support: 3.11 or later. requires-python moves from >=3.10 to >=3.11 in the workspace and in every contrib/ package that declared >=3.10, including the ones published to PyPI. It moves only as far as it must: that drops the EOL version while keeping Debian 12, whose system Python is 3.11, able to install pyln-client.

uv lock then drops the two backports only 3.10 needed, exceptiongroup and tomli. No other package version changes.

Python 3.10 reaches end-of-life in October 2026. Every GitHub workflow
set up 3.10 (and readme-rpc-sync 3.9); they now all use 3.12, matching
contrib/docker/Dockerfile.builder.fedora, which already does.

The supported range is a separate promise, made to anyone installing the
pyln packages from PyPI, so it moves only as far as it has to:
`requires-python` goes from >=3.10 to >=3.11 in the workspace and in every
contrib package that declared >=3.10. That drops the EOL version while
keeping Debian 12, whose system Python is 3.11. `uv lock` then drops the
two backports only 3.10 needed, exceptiongroup and tomli; no other
package moves.

Changelog-Changed: Python: the pyln packages now require Python 3.11 or later; Python 3.10 has reached end-of-life.
Signed-off-by: cdecker <cdecker@blockstream.com>

Copy link
Copy Markdown
Collaborator

Missed updates in:

  • contrib/pytest-trackflaky/pyproject.toml
  • tests/data/recklessrepo/lightningd/testplugpyproj/pyproject.toml
  • tests/data/recklessrepo/lightningd/testpluguv/pyproject.toml

Also, the contrib/pyln-grpc-proto/uv.lock can be deleted i think.

This branch has not been deployed

No deployments
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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants


Back | FazBrowse Home | New Git URL