Repository navigation
Build: CPython 3.15.0 final (python-build-standalone 20261013) - #197
Merged
Merged
Conversation
…0261013 - gradle.properties: pythonVersion 3.14.7 -> 3.15.0, pythonBuildStandaloneRelease 20260807 -> 20261013; the fallback defaults in python-multiplatform and the plugin build follow. - python-checksums.properties: 3.15.0 for android aarch64/x86_64, ios-3.15.0-pythonorg, and PBS 20261013 desktop (macOS arm64/x86_64, Linux x86_64, Windows x86_64; GIL and freethreaded). The 3.15.0rc1 entries are gone; 3.14.7 stays. - Every SHA-256 was computed from the downloaded archive. The eight PBS archives match the release's SHA256SUMS; the three python.org archives verify against their .sigstore bundles with the identity the build pins (hugo@python.org, https://github.com/login/oauth). Refs #196
VendoredHeaderVersionTest failed once the default became 3.15.0: the tree under src/nativeInterop/cinterop/include, which EmbedApiSurfaceTest and JniCallConventionClassificationTest read as the C API's source of truth, was still 3.14.7. It is now mirrored from the build's own checksum-verified extraction (build/python-standalone/extracted/3.15.0/android-aarch64/prefix/include/python3.15), as 8e40577 did for 3.14.7: 17 headers added, 8 removed (cpython/lock.h became cpython/pylock.h), 138 changed. Both suites pass on the 3.15.0 headers, so the surface did not move. Refs #196
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.
Closes #196
1. Defaults.
gradle.properties:pythonVersion3.14.7 → 3.15.0,pythonBuildStandaloneRelease20260807 → 20261013. The fallbacks inpython-multiplatform/build.gradle.kts(pbsRelease) andpython-multiplatform-gradle-plugin/build.gradle.kts(pythonVersion,pythonBuildStandaloneRelease) follow.2. Checksums.
python-checksums.propertiesadds 11 entries and removes the 103.15.0rc1entries; 3.14.7 stays. Every hash was computed from the downloaded archive:SHA256SUMS..sigstorebundles with the identity the build pins (hugo@python.org,https://github.com/login/oauth), usinguvx sigstore(nothing linked into~/.local/bin).3. rc-era branches, checked by reading, unchanged. For a final release
pythonOrgReleaseDiryields3.15.0, the directory the archives come from;iosFromPythonOrgis true for 3.15. The 3.14 GIL path is untouched. The build itself then downloaded the 3.15.0 archives and passed its own checksum verification.Vendored headers.
VendoredHeaderVersionTestfailed once the default was 3.15.0, which is its job.src/nativeInterop/cinterop/includeis refreshed from the build's verified 3.15.0 extraction, as 8e40577 did for 3.14.7: 17 added, 8 removed (cpython/lock.hbecamepylock.h), 138 changed. EmbedApiSurfaceTest and JniCallConventionClassificationTest pass on it, so the C API surface did not move.5. Verification (local, macOS arm64, JDK 21, each its own invocation, results counted from XML after
--rerun)::python-multiplatform:compileKotlinAndroidNativeArm64:python-multiplatform:compileKotlinIosSimulatorArm64:python-multiplatform:desktopTest:python-multiplatform-ksp:fixtures:app:desktopTest:python-multiplatform-compose:fixtures:compose:desktopTest:python-multiplatform-gradle-plugin-fixtures:artifact:desktopTest4. WASM (research only, no change). A PEP 783 ABI for 3.15 exists only as a draft:
315.0.0a1and315.0.0a2prereleases (2026-08-04, branchabi_2026_5) definePYODIDE_ABI_VERSION 2026_5, i.e.pyemscripten_2026_5, on CPython 3.15.0rc1 and Emscripten 6.0.5.CPYTHON_ABI_FLAGSis onlyd: it is a GIL build without pthreads. It doesn't match the free-threaded 3.15t + pthreads WASM decision either.pyemscripten_2026_5wheels on PyPI for the packages sampled (pydantic-core has 5 for 2026_0; numpy and markupsafe have none for either).pyemscripten_2026_0until our own 3.15t pthreads build lands (the user's 2026-10-04 decision). Its ABI won't be a Pyodide one either way.