Skip to content

Commit ad2b409

Browse files
Merge branch 'main' into asdl-seq
2 parents 2ff390d + 8952b82 commit ad2b409

File tree

2,610 files changed

+216944
-72554
lines changed

Some content is hidden

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

2,610 files changed

+216944
-72554
lines changed

.azure-pipelines/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
trigger: ['main', '3.13', '3.12', '3.11', '3.10', '3.9', '3.8']
1+
trigger: ['main', '3.*']
22

33
jobs:
44
- job: Prebuild

.devcontainer/devcontainer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
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",

.editorconfig

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
root = true
22

3-
[*.{py,c,cpp,h,js,rst,md,yml}]
3+
[*.{py,c,cpp,h,js,rst,md,yml,yaml,gram}]
44
trim_trailing_whitespace = true
55
insert_final_newline = true
66
indent_style = space
77

8-
[*.{py,c,cpp,h}]
8+
[*.{py,c,cpp,h,gram}]
99
indent_size = 4
1010

1111
[*.rst]
1212
indent_size = 3
1313

14-
[*.{js,yml}]
14+
[*.{js,yml,yaml}]
1515
indent_size = 2

.gitattributes

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
*.ico binary
1111
*.jpg binary
1212
*.pck binary
13+
*.pdf binary
1314
*.png binary
1415
*.psd binary
1516
*.tar binary
@@ -67,6 +68,7 @@ PCbuild/readme.txt dos
6768
**/clinic/*.cpp.h generated
6869
**/clinic/*.h.h generated
6970
*_db.h generated
71+
Doc/c-api/lifecycle.dot.svg generated
7072
Doc/data/stable_abi.dat generated
7173
Doc/library/token-list.inc generated
7274
Include/internal/pycore_ast.h generated

.github/CODEOWNERS

Lines changed: 98 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,23 @@
44
# It uses the same pattern rule for gitignore file
55
# https://git-scm.com/docs/gitignore#_pattern_format
66

7-
# GitHub
7+
# Azure Pipelines
8+
.azure-pipelines/ @AA-Turner
9+
10+
# GitHub & related scripts
811
.github/** @ezio-melotti @hugovk @AA-Turner
12+
Tools/build/compute-changes.py @AA-Turner
13+
Tools/build/verify_ensurepip_wheels.py @AA-Turner
914

1015
# pre-commit
11-
.pre-commit-config.yaml @hugovk @AlexWaygood
16+
.pre-commit-config.yaml @hugovk
1217
.ruff.toml @hugovk @AlexWaygood @AA-Turner
1318

14-
# Build system
15-
configure* @erlend-aasland @corona10
16-
Makefile.pre.in @erlend-aasland
17-
Modules/Setup* @erlend-aasland
19+
# Build system (autotools)
20+
configure* @erlend-aasland @corona10 @AA-Turner
21+
Makefile.pre.in @erlend-aasland @AA-Turner
22+
Modules/Setup* @erlend-aasland @AA-Turner
23+
Tools/build/regen-configure.sh @AA-Turner
1824

1925
# argparse
2026
**/*argparse* @savannahostrowski
@@ -26,14 +32,17 @@ Modules/Setup* @erlend-aasland
2632
**/*context* @1st1
2733
**/*genobject* @markshannon
2834
**/*hamt* @1st1
29-
**/*jit* @brandtbucher @savannahostrowski
35+
**/*jit* @brandtbucher @savannahostrowski @diegorusso
36+
Python/perf_jit_trampoline.c # Exclude the owners of "**/*jit*", above.
3037
Objects/set* @rhettinger
3138
Objects/dict* @methane @markshannon
3239
Objects/typevarobject.c @JelleZijlstra
40+
Objects/unionobject.c @JelleZijlstra
3341
Objects/type* @markshannon
3442
Objects/codeobject.c @markshannon
3543
Objects/frameobject.c @markshannon
3644
Objects/call.c @markshannon
45+
Objects/object.c @ZeroIntensity
3746
Python/ceval*.c @markshannon
3847
Python/ceval*.h @markshannon
3948
Python/codegen.c @markshannon @iritkatriel
@@ -43,8 +52,9 @@ Python/flowgraph.c @markshannon @iritkatriel
4352
Python/instruction_sequence.c @iritkatriel
4453
Python/bytecodes.c @markshannon
4554
Python/optimizer*.c @markshannon
46-
Python/optimizer_analysis.c @Fidget-Spinner
47-
Python/optimizer_bytecodes.c @Fidget-Spinner
55+
Python/optimizer_analysis.c @Fidget-Spinner @tomasr8
56+
Python/optimizer_bytecodes.c @Fidget-Spinner @tomasr8
57+
Python/optimizer_symbols.c @tomasr8
4858
Python/symtable.c @JelleZijlstra @carljm
4959
Lib/_pyrepl/* @pablogsal @lysnikolaou @ambv
5060
Lib/test/test_patma.py @brandtbucher
@@ -63,10 +73,11 @@ Doc/make.bat @AA-Turner @hugovk
6373
Doc/requirements.txt @AA-Turner @hugovk
6474
Doc/_static/** @AA-Turner @hugovk
6575
Doc/tools/** @AA-Turner @hugovk
76+
.readthedocs.yml @AA-Turner
6677

6778
# runtime state/lifecycle
68-
**/*pylifecycle* @ericsnowcurrently
69-
**/*pystate* @ericsnowcurrently
79+
**/*pylifecycle* @ericsnowcurrently @ZeroIntensity
80+
**/*pystate* @ericsnowcurrently @ZeroIntensity
7081
**/*preconfig* @ericsnowcurrently
7182
**/*initconfig* @ericsnowcurrently
7283
**/*pathconfig* @ericsnowcurrently
@@ -106,13 +117,17 @@ Objects/exceptions.c @iritkatriel
106117

