cpython/Python
Sam Gross cc581f32bf
gh-135099: Only wait on _PyOS_SigintEvent() in main thread (GH-135100)
On Windows, the `_PyOS_SigintEvent()` event handle is used to interrupt
the main thread when Ctrl-C is pressed. Previously, we also waited on
the event from other threads, but ignored the result. However, this can
race with interpreter shutdown because the main thread closes the handle
in `_PySignal_Fini` and threads may still be running and using mutexes
during interpreter shtudown.

Only use `_PyOS_SigintEvent()` in the main thread in parking_lot.c, like
we do in other places in the CPython codebase.
2025-06-04 09:35:56 +02:00
..
clinic GH-133231: Add JIT utilities in sys._jit (GH-133233) 2025-05-05 15:25:22 -07:00
frozen_modules
_contextvars.c
_warnings.c gh-108512: Add and use new replacements for PySys_GetObject() (GH-111035) 2025-05-28 20:11:09 +03:00
asdl.c
asm_trampoline.S gh-128605: Add branch protections for x86_64 in asm_trampoline.S (#128606) 2025-06-03 09:09:43 +02:00
assemble.c gh-87859: Track Code Object Local Kinds For Arguments (gh-132980) 2025-04-29 02:21:47 +00:00
ast.c gh-132661: Implement PEP 750 (#132662) 2025-04-30 11:46:41 +02:00
ast_preprocess.c gh-126835: Rename ast_opt.c to ast_preprocess.c and related stuff after moving const folding to the peephole optimizier (#131830) 2025-05-04 21:07:35 +03:00
ast_unparse.c gh-133581: Fix refleak in t-string AST unparsing (#133724) 2025-05-09 09:10:52 +02:00
bltinmodule.c gh-108512: Add and use new replacements for PySys_GetObject() (GH-111035) 2025-05-28 20:11:09 +03:00
bootstrap_hash.c
brc.c
bytecodes.c GH-134879: Fix INSTRUMENT_FOR_ITER for list/tuple (#134897) 2025-05-30 07:11:42 -07:00
ceval.c gh-108512: Add and use new replacements for PySys_GetObject() (GH-111035) 2025-05-28 20:11:09 +03:00
ceval_gil.c gh-133886: Fix sys.remote_exec() for non-UTF-8 paths (GH-133887) 2025-05-13 11:55:24 +03:00
ceval_macros.h GH-133231: Changes to executor management to support proposed sys._jit module (GH-133287) 2025-05-04 10:05:35 +01:00
codecs.c gh-133036: Deprecate codecs.open (#133038) 2025-04-30 10:11:09 +09:00
codegen.c GH-132554: "Virtual" iterators (GH-132555) 2025-05-27 15:59:45 +01:00
compile.c gh-126835: Rename ast_opt.c to ast_preprocess.c and related stuff after moving const folding to the peephole optimizier (#131830) 2025-05-04 21:07:35 +03:00
condvar.h
config_common.h
context.c gh-133968: Add PyUnicodeWriter_WriteASCII() function (#133973) 2025-05-29 14:54:30 +00:00
critical_section.c
crossinterp.c gh-132775: Expand the Capability of Interpreter.call() (gh-133484) 2025-05-30 09:15:00 -06:00
crossinterp_data_lookup.h gh-132775: Always Set __builtins__ In _PyFunction_FromXIData() (gh-134758) 2025-05-27 15:42:24 +00:00
crossinterp_exceptions.h
dtoa.c
dup2.c
dynamic_annotations.c
dynload_hpux.c
dynload_shlib.c
dynload_stub.c
dynload_win.c gh-131942: Use the Python-specific Py_DEBUG macro rather than _DEBUG in Windows-related C code (GH-131944) 2025-05-08 15:01:25 +00:00
emscripten_signal.c
emscripten_trampoline.c gh-106213: Shorten Emscripten wasm-gc trampoline by a little (#133984) 2025-05-20 14:22:49 -04:00
errors.c gh-108512: Add and use new replacements for PySys_GetObject() (GH-111035) 2025-05-28 20:11:09 +03:00
executor_cases.c.h GH-132554: "Virtual" iterators (GH-132555) 2025-05-27 15:59:45 +01:00
fileutils.c Fix GetNamedPipeHandleStateW on non-desktop Windows API partitions (GH-134049) 2025-05-15 21:12:10 +01:00
flowgraph.c GH-132554: "Virtual" iterators (GH-132555) 2025-05-27 15:59:45 +01:00
formatter_unicode.c
frame.c
frozen.c
frozenmain.c
future.c
gc.c GH-133261: Make sure that the GC doesn't untrack objects in trashcan (GH-133431) 2025-05-05 13:44:50 +01:00
gc_free_threading.c gh-132917: fix data race on last_mem in free-threading gc (#134692) 2025-05-27 22:42:08 +05:30
gc_gil.c
generated_cases.c.h GH-134879: Fix INSTRUMENT_FOR_ITER for list/tuple (#134897) 2025-05-30 07:11:42 -07:00
getargs.c
getcompiler.c
getcopyright.c
getopt.c GH-133336: Remove reserved `-J` flag for Jython (#133444) 2025-05-05 15:09:19 +00:00
getplatform.c
getversion.c
hamt.c gh-133968: Add PyUnicodeWriter_WriteASCII() function (#133973) 2025-05-29 14:54:30 +00:00
hashtable.c
import.c gh-132775: Expand the Capability of Interpreter.call() (gh-133484) 2025-05-30 09:15:00 -06:00
importdl.c
index_pool.c gh-91048: Refactor and optimize remote debugging module (#134652) 2025-05-25 20:19:29 +00:00
initconfig.c gh-108512: Add and use new replacements for PySys_GetObject() (GH-111035) 2025-05-28 20:11:09 +03:00
instruction_sequence.c GH-124715: Move trashcan mechanism into Py_Dealloc (GH-132280) 2025-04-30 11:37:53 +01:00
instrumentation.c
interpconfig.c
intrinsics.c gh-108512: Add and use new replacements for PySys_GetObject() (GH-111035) 2025-05-28 20:11:09 +03:00
jit.c gh-132661: Implement PEP 750 (#132662) 2025-04-30 11:46:41 +02:00
legacy_tracing.c
lock.c gh-134745: Change PyThread_allocate_lock() implementation to PyMutex (#134747) 2025-05-30 10:15:47 +00:00
marshal.c gh-131942: Use the Python-specific Py_DEBUG macro rather than _DEBUG in Windows-related C code (GH-131944) 2025-05-08 15:01:25 +00:00
modsupport.c gh-128629: Add _Py_PACK_VERSION for CPython's own definitions (GH-134247) 2025-05-28 15:24:40 +02:00
mysnprintf.c
mystrtoul.c
object_stack.c
opcode_targets.h GH-134282: Always borrow references LOAD_CONST (GH-134284) 2025-05-20 11:24:11 -04:00
optimizer.c GH-133231: Changes to executor management to support proposed sys._jit module (GH-133287) 2025-05-04 10:05:35 +01:00
optimizer_analysis.c gh-131798: Small improvements to remove_unneeded_uops (GH-134554) 2025-05-23 20:48:45 +08:00
optimizer_bytecodes.c gh-131798: Optimize _ITER_CHECK_TUPLE (GH-134803) 2025-05-28 02:30:17 +08:00
optimizer_cases.c.h gh-131798: Optimize _ITER_CHECK_TUPLE (GH-134803) 2025-05-28 02:30:17 +08:00
optimizer_symbols.c GH-131798: Optimize cached class attributes and methods in the JIT (GH-134403) 2025-05-22 11:15:03 -04:00
parking_lot.c gh-135099: Only wait on _PyOS_SigintEvent() in main thread (GH-135100) 2025-06-04 09:35:56 +02:00
pathconfig.c gh-133644: Remove deprecated Python initialization getter functions (#133661) 2025-05-09 11:39:23 +00:00
perf_jit_trampoline.c gh-128605: Add branch protections for x86_64 in asm_trampoline.S (#128606) 2025-06-03 09:09:43 +02:00
perf_trampoline.c
preconfig.c
pyarena.c
pyctype.c
pyfpe.c
pyhash.c
pylifecycle.c gh-108512: Add and use new replacements for PySys_GetObject() (GH-111035) 2025-05-28 20:11:09 +03:00
pymath.c
pystate.c gh-91048: Refactor and optimize remote debugging module (#134652) 2025-05-25 20:19:29 +00:00
pystrcmp.c
pystrhex.c
pystrtod.c
Python-ast.c gh-133968: Add PyUnicodeWriter_WriteASCII() function (#133973) 2025-05-29 14:54:30 +00:00
Python-tokenize.c
pythonrun.c gh-108512: Add and use new replacements for PySys_GetObject() (GH-111035) 2025-05-28 20:11:09 +03:00
pytime.c
qsbr.c
README
remote_debug.h gh-91048: Add better error messages for remote debugging for CI builds (#134682) 2025-05-26 15:31:47 +01:00
remote_debugging.c
specialize.c GH-132554: "Virtual" iterators (GH-132555) 2025-05-27 15:59:45 +01:00
stackrefs.c GH-132554: "Virtual" iterators (GH-132555) 2025-05-27 15:59:45 +01:00
stdlib_module_names.h GH-91048: Minor fixes for `_remotedebugging & rename to _remote_debugging` (#133398) 2025-05-05 02:30:14 +02:00
structmember.c
suggestions.c
symtable.c gh-133379: Fix misuse of the term "arguments" in error messages (GH-133382) 2025-05-10 15:00:43 +03:00
sysmodule.c gh-108512: Add and use new replacements for PySys_GetObject() (GH-111035) 2025-05-28 20:11:09 +03:00
thread.c gh-134745: Change PyThread_allocate_lock() implementation to PyMutex (#134747) 2025-05-30 10:15:47 +00:00
thread_nt.h gh-134745: Change PyThread_allocate_lock() implementation to PyMutex (#134747) 2025-05-30 10:15:47 +00:00
thread_pthread.h gh-134745: Change PyThread_allocate_lock() implementation to PyMutex (#134747) 2025-05-30 10:15:47 +00:00
thread_pthread_stubs.h
tier2_engine.md
traceback.c gh-108512: Add and use new replacements for PySys_GetObject() (GH-111035) 2025-05-28 20:11:09 +03:00
tracemalloc.c
uniqueid.c
vm-state.md gh-133079: Remove Py_C_RECURSION_LIMIT & PyThreadState.c_recursion_remaining (GH-133080) 2025-04-29 12:56:20 +02:00

Miscellaneous source files for the main Python shared library