Skip to content

Commit c8a7bb5

Browse files
committed
Merge remote-tracking branch 'upstream/main' into default-ssl-verify-flags
2 parents f1b59ed + 854e2bc commit c8a7bb5

File tree

1,164 files changed

+62862
-37407
lines changed

Some content is hidden

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

1,164 files changed

+62862
-37407
lines changed

.cirrus-DISABLED.yml

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

.devcontainer/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ ENV WASI_SDK_VERSION=20
66
ENV WASI_SDK_PATH=/opt/wasi-sdk
77

88
ENV WASMTIME_HOME=/opt/wasmtime
9-
ENV WASMTIME_VERSION=9.0.1
9+
ENV WASMTIME_VERSION=14.0.4
1010
ENV WASMTIME_CPU_ARCH=x86_64
1111

1212
RUN dnf -y --nodocs --setopt=install_weak_deps=False install /usr/bin/{blurb,clang,curl,git,ln,tar,xz} 'dnf-command(builddep)' && \

.gitattributes

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ Include/internal/pycore_ast_state.h generated
7676
Include/internal/pycore_opcode.h generated
7777
Include/internal/pycore_opcode_metadata.h generated
7878
Include/internal/pycore_*_generated.h generated
79+
Include/internal/pycore_uop_ids.h generated
7980
Include/opcode.h generated
8081
Include/opcode_ids.h generated
8182
Include/token.h generated
@@ -86,6 +87,7 @@ Lib/test/certdata/*.0 generated
8687
Lib/test/levenshtein_examples.json generated
8788
Lib/test/test_stable_abi_ctypes.py generated
8889
Lib/token.py generated
90+
Misc/sbom.spdx.json generated
8991
Objects/typeslots.inc generated
9092
PC/python3dll.c generated
9193
Parser/parser.c generated
@@ -94,7 +96,6 @@ Programs/test_frozenmain.h generated
9496
Python/Python-ast.c generated
9597
Python/executor_cases.c.h generated
9698
Python/generated_cases.c.h generated
97-
Python/abstract_interp_cases.c.h generated
9899
Python/opcode_targets.h generated
99100
Python/stdlib_module_names.h generated
100101
Tools/peg_generator/pegen/grammar_parser.py generated

.github/CODEOWNERS

Lines changed: 68 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ configure* @erlend-aasland @corona10
2121
**/*context* @1st1
2222
**/*genobject* @markshannon
2323
**/*hamt* @1st1
24+
**/*jit* @brandtbucher
2425
Objects/set* @rhettinger
2526
Objects/dict* @methane @markshannon
2627
Objects/typevarobject.c @JelleZijlstra
@@ -37,9 +38,36 @@ Python/ast_opt.c @isidentical
3738
Python/bytecodes.c @markshannon @gvanrossum
3839
Python/optimizer*.c @markshannon @gvanrossum
3940
Lib/test/test_patma.py @brandtbucher
40-
Lib/test/test_peepholer.py @brandtbucher
4141
Lib/test/test_type_*.py @JelleZijlstra
4242
Lib/test/test_capi/test_misc.py @markshannon @gvanrossum
43+
Tools/c-analyzer/ @ericsnowcurrently
44+
45+
# dbm
46+
**/*dbm* @corona10 @erlend-aasland @serhiy-storchaka
47+
48+
# runtime state/lifecycle
49+
**/*pylifecycle* @ericsnowcurrently
50+
**/*pystate* @ericsnowcurrently
51+
**/*preconfig* @ericsnowcurrently
52+
**/*initconfig* @ericsnowcurrently
53+
**/*pathconfig* @ericsnowcurrently
54+
**/*sysmodule* @ericsnowcurrently
55+
**/*bltinmodule* @ericsnowcurrently
56+
**/*gil* @ericsnowcurrently
57+
Include/internal/pycore_runtime.h @ericsnowcurrently
58+
Include/internal/pycore_interp.h @ericsnowcurrently
59+
Include/internal/pycore_tstate.h @ericsnowcurrently
60+
Include/internal/pycore_*_state.h @ericsnowcurrently
61+
Include/internal/pycore_*_init.h @ericsnowcurrently
62+
Include/internal/pycore_atexit.h @ericsnowcurrently
63+
Include/internal/pycore_freelist.h @ericsnowcurrently
64+
Include/internal/pycore_global_objects.h @ericsnowcurrently
65+
Include/internal/pycore_obmalloc.h @ericsnowcurrently
66+
Include/internal/pycore_pymem.h @ericsnowcurrently
67+
Modules/main.c @ericsnowcurrently
68+
Programs/_bootstrap_python.c @ericsnowcurrently
69+
Programs/python.c @ericsnowcurrently
70+
Tools/build/generate_global_objects.py @ericsnowcurrently
4371

