Ken Jin
e02a35c365
gh-134584: Cleanups for GH-135860 (GH-142604)
2025-12-13 14:38:10 +00:00
Neil Schemenauer
c98182be8d
gh-132657: Add lock-free set contains implementation ( #132290 )
...
This roughly follows what was done for dictobject to make a lock-free
lookup operation. With this change, the set contains operation scales much
better when used from multiple-threads. The frozenset contains performance
seems unchanged (as already lock-free).
Summary of changes:
* refactor set_lookkey() into set_do_lookup() which now takes a function
pointer that does the entry comparison. This is similar to dictobject and
do_lookup(). In an optimized build, the comparison function is inlined and
there should be no performance cost to this.
* change set_do_lookup() to return a status separately from the entry value
* add set_compare_frozenset() and use if the object is a frozenset. For the
free-threaded build, this avoids some overhead (locking, atomic operations,
incref/decref on key)
* use FT_ATOMIC_* macros as needed for atomic loads and stores
* use a deferred free on the set table array, if shared (only on free-threaded
build, normal build always does an immediate free)
* for free-threaded build, use explicit for loop to zero the table, rather than memcpy()
* when mutating the set, assign so->table to NULL while the change is a
happening. Assign the real table array after the change is done.
2025-12-13 09:50:23 +00:00
Savannah Ostrowski
3e36d37535
GH-142646: Update Tachyon to use backtick formatting in CLI help ( #142647 )
2025-12-13 05:20:28 +00:00
Savannah Ostrowski
c90863ac3d
GH-141362: Make get_externals handle fetching platform-specific release artifacts ( #142405 )
...
Co-authored-by: Steve Dower <steve.dower@microsoft.com>
Co-authored-by: Chris Eibl <138194463+chris-eibl@users.noreply.github.com>
2025-12-12 21:23:18 +00:00
Brett Cannon
0a97941245
GH-139686: Update versionchanged directive to 'next' in importlib (GH-142649)
...
An oversight when merging 57db12514a .
2025-12-12 20:47:20 +00:00
Amer Esmail Elsheikh
57db12514a
gh-139686: Make reloading a lazy module no-op (GH-139857)
...
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Co-authored-by: Brett Cannon <brett@python.org>
2025-12-12 20:26:50 +00:00
Savannah Ostrowski
8b669d54c3
GH-142389: Add backtick markup support in description and epilog ( #142390 )
2025-12-12 20:08:19 +00:00
Roman Donchenko
fa1ac9070c
Doc: remove the invalid type variables of typing.TextIO and BinaryIO ( #142642 )
...
They are not generic classes.
2025-12-12 11:20:49 -08:00
Alper
1eddef8193
gh-116738: Make zlib module thread-safe (gh-142432)
...
Makes the zlib module thread-safe free-threading build. Even though operations
are protected by locks, attributes exposed via PyMemberDef (eof, needs_input,
unused_data, unconsumed_tail) should still be stored atomically within locked
sections, since they can be read without acquiring the lock.
2025-12-12 13:14:42 -05:00
Stan Ulbrych
40ac3a9343
gh-138122: Tachyon Flamegraph: Make toggle keyboard accesible and adjust sidebar collapse CSS ( #142638 )
2025-12-12 17:27:12 +00:00
Alex Prengère
6d644e4453
gh-141939: Add colors to interpolated values in argparse ( #141940 )
...
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Co-authored-by: Savannah Ostrowski <savannah@python.org>
2025-12-12 16:58:12 +00:00
Petr Viktorin
15313dd3d7
gh-140550: Correct error message for PyModExport (PEP 793) hook (GH-142583)
2025-12-12 17:48:43 +01:00
Stan Ulbrych
340a684674
gh-138122: Add docs button to Tachyon heatmap and flamegraph ( #142614 )
2025-12-12 15:06:28 +00:00
Bartosz Sławecki
f564654bae
gh-142353: Isolate tests from personal GNU Readline init files ( #142370 )
...
Isolate tests from personal Readline init files using `INPUTRC=/dev/null` trick.
Co-authored-by: Victor Stinner <vstinner@python.org>
2025-12-12 15:42:38 +01:00
Ken Jin
a3a611b042
gh-134584: Revert partially GH-135860 (GH-142620)
2025-12-12 14:04:11 +00:00
Victor Stinner
e0bca091a4
gh-142627: Ignore anonymous mappings in Linux remote debugging ( #142628 )
2025-12-12 13:12:11 +00:00
Victor Stinner
7aa353c414
gh-142217: Deprecate the private _Py_Identifier C API ( #142221 )
...
Deprecate functions:
* _PyObject_CallMethodId()
* _PyObject_GetAttrId()
* _PyUnicode_FromId()
2025-12-12 14:10:25 +01:00
Sergey B Kirpichev
be5e0dcded
gh-142595: add type check for namedtuple call during decimal initialization (GH-142608)
2025-12-12 11:47:45 +01:00
Petr Viktorin
af2b3e98d8
Link listsort.txt in InternalDocs/README.md ( #142619 )
2025-12-12 10:16:55 +00:00
wangjingcun
2a820e2b9c
fix typos in crossinterp.c and qsbr.c ( #142612 )
2025-12-12 11:48:20 +05:30
Pablo Galindo Salgado
519bee474b
gh-138122: Add code examples to the profiling.sampling ddocs ( #142609 )
2025-12-12 01:37:47 +00:00
ivonastojanovic
3b3838823a
gh-138122: Add inverted flamegraph ( #142288 )
...
Co-authored-by: Pablo Galindo Salgado <pablogsal@gmail.com>
2025-12-12 01:36:28 +00:00
Pablo Galindo Salgado
1356fbed7b
gh-142374: Fix recursive function cumulative over-counting in sampling profiler ( #142378 )
2025-12-12 00:50:17 +00:00
Stan Ulbrych
b1c9582ebe
gh-138122: Tachyon heatmap: Make toggle switches keyboard accessible ( #142601 )
2025-12-11 21:58:09 +00:00
Stan Ulbrych
2eca80ffab
gh-138122: Make Tachyon flamegraph and heatmap output more similar ( #142590 )
2025-12-11 21:28:42 +00:00
Sam Gross
0a62f8277e
gh-142534: Avoid TSan warnings in dictobject.c (gh-142544)
...
There are places we use "relaxed" loads where C11 requires "consume" or
stronger. Unfortunately, compilers don't really implement "consume" so
fake it for our use in a way that avoids upsetting TSan.
2025-12-11 16:23:19 -05:00
AZero13
9fe6e3ed36
gh-142571: Check for errors before calling each syscall in PyUnstable_CopyPerfMapFile() ( #142460 )
...
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
2025-12-11 21:18:52 +00:00
Pablo Galindo Salgado
6a0135a392
gh-138122: Add exception profiling mode to the sampling profiler ( #142561 )
2025-12-11 20:46:34 +00:00
Neil Schemenauer
e38967ed60
gh-142531: Fix free-threaded GC performance regression (gh-142562)
...
If there are many untracked tuples, the GC will run too often, resulting
in poor performance. The fix is to include untracked tuples in the
"long lived" object count. The number of frozen objects is also now
included since the free-threaded GC must scan those too.
2025-12-11 12:30:56 -08:00
Brett Cannon
af185727b2
GH-65961: Stop setting __cached__ on modules (GH-142165)
2025-12-11 11:44:46 -08:00
Sam Gross
a26c831bc4
gh-142589: Fix PyUnstable_Object_IsUniqueReferencedTemporary (gh-142593)
...
PyUnstable_Object_IsUniqueReferencedTemporary wasn't handling tagged
ints on the evaluation stack properly.
2025-12-11 14:41:03 -05:00
Brett Cannon
dac4589726
GH-142203: Remove the debug_override parameter from packaging.util.cache_from_source() (GH-142204)
2025-12-11 09:55:47 -08:00
Savannah Ostrowski
387f88cac1
Use subcommand over sub-command in argparse docs ( #142488 )
2025-12-11 17:42:36 +00:00
AN Long
ffc7172124
gh-142579: Remove the self converter hack in winreg.c (GH-142580)
2025-12-11 18:06:26 +01:00
Bartosz Sławecki
8cfa351560
Fix os.posix_spawn() error handling ( #142532 )
...
Consistently use `goto exit;` in `py_posix_spawn()`.
2025-12-11 18:02:26 +01:00
Donghee Na
a27538540e
gh-134584: Eliminate redundant refcounting from `_CALL_LEN` (gh-136104)
2025-12-11 15:24:34 +00:00
Pablo Galindo Salgado
c433986005
gh-142236: Improve error location for missing comma in string concatenations ( #142330 )
2025-12-11 14:47:26 +00:00
Noam Cohen
a78f43b001
gh-134584: Eliminate redundant refcounting from _CALL_TUPLE_1 (GH-135860)
2025-12-11 14:31:28 +00:00
AZero13
44d3dc6491
gh-142438: Added missing GIL release in _PySSL_keylog_callback when keylog_bio is unset (gh-142439)
2025-12-11 23:30:39 +09:00
elenril
79aa43a979
gh-79986: Add parsing for References/In-Reply-To email headers ( #137201 )
...
This is a followup to 46d88a1131 (#13397 ),
which added parsing for Message-ID. Similar handling is needed for the
other two identification headers.
2025-12-11 09:20:53 -05:00
Mark Shannon
4eab90f4f3
GH-140683: JIT: Improve machine code for loading smaller constants on AArch64. (GH-142511)
...
* Use movz and movk instructions for loading 16 and 32 bit operands and oparg.
* Loading of 64 bit operands is unchanged.
2025-12-11 12:33:39 +00:00
Mark Shannon
469f191a85
GH-135379: Top of stack caching for the JIT. (GH-135465)
...
Uses three registers to cache values at the top of the evaluation stack
This significantly reduces memory traffic for smaller, more common uops.
2025-12-11 10:32:52 +00:00
Stan Ulbrych
80c9756e3f
Remove file accidentally added to Doc/ ( #142563 )
2025-12-11 10:11:36 +00:00
Kumar Aditya
42d2bedb87
gh-142556: fix crash when a task gets re-registered during finalization in asyncio ( #142565 )
2025-12-11 15:04:49 +05:30
Dino Viehland
da8199f884
gh-123241: Don't modify ref count during visitation (GH-142232)
2025-12-11 09:54:29 +01:00
Stan Ulbrych
0dd83111ab
Tachyon: Fix heatmap line highlight animation overriding heat colors ( #142522 )
2025-12-11 04:30:16 +00:00
Stan Ulbrych
b52e8ce4af
gh-142539: Fix traceback caret location calculation for SyntaxErrors with wide chars ( #142540 )
2025-12-11 04:20:55 +00:00
Pablo Galindo Salgado
5b19c75b47
gh-138122: Make the tachyon profiler opcode-aware ( #142394 )
2025-12-11 03:41:47 +00:00
Steve Dower
fa448451ab
gh-140172: Skip JSON tools test during PGO training (GH-140809)
2025-12-11 00:34:49 +00:00
Brett Cannon
880a7905ca
GH-97850: Remove all uses and definitions of load_module() from importlib ( #142205 )
2025-12-10 15:35:51 -08:00