summaryrefslogtreecommitdiffstats
path: root/Tools/wasm
Commit message (Collapse)AuthorAgeFilesLines
* wasm: do not use inline comment in .editorconfig (GH-106610)Miss Islington (bot)2023-07-161-1/+2
| | | | | | | It is no longer valid since 0.15.0 https://github.com/editorconfig/specification/blob/v0.15/index.rstGH-no-inline-comments (cherry picked from commit 64c0890b697783db9b3f67e3bb4dcee1165a0b9b) Co-authored-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
* [3.11] gh-100340: Allows -Wno-int-conversion for wasm (GH-100341) (#106066)Miss Islington (bot)2023-06-281-0/+3
| | | | | (cherry picked from commit 75c8133efec035ec1083ebd8e7d43ef340c2e581) Co-authored-by: Kushal Das <mail@kushaldas.in>
* [3.11] gh-96883: browser: include concurrent.futures (GH-96886) (GH-96888)Christian Heimes2022-09-171-17/+17
|
* gh-84461: Omit resource mod and getresuid funcs on Emscripten (GH-96303)Miss Islington (bot)2022-09-131-0/+4
| | | | | (cherry picked from commit a36235d5c7863a85fa323b2048d3d254116a958e) Co-authored-by: Christian Heimes <christian@python.org>
* [3.11] gh-95853: Add script to automate WASM build (GH-95828, GH-95985, ↵Christian Heimes2022-09-134-21/+997
| | | | | | | | | | | | GH-96045, GH-96389, GH-96744) (GH-96749) Automate WASM build with a new Python script. The script provides several build profiles with configure flags for Emscripten flavors and WASI. The script can detect and use Emscripten SDK and WASI SDK from default locations or env vars. ``configure`` now detects Node arguments and creates HOSTRUNNER arguments for Node 16. It also sets correct arguments for ``wasm64-emscripten``.
* [3.11] gh-96320: WASI socket fixes (GH-96388) (GH-#96748)Miss Islington (bot)2022-09-131-1/+2
| | | | - ignore missing functions in ``socket.__repr__`` - bundle network files with assets
* [3.11] gh-95174: Add pthread stubs for WASI (GH-95234) (#95503)Christian Heimes2022-08-013-28/+4
| | | | | | Co-authored-by: Brett Cannon <brett@python.org>. (cherry picked from commit 0fe645d6fd22a6f57e777a29e65cf9a4ff9785ae) Co-authored-by: Christian Heimes <christian@python.org>
* [3.11] gh-95174: WASI: skip missing sockets functions (GH-95179) (GH-95308)Christian Heimes2022-07-311-0/+4
| | | | Co-authored-by: Christian Heimes <christian@python.org> Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
* gh-95174: Move WASIX logic into wasi-env (GH-95320)Miss Islington (bot)2022-07-272-9/+22
| | | | | | | | | wasi-env now sets WASIX flags. This allows us to control all build parameter for wasm32-wasi buildbot from CPython repository. Also export and improve SYSROOT parameter. (cherry picked from commit 2833f3798dc3647e850b303a4d0fa00609a0ae9b) Co-authored-by: Christian Heimes <christian@python.org>
* [3.11] gh-95085: Promote Emscripten and WASI to PEP 11 tier 3 (GH-95086) ↵Miss Islington (bot)2022-07-271-1/+1
| | | | | (GH-95307) Co-authored-by: Christian Heimes <christian@python.org>
* gh-95205: Improve WASM README.md (GH-95267) (GH-95270)Miss Islington (bot)2022-07-262-12/+112
| | | | | | Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@protonmail.com> (cherry picked from commit e8f3e8f0ab8aa5d667229ce9694e6e1477e524fd) Co-authored-by: Christian Heimes <christian@python.org>
* gh-95205: Improve wasm README (GH-95206)Miss Islington (bot)2022-07-251-2/+6
| | | | | | Co-authored-by: Christian Heimes <christian@python.org> (cherry picked from commit 310f94871a923f6cf3dc9259e732ce2376578b26) Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no>
* gh-93939: Use new MODULE_name_STATE in wasm_assets script (GH-95035)Miss Islington (bot)2022-07-201-7/+6
| | | | | (cherry picked from commit 0f34c7e2d3163525813dbd644f30db58e6d36af2) Co-authored-by: Christian Heimes <christian@python.org>
* gh-84461: Tool/wasm/python.html: Add subresource integrity hashes (GH-93953)Miss Islington (bot)2022-07-011-2/+2
| | | | | (cherry picked from commit 1df9449db24f16c9c96bdd7dc283a5062bca68e6) Co-authored-by: Petr Viktorin <encukou@gmail.com>
* gh-84461: Improve WebAssembly in-browser demo (GH-91879)Miss Islington (bot)2022-07-013-25/+99
| | | | | | | | | | | | | | | | | | | | | | | | * Buffer standard input line-by-line * Add non-root .editorconfig for JS & HTML indent * Add support for clearing REPL with CTRL+L * Support unicode in stdout and stderr * Remove \r\n normalization * Note that local .editorconfig file extends root * Only normalize lone \r characters (convert to \n) * Skip non-printable characters in buffered input * Fix Safari bug (regex lookbehind not supported) Co-authored-by: Christian Heimes <christian@python.org> (cherry picked from commit a8e333d79aa639417e496181bcbad2cb801a7a56) Co-authored-by: Trey Hunner <trey@treyhunner.com>
* gh-84461: Build Emscripten with WASM BigInt support (GH-94219)Miss Islington (bot)2022-06-241-1/+3
| | | | | (cherry picked from commit e69306f08b9be84ccdd0a1c6601ec229c4e5b377) Co-authored-by: Christian Heimes <christian@python.org>
* gh-84461: Fix ctypes and test_ctypes on Emscripten (GH-94142)Miss Islington (bot)2022-06-241-0/+2
| | | | | | | | - c_longlong and c_longdouble need experimental WASM bigint. - Skip tests that need threading - Define ``CTYPES_MAX_ARGCOUNT`` for Emscripten. libffi-emscripten 2022-06-23 supports up to 1000 args. (cherry picked from commit 8625802d854ec0152177a6ff0ac092e0e3ff98a5) Co-authored-by: Christian Heimes <christian@python.org>
* [3.11] gh-84461: Fix Emscripten umask and permission issues (GH-94002) ↵Christian Heimes2022-06-191-0/+7
| | | | | (GH-94006) Co-authored-by: Christian Heimes <christian@python.org>
* gh-84461: Fix pydebug Emscripten browser builds (GH-93982)Miss Islington (bot)2022-06-181-12/+24
| | | | | | | wasm_assets script did not take the ABIFLAG flag of sysconfigdata into account. (cherry picked from commit 7a2cc35e1ca6808a735b90269756d5286077a152) Co-authored-by: Christian Heimes <christian@python.org>
* gh-84461: Document how to install SDKs manually (GH-93844)Miss Islington (bot)2022-06-151-0/+78
| | | | | | Co-authored-by: Brett Cannon <brett@python.org> (cherry picked from commit 8ba1c7f72010dedb80f0794c5f1dd1c97f81ec83) Co-authored-by: Christian Heimes <christian@python.org>
* gh-84461: Emscripten's faccessat() does not accept flags (GHß92353)Miss Islington (bot)2022-06-071-0/+3
| | | | | (cherry picked from commit 70690c7233aaad4431660a64daef81b5220e2ac1) Co-authored-by: Christian Heimes <christian@python.org>
* gh-90473: Make chmod a dummy on WASI, skip chmod tests (GH-93534) (GH-93550)Miss Islington (bot)2022-06-061-0/+5
| | | | | | WASI does not have the ``chmod(2)`` syscall yet. (cherry picked from commit 22fed605e096eb74f3aa33f6d25aee76fdc2a3fa) Co-authored-by: Christian Heimes <christian@python.org>
* gh-90473: WASI requires proper open(2) flags (GH-93529)Miss Islington (bot)2022-06-061-0/+3
| | | | | (cherry picked from commit 4c71d22c4f9fdde6f2234e7dc6a862419cd6fd98) Co-authored-by: Christian Heimes <christian@python.org>
* gh-90473: Skip and document more failing tests on WASI (GH-93436)Miss Islington (bot)2022-06-032-1/+14
| | | | | | | | | | - Mark more ``umask()`` cases - ``dup()`` is not supported - ``/dev/null`` is not available - document missing features - mark more modules as not available (cherry picked from commit 069c96f84ccd302436be180c8628289cc0efa977) Co-authored-by: Christian Heimes <christian@python.org>
* gh-90473: Misc test fixes for WASI (GH-93218)Miss Islington (bot)2022-05-251-1/+5
| | | | | | | | | | | * ``sys.executable`` is not set * WASI does not support subprocess * ``pwd`` module is not available * WASI checks ``open`` syscall flags more strict, needs r, w, rw flag. * ``umask`` is not available * ``/dev/null`` may not be accessible (cherry picked from commit 1f134e96ba994bea3aaea533d4a558df3c5cc3c0) Co-authored-by: Christian Heimes <christian@python.org>
* gh-90473: WASI: skip gethostname tests (GH-93092)Miss Islington (bot)2022-05-231-0/+1
| | | | | | | | | - WASI's ``gethostname()`` is a stub that always fails with OSError ``ENOTSUP`` - skip mailcap ``test`` if subprocess is not available - WASI process_time clock does not work. (cherry picked from commit 760ec8940aabd6a7fc471bd913ea1ac501cc604b) Co-authored-by: Christian Heimes <christian@python.org>
* gh-90473: Decrease recursion limit and skip tests on WASI (GH-92803)Miss Islington (bot)2022-05-192-2/+40
| | | | | (cherry picked from commit 137fd3d88aa46669f5717734e823f4c594ab2843) Co-authored-by: Christian Heimes <christian@python.org>
* gh-84461: Add --enable-wasm-pthreads and more file systems (GH-91820)Christian Heimes2022-04-231-10/+15
|
* gh-84461: Add sys._emscripten_info, improve docs and build (gh-91781)Christian Heimes2022-04-231-11/+54
|
* bpo-40280: WASM docs and smaller browser builds (GH-32412)Christian Heimes2022-04-104-52/+226
| | | Co-authored-by: Brett Cannon <brett@python.org>
* bpo-40280: Add limited Emscripten REPL (GH-32284)Christian Heimes2022-04-054-15/+415
| | | Co-authored-by: Katie Bell <katie@katharos.id.au>
* bpo-40280: Add --enable-wasm-dynamic-linking (GH-32253)Christian Heimes2022-04-042-16/+11
|
* bpo-40280: Enable most file-at() and nanosleep APIs again (GH-32238)Christian Heimes2022-04-021-16/+2
|
* bpo-32033: Finalize WASI configure options (GH-32053)Christian Heimes2022-03-221-2/+4
|
* bpo-40280: Skip more tests on Emscripten (GH-31947)Christian Heimes2022-03-171-0/+3
| | | | | | - lchmod, lchown are not fully implemented - skip umask tests - cannot fstat unlinked or renamed files yet - ignore musl libc issues that affect Emscripten
* bpo-40280: Disable AF_UNIX, AF_PACKET, SO_REUSE* on Emscripten (#31829)Christian Heimes2022-03-111-2/+4
| | | Emscripten's socket emulation is limited. AF_UNIX, AF_PACKET, setsockopt(), and most SO_* constants are not supported.
* bpo-40280: Skip more tests/features that don't apply to Emscripten (GH-31791)Christian Heimes2022-03-101-5/+1
| | | | | | | - fd inheritance can't be modified because Emscripten doesn't support subprocesses anyway. - setpriority always fails - geteuid no longer causes problems with latest emsdk - umask is a stub - geteuid / getuid always return 0, but process cannot chown to random uid.
* bpo-40280: Block more non-working syscalls in Emscripten (GH-31757)Christian Heimes2022-03-081-1/+12
| | | | | | | | | - getgroups always fails. - geteuid and getegid always return 0 (root), which confuse tarfile and tests. - hardlinks (link, linkat) always fails. - non-encodable file names are not supported by NODERAWFS layer. - mark more tests with dependency on subprocess and multiprocessing. Mocking does not work if the module fails to import.
* bpo-40280: Address more test failures on Emscripten (GH-31050)Christian Heimes2022-02-052-23/+109
| | | Co-authored-by: Brett Cannon <brett@python.org>
* bpo-40280: Get help() working and more (GH-30858)Christian Heimes2022-01-241-1/+5
|
* bpo-40280: Misc fixes for wasm32-emscripten (GH-30722)Christian Heimes2022-01-201-0/+2
|
* bpo-40280: Block more syscalls that are causing crashes in tests (GH-30601)Christian Heimes2022-01-141-3/+9
|
* bpo-46315: Add ifdef HAVE_ feature checks for WASI compatibility (GH-30507)Christian Heimes2022-01-131-0/+17
|
* bpo-40280: Add --with-emscripten-target to build for browser or node (GH-30552)Christian Heimes2022-01-122-1/+22
| | | Co-authored-by: Ethan Smith <ethan@ethanhs.me>
* bpo-40280: Disable epoll_create in Emscripten config.site (GH-30494)Ethan Smith2022-01-091-1/+1
| | | Co-authored-by: nick.pope@infogrid.io
* bpo-40280: Add Tools/wasm with helpers for cross building (GH-29984)Christian Heimes2021-12-183-0/+299
Co-authored-by: Ethan Smith <ethan@ethanhs.me> Co-authored-by: Brett Cannon <brett@python.org>