Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit34a1c31

Browse files
committed
Merge remote-tracking branch 'upstream/main' into feat/curses/error-type-125843
2 parentsbf54774 +d55e11b commit34a1c31

File tree

964 files changed

+48540
-17519
lines changed

Some content is hidden

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

964 files changed

+48540
-17519
lines changed

‎.github/CODEOWNERS

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ Include/internal/pycore_time.h @pganssle @abalkin
188188

189189
# AST
190190
Python/ast.c@isidentical@JelleZijlstra@eclips4
191-
Python/ast_opt.c@isidentical@eclips4
191+
Python/ast_preprocess.c@isidentical@eclips4
192192
Parser/asdl.py@isidentical@JelleZijlstra@eclips4
193193
Parser/asdl_c.py@isidentical@JelleZijlstra@eclips4
194194
Lib/ast.py@isidentical@JelleZijlstra@eclips4
@@ -298,7 +298,12 @@ Lib/test/test_interpreters/ @ericsnowcurrently
298298
**/*-ios*@freakboy3742
299299

300300
# WebAssembly
301-
/Tools/wasm/@brettcannon@freakboy3742
301+
Tools/wasm/config.site-wasm32-emscripten@freakboy3742
302+
/Tools/wasm/README.md@brettcannon@freakboy3742
303+
/Tools/wasm/wasi-env@brettcannon
304+
/Tools/wasm/wasi.py@brettcannon
305+
/Tools/wasm/emscripten@freakboy3742
306+
/Tools/wasm/wasi@brettcannon
302307

303308
# SBOM
304309
/Misc/externals.spdx.json@sethmlarson
@@ -320,3 +325,9 @@ Lib/test/test__colorize.py @hugovk
320325

321326
# Fuzzing
322327
Modules/_xxtestfuzz/@ammaraskar
328+
329+
# t-strings
330+
**/*interpolationobject*@lysnikolaou
331+
**/*templateobject*@lysnikolaou
332+
**/*templatelib*@lysnikolaou
333+
**/*tstring*@lysnikolaou

‎.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/workflows/build.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -422,8 +422,9 @@ jobs:
422422
# failing when executed from inside a virtual environment.
423423
"${VENV_PYTHON}" -m test \
424424
-W \
425-
-o \
425+
--slowest \
426426
-j4 \
427+
--timeout 900 \
427428
-x test_asyncio \
428429
-x test_multiprocessing_fork \
429430
-x test_multiprocessing_forkserver \

‎.github/workflows/jit.yml

Lines changed: 29 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -95,10 +95,10 @@ jobs:
9595
with:
9696
python-version:'3.11'
9797

98+
# PCbuild downloads LLVM automatically:
9899
-name:Windows
99100
if:runner.os == 'Windows'
100101
run:|
101-
choco install llvm --allow-downgrade --no-progress --version ${{ matrix.llvm }}.1.0
102102
./PCbuild/build.bat --experimental-jit ${{ matrix.debug && '-d' || '' }} -p ${{ matrix.architecture }}
103103
./PCbuild/rt.bat ${{ matrix.debug && '-d' || '' }} -p ${{ matrix.architecture }} -q --multiprocess 0 --timeout 4500 --verbose2 --verbose3
104104
@@ -113,7 +113,7 @@ jobs:
113113
find /usr/local/bin -lname '*/Library/Frameworks/Python.framework/*' -delete
114114
brew install llvm@${{ matrix.llvm }}
115115
export SDKROOT="$(xcrun --show-sdk-path)"
116-
./configure --enable-experimental-jit ${{ matrix.debug && '--with-pydebug' || '' }}
116+
./configure --enable-experimental-jit--enable-universalsdk --with-universal-archs=universal2${{ matrix.debug && '--with-pydebug' || '' }}
117117
make all --jobs 4
118118
./python.exe -m test --multiprocess 0 --timeout 4500 --verbose2 --verbose3
119119
@@ -126,29 +126,30 @@ jobs:
126126
make all --jobs 4
127127
./python -m test --multiprocess 0 --timeout 4500 --verbose2 --verbose3
128128
129-
jit-with-disabled-gil:
130-
name:Free-Threaded (Debug)
131-
needs:interpreter
132-
runs-on:ubuntu-24.04
133-
timeout-minutes:90
134-
strategy:
135-
fail-fast:false
136-
matrix:
137-
llvm:
138-
-19
139-
steps:
140-
-uses:actions/checkout@v4
141-
with:
142-
persist-credentials:false
143-
-uses:actions/setup-python@v5
144-
with:
145-
python-version:'3.11'
146-
-name:Build with JIT enabled and GIL disabled
147-
run:|
148-
sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" ./llvm.sh ${{ matrix.llvm }}
149-
export PATH="$(llvm-config-${{ matrix.llvm }} --bindir):$PATH"
150-
./configure --enable-experimental-jit --with-pydebug --disable-gil
151-
make all --jobs 4
152-
-name:Run tests
153-
run:|
154-
./python -m test --multiprocess 0 --timeout 4500 --verbose2 --verbose3
129+
# XXX: GH-133171
130+
# jit-with-disabled-gil:
131+
# name: Free-Threaded (Debug)
132+
# needs: interpreter
133+
# runs-on: ubuntu-24.04
134+
# timeout-minutes: 90
135+
# strategy:
136+
# fail-fast: false
137+
# matrix:
138+
# llvm:
139+
# - 19
140+
# steps:
141+
# - uses: actions/checkout@v4
142+
# with:
143+
# persist-credentials: false
144+
# - uses: actions/setup-python@v5
145+
# with:
146+
# python-version: '3.11'
147+
# - name: Build with JIT enabled and GIL disabled
148+
# run: |
149+
# sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" ./llvm.sh ${{ matrix.llvm }}
150+
# export PATH="$(llvm-config-${{ matrix.llvm }} --bindir):$PATH"
151+
# ./configure --enable-experimental-jit --with-pydebug --disable-gil
152+
# make all --jobs 4
153+
# - name: Run tests
154+
# run: |
155+
# ./python -m test --multiprocess 0 --timeout 4500 --verbose2 --verbose3

‎.github/workflows/mypy.yml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,23 @@ on:
88
pull_request:
99
paths:
1010
-".github/workflows/mypy.yml"
11+
-"Lib/_colorize.py"
1112
-"Lib/_pyrepl/**"
1213
-"Lib/test/libregrtest/**"
14+
-"Lib/tomllib/**"
15+
-"Misc/mypy/**"
16+
-"Tools/build/compute-changes.py"
17+
-"Tools/build/deepfreeze.py"
1318
-"Tools/build/generate_sbom.py"
19+
-"Tools/build/generate-build-details.py"
20+
-"Tools/build/verify_ensurepip_wheels.py"
21+
-"Tools/build/update_file.py"
22+
-"Tools/build/umarshal.py"
1423
-"Tools/cases_generator/**"
1524
-"Tools/clinic/**"
1625
-"Tools/jit/**"
1726
-"Tools/peg_generator/**"
1827
-"Tools/requirements-dev.txt"
19-
-"Tools/wasm/**"
2028
workflow_dispatch:
2129

2230
permissions:
@@ -42,12 +50,12 @@ jobs:
4250
target:[
4351
"Lib/_pyrepl",
4452
"Lib/test/libregrtest",
53+
"Lib/tomllib",
4554
"Tools/build",
4655
"Tools/cases_generator",
4756
"Tools/clinic",
4857
"Tools/jit",
4958
"Tools/peg_generator",
50-
"Tools/wasm",
5159
]
5260
steps:
5361
-uses:actions/checkout@v4

‎.github/workflows/reusable-context.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,9 @@ jobs:
9797
run:python Tools/build/compute-changes.py
9898
env:
9999
GITHUB_DEFAULT_BRANCH:${{ github.event.repository.default_branch }}
100+
GITHUB_EVENT_NAME:${{ github.event_name }}
101+
CCF_TARGET_REF:${{ github.base_ref || github.event.repository.default_branch }}
102+
CCF_HEAD_REF:${{ github.event.pull_request.head.sha || github.sha }}
100103

101104
-name:Compute hash for config cache key
102105
id:config-hash

‎.github/workflows/reusable-docs.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ jobs:
6666
run:|
6767
set -Eeuo pipefail
6868
# Build docs with the nit-picky option; write warnings to file
69-
make -C Doc/ PYTHON=../python SPHINXOPTS="--quiet --nitpicky --fail-on-warning --keep-going --warning-file sphinx-warnings.txt" html
69+
make -C Doc/ PYTHON=../python SPHINXOPTS="--quiet --nitpicky --fail-on-warning --warning-file sphinx-warnings.txt" html
7070
-name:'Check warnings'
7171
if:github.event_name == 'pull_request'
7272
run:|
@@ -101,4 +101,4 @@ jobs:
101101
run:make -C Doc/ PYTHON=../python venv
102102
# Use "xvfb-run" since some doctest tests open GUI windows
103103
-name:'Run documentation doctest'
104-
run:xvfb-run make -C Doc/ PYTHON=../python SPHINXERRORHANDLING="--fail-on-warning --keep-going" doctest
104+
run:xvfb-run make -C Doc/ PYTHON=../python SPHINXERRORHANDLING="--fail-on-warning" doctest

‎.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,11 +138,12 @@ Tools/unicode/data/
138138
# hendrikmuhs/ccache-action@v1
139139
/.ccache
140140
/cross-build/
141-
/jit_stencils.h
141+
/jit_stencils*.h
142142
/platform
143143
/profile-clean-stamp
144144
/profile-run-stamp
145145
/profile-bolt-stamp
146+
/profile-gen-stamp
146147
/pybuilddir.txt
147148
/pyconfig.h
148149
/python-config

‎.pre-commit-config.yaml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
repos:
22
-repo:https://github.com/astral-sh/ruff-pre-commit
3-
rev:v0.11.6
3+
rev:v0.11.8
44
hooks:
55
-id:ruff
66
name:Run Ruff (lint) on Doc/
@@ -22,14 +22,14 @@ repos:
2222
name:Run Ruff (format) on Doc/
2323
args:[--check]
2424
files:^Doc/
25+
-id:ruff-format
26+
name:Run Ruff (format) on Tools/build/check_warnings.py
27+
args:[--check, --config=Tools/build/.ruff.toml]
28+
files:^Tools/build/check_warnings.py
2529

2630
-repo:https://github.com/psf/black-pre-commit-mirror
2731
rev:25.1.0
2832
hooks:
29-
-id:black
30-
name:Run Black on Tools/build/check_warnings.py
31-
files:^Tools/build/check_warnings.py
32-
args:[--line-length=79]
3333
-id:black
3434
name:Run Black on Tools/jit/
3535
files:^Tools/jit/
@@ -47,6 +47,8 @@ repos:
4747
exclude:Lib/test/tokenizedata/coding20731.py
4848
-id:trailing-whitespace
4949
types_or:[c, inc, python, rst]
50+
-id:trailing-whitespace
51+
files:'\.(gram)$'
5052

5153
-repo:https://github.com/python-jsonschema/check-jsonschema
5254
rev:0.33.0

‎.ruff.toml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Default settings for Ruff in CPython
2+
3+
# PYTHON_FOR_REGEN
4+
target-version ="py310"
5+
6+
# PEP 8
7+
line-length =79
8+
9+
# Enable automatic fixes by default.
10+
# To override this, use ``fix = false`` in a subdirectory's config file
11+
# or ``--no-fix`` on the command line.
12+
fix =true

‎Android/README.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,13 @@ it:
2525
`android-sdk/cmdline-tools/latest`.
2626
*`export ANDROID_HOME=/path/to/android-sdk`
2727

28-
The`android.py` script also requires the following commands to be on the`PATH`:
28+
The`android.py` script will automatically use the SDK's`sdkmanager` to install
29+
any packages it needs.
30+
31+
The script also requires the following commands to be on the`PATH`:
2932

3033
*`curl`
3134
*`java` (or set the`JAVA_HOME` environment variable)
32-
*`tar`
3335

3436

3537
##Building
@@ -97,7 +99,7 @@ similar to the `Android` directory of the CPython source tree.
9799
The Python test suite can be run on Linux, macOS, or Windows:
98100

99101
* On Linux, the emulator needs access to the KVM virtualization interface, and
100-
a DISPLAY environment variable pointing at an X server.
102+
a DISPLAY environment variable pointing at an X server. Xvfb is acceptable.
101103

102104
The test suite can usually be run on a device with 2 GB of RAM, but this is
103105
borderline, so you may need to increase it to 4 GB. As of Android

‎Android/android.py

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -138,19 +138,19 @@ def make_build_python(context):
138138
run(["make","-j",str(os.cpu_count())])
139139

140140

141-
defunpack_deps(host):
141+
defunpack_deps(host,prefix_dir):
142142
deps_url="https://github.com/beeware/cpython-android-source-deps/releases/download"
143143
forname_verin ["bzip2-1.0.8-2","libffi-3.4.4-3","openssl-3.0.15-4",
144144
"sqlite-3.49.1-0","xz-5.4.6-1"]:
145145
filename=f"{name_ver}-{host}.tar.gz"
146146
download(f"{deps_url}/{name_ver}/{filename}")
147-
run(["tar","-xf",filename])
147+
shutil.unpack_archive(filename,prefix_dir)
148148
os.remove(filename)
149149

150150

151151
defdownload(url,target_dir="."):
152152
out_path=f"{target_dir}/{basename(url)}"
153-
run(["curl","-Lf","-o",out_path,url])
153+
run(["curl","-Lf","--retry","5","--retry-all-errors","-o",out_path,url])
154154
returnout_path
155155

156156

@@ -162,8 +162,7 @@ def configure_host_python(context):
162162
prefix_dir=host_dir/"prefix"
163163
ifnotprefix_dir.exists():
164164
prefix_dir.mkdir()
165-
os.chdir(prefix_dir)
166-
unpack_deps(context.host)
165+
unpack_deps(context.host,prefix_dir)
167166

168167
os.chdir(host_dir)
169168
command= [
@@ -241,16 +240,15 @@ def setup_sdk():
241240
# the Gradle wrapper is not included in the CPython repository. Instead, we
242241
# extract it from the Gradle GitHub repository.
243242
defsetup_testbed():
244-
# The Gradle version used for the build is specified in
245-
# testbed/gradle/wrapper/gradle-wrapper.properties. This wrapper version
246-
# doesn't need to match, as any version of the wrapper can download any
247-
# version of Gradle.
248-
version="8.9.0"
249243
paths= ["gradlew","gradlew.bat","gradle/wrapper/gradle-wrapper.jar"]
250-
251244
ifall((TESTBED_DIR/path).exists()forpathinpaths):
252245
return
253246

247+
# The wrapper version isn't important, as any version of the wrapper can
248+
# download any version of Gradle. The Gradle version actually used for the
249+
# build is specified in testbed/gradle/wrapper/gradle-wrapper.properties.
250+
version="8.9.0"
251+
254252
forpathinpaths:
255253
out_path=TESTBED_DIR/path
256254
out_path.parent.mkdir(exist_ok=True)

‎Doc/.ruff.toml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1+
extend ="../.ruff.toml"# Inherit the project-wide settings
2+
13
target-version ="py312"# Align with the version in oldest_supported_sphinx
2-
fix =true
3-
output-format ="full"
4-
line-length =79
54
extend-exclude = [
65
"includes/*",
76
# Temporary exclusions:

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp