mirror of https://github.com/python/cpython
gh-95085: Promote Emscripten and WASI to PEP 11 tier 3 (GH-95086)
This commit is contained in:
parent
2e35a13e46
commit
daa64d6a59
|
@ -1551,10 +1551,19 @@ Build Changes
|
|||
The :program:`configure` options ``--with-tcltk-includes`` and
|
||||
``--with-tcltk-libs`` have been removed.
|
||||
|
||||
* CPython now has experimental support for cross compiling to WebAssembly
|
||||
platform ``wasm32-emscripten``. The effort is inspired by previous work
|
||||
like Pyodide.
|
||||
(Contributed by Christian Heimes and Ethan Smith in :issue:`40280`.)
|
||||
* CPython now has :pep:`11` tier 3 support for cross compiling to WebAssembly
|
||||
platform ``wasm32-unknown-emscripten`` (Python in the browser). The effort
|
||||
is inspired by previous work like `Pyodide <https://pyodide.org/>`_.
|
||||
Emscripten provides a limited subset of POSIX APIs. Python standard
|
||||
libraries features and modules related to networking, processes, threading,
|
||||
signals, mmap, and users/groups are not available or don't work.
|
||||
(Contributed by Christian Heimes and Ethan Smith in :gh:`84461`,
|
||||
promoted in :gh:`95085`)
|
||||
|
||||
* CPython now has :pep:`11` tier 3 support for cross compiling to WebAssembly
|
||||
platform ``wasm32-unknown-wasi`` (WebAssembly System Interface). Like on
|
||||
Emscripten, only a subset of Python's standard library is available on WASI.
|
||||
(Contributed by Christian Heimes in :gh:`90473`, promoted in :gh:`95085`)
|
||||
|
||||
* CPython will now use 30-bit digits by default for the Python :class:`int`
|
||||
implementation. Previously, the default was to use 30-bit digits on platforms
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
Platforms ``wasm32-unknown-emscripten`` and ``wasm32-unknown-wasi`` have
|
||||
been promoted to :pep:`11` tier 3 platform support.
|
|
@ -167,7 +167,7 @@ functions.
|
|||
- Heap memory and stack size are limited. Recursion or extensive memory
|
||||
consumption can crash Python.
|
||||
- Most stdlib modules with a dependency on external libraries are missing,
|
||||
e.g. ``ctypes``, ``readline``, ``sqlite3``, ``ssl``, and more.
|
||||
e.g. ``ctypes``, ``readline``, ``ssl``, and more.
|
||||
- Shared extension modules are not implemented yet. All extension modules
|
||||
are statically linked into the main binary. The experimental configure
|
||||
option ``--enable-wasm-dynamic-linking`` enables dynamic extensions
|
||||
|
|
|
@ -6342,7 +6342,11 @@ case $host/$ac_cv_cc_name in #(
|
|||
PY_SUPPORT_TIER=3 ;; #(
|
||||
s390x-*-linux-gnu/gcc) :
|
||||
PY_SUPPORT_TIER=3 ;; #(
|
||||
x86_64-*-freebsd*/clang) :
|
||||
wasm32-unknown-emscripten/clang) :
|
||||
PY_SUPPORT_TIER=3 ;; #(
|
||||
wasm32-unknown-wasi/clang) :
|
||||
PY_SUPPORT_TIER=3 ;; #(
|
||||
x86_64-*-freebsd*/clang) :
|
||||
PY_SUPPORT_TIER=3 ;; #(
|
||||
*) :
|
||||
PY_SUPPORT_TIER=0
|
||||
|
|
|
@ -1141,8 +1141,8 @@ AS_CASE([$host/$ac_cv_cc_name],
|
|||
[armv7l-*-linux-gnueabihf/gcc], [PY_SUPPORT_TIER=3], dnl ARMv7 LE with hardware floats, any vendor, glibc, gcc
|
||||
[powerpc64le-*-linux-gnu/clang], [PY_SUPPORT_TIER=3], dnl Linux on PPC64 little endian, glibc, clang
|
||||
[s390x-*-linux-gnu/gcc], [PY_SUPPORT_TIER=3], dnl Linux on 64bit s390x (big endian), glibc, gcc
|
||||
dnl [wasm32-unknown-emscripten/clang], [PY_SUPPORT_TIER=3], dnl WebAssembly Emscripten
|
||||
dnl [wasm32-unknown-wasi/clang], [PY_SUPPORT_TIER=3], dnl WebAssembly System Interface
|
||||
[wasm32-unknown-emscripten/clang], [PY_SUPPORT_TIER=3], dnl WebAssembly Emscripten
|
||||
[wasm32-unknown-wasi/clang], [PY_SUPPORT_TIER=3], dnl WebAssembly System Interface
|
||||
[x86_64-*-freebsd*/clang], [PY_SUPPORT_TIER=3], dnl FreeBSD on AMD64
|
||||
[PY_SUPPORT_TIER=0]
|
||||
)
|
||||
|
|
Loading…
Reference in New Issue