cpython/Python
Hood Chatham c933a6bb32
Some checks are pending
Tests / (push) Blocked by required conditions
Tests / Cross build Linux (push) Blocked by required conditions
Tests / Change detection (push) Waiting to run
Tests / Docs (push) Blocked by required conditions
Tests / Windows MSI (push) Blocked by required conditions
Tests / Check if Autoconf files are up to date (push) Blocked by required conditions
Tests / Check if generated files are up to date (push) Blocked by required conditions
Tests / Ubuntu SSL tests with OpenSSL (push) Blocked by required conditions
Tests / Ubuntu SSL tests with AWS-LC (push) Blocked by required conditions
Tests / WASI (push) Blocked by required conditions
Tests / Hypothesis tests on Ubuntu (push) Blocked by required conditions
Tests / Address sanitizer (push) Blocked by required conditions
Tests / Sanitizers (push) Blocked by required conditions
Tests / CIFuzz (push) Blocked by required conditions
Tests / All required checks pass (push) Blocked by required conditions
Lint / lint (push) Waiting to run
mypy / Run mypy on Lib/_pyrepl (push) Waiting to run
mypy / Run mypy on Lib/test/libregrtest (push) Waiting to run
mypy / Run mypy on Lib/tomllib (push) Waiting to run
mypy / Run mypy on Tools/build (push) Waiting to run
mypy / Run mypy on Tools/cases_generator (push) Waiting to run
mypy / Run mypy on Tools/clinic (push) Waiting to run
mypy / Run mypy on Tools/jit (push) Waiting to run
mypy / Run mypy on Tools/peg_generator (push) Waiting to run
gh-124621: Emscripten: Support pyrepl in browser (GH-136931)
Basic support for pyrepl in Emscripten. Limitations:
* requires JSPI
* no signal handling implemented

As followup work, it would be nice to implement a webworker variant
for when JSPI is not available and proper signal handling.