4472
# Exceptions
4573
Lib/traceback.py @iritkatriel
@@ -49,13 +77,13 @@ Objects/exceptions.c @iritkatriel
4977
Python/traceback.c @iritkatriel
5078

5179
# Hashing
52-
**/*hashlib* @tiran
53-
**/*pyhash* @tiran
54-
**/*sha* @tiran
55-
**/*md5* @tiran
56-
**/*blake* @tiran
57-
/Modules/_blake2/** @tiran
58-
/Modules/_sha3/** @tiran
80+
**/*hashlib* @gpshead @tiran
81+
**/*pyhash* @gpshead @tiran
82+
**/sha* @gpshead @tiran
83+
Modules/md5* @gpshead @tiran
84+
**/*blake* @gpshead @tiran
85+
Modules/_blake2/** @gpshead @tiran
86+
Modules/_hacl/** @gpshead
5987

6088
# logging
6189
**/*logging* @vsajip
@@ -75,7 +103,20 @@ Python/traceback.c @iritkatriel
75103
# Import (including importlib).
76104
**/*import* @brettcannon @ericsnowcurrently @ncoghlan @warsaw
77105
/Python/import.c @kumaraditya303
78-
**/*importlib/resources/* @jaraco @warsaw @FFY00
106+
Python/dynload_*.c @ericsnowcurrently
107+
**/*freeze* @ericsnowcurrently
108+
**/*frozen* @ericsnowcurrently
109+
**/*modsupport* @ericsnowcurrently
110+
**/*modulefinder* @ericsnowcurrently
111+
**/*moduleobject* @ericsnowcurrently
112+
**/*multiphase* @ericsnowcurrently
113+
**/*pkgutil* @ericsnowcurrently
114+
**/*pythonrun* @ericsnowcurrently
115+
**/*runpy* @ericsnowcurrently
116+
**/*singlephase* @ericsnowcurrently
117+
Lib/test/test_module/ @ericsnowcurrently
118+
Doc/c-api/module.rst @ericsnowcurrently
119+
**/*importlib/resources/* @jaraco @warsaw @FFY00
79120
**/importlib/metadata/* @jaraco @warsaw
80121

81122
# Dates and times
@@ -119,6 +160,9 @@ Lib/ast.py @isidentical
119160
/Lib/unittest/mock.py @cjw296
120161
/Lib/test/test_unittest/testmock/* @cjw296
121162

163+
# multiprocessing
164+
**/*multiprocessing* @gpshead
165+
122166
# SQLite 3
123167
**/*sqlite* @berkerpeksag @erlend-aasland
124168

@@ -156,6 +200,8 @@ Doc/c-api/stable.rst @encukou
156200

157201
**/*dataclasses* @ericvsmith
158202

203+
**/*ensurepip* @pfmoore @pradyunsg
204+
159205
**/*idlelib* @terryjreedy
160206

