Add CPython 3.15.0a6 (#17987)

Update available python versions to include CPython 3.15.0a6
Update scripts used to sync pbs releases to account for recent changes
in the repo and to support running on macOS.
This commit is contained in:
Jonathan J. Helmus
2026-02-12 11:23:41 -06:00
committed by GitHub
parent 4905112498
commit 6663f8899d
6 changed files with 2041 additions and 783 deletions
@@ -11,7 +11,7 @@ use crate::ROOT_DIR;
use crate::generate_all::Mode;
/// Contains current supported targets
const TARGETS_YML_URL: &str = "https://raw.githubusercontent.com/astral-sh/python-build-standalone/refs/tags/20260203/cpython-unix/targets.yml";
const TARGETS_YML_URL: &str = "https://raw.githubusercontent.com/astral-sh/python-build-standalone/refs/tags/20260211/cpython-unix/targets.yml";
#[derive(clap::Args)]
pub(crate) struct Args {
@@ -130,7 +130,7 @@ async fn generate() -> Result<String> {
output.push_str("//! DO NOT EDIT\n");
output.push_str("//!\n");
output.push_str("//! Generated with `cargo run dev generate-sysconfig-metadata`\n");
output.push_str("//! Targets from <https://github.com/astral-sh/python-build-standalone/blob/20260203/cpython-unix/targets.yml>\n");
output.push_str("//! Targets from <https://github.com/astral-sh/python-build-standalone/blob/20260211/cpython-unix/targets.yml>\n");
output.push_str("//!\n");
// Disable clippy/fmt
+2 -2
View File
@@ -11,8 +11,8 @@ if [[ -z "${latest_tag}" ]]; then
fi
# Edit the sysconfig mapping endpoints
sed -i.bak "s|refs/tags/[^/]\+/cpython-unix|refs/tags/${latest_tag}/cpython-unix|g" src/generate_sysconfig_mappings.rs && rm -f src/generate_sysconfig_mappings.rs.bak
sed -i.bak "s|blob/[^/]\+/cpython-unix|blob/${latest_tag}/cpython-unix|g" src/generate_sysconfig_mappings.rs && rm -f src/generate_sysconfig_mappings.rs.bak
sed -i.bak -E "s|refs/tags/[^/]+/cpython-unix|refs/tags/${latest_tag}/cpython-unix|g" src/generate_sysconfig_mappings.rs && rm -f src/generate_sysconfig_mappings.rs.bak
sed -i.bak -E "s|blob/[^/]+/cpython-unix|blob/${latest_tag}/cpython-unix|g" src/generate_sysconfig_mappings.rs && rm -f src/generate_sysconfig_mappings.rs.bak
# Regenerate mappings in case there's any changes
cargo dev generate-sysconfig-metadata
File diff suppressed because it is too large Load Diff
@@ -1,7 +1,7 @@
//! DO NOT EDIT
//!
//! Generated with `cargo run dev generate-sysconfig-metadata`
//! Targets from <https://github.com/astral-sh/python-build-standalone/blob/20260203/cpython-unix/targets.yml>
//! Targets from <https://github.com/astral-sh/python-build-standalone/blob/20260211/cpython-unix/targets.yml>
//!
#![allow(clippy::all)]
#![cfg_attr(any(), rustfmt::skip)]
+1 -1
View File
@@ -40,7 +40,7 @@ pub const PACKSE_VERSION: &str = "0.3.53";
pub const DEFAULT_PYTHON_VERSION: &str = "3.12";
// The expected latest patch version for each Python minor version.
pub const LATEST_PYTHON_3_15: &str = "3.15.0a5";
pub const LATEST_PYTHON_3_15: &str = "3.15.0a6";
pub const LATEST_PYTHON_3_14: &str = "3.14.3";
pub const LATEST_PYTHON_3_13: &str = "3.13.12";
pub const LATEST_PYTHON_3_12: &str = "3.12.12";
+3 -3
View File
@@ -71,8 +71,8 @@ def main() -> None:
latest_versions[minor] = prerelease_versions[minor]
# Update the constants in common/mod.rs
mod_path = ROOT / "crates" / "uv" / "tests" / "it" / "common" / "mod.rs"
content = mod_path.read_text()
lib_path = ROOT / "crates" / "uv-test" / "src" / "lib.rs"
content = lib_path.read_text()
# Extract old values first
old_versions: dict[str, str] = {}
@@ -90,7 +90,7 @@ def main() -> None:
new_value = f'pub const {const_name}: &str = "{latest_versions[minor]}";'
content = re.sub(old_pattern, new_value, content)
mod_path.write_text(content)
lib_path.write_text(content)
updates = []
for minor in ["3.15", "3.14", "3.13", "3.12", "3.11", "3.10"]: