diff --git a/peps/pep-0818.rst b/peps/pep-0818.rst index d8411a04cc3..525d8ec8cfa 100644 --- a/peps/pep-0818.rst +++ b/peps/pep-0818.rst @@ -64,6 +64,17 @@ interface, it will be possible to support ``urllib`` on Emscripten. Downstream, supporting ``urllib3``, ``aiohttp``, and ``httpx`` requires the foreign function interface. +The fact that the Pyodide foreign function interface is coupled to Pyodide +creates problems for other Emscripten-CPython distributions. For instance, +`Emscripten-forge`_ is a project that provides conda recipes for the Emscripten +platform. They have to reimplement the Pyodide foreign function interface in +order to support downstream packages that use it. Their reimplementation is +slower and has various minor incompatibilities. For this reason, the +Emscripten-force maintainers strongly support adding Pyodide's interface to +CPython. + +.. _Emscripten-forge: https://emscripten-forge.org/ + In order to keep the length of this PEP reasonable, we focus on the "core" of the foreign function interface. The JavaScript interface for managing the Python runtime is left to a future PEP.