cpython/Tools/wasm/emscripten
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
..
web_example gh-124621: Emscripten: Support pyrepl in browser (GH-136931) 2025-07-22 12:13:38 +02:00
web_example_pyrepl_jspi gh-124621: Emscripten: Support pyrepl in browser (GH-136931) 2025-07-22 12:13:38 +02:00
.editorconfig GH-133600: Refactor wasi.py into wasi/__main__.py 2025-05-07 12:10:53 -07:00
__main__.py gh-133600: Move config.site-wasm32-emscripten into the emscripten folder (#136934) 2025-07-22 07:58:31 +08:00
config.site-wasm32-emscripten gh-124621: Emscripten: Support pyrepl in browser (GH-136931) 2025-07-22 12:13:38 +02:00
make_libffi.sh gh-127629: Add ctypes to the Emscripten build (#127683) 2024-12-10 10:32:58 +08:00
node_entry.mjs gh-127503: Improve tracebacks on Emscripten when there is a trap (#131158) 2025-03-13 08:28:15 +08:00
wasm_assets.py gh-124621: Emscripten: Support pyrepl in browser (GH-136931) 2025-07-22 12:13:38 +02:00