107118
# Hashing & cryptographic primitives
108119
**/*hashlib* @gpshead @tiran @picnixz
109-
**/*pyhash* @gpshead @tiran
110-
**/sha* @gpshead @tiran @picnixz
111-
Modules/md5* @gpshead @tiran @picnixz
112-
**/*blake* @gpshead @tiran @picnixz
113-
Modules/_hacl/** @gpshead
120+
**/*hashopenssl* @gpshead @tiran @picnixz
121+
**/*pyhash* @gpshead @tiran @picnixz
122+
Modules/*blake* @gpshead @tiran @picnixz
123+
Modules/*md5* @gpshead @tiran @picnixz
124+
Modules/*sha* @gpshead @tiran @picnixz
125+
Modules/_hacl/** @gpshead @picnixz
114126
**/*hmac* @gpshead @picnixz
115127

128+
# libssl
129+
**/*ssl* @gpshead @picnixz
130+
116131
# logging
117132
**/*logging* @vsajip
118133

@@ -147,6 +162,10 @@ Doc/c-api/module.rst @ericsnowcurrently
147162
**/*importlib/resources/* @jaraco @warsaw @FFY00
148163
**/*importlib/metadata/* @jaraco @warsaw
149164

165+
# Calendar
166+
Lib/calendar.py @AA-Turner
167+
Lib/test/test_calendar.py @AA-Turner
168+
150169
# Dates and times
151170
**/*datetime* @pganssle @abalkin
152171
**/*str*time* @pganssle @abalkin
@@ -163,6 +182,9 @@ Include/internal/pycore_time.h @pganssle @abalkin
163182
**/*imap* @python/email-team
164183
**/*poplib* @python/email-team
165184

185+
# Exclude .mailmap from being owned by @python/email-team
186+
/.mailmap
187+
166188
# Garbage collector
167189
/Modules/gcmodule.c @pablogsal
168190
/Doc/library/gc.rst @pablogsal
@@ -179,12 +201,13 @@ Include/internal/pycore_time.h @pganssle @abalkin
179201
/Tools/cases_generator/ @markshannon
180202

181203
# AST
182-
Python/ast.c @isidentical @JelleZijlstra @eclips4
183-
Python/ast_opt.c @isidentical @eclips4
184-
Parser/asdl.py @isidentical @JelleZijlstra @eclips4
185-
Parser/asdl_c.py @isidentical @JelleZijlstra @eclips4
186-
Lib/ast.py @isidentical @JelleZijlstra @eclips4
187-
Lib/test/test_ast/ @eclips4
204+
Python/ast.c @isidentical @JelleZijlstra @eclips4 @tomasr8
205+
Python/ast_preprocess.c @isidentical @eclips4 @tomasr8
206+
Parser/asdl.py @isidentical @JelleZijlstra @eclips4 @tomasr8
207+
Parser/asdl_c.py @isidentical @JelleZijlstra @eclips4 @tomasr8
208+
Lib/ast.py @isidentical @JelleZijlstra @eclips4 @tomasr8
209+
Lib/_ast_unparse.py @isidentical @JelleZijlstra @eclips4 @tomasr8
210+
Lib/test/test_ast/ @eclips4 @tomasr8
188211

189212
# Mock
190213
/Lib/unittest/mock.py @cjw296
@@ -193,6 +216,11 @@ Lib/test/test_ast/ @eclips4
193216
# multiprocessing
194217
**/*multiprocessing* @gpshead
195218

