-
-
Notifications
You must be signed in to change notification settings - Fork 32.4k
gh-124621: Emscripten: Support pyrepl in browser #136931
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
26a2ae2
to
0f6928c
Compare
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.
0f6928c
to
733846c
Compare
@adqm If you want to work on any of the followup tasks, let me know. I'm happy to meet / provide suggestions as well if you need them. |
!buildbot emscripten |
🤖 New build scheduled with the buildbot fleet by @hoodmane for commit 50c9932 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F136931%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
!buildbot emscripten |
🤖 New build scheduled with the buildbot fleet by @hoodmane for commit c83eb65 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F136931%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
!buildbot emscripten |
🤖 New build scheduled with the buildbot fleet by @hoodmane for commit 60e65f5 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F136931%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
Co-authored-by: Éric <merwok@netwok.org>
Sorry, @hoodmane and @ambv, I could not cleanly backport this to
|
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> (cherry picked from commit c933a6b)
GH-136978 is a backport of this pull request to the 3.14 branch. |
…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. (cherry picked from commit c933a6b) Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com> Co-authored-by: Łukasz Langa <lukasz@langa.pl> Co-authored-by: Éric <merwok@netwok.org>
GH-136988 is a backport of this pull request to the 3.14 branch. |
If there is an error, we have to return `-errno` not positive errno. Included in backport of pythonGH-136931: python#136988
…H-136988) 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. (cherry picked from commit c933a6b) Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com> Co-authored-by: Łukasz Langa <lukasz@langa.pl> Co-authored-by: Éric <merwok@netwok.org>
Exciting stuff!
@hoodmane, I'm certainly happy to help where I can, which is probably more on the web-UI side than on the low-level-details side (though I'd be happy to learn more there, too). If there are particular things you think it would be helpful for me to look at, just let me know; otherwise, I'll poke at the demo and see where to go from there. Happy to coordinate however makes sense for you. |
Help with the UI or anything is very welcome! |
Basic support for pyrepl in Emscripten. Limitations:
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.
cc @ambv