Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Python Core Branch - gh-X8VV01 | August #5

Merged
merged 249 commits into from
Aug 31, 2024
Merged
Changes from all commits
Commits
Show all changes
249 commits
Select commit Hold shift + click to select a range
d0b92dd
gh-122573: Require Python 3.10 or newer for Windows builds (GH-122574)
msprotz Aug 4, 2024
5207adf
build(deps-dev): bump mypy from 1.10.1 to 1.11.1 in /Tools (#122550)
dependabot[bot] Aug 5, 2024
1422500
gh-121367: [doc] BUILD_TUPLE arg can be 0 (#122663)
iritkatriel Aug 5, 2024
1bb955a
gh-122459: Optimize pickling by name objects without __module__ (GH-1…
serhiy-storchaka Aug 5, 2024
5bd7291
GH-122616: Simplify LOAD_ATTR_WITH_HINT and STORE_ATTR_WITH_HINT (GH-…
markshannon Aug 5, 2024
44659d3
GH-118943: Handle races when moving jit_stencils.h (GH-120690)
hroncok Aug 5, 2024
35ae4aa
gh-122686: Pin attrs package (for Hypothesis workflow) (#122687)
skirpichev Aug 6, 2024
b0c48b8
gh-116622: Android logging fixes (#122698)
mhsmith Aug 6, 2024
94a4bd7
gh-122704: Fix reference leak in Modules/_pickle.c (GH-122705)
Eclips4 Aug 6, 2024
e74680b
gh-122595: Add more error checks in the compiler (GH-122596)
serhiy-storchaka Aug 6, 2024
b72c748
Fix syntax in generate_re_casefix.py (#122699)
JelleZijlstra Aug 6, 2024
a8be8fc
GH-120024: Refactor code a bit so that escaping calls can be wrapped …
markshannon Aug 6, 2024
ce0d66c
gh-122581: Avoid data races when collecting parser statistics (#122694)
lysnikolaou Aug 6, 2024
fbfab4f
GH-120024: Refactor code generators to uses classes for emitting code…
markshannon Aug 6, 2024
6ff82fd
gh-122686: bump hypothesis from 6.104.2 to 6.108.10 in Tools (#122729)
skirpichev Aug 6, 2024
0b433aa
gh-122681: merge m_atan2() and c_atan2() helper functions (#122682)
skirpichev Aug 6, 2024
8ce70d6
gh-122058: `Lib/inspect`: Update docstrings for `isfunction`, `isgene…
Eclips4 Aug 6, 2024
4c31791
GH-120024: Move three more escaping calls out of conditional statemen…
markshannon Aug 6, 2024
4b66b6b
gh-120104: IDLE: Fix padding in config and search dialogs (#120107)
serhiy-storchaka Aug 6, 2024
58be1c2
gh-112301: Add macOS warning tracking tooling (#122211)
nohlson Aug 6, 2024
c4e8196
Fix duplicated words 'begins with a' in pathlib docstring (#122732)
vitaldmit Aug 6, 2024
1429651
gh-121103: Update site module docs for free-threaded installs (#122737)
colesbury Aug 6, 2024
dc09301
gh-122417: Implement per-thread heap type refcounts (#122418)
colesbury Aug 6, 2024
5b8a6c5
gh-122744: Bump bundled pip to 24.2 (#122745)
pradyunsg Aug 6, 2024
4767a6e
gh-122728: Fix SystemError in PyEval_GetLocals() (#122735)
vstinner Aug 6, 2024
b5e142b
gh-122571: Remove duplicate definition of PY_BUILTIN_HASHLIB_HASHES i…
msprotz Aug 6, 2024
98dba73
GH-73991: Rework `pathlib.Path.rmtree()` into `delete()` (#122368)
barneygale Aug 7, 2024
b6c80e2
Fix typos in comments and docstring (#122720)
xyb Aug 7, 2024
9e551f9
gh-79846: Make ssl.create_default_context() ignore invalid certificat…
pukkandan Aug 7, 2024
013a092
gh-121151: argparse: Fix wrapping of long usage text of arguments ins…
hamdanal Aug 7, 2024
674a50e
gh-117139: Fix an incorrect borrow in bytecodes.c (#122318)
colesbury Aug 7, 2024
76bdeeb
gh-122511: Improve documentation for object identity of mutable/immut…
picnixz Aug 7, 2024
61a8bf2
gh-122759: Remove `assert` from `RERAISE` error handling (#122760)
sobolevn Aug 7, 2024
c25898d
Doc: cmdline.rst: Include -P and -R in usage (#122590)
wimglenn Aug 7, 2024
0bd9375
gh-100256: Skip inaccessible registry keys in the WinAPI mimetype imp…
LucasEsposito Aug 7, 2024
19dd2dc
Bump types-setuptools to 71.1.0.20240726 in /Tools (#122551)
dependabot[bot] Aug 7, 2024
967a4f1
Docs: Change `remove` to `removes` for consistency (#121072)
smij720 Aug 7, 2024
3e753c6
gh-118926: Spill deferred references to stack in cases generator (#12…
colesbury Aug 7, 2024
d2e5be1
gh-122798: Make tests for warnings in the re module more strict (GH-1…
serhiy-storchaka Aug 7, 2024
f9637b4
Remove dead code in the RE parser (GH-122796)
serhiy-storchaka Aug 7, 2024
42d9bec
gh-118761: Improve import time of `pprint` (#122725)
hugovk Aug 7, 2024
e73e7a7
gh-122478: Remove internal frames from tracebacks in REPL (GH-122528)
serhiy-storchaka Aug 7, 2024
540fcc6
gh-118814: Fix the TypeVar constructor when name is passed by keyword…
serhiy-storchaka Aug 7, 2024
e006c73
gh-105201: Add PyIter_NextItem() (#122331)
erlend-aasland Aug 7, 2024
57d7c3e
gh-122247: Move instruction instrumentation sanity check after tracin…
gaogaotiantian Aug 8, 2024
3f76b6b
gh-120782: Update datetime test for static type immutability (#122800)
neonene Aug 8, 2024
6094c6f
gh-116263: Do not rollover empty files in RotatingFileHandler (GH-122…
serhiy-storchaka Aug 8, 2024
fe13c9b
gh-122255: Add black box tests in test_warnings (GH-122227)
serhiy-storchaka Aug 8, 2024
acf0d9e
InternalDocs: Fix typo in link to instruction_sequence.c inside compi…
JuanFKurucz Aug 8, 2024
0d9c123
gh-122744: test_venv: ignore pip's complaint about missing ssl (GH-12…
encukou Aug 8, 2024
81c739e
GH-120024: Tidy up case generator code a bit. (GH-122780)
markshannon Aug 8, 2024
bf8b374
gh-111495: Add more tests on PyEval C APIs (#122789)
vstinner Aug 8, 2024
833eb10
gh-122562: fix dump_symtable for ste_free and ste_child_free removal …
iritkatriel Aug 8, 2024
2d9d3a9
gh-122697: Fix free-threading memory leaks at shutdown (#122703)
colesbury Aug 8, 2024
2037d8c
gh-122835: Fix module name in ``test_typing`` (#122836)
Eclips4 Aug 8, 2024
aab18f4
gh-112301: Update documentation for configure options (``--disable-sa…
nohlson Aug 8, 2024
8c9d174
GH-118943: Remove regen-jit from the regen-all make target (GH-122602)
hroncok Aug 8, 2024
2f5c3b0
gh-116622: Rename build variable MODULE_LDFLAGS back to LIBPYTHON (#1…
mhsmith Aug 8, 2024
b6e745a
gh-121268: Remove workarounds for non-IEEE 754 systems in cmath (#122…
skirpichev Aug 9, 2024
8393608
gh-122688: Fix support of var-positional parameter in Argument Clinic…
serhiy-storchaka Aug 9, 2024
b4a3160
gh-111495: Fix refleaks in test_capi.test_eval tests (#122851)
vstinner Aug 9, 2024
d323997
gh-105376: Restore deprecated logging warn() method (#122775)
vstinner Aug 9, 2024
0fd97e4
gh-122868: Add lower bounds for sphinxcontrib dependencies (#122870)
AA-Turner Aug 9, 2024
5580f31
gh-115808: Add ``is_none`` and ``is_not_none`` to ``operator`` (#115814)
ThexXTURBOXx Aug 10, 2024
0959142
gh-122868: Add more lower bounds for sphinxcontrib dependencies (#122…
AA-Turner Aug 10, 2024
363374c
GH-120794: Use example paths with multiple parts in pathlib docs (#12…
barneygale Aug 10, 2024
3aaed08
GH-120974: make `_asyncio.all_tasks` thread safe (#122801)
kumaraditya303 Aug 11, 2024
bc9d92c
gh-122858: Deprecate `asyncio.iscoroutinefunction` (#122875)
Wulian233 Aug 11, 2024
1069190
gh-122860: Remove unused macro `_Py_atomic_load_relaxed_int32` (#122861)
colesbury Aug 11, 2024
db8b83c
Docs: Standardise versionchanged text in weakref.rst (#122898)
rffontenelle Aug 11, 2024
ea70439
gh-122701: Fix wording of raw strings/bytes in `lexical_analysis.rst`…
sobolevn Aug 11, 2024
a6644d4
GH-73991: Rework `pathlib.Path.copytree()` into `copy()` (#122369)
barneygale Aug 11, 2024
016f4b5
gh-119180: Improvements to ForwardRef.evaluate (#122210)
JelleZijlstra Aug 11, 2024
4534068
gh-119180: annotationlib: Fix __all__, formatting (#122365)
JelleZijlstra Aug 11, 2024
9cd0326
gh-122905: Sanitize names in zipfile.Path. (#122906)
jaraco Aug 11, 2024
6aa35f3
gh-122903: Honor directories in zipfile.Path.glob. (#122908)
jaraco Aug 12, 2024
9375b9c
Remove "print >>obj" exception hint for Python 2 (#122853)
vstinner Aug 12, 2024
253c6a0
Fix typos in comments and test code (#122846)
xyb Aug 12, 2024
f9ba1f3
gh-122688: Add more tests for var-positional parameters in Argument C…
serhiy-storchaka Aug 12, 2024
7c22ab5
Fix old-style `print` statement in `gettext` comments (#122939)
sobolevn Aug 12, 2024
53ebb62
gh-122888: Fix crash on certain calls to str() (#122889)
JelleZijlstra Aug 12, 2024
1795d6c
GH-122869: Add missing tier two optimizer cases (GH-122936)
markshannon Aug 12, 2024
be90648
gh-122944: Fix incorrect prompt strings in the Python Tutorial (#122949)
Damien-Chen Aug 12, 2024
736fe4d
gh-117139: Fix a few `_PyStackRef` related bugs (#122831)
colesbury Aug 12, 2024
ab094d1
gh-117139: Replace _PyList_FromArraySteal with stack ref variant (#12…
colesbury Aug 12, 2024
503af8f
gh-117482: Make the Slot Wrapper Inheritance Tests Much More Thorough…
ericsnowcurrently Aug 12, 2024
9621a7d
GH-118093: Handle some polymorphism before requiring progress in tier…
brandtbucher Aug 12, 2024
0e207f3
GH-122578: update to WASI SDK 24 (GH-122960)
brettcannon Aug 12, 2024
fe23f8e
GH-122821: Simplify compilation of while statements to ensure consist…
markshannon Aug 13, 2024
7a65439
GH-122390: Replace `_Py_GetbaseOpcode` with `_Py_GetBaseCodeUnit` (GH…
markshannon Aug 13, 2024
db6f5e1
GH-109975: Copyedit 3.13 What's New: Release Highlights (#122958)
AA-Turner Aug 13, 2024
906b796
gh-122873: Allow "python -m json" to work (#122884)
treyhunner Aug 13, 2024
901d949
Fix `print` usage in `turtle` doctests (#122940)
sobolevn Aug 13, 2024
5f68511
GH-85633: Fix pathlib test failures on filesystems without world-writ…
barneygale Aug 13, 2024
ee1b8ce
gh-122907: Fix Builds Without HAVE_DYNAMIC_LOADING Set (gh-122952)
ericsnowcurrently Aug 13, 2024
325e9b8
gh-99108: Add HACL* Blake2 implementation to hashlib (GH-119316)
msprotz Aug 13, 2024
7b8328b
GH-121723: Skip test_config_queue_handler_multiprocessing_context in …
picnixz Aug 13, 2024
ce39d3c
Add a --rerun option to the iOS testbed. (#122992)
freakboy3742 Aug 14, 2024
e03073f
Ensure that iOS test re-runs don't try to spawn a process. (#122994)
freakboy3742 Aug 14, 2024
05fc4d7
gh-122985: add SYMBOL_TO_SCOPE macro in symtable (#122986)
iritkatriel Aug 14, 2024
fe3e623
gh-111178: Avoid calling long_hash from incompatible pointer type (G…
picnixz Aug 14, 2024
315a933
Fix doctrees directory for the gettext builder (#122997)
rffontenelle Aug 14, 2024
eec7bda
GH-120024: Remove `CHECK_EVAL_BREAKER` macro. (GH-122968)
markshannon Aug 14, 2024
6ae942f
gh-122965: Fix `reusable-change-detection.yml` on `workflow_dispatch`…
sobolevn Aug 14, 2024
5118592
GH-113464: Speed up JIT builds (GH-122839)
brandtbucher Aug 14, 2024
f84754b
GH-118093: Turn some DEOPT_IFs into EXIT_IFs (GH-122998)
brandtbucher Aug 14, 2024
8e2dc7f
gh-123005: Add version added in enum.Flag.__len__ (GH-123007)
Damien-Chen Aug 14, 2024
1cf624b
gh-112301: Add warning count to warning check tooling (#122711)
nohlson Aug 14, 2024
1054a75
GH-103484: Tell linkcheck to ignore debian manpage redirects (#123019)
rffontenelle Aug 14, 2024
b106cf8
GH-109975: Copyedit 3.13 What's New: New Features (#122990)
AA-Turner Aug 15, 2024
3950392
gh-99108: Inform HACL when explicit_bzero is unavailable (GH-123027)
mhsmith Aug 15, 2024
b6cb435
gh-121404: split compiler's push/pop_inlined_comprehension_state into…
iritkatriel Aug 15, 2024
3203a74
gh-113190: Reenable non-debug interned string cleanup (GH-113601)
eduardo-elizondo Aug 15, 2024
1dad23e
gh-122584: Import mimalloc headers in a C++ context (#122587)
mdboom Aug 15, 2024
e001027
gh-117139: Garbage collector support for deferred refcounting (#122956)
colesbury Aug 15, 2024
b15b81e
GH-121634: have `wasi.py` accept the host target triple as an argumen…
brettcannon Aug 15, 2024
d7a3df9
Add debug offsets for free threaded builds (#123041)
pablogsal Aug 15, 2024
e913d2c
gh-116608: Apply style and compatibility changes from importlib_metad…
jaraco Aug 15, 2024
f84cce6
gh-116622: Add Android test script (#121595)
mhsmith Aug 16, 2024
786cac0
gh-123046: Fix regexp to catch cases where the module name is omitted…
Eclips4 Aug 16, 2024
a07cf4c
mention pypy somewhat more prominently in the pyrepl section of whats…
cfbolz Aug 16, 2024
e2f2dc7
gh-121404: rename compiler_addop* to codegen_addop*, and replace dire…
iritkatriel Aug 16, 2024
c13e7d9
GH-118093: Specialize `CALL_KW` (GH-123006)
markshannon Aug 16, 2024
8ef358d
gh-118658: Return consistent types from `get_un/verified_chain` in `S…
matiuszka Aug 16, 2024
35d8ac7
GH-120754: Disable buffering in Path.read_bytes (#122111)
cmaloney Aug 16, 2024
e6d5ff5
gh-123087: ``Lib/test/test_unittest/testmock/testasync.py``: Replace …
Eclips4 Aug 17, 2024
19be0ee
gh-122681: remove m_atan2()/c_atan2() helpers (#122715)
skirpichev Aug 17, 2024
8a59dec
gh-122519: Adding socket module shutdown() constants description (#12…
Damien-Chen Aug 17, 2024
26de1b2
Remove unneeded verb in the phrase in sys.rst (#122718)
rffontenelle Aug 17, 2024
e9287ea
fix typo in dis.rst (#121612)
mathysEthical Aug 17, 2024
ce4b9c8
gh-121477: mention new PyLong_*Bytes() functions in PyLong_FromString…
skirpichev Aug 17, 2024
d60b97a
GH-109975: Copyedit 3.13 What's New: Other Language Changes (#123086)
AA-Turner Aug 17, 2024
44e4583
gh-123067: Fix quadratic complexity in parsing "-quoted cookie values…
serhiy-storchaka Aug 17, 2024
40632b1
gh-122974: Suppress GCC array bound warnings in free-threaded build (…
colesbury Aug 17, 2024
d061ffe
gh-123022: Fix crash with `Py_Initialize` in background thread (#123…
colesbury Aug 17, 2024
79c542b
Docs: Run ``latexmk`` in parallel when creating PDFs (#123113)
AA-Turner Aug 17, 2024
63603bc
gh-82378 fix sys.tracebacklimit in pyrepl, approach 2 (#123062)
cfbolz Aug 18, 2024
b0f462d
gh-123110: correct note about _Bool in the struct module docs (GH-123…
skirpichev Aug 18, 2024
c15bfa9
gh-116789: Add more tests for `inspect.getmembers` (#116802)
sobolevn Aug 18, 2024
be257c5
gh-123049: configparser: Allow to create the unnamed section from scr…
pslacerda Aug 18, 2024
b9e10d1
gh-122081: fixed crash in decimal.IEEEContext() (#122082)
skirpichev Aug 19, 2024
e077b20
gh-121404: pass metadata to compiler_enter_scope (optionally) so that…
iritkatriel Aug 19, 2024
354d55e
gh-121804: Always show error location for SyntaxError's in new repl (…
skirpichev Aug 19, 2024
b6d0a40
gh-121404: rename functions to use codegen_* prefix. Use macros more …
iritkatriel Aug 19, 2024
48856ea
gh-123123: Fix display of syntax errors covering multiple lines (#123…
pablogsal Aug 19, 2024
833c58b
gh-123149: Suppress verbose repr in new REPL (#123151)
SnoopJ Aug 19, 2024
0480052
gh-109975: Copyedit What's New in Python 3.13 (#123150)
JelleZijlstra Aug 19, 2024
77133f5
gh-122909: Pass ftp error strings to URLError constructor (#122913)
jeremyhylton Aug 20, 2024
bffed80
gh-123048: Fix missing source location in pattern matching code (#123…
iritkatriel Aug 20, 2024
bb1d303
GH-118093: Make `CALL_ALLOC_AND_ENTER_INIT` suitable for tier 2. (GH-…
markshannon Aug 20, 2024
f88c14d
gh-122981: Fix inspect.getsource() for generated classes with Python …
serhiy-storchaka Aug 20, 2024
9dbd123
gh-123084: Turn `shutil.ExecError` into a deprecated alias of `Runtim…
ZeroIntensity Aug 21, 2024
90c892e
gh-85110: Preserve relative path in URL without netloc in urllib.pars…
serhiy-storchaka Aug 21, 2024
1eba8ba
GH-123185: Check for `NULL` after calling `_PyEvalFramePushAndInit` (…
markshannon Aug 21, 2024
7b26c4d
GH-123197: Increment correct stat for CALL_KW (GH-123200)
markshannon Aug 21, 2024
94036e4
Fix typos in comments (#123201)
Wulian233 Aug 21, 2024
b1d3bd2
gh-123165: make `dis` functions render positions on demand (#123168)
picnixz Aug 21, 2024
4b7c488
gh-121404: split fblock handling into compiler_* and codegen_* parts …
iritkatriel Aug 21, 2024
a4fd7aa
GH-115776: Allow any fixed sized object to have inline values (GH-123…
markshannon Aug 21, 2024
ec89620
gh-123142: Fix too wide source locations in tracebacks of exceptions …
iritkatriel Aug 21, 2024
79ddf75
gh-122712: Test `CALL_ALLOC_AND_ENTER_INIT` handles reassignment of `…
mpage Aug 22, 2024
427b106
GH-118093: Specialize calls to non-vectorcall classes as `CALL_NON_PY…
brandtbucher Aug 22, 2024
3d7b1a5
gh-122546: use same filename for different exceptions in new repl (#1…
skirpichev Aug 22, 2024
a3d8c05
GH-123197: Only count an instruction as deferred if it hasn't deopted…
markshannon Aug 22, 2024
31acc4d
gh-123165: correct tests for `dis.dis(func, show_positions=True)` (#1…
picnixz Aug 22, 2024
4abc1c1
gh-121404: remove redundant c_nestlevel. more compiler abstractions. …
iritkatriel Aug 22, 2024
297f2e0
gh-123083: Fix a potential use-after-free in ``STORE_ATTR_WITH_HINT``…
corona10 Aug 22, 2024
4c3f0cb
gh-122546: Relax SyntaxError check when raising errors on the new REP…
skirpichev Aug 22, 2024
a64aa47
GH-99108: Amend Modules/Setup (#123146)
msprotz Aug 23, 2024
90b6d0e
gh-123213: Fixed xml.etree.ElementTree.Element.extend and assignment …
bharel Aug 23, 2024
5d3201f
GH-123040: Specialize shadowed `LOAD_ATTR`. (GH-123219)
markshannon Aug 23, 2024
5fce482
gh-121404: compiler_annassign --> codegen_annassign (#123245)
iritkatriel Aug 23, 2024
0b0f7be
GH-123232: Fix "not specialized" stats (GH-123236)
markshannon Aug 23, 2024
adc5190
gh-123229: Fix valgrind warning by initializing the f-string buffers …
pablogsal Aug 23, 2024
7cd3aa4
GH-122298: Restore printing of GC stats (GH-123261)
markshannon Aug 23, 2024
126910e
gh-122272: Guarantee specifiers %F and %C for datetime.strftime to be…
blhsing Aug 23, 2024
58fdb16
Fix typo mentioning threads instead of tasks (#123203)
kevinhikaruevans Aug 23, 2024
bf1b5d3
gh-121404: more compiler_* -> codegen_*, class_body and comprehension…
iritkatriel Aug 23, 2024
d7ae4dc
GH-73991: Disallow copying directory into itself via `pathlib.Path.co…
barneygale Aug 23, 2024
67f2c84
gh-123205: `Python/bytecodes.c`: Fix compiler warning (#123206)
Eclips4 Aug 23, 2024
556e855
gh-117376: Make `Py_DECREF` a macro in ceval.c in free-threaded build…
colesbury Aug 23, 2024
5ff638f
gh-123243: Fix reference leak in `_decimal` (#123244)
neonene Aug 24, 2024
b178bee
Docs: Fix Makefile syntax (#123287)
AA-Turner Aug 24, 2024
127660b
GH-109975: Copyedit 3.13 What's New: Improved Modules (#123132)
AA-Turner Aug 24, 2024
c4ee4e7
GH-122890: Fix low-level error handling in `pathlib.Path.copy()` (#12…
barneygale Aug 24, 2024
ca18ff2
gh-123228: fix return type for _ReadlineWrapper.get_line_buffer() (#1…
skirpichev Aug 24, 2024
86f06cb
Remove comment from pystate created in 2003 (#123259)
tonybaloney Aug 24, 2024
e38d0af
GH-120754: Add a strace helper and test set of syscalls for open().re…
cmaloney Aug 24, 2024
52caaef
Revert "GH-120754: Add a strace helper and test set of syscalls for o…
hauntsaninja Aug 24, 2024
9b37498
GH-123299: Move ctypes What's New entry to 3.14 (#123300)
AA-Turner Aug 25, 2024
74ff496
GH-109975: Copyedit 3.13 What's New: Optimizations (#123301)
AA-Turner Aug 25, 2024
aa90592
gh-123228: don't leak file descriptors in pyrepl test (#123302)
cfbolz Aug 25, 2024
625d070
GH-73991: Add `pathlib.Path.move()` (#122073)
barneygale Aug 25, 2024
249b083
gh-122982: Extend the deprecation period for bool inversion by two ye…
Eclips4 Aug 25, 2024
c535a49
gh-123297: Propagate LD_FLAGS to LDCXXSHARED in sysconfig (#123298)
pablogsal Aug 25, 2024
fdb3f9b
gh-123177: Deactivate line wrap for Apple Terminal via scape codes in…
pablogsal Aug 25, 2024
70bfef5
gh-82378: Document the difference between sys.tracebacklimit and the …
cfbolz Aug 25, 2024
602fcf9
gh-123177: Fix prompt for wrapped lines in pyrepl (#123324)
godlygeek Aug 25, 2024
6401cdf
Rewrite idlelib/Icons/README.txt (#123329)
terryjreedy Aug 26, 2024
dbc1752
gh-111495: Add tests for PyTuple C API (#118757)
skirpichev Aug 26, 2024
c68a93c
GH-73991: Add `pathlib.Path.copy_into()` and `move_into()` (#123314)
barneygale Aug 26, 2024
2f20f5a
gh-111495: Add tests for PyNumber C API (#111996)
skirpichev Aug 26, 2024
a1ddaae
gh-111495: Remove test_capi test_rshift_print() (#123338)
vstinner Aug 26, 2024
033d537
GH-73991: Make `pathlib.Path.delete()` private. (#123315)
barneygale Aug 26, 2024
7bd6ebf
GH-73991: Prune `pathlib.Path.copy()` and `copy_into()` arguments (#1…
barneygale Aug 26, 2024
1eed0f9
gh-123340: Show string value of `IS_OP` oparg in `dis` (#123348)
sobolevn Aug 26, 2024
9f9b00d
gh-122666: Tests for ast optimizations (#122667)
Eclips4 Aug 26, 2024
fe85a82
Further revise idlelib/Icons/README.text (#123364)
terryjreedy Aug 26, 2024
89328f7
GH-115775: Use `__static_attributes__` to initialize shared keys (GH-…
markshannon Aug 27, 2024
54a05a4
GH-123232: Factor BINARY_SLICE and STORE_SLICE to handle stats proper…
markshannon Aug 27, 2024
da43026
gh-121404: compiler_visit_* --> codegen_visit_* (#123382)
iritkatriel Aug 27, 2024
6754566
gh-120426: Reword the glossary term "immortal" (GH-123191)
encukou Aug 27, 2024
03f5abf
gh-123089: Make weakref.WeakSet safe against concurrent mutations whi…
kumaraditya303 Aug 27, 2024
460ee5b
gH-80788: remove old weakset workaround for thread safety (#123388)
kumaraditya303 Aug 27, 2024
f49a916
GH-117759: Document incremental GC (GH-123266)
markshannon Aug 27, 2024
08c0166
gh-109975: Fix a typo in What's New in Python 3.13 (#123393)
danielhollas Aug 27, 2024
d24d1c9
gh-121404: split compiler_nameop into a codegen part and a compiler p…
iritkatriel Aug 27, 2024
7e38e67
gh-123271: Make builtin zip method safe under free-threading (#123272)
eendebakpt Aug 27, 2024
2231286
gh-123270: Replaced SanitizedNames with a more surgical fix. (#123354)
jaraco Aug 27, 2024
6a7765b
gh-123363: Show string value of CONTAINS_OP oparg in dis (#123387)
Alexandr153 Aug 28, 2024
6f563e3
gh-123254: Improve `tuple` C API docs with more info about errors (#1…
sobolevn Aug 28, 2024
1a0b828
gh-122561: Clean up and microoptimize str.translate and charmap codec…
serhiy-storchaka Aug 28, 2024
4c6dca8
gh-120389: Add PyLong_FromInt64() and PyLong_AsInt64() (#120390)
vstinner Aug 28, 2024
9e108b8
Fix typos in docs, error messages and comments (#123336)
Wulian233 Aug 28, 2024
be083ce
gh-123344: Add missing ast optimizations for PEP 696 (#123377)
wrongnull Aug 28, 2024
40fff90
gh-101860: document `property.__name__` (GH-123399)
picnixz Aug 28, 2024
61bef62
gh-123142: fix too wide source location of GET_ITER/GET_AITER (#123420)
iritkatriel Aug 28, 2024
b379f1b
gh-122136: test_asyncio: Don't fail if the kernel buffers more data t…
encukou Aug 28, 2024
c9930f5
gh-123448: Move `_PyNoDefault_Type` to the static types array (#123449)
ZeroIntensity Aug 29, 2024
0c3ea30
gh-123431: Harmonize extension code checks in pickle (GH-123434)
serhiy-storchaka Aug 29, 2024
303f92a
gh-123446: Fix empty function names in `TypeError`s in `_csv` module …
sobolevn Aug 29, 2024
58ce131
gh-123446: Fix empty function names in `TypeError`s in `_csv` module …
sobolevn Aug 29, 2024
32c7dbb
gh-121485: Always use 64-bit integers for integers bits count (GH-121…
serhiy-storchaka Aug 30, 2024
f8a736b
gh-123446: Fix empty function names in `TypeError`s in `typeobject` (…
sobolevn Aug 30, 2024
8aaf752
gh-123189: [`Modules/blake2module.c`]: Move function definitions and …
Eclips4 Aug 30, 2024
103a047
gh-123492: Remove unnecessary `:func:` parentheses (#123493)
mattwang44 Aug 30, 2024
7fca268
gh-123484: Fix the debug offsets for PyLongObject (#123485)
godlygeek Aug 30, 2024
3d60dfb
gh-121645: Add PyBytes_Join() function (#121646)
vstinner Aug 30, 2024
d8e69b2
gh-122854: Add Py_HashBuffer() function (#122855)
vstinner Aug 30, 2024
e451a89
gh-123440: Improve error message for `except as` used with not a name…
sobolevn Aug 30, 2024
6bfbfc6
gh-121404: rearrange code in compile.c so that codegen functions come…
iritkatriel Aug 30, 2024
1ce9e58
Make self turtledemo codeowner (#123524)
terryjreedy Aug 31, 2024
74bfb53
gh-121313: Limit the reading size from pipes to their default buffer …
aplaikner Aug 31, 2024
10bf615
gh-108172: do not override OS preferred browser if it is a super-stri…
guss77 Aug 31, 2024
5332d98
gh-123407: Enable translating literal and code blocks (#123408)
m-aciek Aug 31, 2024
e5a567b
gh-123309: Add more tests for the pickletools module (GH-123355)
serhiy-storchaka Aug 31, 2024
fc897fc
gh-76960: Fix urljoin() and urldefrag() for URIs with empty component…
serhiy-storchaka Aug 31, 2024
5414b97
gh-123309: Remove check for redefined memo entry in pickletools.dis()…
serhiy-storchaka Aug 31, 2024
0cba289
Enable colour for doctest on GitHub Actions (#123536)
hugovk Aug 31, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 2 additions & 2 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -2,7 +2,7 @@ FROM docker.io/library/fedora:40

ENV CC=clang

ENV WASI_SDK_VERSION=22
ENV WASI_SDK_VERSION=24
ENV WASI_SDK_PATH=/opt/wasi-sdk

ENV WASMTIME_HOME=/opt/wasmtime
@@ -14,7 +14,7 @@ RUN dnf -y --nodocs --setopt=install_weak_deps=False install /usr/bin/{blurb,cla
dnf -y clean all

RUN mkdir ${WASI_SDK_PATH} && \
curl --location https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${WASI_SDK_VERSION}/wasi-sdk-${WASI_SDK_VERSION}.0-linux.tar.gz | \
curl --location https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${WASI_SDK_VERSION}/wasi-sdk-${WASI_SDK_VERSION}.0-x86_64-linux.tar.gz | \
tar --strip-components 1 --directory ${WASI_SDK_PATH} --extract --gunzip

RUN mkdir --parents ${WASMTIME_HOME} && \
3 changes: 2 additions & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -211,8 +211,9 @@ Doc/c-api/stable.rst @encukou

**/*ensurepip* @pfmoore @pradyunsg

**/*idlelib* @terryjreedy
/Doc/library/idle.rst @terryjreedy
**/*idlelib* @terryjreedy
**/*turtledemo* @terryjreedy

**/*annotationlib* @JelleZijlstra
**/*typing* @JelleZijlstra @AlexWaygood
18 changes: 13 additions & 5 deletions .github/workflows/reusable-change-detection.yml
Original file line number Diff line number Diff line change
@@ -126,13 +126,18 @@ jobs:
.github/workflows/reusable-docs.yml
format: csv # works for paths with spaces
- name: Check for docs changes
# We only want to run this on PRs when related files are changed,
# or when user triggers manual workflow run.
if: >-
github.event_name == 'pull_request'
&& steps.changed-docs-files.outputs.added_modified_renamed != ''
(
github.event_name == 'pull_request'
&& steps.changed-docs-files.outputs.added_modified_renamed != ''
) || github.event_name == 'workflow_dispatch'
id: docs-changes
run: |
echo "run-docs=true" >> "${GITHUB_OUTPUT}"
- name: Get a list of the MSI installer-related files
if: github.event_name == 'pull_request'
id: changed-win-msi-files
uses: Ana06/get-changed-files@v2.3.0
with:
@@ -141,10 +146,13 @@ jobs:
.github/workflows/reusable-windows-msi.yml
format: csv # works for paths with spaces
- name: Check for changes in MSI installer-related files
# We only want to run this on PRs when related files are changed,
# or when user triggers manual workflow run.
if: >-
steps.changed-win-msi-files.outputs.added_modified_renamed != ''
(
github.event_name == 'pull_request'
&& steps.changed-win-msi-files.outputs.added_modified_renamed != ''
) || github.event_name == 'workflow_dispatch'
id: win-msi-changes
run: |
echo "run-win-msi=true" >> "${GITHUB_OUTPUT}"

...
11 changes: 10 additions & 1 deletion .github/workflows/reusable-docs.yml
Original file line number Diff line number Diff line change
@@ -11,6 +11,9 @@ concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true

env:
FORCE_COLOR: 1

jobs:
build_doc:
name: 'Docs'
@@ -25,9 +28,15 @@ jobs:
- name: 'Check out latest PR branch commit'
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
ref: >-
${{
github.event_name == 'pull_request'
&& github.event.pull_request.head.sha
|| ''
}}
# Adapted from https://github.com/actions/checkout/issues/520#issuecomment-1167205721
- name: 'Fetch commits to get branch diff'
if: github.event_name == 'pull_request'
run: |
# Fetch enough history to find a common ancestor commit (aka merge-base):
git fetch origin ${{ env.refspec_pr }} --depth=$(( ${{ github.event.pull_request.commits }} + 1 )) \
4 changes: 3 additions & 1 deletion .github/workflows/reusable-macos.yml
Original file line number Diff line number Diff line change
@@ -48,8 +48,10 @@ jobs:
--prefix=/opt/python-dev \
--with-openssl="$(brew --prefix openssl@3.0)"
- name: Build CPython
run: make -j8
run: set -o pipefail; make -j8 2>&1 | tee compiler_output.txt
- name: Display build info
run: make pythoninfo
- name: Check compiler warnings
run: python3 Tools/build/check_warnings.py --compiler-output-file-path=compiler_output.txt --warning-ignore-file-path=Tools/build/.warningignore_macos --compiler-output-type=clang
- name: Tests
run: make test
2 changes: 1 addition & 1 deletion .github/workflows/reusable-ubuntu.yml
Original file line number Diff line number Diff line change
@@ -80,7 +80,7 @@ jobs:
working-directory: ${{ env.CPYTHON_BUILDDIR }}
run: make pythoninfo
- name: Check compiler warnings
run: python Tools/build/check_warnings.py --compiler-output-file-path=${{ env.CPYTHON_BUILDDIR }}/compiler_output.txt --warning-ignore-file-path ${GITHUB_WORKSPACE}/Tools/build/.warningignore_ubuntu
run: python Tools/build/check_warnings.py --compiler-output-file-path=${{ env.CPYTHON_BUILDDIR }}/compiler_output.txt --warning-ignore-file-path ${GITHUB_WORKSPACE}/Tools/build/.warningignore_ubuntu --compiler-output-type=json
- name: Remount sources writable for tests
# some tests write to srcdir, lack of pyc files slows down testing
run: sudo mount $CPYTHON_RO_SRCDIR -oremount,rw
4 changes: 2 additions & 2 deletions .github/workflows/reusable-wasi.yml
Original file line number Diff line number Diff line change
@@ -12,7 +12,7 @@ jobs:
runs-on: ubuntu-22.04
env:
WASMTIME_VERSION: 22.0.0
WASI_SDK_VERSION: 22
WASI_SDK_VERSION: 24
WASI_SDK_PATH: /opt/wasi-sdk
CROSS_BUILD_PYTHON: cross-build/build
CROSS_BUILD_WASI: cross-build/wasm32-wasi
@@ -33,7 +33,7 @@ jobs:
if: steps.cache-wasi-sdk.outputs.cache-hit != 'true'
run: |
mkdir ${{ env.WASI_SDK_PATH }} && \
curl -s -S --location https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${{ env.WASI_SDK_VERSION }}/wasi-sdk-${{ env.WASI_SDK_VERSION }}.0-linux.tar.gz | \
curl -s -S --location https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${{ env.WASI_SDK_VERSION }}/wasi-sdk-${{ env.WASI_SDK_VERSION }}.0-x86_64-linux.tar.gz | \
tar --strip-components 1 --directory ${{ env.WASI_SDK_PATH }} --extract --gunzip
- name: "Configure ccache action"
uses: hendrikmuhs/ccache-action@v1.2
68 changes: 52 additions & 16 deletions Android/README.md
Original file line number Diff line number Diff line change
@@ -25,7 +25,7 @@ you don't already have the SDK, here's how to install it:
The `android.py` script also requires the following commands to be on the `PATH`:

* `curl`
* `java`
* `java` (or set the `JAVA_HOME` environment variable)
* `tar`
* `unzip`

@@ -80,18 +80,54 @@ call. For example, if you want a pydebug build that also caches the results from

## Testing

To run the Python test suite on Android:

* Install Android Studio, if you don't already have it.
* Follow the instructions in the previous section to build all supported
architectures.
* Run `./android.py setup-testbed` to download the Gradle wrapper.
* Open the `testbed` directory in Android Studio.
* In the *Device Manager* dock, connect a device or start an emulator.
Then select it from the drop-down list in the toolbar.
* Click the "Run" button in the toolbar.
* The testbed app displays nothing on screen while running. To see its output,
open the [Logcat window](https://developer.android.com/studio/debug/logcat).

To run specific tests, or pass any other arguments to the test suite, edit the
command line in testbed/app/src/main/python/main.py.
The tests can be run on Linux, macOS, or Windows, although on Windows you'll
have to build the `cross-build/HOST` subdirectory on one of the other platforms
and copy it over.

The test suite can usually be run on a device with 2 GB of RAM, though for some
configurations or test orders you may need to increase this. As of Android
Studio Koala, 2 GB is the default for all emulators, although the user interface
may indicate otherwise. The effective setting is `hw.ramSize` in
~/.android/avd/*.avd/hardware-qemu.ini, whereas Android Studio displays the
value from config.ini. Changing the value in Android Studio will update both of
these files.

Before running the test suite, follow the instructions in the previous section
to build the architecture you want to test. Then run the test script in one of
the following modes:

* In `--connected` mode, it runs on a device or emulator you have already
connected to the build machine. List the available devices with
`$ANDROID_HOME/platform-tools/adb devices -l`, then pass a device ID to the
script like this:

```sh
./android.py test --connected emulator-5554
```

* In `--managed` mode, it uses a temporary headless emulator defined in the
`managedDevices` section of testbed/app/build.gradle.kts. This mode is slower,
but more reproducible.

We currently define two devices: `minVersion` and `maxVersion`, corresponding
to our minimum and maximum supported Android versions. For example:

```sh
./android.py test --managed maxVersion
```

By default, the only messages the script will show are Python's own stdout and
stderr. Add the `-v` option to also show Gradle output, and non-Python logcat
messages.

Any other arguments on the `android.py test` command line will be passed through
to `python -m test` – use `--` to separate them from android.py's own options.
See the [Python Developer's
Guide](https://devguide.python.org/testing/run-write-tests/) for common options
– most of them will work on Android, except for those that involve subprocesses,
such as `-j`.

Every time you run `android.py test`, changes in pure-Python files in the
repository's `Lib` directory will be picked up immediately. Changes in C files,
and architecture-specific files such as sysconfigdata, will not take effect
until you re-run `android.py make-host` or `build`.
2 changes: 1 addition & 1 deletion Android/android-env.sh
Original file line number Diff line number Diff line change
@@ -28,7 +28,7 @@ ndk_version=26.2.11394342

ndk=$ANDROID_HOME/ndk/$ndk_version
if ! [ -e $ndk ]; then
log "Installing NDK: this may take several minutes"
log "Installing NDK - this may take several minutes"
yes | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager "ndk;$ndk_version"
fi

Loading