219+
# pydoc
220+
Lib/pydoc.py @AA-Turner
221+
Lib/pydoc_data/ @AA-Turner
222+
Lib/test/test_pydoc/ @AA-Turner
223+
196224
# SQLite 3
197225
**/*sqlite* @berkerpeksag @erlend-aasland
198226

@@ -205,6 +233,11 @@ Lib/test/test_ast/ @eclips4
205233
**/*pdb* @gaogaotiantian
206234
**/*bdb* @gaogaotiantian
207235

236+
# types
237+
Lib/test/test_types.py @AA-Turner
238+
Lib/types.py @AA-Turner
239+
Modules/_typesmodule.c @AA-Turner
240+
208241
# Limited C API & stable ABI
209242
Tools/build/stable_abi.py @encukou
210243
Misc/stable_abi.toml @encukou
@@ -222,6 +255,11 @@ Doc/c-api/stable.rst @encukou
222255
/Tools/msi/ @python/windows-team
223256
/Tools/nuget/ @python/windows-team
224257

258+
# Zstandard
259+
Lib/compression/zstd/ @AA-Turner
260+
Lib/test/test_zstd.py @AA-Turner
261+
Modules/_zstd/ @AA-Turner
262+
225263
# Misc
226264
**/*itertools* @rhettinger
227265
**/*collections* @rhettinger
@@ -254,6 +292,9 @@ Doc/c-api/stable.rst @encukou
254292

255293
**/*cjkcodecs* @corona10
256294

295+
# Patchcheck
296+
Tools/patchcheck/ @AA-Turner
297+
257298
# macOS
258299
/Mac/ @python/macos-team
259300
**/*osx_support* @python/macos-team
@@ -265,16 +306,20 @@ Doc/c-api/stable.rst @encukou
265306
**/*zipfile/_path/* @jaraco
266307

267308
# Argument Clinic
268-
/Tools/clinic/** @erlend-aasland
269-
/Lib/test/test_clinic.py @erlend-aasland
270-
Doc/howto/clinic.rst @erlend-aasland
309+
/Tools/clinic/** @erlend-aasland @AA-Turner
310+
/Lib/test/test_clinic.py @erlend-aasland @AA-Turner
311+
Doc/howto/clinic.rst @erlend-aasland @AA-Turner
271312

272313
# Subinterpreters
273314
**/*interpreteridobject.* @ericsnowcurrently
274315
**/*crossinterp* @ericsnowcurrently
275-
Lib/test/support/interpreters/ @ericsnowcurrently
276316
Modules/_interp*module.c @ericsnowcurrently
317+
Lib/test/test__interp*.py @ericsnowcurrently
318+
Lib/concurrent/interpreters/ @ericsnowcurrently
319+
Lib/test/support/channels.py @ericsnowcurrently
320+
Doc/library/concurrent.interpreters.rst @ericsnowcurrently
277321
Lib/test/test_interpreters/ @ericsnowcurrently
322+
Lib/concurrent/futures/interpreter.py @ericsnowcurrently
278323

279324
# Android
280325
**/*Android* @mhsmith @freakboy3742
@@ -289,7 +334,12 @@ Lib/test/test_interpreters/ @ericsnowcurrently
289334
**/*-ios* @freakboy3742
290335

291336
# WebAssembly
292-
/Tools/wasm/ @brettcannon @freakboy3742
337+
Tools/wasm/config.site-wasm32-emscripten @freakboy3742
338+
/Tools/wasm/README.md @brettcannon @freakboy3742
339+
/Tools/wasm/wasi-env @brettcannon
340+
/Tools/wasm/wasi.py @brettcannon
341+
/Tools/wasm/emscripten @freakboy3742
342+
/Tools/wasm/wasi @brettcannon
293343

294344
# SBOM
295345
/Misc/externals.spdx.json @sethmlarson
@@ -302,9 +352,30 @@ Lib/test/test_configparser.py @jaraco
302352

303353
# Doc sections
304354
Doc/reference/ @willingc @AA-Turner
355+
Doc/whatsnew/ @AA-Turner
305356

306357
**/*weakref* @kumaraditya303
307358

