Skip to content

Commit 9431e94

Browse files
Merge branch 'main' into feature/speedup-datetime-replace
2 parents 53a9b6f + 809eed4 commit 9431e94

File tree

1,071 files changed

+49787
-34446
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,071 files changed

+49787
-34446
lines changed

.cirrus-DISABLED.yml

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

.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
@@ -84,6 +85,7 @@ Lib/keyword.py generated
8485
Lib/test/levenshtein_examples.json generated
8586
Lib/test/test_stable_abi_ctypes.py generated
8687
Lib/token.py generated
88+
Misc/sbom.spdx.json generated
8789
Objects/typeslots.inc generated
8890
PC/python3dll.c generated
8991
Parser/parser.c generated
@@ -92,7 +94,6 @@ Programs/test_frozenmain.h generated
9294
Python/Python-ast.c generated
9395
Python/executor_cases.c.h generated
9496
Python/generated_cases.c.h generated
95-
Python/abstract_interp_cases.c.h generated
9697
Python/opcode_targets.h generated
9798
Python/stdlib_module_names.h generated
9899
Tools/peg_generator/pegen/grammar_parser.py generated

.github/CODEOWNERS

Lines changed: 62 additions & 9 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
@@ -188,6 +234,13 @@ Doc/c-api/stable.rst @encukou
188234
/Lib/test/test_clinic.py @erlend-aasland @AlexWaygood
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
193246

.github/workflows/build.yml

Lines changed: 27 additions & 18 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
193195
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
209211
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,8 +227,8 @@ 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
231233
if: needs.check_source.outputs.run_tests == 'true'
232234
uses: ./.github/workflows/reusable-ubuntu.yml
@@ -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
@@ -537,12 +546,12 @@ jobs:
537546
&& '
538547
check_generated_files,
539548
build_macos,
540-
build_macos_free_threaded,
549+
build_macos_free_threading,
541550
build_ubuntu,
542-
build_ubuntu_free_threaded,
551+
build_ubuntu_free_threading,
543552
build_ubuntu_ssltests,
544553
build_windows,
545-
build_windows_free_threaded,
554+
build_windows_free_threading,
546555
build_asan,
547556
'
548557
|| ''

.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)