cpython/Objects
Sam Gross b7c25eabd6
[3.14] gh-139103: fix free-threading dataclass.__init__ perf issue (gh-141596) (gh-141750)
The dataclasses `__init__` function is generated dynamically by a call to `exec()` and so doesn't have deferred reference counting enabled. Enable deferred reference counting on functions when assigned as an attribute to type objects to avoid reference count contention when creating dataclass instances.
(cherry picked from commit ce79154176)

Co-authored-by: Edward Xu <xuxiangad@gmail.com>
2025-11-19 15:00:51 +00:00
..
clinic [3.14] gh-129559: Remove extra dot in bytearray.resize AC (GH-140134) (#140143) 2025-10-15 14:06:18 +03:00
mimalloc
stringlib [3.14] gh-127971: fix off-by-one read beyond the end of a string during search (GH-132574) (#136628) 2025-07-13 13:58:03 +00:00
abstract.c gh-131238: Remove includes from pycore_interp.h (#131495) 2025-03-20 11:35:23 +00:00
boolobject.c gh-111178: remove redundant casts for functions with correct signatures (#131673) 2025-04-01 17:18:11 +02:00
bytearrayobject.c [3.14] gh-129559: Remove extra dot in bytearray.resize AC (GH-140134) (#140143) 2025-10-15 14:06:18 +03:00
bytes_methods.c
bytesobject.c [3.14] gh-140939: Fix memory leak in _PyBytes_FormatEx error path (GH-140957) (#141154) 2025-11-06 16:20:03 +00:00
call.c
capsule.c gh-111178: fix UBSan failures in Objects/capsule.c (GH-128239) 2025-01-08 14:55:04 +01:00
cellobject.c
classobject.c [3.14] gh-135607: remove null checking of weakref list in dealloc of extension modules and objects (#135614) (#136119) 2025-06-30 15:59:22 +02:00
codeobject.c [3.14] gh-140815: Fix faulthandler for invalid/freed frame (GH-140921) (#140981) 2025-11-04 11:18:23 +00:00
complexobject.c gh-111178: Change Argument Clinic signature for @classmethod (#131157) 2025-03-12 17:42:07 +01:00
descrobject.c GH-124715: Move trashcan mechanism into Py_Dealloc (GH-132280) 2025-04-30 11:37:53 +01:00
dictnotes.txt
dictobject.c [3.14] gh-140551: Fix dict crash if clear is called at lookup stage (GH-140558) (#140743) 2025-10-30 22:33:35 +05:30
enumobject.c gh-131525: Cache the result of tuple_hash (#131529) 2025-03-27 09:57:06 -04:00
exceptions.c GH-124715: Move trashcan mechanism into Py_Dealloc (GH-132280) 2025-04-30 11:37:53 +01:00
fileobject.c gh-111178: fix UBSan failures for PyStdPrinter_Object (#131607) 2025-03-24 10:57:14 +01:00
floatobject.c [3.14] gh-141042: fix sNaN's packing for mixed floating-point formats (GH-141107) (#141459) 2025-11-12 10:33:34 +00:00
frameobject.c [3.14] gh-137200: support frame lineno setter with BRANCH_LEFT and BRANCH_RIGHT events (GH-137229) (#137280) 2025-08-11 17:07:19 +03:00
funcobject.c [3.14] gh-135607: remove null checking of weakref list in dealloc of extension modules and objects (#135614) (#136119) 2025-06-30 15:59:22 +02:00
genericaliasobject.c [3.14] gh-105487: Fix __dir__ entries of GenericAlias (GH-138578) (GH-138629) 2025-10-07 23:12:13 +02:00
genobject.c [3.14] gh-140431: Fix GC crash due to partially initialized coroutines (gh-140470) (gh-140504) 2025-10-23 14:44:21 +00:00
interpolationobject.c [3.14] gh-132661: Add default value (of "") for Interpolation.expression (GH-136441) (#136511) 2025-07-10 14:52:18 +00:00
iterobject.c gh-131666: mark anext_awaitable.close as a METH_NOARGS instead of METH_VARARGS (#131671) 2025-03-25 09:03:22 +05:30
listobject.c [3.14] GH-133136: Revise QSBR to reduce excess memory held (gh-135473) (#135912) 2025-07-08 10:58:01 -07:00
listsort.txt
lnotab_notes.txt
longobject.c [3.14] gh-140061: Use _PyObject_IsUniquelyReferenced() to check if objects are uniquely referenced (gh-140062) (gh-140157) 2025-10-15 14:49:17 +00:00
memoryobject.c gh-132776: Revert Moving memoryview XIData Code to memoryobject.c (gh-132960) 2025-04-25 16:43:50 +00:00
methodobject.c [3.14] gh-135607: remove null checking of weakref list in dealloc of extension modules and objects (#135614) (#136119) 2025-06-30 15:59:22 +02:00
moduleobject.c [3.14] gh-135607: remove null checking of weakref list in dealloc of extension modules and objects (#135614) (#136119) 2025-06-30 15:59:22 +02:00
namespaceobject.c [3.14] gh-135878: Fix crash in types.SimpleNamespace.__repr__ (GH-135889) (#135896) 2025-06-24 16:58:57 +00:00
object.c [3.14] GH-135106: Restrict trashcan to GC'ed objects (GH-135682) (#135876) 2025-07-07 12:31:18 +03:00
object_layout.md
object_layout_312.gv
object_layout_312.png [3.14] gh-71648: Optimize PNG files (GH-138842) (GH-138851) 2025-10-07 20:52:12 +02:00
object_layout_313.gv
object_layout_313.png [3.14] gh-71648: Optimize PNG files (GH-138842) (GH-138851) 2025-10-07 20:52:12 +02:00
object_layout_full_312.gv
object_layout_full_312.png [3.14] gh-71648: Optimize PNG files (GH-138842) (GH-138851) 2025-10-07 20:52:12 +02:00
object_layout_full_313.gv
object_layout_full_313.png [3.14] gh-71648: Optimize PNG files (GH-138842) (GH-138851) 2025-10-07 20:52:12 +02:00
obmalloc.c [3.14] GH-133136: Revise QSBR to reduce excess memory held (gh-135473) (#135912) 2025-07-08 10:58:01 -07:00
odictobject.c [3.14] gh-125996: fix thread safety of collections.OrderedDict (GH-133734) (#140053) 2025-10-13 23:25:24 +05:30
picklebufobject.c [3.14] gh-135607: remove null checking of weakref list in dealloc of extension modules and objects (#135614) (#136119) 2025-06-30 15:59:22 +02:00
rangeobject.c [3.14] GH-141312: Allow only integers to longrangeiter_setstate state (GH-141317) (GH-141559) 2025-11-15 21:30:25 +02:00
README
setobject.c [3.14] gh-140061: Use _PyObject_IsUniquelyReferenced() to check if objects are uniquely referenced (gh-140062) (gh-140157) 2025-10-15 14:49:17 +00:00
sliceobject.c gh-111178: Fix function signatures for multiple tests (#131496) 2025-03-20 12:27:03 +01:00
structseq.c gh-131525: Cache the result of tuple_hash (#131529) 2025-03-27 09:57:06 -04:00
templateobject.c [3.14] gh-132661: Disallow Template/str concatenation after PEP 750 spec update (#135996) (#136901) 2025-07-21 17:34:54 +02:00
tupleobject.c [3.14] GH-139951: Fix major GC performance regression. Backport of GH-140262 (GH-140447) 2025-10-23 15:26:58 +01:00
typeobject.c [3.14] gh-139103: fix free-threading dataclass.__init__ perf issue (gh-141596) (gh-141750) 2025-11-19 15:00:51 +00:00
typeslots.inc Revert "gh-133395: add option for extension modules to specialize BINARY_OP/SUBSCR, apply to arrays (#133396)" (#133498) 2025-05-06 13:12:26 +03:00
typeslots.py
typevarobject.c [3.14] gh-140000: Traverse name attribute for TypeVar, TypeVarTuple, TypeAliasType, ParamSpec (GH-140016) (#140063) 2025-10-13 20:36:24 +00:00
unicodectype.c gh-82045: Correct and deduplicate "isprintable" docs; add test. (GH-130118) 2025-02-14 18:16:47 +01:00
unicodeobject.c [3.14] Remove dead stores to 'size' in UTF-8 decoder (unicodeobject.c) (GH-140637) (#140658) 2025-10-27 09:21:43 +00:00
unicodetype_db.h
unionobject.c [3.14] gh-140348: Fix using | on unusual objects plus Unions (GH-140383) (#140948) 2025-11-03 15:16:03 +00:00
weakrefobject.c gh-129354: Use PyErr_FormatUnraisable() function (#129511) 2025-01-31 13:16:08 +01:00

Source files for various builtin objects