Skip to content

Commit 183bc64

Browse files
authored
Upgrade CPython 3.12.8 to 3.12.9, 3.13.1 to 3.13.2 (#513)
Our BOLT patches that landed for 3.14 have been backported to 3.12 and 3.13, so the remaining BOLT patch now applies to 3.12+.
1 parent 4615f2f commit 183bc64

6 files changed

+11
-100
lines changed

cpython-unix/build-cpython.sh

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -267,17 +267,9 @@ if [ -n "${PYTHON_MEETS_MINIMUM_VERSION_3_11}" ]; then
267267
fi
268268

269269
if [ -n "${PYTHON_MEETS_MINIMUM_VERSION_3_12}" ]; then
270-
# On 3.14+, we upstreamed these changes and they are no longer needed
271-
if [ -n "${PYTHON_MEETS_MAXIMUM_VERSION_3_13}" ]; then
272-
# Adjust BOLT flags to yield better behavior. See inline details in patch.
273-
patch -p1 -i ${ROOT}/patch-configure-bolt-flags.patch
274-
275-
# Adjust BOLT application flags to make use of modern LLVM features.
276-
patch -p1 -i ${ROOT}/patch-configure-bolt-apply-flags.patch
277-
else
278-
# We are still upstreaming some additional optimization flags
279-
patch -p1 -i ${ROOT}/patch-configure-bolt-apply-flags-3.14.patch
280-
fi
270+
# Additional BOLT optimizations, being upstreamed in
271+
# https://github.com/python/cpython/issues/128514
272+
patch -p1 -i ${ROOT}/patch-configure-bolt-apply-flags-128514.patch
281273
fi
282274

283275
# The optimization make targets are both phony and non-phony. This leads

cpython-unix/patch-configure-bolt-apply-flags.patch

Lines changed: 0 additions & 23 deletions
This file was deleted.

cpython-unix/patch-configure-bolt-flags.patch

Lines changed: 0 additions & 50 deletions
This file was deleted.

cpython-unix/patch-test-embed-prevent-segfault.patch

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,3 @@ index 13713cf37b8..40ee4837bfe 100644
1010
def test_global_pathconfig(self):
1111
# Test C API functions getting the path configuration:
1212
#
13-
@@ -1866,6 +1867,7 @@ def test_no_memleak(self):
14-
self.assertEqual(blocks, 0, out)
15-
16-
17-
+@unittest.skipIf(support.check_bolt_optimized, "segfaults on BOLT instrumented binaries")
18-
class StdPrinterTests(EmbeddingTestsMixin, unittest.TestCase):
19-
# Test PyStdPrinter_Type which is used by _PySys_SetPreliminaryStderr():
20-
# "Set up a preliminary stderr printer until we have enough

pythonbuild/downloads.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -62,19 +62,19 @@
6262
"python_tag": "cp311",
6363
},
6464
"cpython-3.12": {
65-
"url": "https://www.python.org/ftp/python/3.12.8/Python-3.12.8.tar.xz",
66-
"size": 20489808,
67-
"sha256": "c909157bb25ec114e5869124cc2a9c4a4d4c1e957ca4ff553f1edc692101154e",
68-
"version": "3.12.8",
65+
"url": "https://www.python.org/ftp/python/3.12.9/Python-3.12.9.tar.xz",
66+
"size": 20502440,
67+
"sha256": "7220835d9f90b37c006e9842a8dff4580aaca4318674f947302b8d28f3f81112",
68+
"version": "3.12.9",
6969
"licenses": ["Python-2.0", "CNRI-Python"],
7070
"license_file": "LICENSE.cpython.txt",
7171
"python_tag": "cp312",
7272
},
7373
"cpython-3.13": {
74-
"url": "https://www.python.org/ftp/python/3.13.1/Python-3.13.1.tar.xz",
75-
"size": 22589692,
76-
"sha256": "9cf9427bee9e2242e3877dd0f6b641c1853ca461f39d6503ce260a59c80bf0d9",
77-
"version": "3.13.1",
74+
"url": "https://www.python.org/ftp/python/3.13.2/Python-3.13.2.tar.xz",
75+
"size": 22621108,
76+
"sha256": "d984bcc57cd67caab26f7def42e523b1c015bbc5dc07836cf4f0b63fa159eb56",
77+
"version": "3.13.2",
7878
"licenses": ["Python-2.0", "CNRI-Python"],
7979
"license_file": "LICENSE.cpython.txt",
8080
"python_tag": "cp313",

0 commit comments

Comments
 (0)