Skip to content

Commit c13d940

Browse files
authored
Merge branch '3.14' into backport-f04bea4-3.14
2 parents 6fb5cd8 + 57ba6ae commit c13d940

File tree

539 files changed

+11024
-3700
lines changed

Some content is hidden

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

539 files changed

+11024
-3700
lines changed

.devcontainer/devcontainer.json

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,10 @@
11
{
2-
"image": "ghcr.io/python/devcontainer:2024.09.25.11038928730",
2+
"image": "ghcr.io/python/devcontainer:latest",
33
"onCreateCommand": [
44
// Install common tooling.
55
"dnf",
66
"install",
77
"-y",
8-
"which",
9-
"zsh",
10-
"fish",
118
// For umask fix below.
129
"/usr/bin/setfacl"
1310
],

.github/workflows/build.yml

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -249,23 +249,15 @@ jobs:
249249
strategy:
250250
fail-fast: false
251251
matrix:
252-
# Cirrus and macos-14 are M1, macos-15-intel is default GHA Intel.
253-
# macOS 13 only runs tests against the GIL-enabled CPython.
254-
# Cirrus used for upstream, macos-14 for forks.
252+
# macos-14 is M1, macos-15-intel is Intel.
253+
# macos-15-intel only runs tests against the GIL-enabled CPython.
255254
os:
256-
- ghcr.io/cirruslabs/macos-runner:sonoma
257255
- macos-14
258256
- macos-15-intel
259-
is-fork: # only used for the exclusion trick
260-
- ${{ github.repository_owner != 'python' }}
261257
free-threading:
262258
- false
263259
- true
264260
exclude:
265-
- os: ghcr.io/cirruslabs/macos-runner:sonoma
266-
is-fork: true
267-
- os: macos-14
268-
is-fork: false
269261
- os: macos-15-intel
270262
free-threading: true
271263
uses: ./.github/workflows/reusable-macos.yml
@@ -381,9 +373,8 @@ jobs:
381373
fail-fast: false
382374
matrix:
383375
include:
384-
# Use the same runs-on configuration as build-macos and build-ubuntu.
385376
- arch: aarch64
386-
runs-on: ${{ github.repository_owner == 'python' && 'ghcr.io/cirruslabs/macos-runner:sonoma' || 'macos-14' }}
377+
runs-on: macos-14
387378
- arch: x86_64
388379
runs-on: ubuntu-24.04
389380

.github/workflows/mypy.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ on:
2929
- "Tools/jit/**"
3030
- "Tools/peg_generator/**"
3131
- "Tools/requirements-dev.txt"
32-
- "Tools/wasm/**"
3332
workflow_dispatch:
3433

3534
permissions:
@@ -61,7 +60,6 @@ jobs:
6160
"Tools/clinic",
6261
"Tools/jit",
6362
"Tools/peg_generator",
64-
"Tools/wasm",
6563
]
6664
steps:
6765
- uses: actions/checkout@v4

.pre-commit-config.yaml

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,35 @@
11
repos:
22
- repo: https://github.com/astral-sh/ruff-pre-commit
3-
rev: v0.12.8
3+
rev: v0.13.2
44
hooks:
5-
- id: ruff
5+
- id: ruff-check
66
name: Run Ruff (lint) on Doc/
77
args: [--exit-non-zero-on-fix]
88
files: ^Doc/
9-
- id: ruff
9+
- id: ruff-check
1010
name: Run Ruff (lint) on Lib/test/
1111
args: [--exit-non-zero-on-fix]
1212
files: ^Lib/test/
13-
- id: ruff
13+
- id: ruff-check
1414
name: Run Ruff (lint) on Tools/build/
1515
args: [--exit-non-zero-on-fix, --config=Tools/build/.ruff.toml]
1616
files: ^Tools/build/
17-
- id: ruff
17+
- id: ruff-check
1818
name: Run Ruff (lint) on Tools/i18n/
1919
args: [--exit-non-zero-on-fix, --config=Tools/i18n/.ruff.toml]
2020
files: ^Tools/i18n/
21-
- id: ruff
21+
- id: ruff-check
2222
name: Run Ruff (lint) on Argument Clinic
2323
args: [--exit-non-zero-on-fix, --config=Tools/clinic/.ruff.toml]
2424
files: ^Tools/clinic/|Lib/test/test_clinic.py
25-
- id: ruff
25+
- id: ruff-check
2626
name: Run Ruff (lint) on Tools/peg_generator/
2727
args: [--exit-non-zero-on-fix, --config=Tools/peg_generator/.ruff.toml]
2828
files: ^Tools/peg_generator/
29+
- id: ruff-check
30+
name: Run Ruff (lint) on Tools/wasm/
31+
args: [--exit-non-zero-on-fix, --config=Tools/wasm/.ruff.toml]
32+
files: ^Tools/wasm/
2933
- id: ruff-format
3034
name: Run Ruff (format) on Doc/
3135
args: [--check]
@@ -34,9 +38,13 @@ repos:
3438
name: Run Ruff (format) on Tools/build/check_warnings.py
3539
args: [--check, --config=Tools/build/.ruff.toml]
3640
files: ^Tools/build/check_warnings.py
41+
- id: ruff-format
42+
name: Run Ruff (format) on Tools/wasm/
43+
args: [--check, --config=Tools/wasm/.ruff.toml]
44+
files: ^Tools/wasm/
3745