308359
# Colorize
309360
Lib/_colorize.py @hugovk
310361
Lib/test/test__colorize.py @hugovk
362+
363+
# Fuzzing
364+
Modules/_xxtestfuzz/ @ammaraskar
365+
366+
# t-strings
367+
**/*interpolationobject* @lysnikolaou
368+
**/*templateobject* @lysnikolaou
369+
**/*templatelib* @lysnikolaou @AA-Turner
370+
**/*tstring* @lysnikolaou
371+
372+
# Remote debugging
373+
Python/remote_debug.h @pablogsal
374+
Python/remote_debugging.c @pablogsal
375+
Modules/_remote_debugging_module.c @pablogsal @ambv @1st1
376+
377+
# gettext
378+
**/*gettext* @tomasr8
379+
380+
# Internal Docs
381+
InternalDocs/ @AA-Turner

.github/CONTRIBUTING.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ Contributing to Python
44
Build Status
55
------------
66

7-
- `Buildbot status overview <https://buildbot.python.org/all/#/release_status>`_
7+
- `Buildbot status overview <https://buildbot.python.org/#/release_status>`_
88

99
- `GitHub Actions status <https://github.com/python/cpython/actions/workflows/build.yml>`_
1010

.github/ISSUE_TEMPLATE/bug.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ body:
4040
- "3.12"
4141
- "3.13"
4242
- "3.14"
43+
- "3.15"
4344
- "CPython main branch"
4445
validations:
4546
required: true

.github/ISSUE_TEMPLATE/crash.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ body:
3333
- "3.12"
3434
- "3.13"
3535
- "3.14"
36+
- "3.15"
3637
- "CPython main branch"
3738
validations:
3839
required: true

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ Please read this comment in its entirety. It's quite important.
77
It should be in the following format:
88
99
```
10-
gh-NNNNN: Summary of the changes made
10+
gh-NNNNNN: Summary of the changes made
1111
```
1212
13-
Where: gh-NNNNN refers to the GitHub issue number.
13+
Where: gh-NNNNNN refers to the GitHub issue number.
1414
1515
Most PRs will require an issue number. Trivial changes, like fixing a typo, do not need an issue.
1616
@@ -20,11 +20,11 @@ If this is a backport PR (PR made against branches other than `main`),
2020
please ensure that the PR title is in the following format:
2121
2222
```
23-
[X.Y] <title from the original PR> (GH-NNNN)
23+
[X.Y] <title from the original PR> (GH-NNNNNN)
2424
```
2525
26-
Where: [X.Y] is the branch name, e.g. [3.6].
26+
Where: [X.Y] is the branch name, for example: [3.13].
2727
28-
GH-NNNN refers to the PR number from `main`.
28+
GH-NNNNNN refers to the PR number from `main`.
2929
3030
-->

.github/actionlint.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
self-hosted-runner:
2-
labels: ["windows-aarch64"]
2+
# Pending https://github.com/rhysd/actionlint/issues/533
3+
labels: ["windows-11-arm"]
34

45
config-variables: null
56

0 commit comments

Comments
 (0)