Skip to content

Commit 702a837

Browse files
authored
Merge branch '3.14' into backport-b12fcff-3.14
2 parents c3e1098 + ed5531c commit 702a837

291 files changed

Lines changed: 12200 additions & 4709 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.github/workflows/jit.yml‎

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -81,24 +81,16 @@ jobs:
8181
./PCbuild/rt.bat ${{ matrix.debug && '-d' || '' }} -p ${{ matrix.architecture }} -q --multiprocess 0 --timeout 4500 --verbose2 --verbose3
8282
8383
macos:
84-
name: ${{ matrix.target }} (${{ matrix.debug && 'Debug' || 'Release' }})
84+
name: aarch64-apple-darwin/clang (${{ matrix.debug && 'Debug' || 'Release' }})
8585

86-
runs-on: ${{ matrix.runner }}
86+
runs-on: macos-26
8787
timeout-minutes: 60
8888
strategy:
8989
fail-fast: false
9090
matrix:
91-
target:
92-
- x86_64-apple-darwin/clang
93-
- aarch64-apple-darwin/clang
9491
debug:
9592
- true
9693
- false
97-
include:
98-
- target: x86_64-apple-darwin/clang
99-
runner: macos-26-intel
100-
- target: aarch64-apple-darwin/clang
101-
runner: macos-26
10294
steps:
10395
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
10496
with:

‎.github/workflows/tail-call.yml‎

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -58,17 +58,9 @@ jobs:
5858
./PCbuild/rt.bat -p ${{ matrix.architecture }} -q --multiprocess 0 --timeout 4500 --verbose2 --verbose3
5959
6060
macos:
61-
name: ${{ matrix.target }}
62-
runs-on: ${{ matrix.runner }}
61+
name: aarch64-apple-darwin/clang
62+
runs-on: macos-26
6363
timeout-minutes: 60
64-
strategy:
65-
fail-fast: false
66-
matrix:
67-
include:
68-
- target: x86_64-apple-darwin/clang
69-
runner: macos-26-intel
70-
- target: aarch64-apple-darwin/clang
71-
runner: macos-26
7264
steps:
7365
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
7466
with:
@@ -83,7 +75,6 @@ jobs:
8375
- name: Build
8476
run: |
8577
export SDKROOT="$(xcrun --show-sdk-path)"
86-
export PATH="/usr/local/opt/llvm@${{ env.LLVM_VERSION }}/bin:$PATH"
8778
export PATH="/opt/homebrew/opt/llvm@${{ env.LLVM_VERSION }}/bin:$PATH"
8879
CC=clang-${{ env.LLVM_VERSION }} ./configure --with-tail-call-interp
8980
make all --jobs 4

‎.gitignore‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,3 +173,6 @@ Python/frozen_modules/MANIFEST
173173
# People's custom https://docs.anthropic.com/en/docs/claude-code/memory configs.
174174
/.claude/
175175
CLAUDE.local.md
176+
177+
# Local scratch space for things we or our agents do in our worktrees.
178+
/do-not-commit/

‎Apple/iOS/README.md‎

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,8 @@ Python distribution.
77

