cpython/Modules
Miss Islington (bot) 13ca1f02a4
[3.12] gh-111777: Fix assertion errors on incorrectly still-tracked GC object destruction (GH-111778) (#111989)
gh-111777: Fix assertion errors on incorrectly still-tracked GC object destruction (GH-111778)

In PyObject_GC_Del, in Py_DEBUG mode, when warning about GC objects that
were not properly untracked before starting destruction, take care to
untrack the object _before_ warning, to avoid triggering a GC run and
causing the problem the code tries to warn about. Also make sure to save and
restore any pending exceptions, which the warning would otherwise clobber or
trigger an assertion error on.
(cherry picked from commit ce6a533c4b)

Co-authored-by: T. Wouters <thomas@python.org>
2023-11-12 00:44:24 +00:00
..
_blake2 [3.12] gh-111251: Fix error checking in _blake2 module init (GH-111252) (#111297) 2023-11-10 14:58:00 +00:00
_ctypes [3.12] gh-46376: Revert "Return existing pointer when possible in ctypes (GH-107131) (GH-107487)" (#108864) 2023-09-04 16:24:16 +02:00
_decimal [3.12] gh-106263: Fix segfault in signaldict_repr in _decimal module (#… (#107491) 2023-07-31 14:34:16 +02:00
_hacl [3.12] gh-99108: Refresh HACL* (GH-104808) (#104893) 2023-05-24 20:55:37 +00:00
_io [3.12] gh-111174: Fix crash in getbuffer() called repeatedly for empty BytesIO (GH-111210) (GH-111314) 2023-10-25 11:25:31 +00:00
_multiprocessing [3.12] gh-107913: Fix possible losses of OSError error codes (GH-107930) (#108523) 2023-08-27 01:24:40 +02:00
_sqlite [3.12] gh-108083: Don't ignore exceptions in sqlite3.Connection.__init__() and .close() (#108084) (#108141) 2023-08-20 01:07:41 +02:00
_sre [3.12] gh-109747: Improve errors for unsupported look-behind patterns (GH-109859) (GH-110859) 2023-10-14 06:42:19 +00:00
_ssl GH-103092: isolate _ssl (#104725) 2023-05-22 06:14:48 +05:30
_testcapi [3.12] gh-111495: Add tests for PyList C API (GH-111562) (GH-111861) 2023-11-08 18:10:13 +00:00
_xxtestfuzz [3.12] gh-109098: Fuzz re module instead of internal sre (GH-109911) (#109932) 2023-10-02 17:39:07 +02:00
cjkcodecs [3.12] gh-101180: Fix a bug where iso2022_jp_3 and iso2022_jp_2004 codecs read out of bounds (gh-111695) (gh-111769) 2023-11-06 11:31:58 +00:00
clinic [3.12] GH-111804: Drop posix.fallocate() under WASI (GH-111869) (GH-111919) 2023-11-09 15:35:51 -08:00
expat gh-98739: Update libexpat from 2.4.9 to 2.5.0 (#98742) 2022-10-27 13:45:12 -07:00
_abc.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_asynciomodule.c [3.12] gh-105987: Fix reference counting issue in `_asyncio._swap_cur… (#106099) 2023-06-26 08:51:28 +00:00
_bisectmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_bz2module.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_codecsmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_collectionsmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_contextvarsmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_cryptmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_csv.c gh-104265 Disallow instantiation of _csv.Reader and _csv.Writer (#104266) 2023-05-07 21:15:44 +00:00
_curses_panel.c [3.12] gh-86493: Fix possible leaks in modules initialization: _curses_panel, _decimal, posix, xxsubtype (GH-106767) (#106849) 2023-07-18 10:03:59 +03:00
_cursesmodule.c [3.12] gh-107913: Fix possible losses of OSError error codes (GH-107930) (#108523) 2023-08-27 01:24:40 +02:00
_datetimemodule.c [3.12] Fix undefined behaviour in datetime.time.fromisoformat() (GH-111982) (#111992) 2023-11-12 00:39:03 +00:00
_dbmmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_elementtree.c [3.12] gh-105375: Improve error handling in _elementtree (GH-105591) (#105600) 2023-06-09 21:15:24 +00:00
_functoolsmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_gdbmmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_hashopenssl.c [3.12] gh-106033: Get rid of new occurrences of PyDict_GetItem and Py… (#106041) 2023-06-24 16:36:34 -07:00
_heapqmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_json.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_localemodule.c [3.12] gh-107913: Fix possible losses of OSError error codes (GH-107930) (#108523) 2023-08-27 01:24:40 +02:00
_lsprof.c [3.12] GH-106152: Add PY_THROW event to cProfile (GH-106256) 2023-06-29 23:39:18 +00:00
_lzmamodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_math.h gh-101678: refactor the math module to use special functions from c11 (GH-101679) 2023-02-09 00:40:52 -08:00
_opcode.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_operator.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_pickle.c [3.12] gh-105375: Improve error handling in _Unpickler_SetInputStream() (#105667) (#105720) 2023-06-13 09:15:19 +00:00
_posixsubprocess.c [3.12] gh-104690 Disallow thread creation and fork at interpreter finalization (GH-104826) (#105277) 2023-06-04 04:32:00 +00:00
_queuemodule.c [3.12] gh-104812: Run Pending Calls in any Thread (gh-104813) (gh-105752) 2023-06-14 00:50:08 +00:00
_randommodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_scproxy.c gh-104180: Read SOCKS proxies from macOS System Configuration (#104181) 2023-05-09 10:24:29 +02:00
_ssl.c [3.12] gh-107913: Fix possible losses of OSError error codes (GH-107930) (#108523) 2023-08-27 01:24:40 +02:00
_ssl.h GH-103092: isolate _ssl (#104725) 2023-05-22 06:14:48 +05:30
_ssl_data.h closes bpo-40266, closes bpo-39953: Use numeric lib code if compiling against old OpenSSL. (GH-19506) 2020-04-13 22:11:40 -05:00
_ssl_data_31.h [3.12] gh-103142: Upgrade binary builds and CI to OpenSSL 1.1.1u (GH-105174) (#105199) 2023-06-01 17:13:35 +00:00
_ssl_data_111.h [3.12] gh-103142: Upgrade binary builds and CI to OpenSSL 1.1.1u (GH-105174) (#105199) 2023-06-01 17:13:35 +00:00
_ssl_data_300.h [3.12] gh-103142: Upgrade binary builds and CI to OpenSSL 1.1.1u (GH-105174) (#105199) 2023-06-01 17:13:35 +00:00
_stat.c [3.12] gh-86493: Fix possible leaks in some modules initialization (GH-106768) (GH-106855) 2023-07-18 15:14:10 +03:00
_statisticsmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_struct.c gh-104276: Make _struct.unpack_iterator type use type flag instead of custom constructor (#104277) 2023-05-09 12:41:09 +00:00
_testbuffer.c gh-99300: Replace Py_INCREF() with Py_NewRef() (#99513) 2022-11-16 10:39:47 +01:00
_testcapi_feature_macros.inc [3.12] gh-102304: doc: Add links to Stable ABI and Limited C API (#105345) (#105371) 2023-06-06 13:11:28 +00:00
_testcapimodule.c [3.12] gh-111495: add stub files for C API test modules (GH-111586) (GH-111592) 2023-11-01 09:43:56 +02:00
_testclinic.c gh-64631: Test exception messages in cloned Argument Clinic funcs (#104167) 2023-05-05 14:08:24 +02:00
_testimportmultiple.c
_testinternalcapi.c [3.12] gh-110241: Add missing error check to record_eval in _testinternalcapi (GH-110242) (#110244) 2023-10-02 21:38:25 +00:00
_testmultiphase.c gh-99113: Add a check for Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104206) 2023-05-06 21:57:35 +00:00
_testsinglephase.c [3.12] gh-102251: Explicitly free state for test modules with state in test_import (GH-105085) (#105170) 2023-05-31 21:34:21 +00:00
_threadmodule.c [3.12] gh-108987: Fix _thread.start_new_thread() race condition (#109135) (#110342) 2023-10-04 11:20:31 +00:00
_tkinter.c [3.12] gh-106350: Tkinter: do not ignore return value of mp_init() (GH-106351) (GH-107258) 2023-07-26 10:58:33 +03:00
_tracemalloc.c GH-101520: Move tracemalloc functionality into core, leaving interface in Modules. (#104508) 2023-05-17 14:17:16 +01:00
_typingmodule.c gh-104549: Set __module__ on TypeAliasType (#104550) 2023-05-18 15:56:15 -07:00
_uuidmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_weakref.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
_winapi.c [3.12] gh-106844: Fix issues in _winapi.LCMapStringEx (GH-107832) (#107874) 2023-08-16 12:10:42 +02:00
_xxinterpchannelsmodule.c [3.12] gh-101524: Only Use Public C-API in the _xxsubinterpreters Module (gh-105258) (gh-107303) 2023-07-27 13:15:47 -06:00
_xxsubinterpretersmodule.c [3.12] gh-101524: Only Use Public C-API in the _xxsubinterpreters Module (gh-105258) (gh-107303) 2023-07-27 13:15:47 -06:00
_zoneinfo.c [3.12] bpo-42663: Fix parsing TZ strings in zoneinfo module (GH-23825) (GH-110882) 2023-10-15 10:59:19 +03:00
addrinfo.h gh-95174: WASI: skip missing sockets functions (GH-95179) 2022-07-27 08:19:23 +02:00
arraymodule.c [3.12] gh-105375: Improve array.array exception handling (GH-105594) (#105644) 2023-06-11 10:24:22 +00:00
atexitmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
audioop.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
binascii.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
cmathmodule.c [3.12] gh-86493: Fix possible leaks in some modules initialization (GH-106768) (GH-106855) 2023-07-18 15:14:10 +03:00
config.c.in Add tests for the C tokenizer and expose it as a private module (GH-27924) 2021-08-24 17:50:05 +01:00
errnomodule.c [3.12] gh-105375: Improve errnomodule error handling (#105590) (#105596) 2023-06-09 20:36:53 +00:00
faulthandler.c [3.12] gh-110052: Fix faulthandler for freed tstate (#110069) (#110071) 2023-10-02 17:44:51 +02:00
fcntlmodule.c [3.12] gh-107913: Fix possible losses of OSError error codes (GH-107930) (#108523) 2023-08-27 01:24:40 +02:00
gc_weakref.txt Fix links to old SF bugs (#95648) 2022-08-04 18:12:35 +02:00
gcmodule.c [3.12] gh-111777: Fix assertion errors on incorrectly still-tracked GC object destruction (GH-111778) (#111989) 2023-11-12 00:44:24 +00:00
getaddrinfo.c gh-74895: getaddrinfo no longer raises OverflowError (#2435) 2023-02-13 17:37:34 -08:00
getbuildinfo.c gh-81057: Move Globals in Core Code to _PyRuntimeState (gh-99496) 2022-11-15 09:45:11 -07:00
getnameinfo.c gh-95174: WASI: skip missing sockets functions (GH-95179) 2022-07-27 08:19:23 +02:00
getpath.c [3.12] gh-107913: Fix possible losses of OSError error codes (GH-107930) (#108523) 2023-08-27 01:24:40 +02:00
getpath.py gh-101543: Ensure Windows registry path is only used when stdlib can't be found (GH-101544) 2023-02-06 15:55:32 +00:00
getpath_noop.c bpo-45582: Port getpath[p].c to Python (GH-29041) 2021-12-03 00:08:42 +00:00
grpmodule.c [3.12] gh-104432: Use memcpy() to avoid misaligned loads (GH-104433) (#107355) 2023-07-27 13:52:39 -07:00
hashlib.h [3.12] gh-99108: Release the GIL around hashlib built-in computation (GH-104675) (#104776) 2023-05-23 11:24:02 +00:00
itertoolsmodule.c [3.12] Fix grammar and improve clarity for an deprecation message. (GH-105457) (#105458) 2023-06-07 12:41:04 -05:00
ld_so_aix.in
main.c gh-81057: Move More Globals in Core Code to _PyRuntimeState (gh-99516) 2022-11-16 09:37:14 -07:00
makesetup gh-96269: static and shared ext need different deps (#96316) 2022-11-16 14:03:35 +01:00
makexp_aix bpo-42087: Remove support for AIX 5.3 and below (GH-22830) 2020-11-16 16:16:10 +01:00
mathmodule.c [3.12] gh-111342: fix typo in math.sumprod (GH-111416) (gh-111419) 2023-10-28 05:27:33 +00:00
md5module.c [3.12] gh-99108: Release the GIL around hashlib built-in computation (GH-104675) (#104776) 2023-05-23 11:24:02 +00:00
mmapmodule.c [3.12] gh-107913: Fix possible losses of OSError error codes (GH-107930) (#108523) 2023-08-27 01:24:40 +02:00
nismodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
ossaudiodev.c bpo-15999: Accept arbitrary values for boolean parameters. (#15609) 2022-12-03 11:52:21 -08:00
overlapped.c [3.12] gh-107913: Fix possible losses of OSError error codes (GH-107930) (#108523) 2023-08-27 01:24:40 +02:00
posixmodule.c [3.12] gh-111841: Fix os.putenv() and os.unsetenv() with embedded NUL on Windows (GH-111842) (GH-111966) 2023-11-11 08:02:08 +00:00
posixmodule.h bpo-41498: Fix build on platforms without sigset_t (GH-29770) 2021-11-25 12:28:41 +01:00
pwdmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
pyexpat.c [3.12] gh-105375: Harden pyexpat initialisation (#105606) (#105669) 2023-06-11 21:35:13 +00:00
readline.c [3.12] gh-109191: Fix build with newer editline (gh-110239) (gh-110562) 2023-10-09 23:01:00 +09:00
README
resource.c [3.12] gh-89886: Rely on HAVE_SYS_TIME_H (GH-105058) (#105192) 2023-06-01 12:08:37 +00:00
rotatingtree.c
rotatingtree.h
selectmodule.c [3.12] gh-110395: invalidate open kqueues after fork (GH-110517) (#111745) 2023-11-11 09:21:52 -08:00
Setup [3.12] gh-99108: Refresh HACL* (GH-104808) (#104893) 2023-05-24 20:55:37 +00:00
Setup.bootstrap.in gh-103763: Implement PEP 695 (#103764) 2023-05-15 20:36:23 -07:00
Setup.stdlib.in [3.12] gh-111495: add stub files for C API test modules (GH-111586) (GH-111592) 2023-11-01 09:43:56 +02:00
sha1module.c [3.12] gh-99108: Release the GIL around hashlib built-in computation (GH-104675) (#104776) 2023-05-23 11:24:02 +00:00
sha2module.c [3.12] gh-99108: Refresh HACL* (GH-104808) (#104893) 2023-05-24 20:55:37 +00:00
sha3module.c [3.12] gh-99108: Release the GIL around hashlib built-in computation (GH-104675) (#104776) 2023-05-23 11:24:02 +00:00
signalmodule.c [3.12] gh-104812: Run Pending Calls in any Thread (gh-104813) (gh-105752) 2023-06-14 00:50:08 +00:00
socketmodule.c [3.12] gh-111253: Fix error checking in _socket module init (GH-111254) (#111299) 2023-11-01 21:01:28 +01:00
socketmodule.h gh-103092: Isolate socket module (#103094) 2023-04-09 06:33:52 +05:30
spwdmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
symtablemodule.c [3.12] gh-110045: Update symtable module for PEP 695 (GH-110066) (#110070) 2023-09-29 08:10:22 +02:00
syslogmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
termios.c [3.12] gh-110365: Fix error overwrite in termios.tcsetattr (GH-110366) (#110389) 2023-10-05 14:21:03 +02:00
timemodule.c [3.12] gh-111295: Fix error checking in time extension module init (GH-111296) (#111300) 2023-11-01 20:58:02 +01:00
tkappinit.c gh-103538: Remove unused TK_AQUA code (GH-103539) 2023-05-10 18:53:13 +00:00
tkinter.h gh-103532: Remove TKINTER_PROTECT_LOADTK code (GH-103535) 2023-04-14 09:04:16 -05:00
unicodedata.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
unicodedata_db.h closes gh-96734: Update to Unicode 15.0.0. (GH-96809) 2022-09-13 15:45:12 -07:00
unicodename_db.h closes gh-96734: Update to Unicode 15.0.0. (GH-96809) 2022-09-13 15:45:12 -07:00
winreparse.h bpo-31512: Add non-elevated symlink support for Windows (GH-3652) 2019-04-09 11:19:46 -07:00
xxlimited.c [3.12] gh-110968: Py_MOD_PER_INTERPRETER_GIL_SUPPORTED was added to 3.12 (#111588) 2023-11-01 18:13:31 +01:00
xxlimited_35.c [3.12] gh-110968: Py_MOD_PER_INTERPRETER_GIL_SUPPORTED was added to 3.12 (#111588) 2023-11-01 18:13:31 +01:00
xxmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00
xxsubtype.c [3.12] gh-86493: Fix possible leaks in modules initialization: _curses_panel, _decimal, posix, xxsubtype (GH-106767) (#106849) 2023-07-18 10:03:59 +03:00
zlibmodule.c gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205) 2023-05-05 21:11:27 +00:00

Source files for standard library extension modules,
and former extension modules that are now builtin modules.