summaryrefslogtreecommitdiffstats
path: root/Tools/wasm
Commit message (Collapse)AuthorAgeFilesLines
* gh-100340: Allows -Wno-int-conversion for wasm (#100341)Kushal Das2023-01-181-0/+3
| | | Fixes #100340 allows -Wno-int-conversion for wasm
* Fix typo and old link in wasm readme (#101096)Zac Hatfield-Dodds2023-01-181-2/+2
|
* Fix typo in Tools/wasm/README.md (GH-99384)Ikko Ashimine2022-11-111-1/+1
| | | | | Noticable -> Noticeable Automerge-Triggered-By: GH:AlexWaygood
* gh-72719: Remove asyncore and asynchat modules (#96580)Nikita Sobolev2022-11-081-2/+0
| | | | | Remove modules asyncore and asynchat, which were deprecated by PEP 594. Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* gh-92584: Remove the distutils package (#99061)Victor Stinner2022-11-032-3/+2
| | | | | | | | | | | | Remove the distutils package. It was deprecated in Python 3.10 by PEP 632 "Deprecate distutils module". For projects still using distutils and cannot be updated to something else, the setuptools project can be installed: it still provides distutils. * Remove Lib/distutils/ directory * Remove test_distutils * Remove references to distutils * Skip test_check_c_globals and test_peg_generator since they use distutils
* gh-92584: Remove references to removed _bootsubprocess (#99062)Victor Stinner2022-11-031-1/+0
| | | | The _bootsubprocess module was removed in gh-93939 by commit 81dca70d704d0834d8c30580e648a973250b2973.
* gh-98401: Invalid escape sequences emits SyntaxWarning (#99011)Victor Stinner2022-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | A backslash-character pair that is not a valid escape sequence now generates a SyntaxWarning, instead of DeprecationWarning. For example, re.compile("\d+\.\d+") now emits a SyntaxWarning ("\d" is an invalid escape sequence), use raw strings for regular expression: re.compile(r"\d+\.\d+"). In a future Python version, SyntaxError will eventually be raised, instead of SyntaxWarning. Octal escapes with value larger than 0o377 (ex: "\477"), deprecated in Python 3.11, now produce a SyntaxWarning, instead of DeprecationWarning. In a future Python version they will be eventually a SyntaxError. codecs.escape_decode() and codecs.unicode_escape_decode() are left unchanged: they still emit DeprecationWarning. * The parser only emits SyntaxWarning for Python 3.12 (feature version), and still emits DeprecationWarning on older Python versions. * Fix SyntaxWarning by using raw strings in Tools/c-analyzer/ and wasm_build.py.
* gh-98948: Remove obsolete readelf dependency (#98949)serge-sans-paille2022-11-032-6/+0
| | | | | This got introduced in commit 5884449539510313c826d69835829c7957c7154a to determine if readline is already linked against curses or tinfo in the setup.py, which is no longer present.
* gh-96883: browser: include concurrent.futures (GH-96886)Christian Heimes2022-09-171-13/+19
|
* gh-84461: Omit resource mod and getresuid funcs on Emscripten (GH-96303)Christian Heimes2022-09-111-0/+4
|
* gh-95853: Multiple ops and debug for wasm_build.py (#96744)Christian Heimes2022-09-112-83/+242
|
* gh-95853: Improve WASM build script (GH-96389)Christian Heimes2022-08-301-14/+193
| | | | | | | - pre-build Emscripten ports and system libraries - check for broken EMSDK versions - use EMSDK's node for wasm32-emscripten - warn when PKG_CONFIG_PATH is set - add support level information
* gh-96320: WASI socket fixes (#96388)Christian Heimes2022-08-301-1/+2
| | | | | | | | * gh-96320: WASI socket fixes - ignore missing functions in ``socket.__repr__`` - bundle network files with assets * blurb
* gh-95853: WASM: better version and asset handling in scripts (GH-96045)Christian Heimes2022-08-192-2/+37
| | | | | - support EMSDK tot-upstream and git releases - allow WASM assents for wasm64-emscripten and WASI. This makes single file distributions on WASI easier. - decouple WASM assets from browser builds
* gh-95853: Address wasm build and test issues (GH-95985)Christian Heimes2022-08-151-4/+11
|
* gh-95853: Add script to automate WASM build (GH-95828)Christian Heimes2022-08-133-8/+604
| | | | | | | | | | | | 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``. Co-authored-by: Brett Cannon <brett@python.org>
* gh-93243: Make smtpd private before porting its users (GH-93246)Oleg Iarygin2022-08-061-1/+0
| | | | | | | gh-93243 This PR is required to reduce diffs of the following porting (no need to either maintain documentation and tests consistent with each porting step, or try to port everything and remove smtpd in a single PR). Automerge-Triggered-By: GH:warsaw
* gh-95174: Add pthread stubs for WASI (GH-95234)Christian Heimes2022-07-273-28/+4
| | | Co-authored-by: Brett Cannon <brett@python.org>
* gh-95174: Move WASIX logic into wasi-env (GH-95320)Christian Heimes2022-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.
* gh-95174: WASI: skip missing sockets functions (GH-95179)Christian Heimes2022-07-271-0/+4
|
* gh-95085: Promote Emscripten and WASI to PEP 11 tier 3 (GH-95086)Christian Heimes2022-07-271-1/+1
|
* gh-95205: Improve WASM README.md (GH-95267)Christian Heimes2022-07-262-12/+112
| | | Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@protonmail.com>
* gh-95205: Improve wasm README (#95206)Erlend Egeberg Aasland2022-07-251-2/+6
| | | Co-authored-by: Christian Heimes <christian@python.org>
* gh-93939: Use new MODULE_name_STATE in wasm_assets script (GH-95035)Christian Heimes2022-07-201-7/+6
|
* gh-84461: Tool/wasm/python.html: Add subresource integrity hashes (#93953)Petr Viktorin2022-07-011-2/+2
|
* gh-84461: Improve WebAssembly in-browser demo (#91879)Trey Hunner2022-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>
* gh-84461: Build Emscripten with WASM BigInt support (#94219)Christian Heimes2022-06-241-1/+3
|
* gh-84461: Fix ctypes and test_ctypes on Emscripten (#94142)Christian Heimes2022-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.
* gh-54781: Move Lib/tkinter/test/test_ttk/ to Lib/test/test_ttk/ (#94070)Victor Stinner2022-06-221-12/+1
| | | | | | | | | | * Move Lib/tkinter/test/test_tkinter/ to Lib/test/test_tkinter/. * Move Lib/tkinter/test/test_ttk/ to Lib/test/test_ttk/. * Add Lib/test/test_ttk/__init__.py based on test_ttk_guionly.py. * Add Lib/test/test_tkinter/__init__.py * Remove old Lib/test/test_tk.py. * Remove old Lib/test/test_ttk_guionly.py. * Add __main__ sub-modules. * Update imports and update references to rename files.
* gh-93839: Move Lib/unttest/test/ to Lib/test/test_unittest/ (#94043)Victor Stinner2022-06-211-1/+0
| | | | | | | | * Move Lib/unittest/test/ to Lib/test/test_unittest/ * Remove Lib/test/test_unittest.py * Replace unittest.test with test.test_unittest * Remove unittest.load_tests() * Rewrite unittest __init__.py and __main__.py * Update build system, CODEOWNERS, and wasm_assets.py
* gh-93839: Move Lib/ctypes/test/ to Lib/test/test_ctypes/ (#94041)Victor Stinner2022-06-211-1/+0
| | | | | * Move Lib/ctypes/test/ to Lib/test/test_ctypes/ * Remove Lib/test/test_ctypes.py * Update imports and build system.
* gh-84461: Fix Emscripten umask and permission issues (GH-94002)Christian Heimes2022-06-191-0/+7
| | | | | | | | - Emscripten's default umask is too strict, see https://github.com/emscripten-core/emscripten/issues/17269 - getuid/getgid and geteuid/getegid are stubs that always return 0 (root). Disable effective uid/gid syscalls and fix tests that use chmod() current user. - Cannot drop X bit from directory.
* gh-84461: Fix pydebug Emscripten browser builds (GH-93982)Christian Heimes2022-06-181-12/+24
| | | | wasm_assets script did not take the ABIFLAG flag of sysconfigdata into account.
* gh-84461: Document how to install SDKs manually (GH-93844)Christian Heimes2022-06-151-0/+78
| | | Co-authored-by: Brett Cannon <brett@python.org>
* gh-84461: Emscripten's faccessat() does not accept flags (GHß92353)Christian Heimes2022-06-071-0/+3
|
* gh-90473: Make chmod a dummy on WASI, skip chmod tests (GH-93534)Christian Heimes2022-06-061-0/+5
| | | WASI does not have the ``chmod(2)`` syscall yet.
* gh-90473: WASI requires proper open(2) flags (GH-93529)Christian Heimes2022-06-061-0/+3
|
* gh-90473: Skip and document more failing tests on WASI (GH-93436)Christian Heimes2022-06-022-1/+14
| | | | | | | - Mark more ``umask()`` cases - ``dup()`` is not supported - ``/dev/null`` is not available - document missing features - mark more modules as not available
* gh-90473: Misc test fixes for WASI (GH-93218)Christian Heimes2022-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
* gh-90473: WASI: skip gethostname tests (GH-93092)Christian Heimes2022-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.
* gh-90473: Decrease recursion limit and skip tests on WASI (GH-92803)Christian Heimes2022-05-192-2/+40
|
* 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.