Because it requires JSPI, it doesn't work in Safari. Firefox requires
setting an experimental flag. All the Chromiums have full support since
May. Until we make it work without JSPI, let's keep the original web_example
around.

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Co-authored-by: Éric <merwok@netwok.org>
2025-07-22 12:13:38 +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 gh-128384: Use a context variable for warnings.catch_warnings (gh-130010) 2025-04-09 16:18:54 -07:00
_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-136541: Fix several problems of perf trampolines in x86_64 and aarch64 (#136500) 2025-07-11 14:32:35 +01: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-132661: Disallow Template/str concatenation after PEP 750 spec update (#135996) 2025-07-21 08:44:26 +02:00
bltinmodule.c gh-135443: Sometimes Fall Back to __main__.__dict__ For Globals (gh-135491) 2025-06-16 17:34:19 -06:00
bootstrap_hash.c GH-131238: Core header refactor (GH-131250) 2025-03-17 09:19:04 +00:00
brc.c Fix typos in documentation and comments (#119763) 2024-06-04 10:22:22 +00:00
bytecodes.c gh-115999: remove redundant check in free-threading from _STORE_ATTR_WITH_HINT (#136249) 2025-07-04 09:04:47 +05:30
ceval.c gh-134043: use _PyObject_GetMethodStackRef in pattern matching (#136356) 2025-07-08 13:04:50 +05:30
ceval_gil.c GH-133136: Revise QSBR to reduce excess memory held (gh-135473) 2025-06-25 00:06:32 -07: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-132661: Disallow Template/str concatenation after PEP 750 spec update (#135996) 2025-07-21 08:44:26 +02: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 gh-104530: Enable native Win32 condition variables by default (GH-104531) 2024-02-02 13:50:51 +00:00
config_common.h gh-76785: Add PyInterpreterConfig Helpers (gh-117170) 2024-04-02 20:35:52 +00:00
context.c gh-133968: Add PyUnicodeWriter_WriteASCII() function (#133973) 2025-05-29 14:54:30 +00:00
critical_section.c gh-133296: Publicly expose critical section API that accepts PyMutex (gh-135899) 2025-07-21 17:25:43 -04:00
crossinterp.c gh-135855: Raise TypeError When Passing Non-dict Object to _interpreters.set___main___attrs (gh-135856) 2025-06-24 12:53:14 -06:00
crossinterp_data_lookup.h gh-135443: Sometimes Fall Back to __main__.__dict__ For Globals (gh-135491) 2025-06-16 17:34:19 -06:00
crossinterp_exceptions.h gh-132775: Clean Up Cross-Interpreter Error Handling (gh-135369) 2025-06-13 16:45:21 -06:00
dtoa.c gh-131238: Add explicit includes to pycore headers (#131257) 2025-03-17 12:32:43 +01:00
dup2.c
dynamic_annotations.c
dynload_hpux.c
dynload_shlib.c gh-131238: Remove more includes from pycore_interp.h (#131480) 2025-03-19 23:01:32 +01:00
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_syscalls.c gh-124621: Emscripten: Support pyrepl in browser (GH-136931) 2025-07-22 12:13:38 +02:00
emscripten_trampoline.c gh-128627: Emscripten: Add missing semicolon in ios detection code (#135590) 2025-06-16 23:17:17 +00: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-115999: remove redundant check in free-threading from _STORE_ATTR_WITH_HINT (#136249) 2025-07-04 09:04:47 +05:30
fileutils.c Fix GetNamedPipeHandleStateW on non-desktop Windows API partitions (GH-134049) 2025-05-15 21:12:10 +01:00
flowgraph.c gh-134280: Disable constant folding for ~ with a boolean argument (GH-134982) 2025-07-01 20:24:04 +03:00
formatter_unicode.c GH-131238: Core header refactor (GH-131250) 2025-03-17 09:19:04 +00:00
frame.c gh-131173: Improve exception handling during take_ownership processing (#132620) 2025-04-17 13:38:34 -07:00
frozen.c GH-89435: os.path should not be a frozen module (#126924) 2024-11-22 18:50:30 +00:00
frozenmain.c gh-105716: Fix _PyInterpreterState_IsRunningMain() For Embedders (gh-117140) 2024-03-21 18:20:20 -06:00
future.c gh-126139: Improve error message location for future statement with unknown feature (#126140) 2024-10-29 23:57:59 +00:00
gc.c gh-136517: Print uncollectable objects if DEBUG_UNCOLLECTABLE mode was set (#136518) 2025-07-10 22:13:23 +01:00
gc_free_threading.c gh-135909: Assert incoming refcnt != 0 for the free threaded GC (GH-136009) 2025-07-15 11:26:16 -04:00
gc_gil.c gh-100240: Use a consistent implementation for freelists (#121934) 2024-07-22 12:08:27 -04:00
generated_cases.c.h gh-115999: remove redundant check in free-threading from _STORE_ATTR_WITH_HINT (#136249) 2025-07-04 09:04:47 +05:30
getargs.c gh-132629: Deprecate accepting out-of-range values for unsigned integers in PyArg_Parse (GH-132630) 2025-07-13 12:44:54 +03:00
getcompiler.c
getcopyright.c gh-126133: Only use start year in PSF copyright, remove end years (#126236) 2024-11-12 15:59:19 +02:00
getopt.c GH-133336: Remove reserved `-J` flag for Jython (#133444) 2025-05-05 15:09:19 +00:00
getplatform.c
getversion.c gh-119132: Remove "experimental" tag from the CPython free-threading. (gh-135550) 2025-06-16 23:32:52 +09:00
hamt.c gh-133968: Add PyUnicodeWriter_WriteASCII() function (#133973) 2025-05-29 14:54:30 +00:00
hashtable.c
import.c gh-135443: Sometimes Fall Back to __main__.__dict__ For Globals (gh-135491) 2025-06-16 17:34:19 -06:00
importdl.c Remove duplicate includes: Python/importdl.c (#132623) 2025-04-18 02:49:19 +01:00
index_pool.c gh-91048: Refactor and optimize remote debugging module (#134652) 2025-05-25 20:19:29 +00:00
initconfig.c GH-133711: Enable UTF-8 mode by default (PEP 686) (#133712) 2025-07-15 10:45:41 +01:00
instruction_sequence.c GH-124715: Move trashcan mechanism into Py_Dealloc (GH-132280) 2025-04-30 11:37:53 +01:00
instrumentation.c gh-134411: assert PyLong_FromLong(x) != NULL when x is known to be small (#134415) 2025-07-21 11:59:06 +03:00
interpconfig.c GH-131238: Core header refactor (GH-131250) 2025-03-17 09:19:04 +00:00
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-135904: Improve the JIT's performance on macOS (GH-136528) 2025-07-14 10:14:20 -07:00
legacy_tracing.c gh-111178: fix UBSan failures for Python/legacy_tracing.c (#131611) 2025-03-24 11:00:32 +01:00
lock.c gh-134009: Expose PyMutex_IsLocked in the public C API (gh-134365) 2025-07-01 13:26:13 -04:00
marshal.c gh-136053: Check error for TYPE_SLICE in marshal.c (GH-136054) 2025-06-29 10:07:24 +03: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 gh-100240: Use a consistent implementation for freelists (#121934) 2024-07-22 12:08:27 -04:00
opcode_targets.h GH-134282: Always borrow references LOAD_CONST (GH-134284) 2025-05-20 11:24:11 -04:00
optimizer.c GH-135379: Support limited scalar replacement for replicated uops in the JIT code generator. (GH-135563) 2025-06-17 13:43:09 +01:00
optimizer_analysis.c gh-132732: Automatically constant evaluate pure operations (GH-132733) 2025-06-27 19:37:44 +08:00
optimizer_bytecodes.c gh-136125: Use _PyObject_GetMethodStackRef for LOAD_ATTR (GH-136127) 2025-07-02 01:20:46 +08:00
optimizer_cases.c.h gh-136183: Deal with escapes in JIT optimizer's constant evaluator (GH-136184) 2025-07-02 14:08:25 +08:00
optimizer_symbols.c gh-132732: Fix up pure types in JIT (GH-136050) 2025-06-28 18:30:30 +08: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-136541: Fix several problems of perf trampolines in x86_64 and aarch64 (#136500) 2025-07-11 14:32:35 +01:00
perf_trampoline.c gh-136541: Fix several problems of perf trampolines in x86_64 and aarch64 (#136500) 2025-07-11 14:32:35 +01:00
preconfig.c GH-133711: Enable UTF-8 mode by default (PEP 686) (#133712) 2025-07-15 10:45:41 +01:00
pyarena.c Chore: Fix typo in pyarena.c (#126527) 2024-11-07 16:37:41 +01:00
pyctype.c
pyfpe.c
pyhash.c gh-122854: Add Py_HashBuffer() function (#122855) 2024-08-30 15:42:27 +00:00
pylifecycle.c gh-136421: Load _datetime static types during interpreter initialization (GH-136583) 2025-07-21 13:47:26 -04:00
pymath.c
pystate.c gh-136870: fix data race in PyThreadState_Clear on sys_tracing_threads (#136951) 2025-07-21 20:35:25 +00:00
pystrcmp.c
pystrhex.c
pystrtod.c gh-120026: soft deprecate Py_HUGE_VAL macro (#120027) 2024-11-01 22:04:31 +00:00
Python-ast.c gh-133968: Add PyUnicodeWriter_WriteASCII() function (#133973) 2025-05-29 14:54:30 +00:00
Python-tokenize.c gh-111178: Fix function signatures for test_types (#131455) 2025-03-19 13:46:17 +00:00
pythonrun.c gh-108512: Add and use new replacements for PySys_GetObject() (GH-111035) 2025-05-28 20:11:09 +03:00
pytime.c gh-131238: Remove pycore_runtime.h from pycore_pystate.h (#131356) 2025-03-19 17:33:24 +01:00
qsbr.c GH-133136: Revise QSBR to reduce excess memory held (gh-135473) 2025-06-25 00:06:32 -07:00
README
remote_debug.h gh-135953: Implement sampling tool under profile.sample (#135998) 2025-07-10 18:44:24 +01:00
remote_debugging.c gh-134876: Add fallback for when process_vm_readv fails with ENOSYS (#134878) 2025-06-07 19:32:06 +01:00
specialize.c gh-132815: Add support for JUMP_BACKWARD in specialization stats (#135606) 2025-06-17 14:11:09 +02:00
stackrefs.c GH-132554: Fix tier2 FOR_ITER implementation and optimizations (GH-135137) 2025-06-05 18:53:57 +01:00
stdlib_module_names.h gh-105456: Remove 3 deprecated sre_* modules (#135994) 2025-07-01 17:31:07 +02:00
structmember.c gh-132685: fix thread safety of PyMember_GetOne with _Py_T_OBJECT (#132690) 2025-04-18 21:03:42 +05:30
suggestions.c GH-131238: Core header refactor (GH-131250) 2025-03-17 09:19:04 +00:00
symtable.c gh-121914: Change the names of the symbol tables for lambda and genexpr (GH-135288) 2025-07-13 21:09:42 +03:00
sysmodule.c gh-135645: Added supports_isolated_interpreters to sys.implementation (#135667) 2025-06-21 10:56:14 +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 gh-125161: return non zero value in pthread_self on wasi (#125303) 2024-10-13 20:59:41 +05:30
tier2_engine.md Docs: fix spelling of the word 'transferring' (#116641) 2024-03-13 23:53:32 +01:00
traceback.c gh-108512: Add and use new replacements for PySys_GetObject() (GH-111035) 2025-05-28 20:11:09 +03:00
tracemalloc.c gh-131296: fix clang-cl warning in tracemalloc.c (#131514) 2025-03-22 10:38:47 +01:00
uniqueid.c gh-128923: Use zero to indicate unassigned unique id (#128925) 2025-01-17 16:42:27 +01:00
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