build: support Python 3.15 - #65750
Conversation
Signed-off-by: Mike McCready <66998419+MikeMcC399@users.noreply.github.com>
|
Review requested:
|
|
This PR is intended to test Python 3.15.0rc2 initially, which states:
Until Python 3.15 is officially released, the PR should stay
blocked
|
|
GItHub Actions is downloading the expected 3.15 rc2 version: Download from "https://github.com/actions/python-versions/releases/download/3.15.0-rc.2-33583724836/python-3.15.0-rc.2-linux-24.04-x64.tar.gz" |
|
Currently Node.js allows the following, so a manual backport will be needed for 24.x & 22.x to avoid overwriting and dropping the lower versions, which need to be preserved:
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #65750 +/- ##
==========================================
+ Coverage 89.98% 90.00% +0.02%
==========================================
Files 757 757
Lines 257739 257739
Branches 48877 48881 +4
==========================================
+ Hits 231916 231976 +60
+ Misses 16913 16847 -66
- Partials 8910 8916 +6 🚀 New features to boost your workflow:
|
Situation
The Python list of supported versions includes Python 3.15 with planned first release date 2026-10-01.
Node.js defines which versions of Python are supported in the configure script which covers Python 3.10 - 3.14, and currently excludes Python 3.15 for use in building and testing, since it is not yet explicitly listed under
acceptable_versions.Change
Add Python 3.15 to:
acceptable_versionsis spread over multiple lines to ease future backporting. Adding / removing versions can then be done independently without replacing the whole line. This will however need to be backported once manually before it becomes a benefit. For background see #60874 (comment).Replace Python 3.14 with Python 3.15 in GitHub Actions workflows.
See Python 3.15 - what's new
Note
Windows configurations for automated installation should be separately updated after this PR has landed.
This change does not materially affect the Python versions used in Jenkins, which are determined by each OS' setup. Running in Jenkins only checks that the addition of Python 3.15 didn't prevent any of the existing lower versions from running.