Skip to content

Commit dfab053

Browse files
generatedunixname1734921407115435meta-codesync[bot]
authored andcommitted
Import upstream CPython branch '3.14'
Summary: Imported Python `3.14.0rc3+` from upstream rev [`1ffd62baca5b60a85f5de49dd4265ea73f9f165b`](https://www.github.com/python/cpython/commit/1ffd62baca5b60a85f5de49dd4265ea73f9f165b) (committed 2025-10-05 08:53:23+00:00). # Commit Info Base: (`3.14.0rc3+`) - [`e7ee62b5c872dace02abbb45107033030cb0dbf0`](https://www.github.com/python/cpython/commit/e7ee62b5c872dace02abbb45107033030cb0dbf0) (commit date: 2025-10-03 20:46:29+00:00) Imported: (`3.14.0rc3+`) - [`1ffd62baca5b60a85f5de49dd4265ea73f9f165b`](https://www.github.com/python/cpython/commit/1ffd62baca5b60a85f5de49dd4265ea73f9f165b) (commit date: 2025-10-05 08:53:23+00:00) # Files added ``` Misc/NEWS.d/next/Windows/2025-10-04-12-18-45.gh-issue-139573.EO9kVB.rst ``` Reviewed By: itamaro Differential Revision: D83928749 fbshipit-source-id: 205cd04832e54000f37f4a835228f5a6089717d8
1 parent 312d14b commit dfab053

21 files changed

Lines changed: 373 additions & 230 deletions

.github/workflows/build.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -320,7 +320,7 @@ jobs:
320320
# Keep 1.1.1w in our list despite it being upstream EOL and otherwise
321321
# unsupported as it most resembles other 1.1.1-work-a-like ssl APIs
322322
# supported by important vendors such as AWS-LC.
323-
openssl_ver: [1.1.1w, 3.0.17, 3.2.5, 3.3.4, 3.4.2, 3.5.2]
323+
openssl_ver: [1.1.1w, 3.0.18, 3.2.6, 3.3.5, 3.4.3, 3.5.4]
324324
# See Tools/ssl/make_ssl_data.py for notes on adding a new version
325325
env:
326326
OPENSSL_VER: ${{ matrix.openssl_ver }}
@@ -410,7 +410,7 @@ jobs:
410410
needs: build-context
411411
if: needs.build-context.outputs.run-tests == 'true'
412412
env:
413-
OPENSSL_VER: 3.0.16
413+
OPENSSL_VER: 3.0.18
414414
PYTHONSTRICTEXTENSIONBUILD: 1
415415
steps:
416416
- uses: actions/checkout@v4
@@ -530,7 +530,7 @@ jobs:
530530
matrix:
531531
os: [ubuntu-24.04]
532532
env:
533-
OPENSSL_VER: 3.0.16
533+
OPENSSL_VER: 3.0.18
534534
PYTHONSTRICTEXTENSIONBUILD: 1
535535
ASAN_OPTIONS: detect_leaks=0:allocator_may_return_null=1:handle_segv=0
536536
steps:

.github/workflows/reusable-ubuntu.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ jobs:
3030
runs-on: ${{ inputs.os }}
3131
timeout-minutes: 60
3232
env:
33-
OPENSSL_VER: 3.0.15
33+
OPENSSL_VER: 3.0.18
3434
PYTHONSTRICTEXTENSIONBUILD: 1
3535
TERM: linux
3636
steps:

Android/android.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -184,10 +184,16 @@ def make_build_python(context):
184184
run(["make", "-j", str(os.cpu_count())])
185185

186186

187+
# To create new builds of these dependencies, usually all that's necessary is to
188+
# push a tag to the cpython-android-source-deps repository, and GitHub Actions
189+
# will do the rest.
190+
#
191+
# If you're a member of the Python core team, and you'd like to be able to push
192+
# these tags yourself, please contact Malcolm Smith or Russell Keith-Magee.
187193
def unpack_deps(host, prefix_dir):
188194
os.chdir(prefix_dir)
189195
deps_url = "https://github.com/beeware/cpython-android-source-deps/releases/download"
190-
for name_ver in ["bzip2-1.0.8-3", "libffi-3.4.4-3", "openssl-3.0.15-4",
196+
for name_ver in ["bzip2-1.0.8-3", "libffi-3.4.4-3", "openssl-3.0.18-0",
191197
"sqlite-3.50.4-0", "xz-5.4.6-1", "zstd-1.5.7-1"]:
192198
filename = f"{name_ver}-{host}.tar.gz"
193199
download(f"{deps_url}/{name_ver}/{filename}")

Apple/__main__.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -312,11 +312,18 @@ def unpack_deps(
312312
On iOS, as a safety mechanism, any dynamic libraries will be purged from
313313
the unpacked dependencies.
314314
"""
315+
# To create new builds of these dependencies, usually all that's necessary
316+
# is to push a tag to the cpython-apple-source-deps repository, and GitHub
317+
# Actions will do the rest.
318+
#
319+
# If you're a member of the Python core team, and you'd like to be able to
320+
# push these tags yourself, please contact Malcolm Smith or Russell
321+
# Keith-Magee.
315322
deps_url = "https://github.com/beeware/cpython-apple-source-deps/releases/download"
316323
for name_ver in [
317324
"BZip2-1.0.8-2",
318325
"libFFI-3.4.7-2",
319-
"OpenSSL-3.0.17-1",
326+
"OpenSSL-3.0.18-1",
320327
"XZ-5.6.4-2",
321328
"mpdecimal-4.0.0-2",
322329
"zstd-1.5.7-1",

Doc/library/asyncio-stream.rst

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -316,13 +316,14 @@ StreamWriter
316316
If that fails, the data is queued in an internal write buffer until it can be
317317
sent.
318318

319+
The *data* buffer should be a bytes, bytearray, or C-contiguous one-dimensional
320+
memoryview object.
321+
319322
The method should be used along with the ``drain()`` method::
320323

321324
stream.write(data)
322325
await stream.drain()
323326

324-
.. note::
325-
The *data* buffer should be a C contiguous one-dimensional :term:`bytes-like object <bytes-like object>`.
326327

327328
.. method:: writelines(data)
328329

Doc/library/compression.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
The :mod:`!compression` package
22
===============================
33

4+
.. module:: compression
5+
46
.. versionadded:: 3.14
57

68
The :mod:`!compression` package contains the canonical compression modules

Doc/library/string.templatelib.rst

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ Template strings
2424
Template strings are a mechanism for custom string processing.
2525
They have the full flexibility of Python's :ref:`f-strings`,
2626
but return a :class:`Template` instance that gives access
27-
to the static and interpolated (in curly braces) parts of a string
27+
to the static and interpolated (in curly brackets) parts of a string
2828
*before* they are combined.
2929

3030
To write a t-string, use a ``'t'`` prefix instead of an ``'f'``, like so:
@@ -258,13 +258,16 @@ Types
258258
.. attribute:: expression
259259
:type: str
260260

261-
The text of a valid Python expression, or an empty string.
261+
For interpolations created by t-string literals, :attr:`!expression`
262+
is the expression text found inside the curly brackets (``{`` & ``}``),
263+
including any whitespace, excluding the curly brackets themselves,
264+
and ending before the first ``!``, ``:``, or ``=`` if any is present.
265+
For manually created interpolations, :attr:`!expression` is the arbitrary
266+
string provided when constructing the interpolation instance.
262267

263-
The :attr:`.expression` is the original text of the
264-
interpolation's Python expression, if the interpolation was created
265-
from a t-string literal. Developers creating interpolations manually
266-
should either set this to an empty string or choose a suitable valid
267-
Python expression.
268+
We recommend using valid Python expressions or the empty string for the
269+
``expression`` field of manually created :class:`!Interpolation`
270+
instances, although this is not enforced at runtime.
268271

269272
>>> t'{1 + 2}'.interpolations[0].expression
270273
'1 + 2'

Doc/library/sysconfig.rst

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -382,22 +382,19 @@ Other functions
382382

383383
Examples of returned values:
384384

385-
- linux-i586
386-
- linux-alpha (?)
387-
- solaris-2.6-sun4u
388385

389-
Windows will return one of:
386+
Windows:
390387

391388
- win-amd64 (64-bit Windows on AMD64, aka x86_64, Intel64, and EM64T)
392389
- win-arm64 (64-bit Windows on ARM64, aka AArch64)
393390
- win32 (all others - specifically, sys.platform is returned)
394391

395-
macOS can return:
392+
POSIX based OS:
396393

397-
- macosx-10.6-ppc
398-
- macosx-10.4-ppc64
399-
- macosx-10.3-i386
400-
- macosx-10.4-fat
394+
- linux-x86_64
395+
- macosx-15.5-arm64
396+
- macosx-26.0-universal2 (macOS on Apple Silicon or Intel)
397+
- android-24-arm64_v8a
401398

402399
For other non-POSIX platforms, currently just returns :data:`sys.platform`.
403400

Doc/using/configure.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ Features and minimum versions required to build CPython:
2222

2323
* Support for threads.
2424

25-
* OpenSSL 1.1.1 is the minimum version and OpenSSL 3.0.16 is the recommended
25+
* OpenSSL 1.1.1 is the minimum version and OpenSSL 3.0.18 is the recommended
2626
minimum version for the :mod:`ssl` and :mod:`hashlib` extension modules.
2727

2828
* SQLite 3.15.2 for the :mod:`sqlite3` extension module.

0 commit comments

Comments
 (0)