3846
- repo: https://github.com/psf/black-pre-commit-mirror
39-
rev: 25.1.0
47+
rev: 25.9.0
4048
hooks:
4149
- id: black
4250
name: Run Black on Tools/jit/
@@ -47,7 +55,6 @@ repos:
4755
hooks:
4856
- id: remove-tabs
4957
types: [python]
50-
exclude: ^Tools/c-analyzer/cpython/_parser.py
5158

5259
- repo: https://github.com/pre-commit/pre-commit-hooks
5360
rev: v6.0.0
@@ -68,7 +75,7 @@ repos:
6875
files: '^\.github/CODEOWNERS|\.(gram)$'
6976

7077
- repo: https://github.com/python-jsonschema/check-jsonschema
71-
rev: 0.33.2
78+
rev: 0.34.0
7279
hooks:
7380
- id: check-dependabot
7481
- id: check-github-workflows
@@ -80,7 +87,7 @@ repos:
8087
- id: actionlint
8188

8289
- repo: https://github.com/woodruffw/zizmor-pre-commit
83-
rev: v1.11.0
90+
rev: v1.14.1
8491
hooks:
8592
- id: zizmor
8693

Android/testbed/app/build.gradle.kts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ for ((i, prefix) in prefixes.withIndex()) {
4747
val libDir = file("$prefix/lib")
4848
val version = run {
4949
for (filename in libDir.list()!!) {
50-
"""python(\d+\.\d+)""".toRegex().matchEntire(filename)?.let {
50+
"""python(\d+\.\d+[a-z]*)""".toRegex().matchEntire(filename)?.let {
5151
return@run it.groupValues[1]
5252
}
5353
}
@@ -64,9 +64,10 @@ for ((i, prefix) in prefixes.withIndex()) {
6464
val libPythonDir = file("$libDir/python$pythonVersion")
6565
val triplet = run {
6666
for (filename in libPythonDir.list()!!) {
67-
"""_sysconfigdata__android_(.+).py""".toRegex().matchEntire(filename)?.let {
68-
return@run it.groupValues[1]
69-
}
67+
"""_sysconfigdata_[a-z]*_android_(.+).py""".toRegex()
68+
.matchEntire(filename)?.let {
69+
return@run it.groupValues[1]
70+
}
7071
}
7172
throw GradleException("Failed to find Python triplet in $libPythonDir")
7273
}

Doc/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@ venv:
184184
fi
185185

186186
.PHONY: dist-no-html
187-
dist-no-html: dist-text dist-pdf dist-epub dist-texinfo
187+
dist-no-html: dist-text dist-epub dist-texinfo
188188

189189
.PHONY: dist
190190
dist:

Doc/bugs.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,12 @@ If you find a bug in this documentation or would like to propose an improvement,
1919
please submit a bug report on the :ref:`issue tracker <using-the-tracker>`. If you
2020
have a suggestion on how to fix it, include that as well.
2121

22+
.. only:: translation
23+
24+
If the bug or suggested improvement concerns the translation of this
25+
documentation, submit the report to the
26+
`translation’s repository <TRANSLATION_REPO_>`_ instead.
27+
2228
You can also open a discussion item on our
2329
`Documentation Discourse forum <https://discuss.python.org/c/documentation/26>`_.
2430

Doc/c-api/arg.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ There are three ways strings and buffers can be converted to C:
160160
``w*`` (read-write :term:`bytes-like object`) [Py_buffer]
161161
This format accepts any object which implements the read-write buffer
162162
interface. It fills a :c:type:`Py_buffer` structure provided by the caller.
163-
The buffer may contain embedded null bytes. The caller have to call
163+
The buffer may contain embedded null bytes. The caller has to call
164164
:c:func:`PyBuffer_Release` when it is done with the buffer.
165165

166166
``es`` (:class:`str`) [const char \*encoding, char \*\*buffer]

Doc/c-api/capsule.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Refer to :ref:`using-capsules` for more information on using these objects.
1515
.. c:type:: PyCapsule
1616
1717
This subtype of :c:type:`PyObject` represents an opaque value, useful for C
18-
extension modules who need to pass an opaque value (as a :c:expr:`void*`
18+
extension modules which need to pass an opaque value (as a :c:expr:`void*`
1919
pointer) through Python code to other C code. It is often used to make a C
2020
function pointer defined in one module available to other modules, so the
2121
regular import mechanism can be used to access C APIs defined in dynamically

Doc/c-api/code.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -289,7 +289,7 @@ may change without deprecation warnings.
289289
290290
.. c:function:: Py_ssize_t PyUnstable_Eval_RequestCodeExtraIndex(freefunc free)
291291
292-
Return a new an opaque index value used to adding data to code objects.
292+
Return a new opaque index value used to adding data to code objects.
293293
294294
You generally call this function once (per interpreter) and use the result
295295
with ``PyCode_GetExtra`` and ``PyCode_SetExtra`` to manipulate

0 commit comments

Comments
 (0)