161207
**/*typing* @JelleZijlstra @AlexWaygood
@@ -184,9 +230,20 @@ Doc/c-api/stable.rst @encukou
184230
**/*zipfile/_path/* @jaraco
185231

186232
# Argument Clinic
187-
/Tools/clinic/** @erlend-aasland @AlexWaygood
188-
/Lib/test/test_clinic.py @erlend-aasland @AlexWaygood
233+
/Tools/clinic/** @erlend-aasland
234+
/Lib/test/test_clinic.py @erlend-aasland
189235
Doc/howto/clinic.rst @erlend-aasland
190236

237+
# Subinterpreters
238+
**/*interpreteridobject.* @ericsnowcurrently
239+
**/*crossinterp* @ericsnowcurrently
240+
Lib/test/support/interpreters/ @ericsnowcurrently
241+
Modules/_xx*interp*module.c @ericsnowcurrently
242+
Lib/test/test_interpreters/ @ericsnowcurrently
243+
191244
# WebAssembly
192245
/Tools/wasm/ @brettcannon
246+
247+
# SBOM
248+
/Misc/sbom.spdx.json @sethmlarson
249+
/Tools/build/generate_sbom.py @sethmlarson

.github/workflows/add-issue-header.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
permissions:
2020
issues: write
2121
steps:
22-
- uses: actions/github-script@v6
22+
- uses: actions/github-script@v7
2323
with:
2424
# language=JavaScript
2525
script: |

.github/workflows/build.yml

Lines changed: 30 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ jobs:
128128
if: needs.check_source.outputs.run_tests == 'true'
129129
steps:
130130
- uses: actions/checkout@v4
131-
- uses: actions/setup-python@v4
131+
- uses: actions/setup-python@v5
132132
with:
133133
python-version: '3.x'
134134
- name: Restore config.cache
@@ -142,6 +142,8 @@ jobs:
142142
run: echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV
143143
- name: Configure ccache action
144144
uses: hendrikmuhs/[email protected]
145+
with:
146+
save: false
145147
- name: Check Autoconf and aclocal versions
146148
run: |
147149
grep "Generated by GNU Autoconf 2.71" configure
@@ -187,13 +189,13 @@ jobs:
187189
if: needs.check_source.outputs.run_tests == 'true'
188190
uses: ./.github/workflows/reusable-windows.yml
189191

190-
build_windows_free_threaded:
191-
name: 'Windows (free-threaded)'
192+
build_windows_free_threading:
193+
name: 'Windows (free-threading)'
192194
needs: check_source
193-
if: needs.check_source.outputs.run_tests == 'true' && contains(github.event.pull_request.labels.*.name, 'topic-free-threaded')
195+
if: needs.check_source.outputs.run_tests == 'true'
194196
uses: ./.github/workflows/reusable-windows.yml
195197
with:
196-
free-threaded: true
198+
free-threading: true
197199

198200
build_macos:
199201
name: 'macOS'
@@ -203,14 +205,14 @@ jobs:
203205
with:
204206
config_hash: ${{ needs.check_source.outputs.config_hash }}
205207

206-
build_macos_free_threaded:
207-
name: 'macOS (free-threaded)'
208+
build_macos_free_threading:
209+
name: 'macOS (free-threading)'
208210
needs: check_source
209-
if: needs.check_source.outputs.run_tests == 'true' && contains(github.event.pull_request.labels.*.name, 'topic-free-threaded')
211+
if: needs.check_source.outputs.run_tests == 'true'
210212
uses: ./.github/workflows/reusable-macos.yml
211213
with:
212214
config_hash: ${{ needs.check_source.outputs.config_hash }}
213-
free-threaded: true
215+
free-threading: true
214216

215217
build_ubuntu:
216218
name: 'Ubuntu'
@@ -225,10 +227,10 @@ jobs:
225227
--with-pydebug \
226228
--with-openssl=$OPENSSL_DIR
227229
228-
build_ubuntu_free_threaded:
229-
name: 'Ubuntu (free-threaded)'
230+
build_ubuntu_free_threading:
231+
name: 'Ubuntu (free-threading)'
230232
needs: check_source
231-
if: needs.check_source.outputs.run_tests == 'true' && contains(github.event.pull_request.labels.*.name, 'topic-free-threaded')
233+
if: needs.check_source.outputs.run_tests == 'true'
232234
uses: ./.github/workflows/reusable-ubuntu.yml
233235
with:
234236
config_hash: ${{ needs.check_source.outputs.config_hash }}
@@ -284,6 +286,8 @@ jobs:
284286
echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV
285287
- name: Configure ccache action
286288
uses: hendrikmuhs/[email protected]
289+
with:
290+
save: false
287291
- name: Configure CPython
288292
run: ./configure --config-cache --with-pydebug --with-openssl=$OPENSSL_DIR
289293
- name: Build CPython
@@ -327,6 +331,8 @@ jobs:
327331
echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV
328332
- name: Configure ccache action
329333
uses: hendrikmuhs/[email protected]
334+
with:
335+
save: false
330336
- name: Setup directory envs for out-of-tree builds
331337
run: |
332338
echo "CPYTHON_RO_SRCDIR=$(realpath -m ${GITHUB_WORKSPACE}/../cpython-ro-srcdir)" >> $GITHUB_ENV
@@ -395,7 +401,7 @@ jobs:
395401
-x test_subprocess \
396402
-x test_signal \
397403
-x test_sysconfig
398-
- uses: actions/upload-artifact@v3
404+
- uses: actions/upload-artifact@v4
399405
if: always()
400406
with:
401407
name: hypothesis-example-db
@@ -446,6 +452,9 @@ jobs:
446452
echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV
447453
- name: Configure ccache action
448454
uses: hendrikmuhs/[email protected]
455+
with:
456+
save: ${{ github.event_name == 'push' }}
457+
max-size: "200M"
449458
- name: Configure CPython
450459
run: ./configure --config-cache --with-address-sanitizer --without-pymalloc
451460
- name: Build CPython
@@ -483,14 +492,14 @@ jobs:
483492
output-sarif: true
484493
sanitizer: ${{ matrix.sanitizer }}
485494
- name: Upload crash
486-
uses: actions/upload-artifact@v3
495+
uses: actions/upload-artifact@v4
487496
if: failure() && steps.build.outcome == 'success'
488497
with:
489498
name: ${{ matrix.sanitizer }}-artifacts
490499
path: ./out/artifacts
491500
- name: Upload SARIF
492501
if: always() && steps.build.outcome == 'success'
493-
uses: github/codeql-action/upload-sarif@v2
502+
uses: github/codeql-action/upload-sarif@v3
494503
with:
495504
sarif_file: cifuzz-sarif/results.sarif
496505
checkout_path: cifuzz-sarif
@@ -504,12 +513,12 @@ jobs:
504513
- check-docs
505514
- check_generated_files
506515
- build_macos
507-
- build_macos_free_threaded
516+
- build_macos_free_threading
508517
- build_ubuntu
509-
- build_ubuntu_free_threaded
518+
- build_ubuntu_free_threading
510519
- build_ubuntu_ssltests
511520
- build_windows
512-
- build_windows_free_threaded
521+
- build_windows_free_threading
513522
- test_hypothesis
514523
- build_asan
515524
- cifuzz
@@ -521,10 +530,7 @@ jobs:
521530
uses: re-actors/alls-green@05ac9388f0aebcb5727afa17fcccfecd6f8ec5fe
522531
with:
523532
allowed-failures: >-
524-
build_macos_free_threaded,
525-
build_ubuntu_free_threaded,
526533
build_ubuntu_ssltests,
527-
build_windows_free_threaded,
528534
cifuzz,
529535
test_hypothesis,
530536
allowed-skips: >-
@@ -540,12 +546,12 @@ jobs:
540546
&& '
541547
check_generated_files,
542548
build_macos,
543-
build_macos_free_threaded,
549+
build_macos_free_threading,
544550
build_ubuntu,
545-
build_ubuntu_free_threaded,
551+
build_ubuntu_free_threading,
546552
build_ubuntu_ssltests,
547553
build_windows,
548-
build_windows_free_threaded,
554+
build_windows_free_threading,
549555
build_asan,
550556
'
551557
|| ''

.github/workflows/build_msi.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@ jobs:
3232
strategy:
3333
matrix:
3434
type: [x86, x64, arm64]
35+
env:
36+
IncludeFreethreaded: true
3537
steps:
3638
- uses: actions/checkout@v4
3739
- name: Build CPython installer

0 commit comments

Comments
 (0)