88
These instructions are only needed if you're planning to compile Python for iOS
99
yourself. Most users should *not* need to do this. If you're looking to
10-
experiment with writing an iOS app in Python, tools such as [BeeWare's
11-
Briefcase](https://briefcase.readthedocs.io) and [Kivy's
12-
Buildozer](https://buildozer.readthedocs.io) will provide a much more
10+
experiment with writing an iOS app in Python, use one of the tools listed in
11+
[Using Python on iOS](https://docs.python.org/3/using/ios.html) for a much more
1312
approachable user experience.
1413

1514
## Compilers for building on iOS

‎Doc/builtins/functions.rst‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -310,6 +310,10 @@ are always available. They are listed here in alphabetical order.
310310
consists of a single expression, or ``'single'`` if it consists of a single
311311
interactive statement (in the latter case, expression statements that
312312
evaluate to something other than ``None`` will be printed).
313+
It can also be ``'func_type'`` if *source* consists of a
314+
function type signature, for example ``(int) -> str``; see
315+
:func:`ast.parse` for more information. This mode requires passing
316+
:data:`ast.PyCF_ONLY_AST` in *flags*.
313317

314318
The optional arguments *flags* and *dont_inherit* control which
315319
:ref:`compiler options <ast-compiler-flags>` should be activated
@@ -379,6 +383,9 @@ are always available. They are listed here in alphabetical order.
379383
``ast.PyCF_ALLOW_TOP_LEVEL_AWAIT`` can now be passed in flags to enable
380384
support for top-level ``await``, ``async for``, and ``async with``.
381385

386+
.. versionchanged:: 3.8
387+
Added support for ``mode='func_type'``.
388+
382389
.. versionchanged:: 3.12
383390
:exc:`SyntaxError` is raised instead of :exc:`ValueError` when null bytes
384391
are encountered in *source*.

‎Doc/c-api/call.rst‎

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -81,17 +81,17 @@ This is a pointer to a function with the following signature:
8181
8282
- *callable* is the object being called.
8383
- *args* is a C array consisting of the positional arguments followed by the
84-
values of the keyword arguments.
85-
This can be *NULL* if there are no arguments.
84+
values of the keyword arguments.
85+
This can be *NULL* if there are no arguments.
8686
- *nargsf* is the number of positional arguments plus possibly the
87-
:c:macro:`PY_VECTORCALL_ARGUMENTS_OFFSET` flag.
88-
To get the actual number of positional arguments from *nargsf*,
89-
use :c:func:`PyVectorcall_NARGS`.
87+
:c:macro:`PY_VECTORCALL_ARGUMENTS_OFFSET` flag.
88+
To get the actual number of positional arguments from *nargsf*,
89+
use :c:func:`PyVectorcall_NARGS`.
9090
- *kwnames* is a tuple containing the names of the keyword arguments;
91-
in other words, the keys of the kwargs dict.
92-
These names must be strings (instances of ``str`` or a subclass)
93-
and they must be unique.
94-
If there are no keyword arguments, then *kwnames* can instead be *NULL*.
91+
in other words, the keys of the kwargs dict.
92+
These names must be strings (instances of ``str`` or a subclass)
93+
and they must be unique.
94+
If there are no keyword arguments, then *kwnames* can instead be *NULL*.
9595

9696
.. c:macro:: PY_VECTORCALL_ARGUMENTS_OFFSET
9797

‎Doc/c-api/code.rst‎

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -96,11 +96,12 @@ bound into a function.
9696
9797
.. c:function:: int PyCode_Addr2Line(PyCodeObject *co, int byte_offset)
9898
99-
Return the line number of the instruction that occurs on or before ``byte_offset`` and ends after it.
100-
If you just need the line number of a frame, use :c:func:`PyFrame_GetLineNumber` instead.
99+
Return the line number of the instruction that occurs on or before
100+
``byte_offset`` and ends after it. This may be ``O(N)`` in the number of
101+
instructions in the code object, so it is not performant for iterating over
102+
all the line numbers in a code object.
101103
102-
For efficiently iterating over the line numbers in a code object, use :pep:`the API described in PEP 626
103-
<0626#out-of-process-debuggers-and-profilers>`.
104+
If you just need the line number of a frame, use :c:func:`PyFrame_GetLineNumber` instead.
104105
105106
.. c:function:: int PyCode_Addr2Location(PyObject *co, int byte_offset, int *start_line, int *start_column, int *end_line, int *end_column)
106107

‎Doc/c-api/conversion.rst‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -277,4 +277,4 @@ macros above:
277277
Values used internally by the ``Py_IS*`` classification macros above.
278278
Exposed for backwards compatibility only.
279279
280-
.. soft-deprecated:: next
280+
.. soft-deprecated:: 3.14.10

‎Doc/c-api/datetime.rst‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ the module initialisation function. The macro puts a pointer to a C structure
1313
into a static variable, :c:data:`PyDateTimeAPI`, that is used by the following
1414
macros.
1515

16-
.. c:macro:: PyDateTime_IMPORT()
16+
.. c:macro:: PyDateTime_IMPORT
1717
1818
Import the datetime C API.
1919

‎Doc/c-api/file.rst‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -188,4 +188,4 @@ by mistake. They are documented solely for completeness; use other
188188
The string literal ``"b"``, used to open files in binary mode.
189189
Exposed for backwards compatibility only.
190190
191-
.. soft-deprecated:: next
191+
.. soft-deprecated:: 3.14.10

0 commit comments

Comments
 (0)