You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The modularization effort (#29705) makes it easy to port and deploy portions of Sage to new platforms. Here we target Web Asssembly (wasm). This enables integration with Javascript in the browser, interactive online documentation, etc.
Nothing needs to be done for platform-independent wheels available on PyPI. When needed as deps for other packages on pyodide, package metadata can be added easily using pyodide skeleton pypi.
The modularization effort (#29705) makes it easy to port and deploy portions of Sage to new platforms. Here we target Web Asssembly (wasm). This enables integration with Javascript in the browser, interactive online documentation, etc.
Porting to Pyodide
Nothing needs to be done for platform-independent wheels available on PyPI. When needed as deps for other packages on pyodide, package metadata can be added easily using
pyodide skeleton pypi
.ipython
pyodide/pyodide#4452IPython.utils._process_posix
: importpexpect
only when needed ipython/ipython#14312, IPython/utils/_process_emscripten.py: New ipython/ipython#14316GH Actions: Build platform-independent wheels of sagemath-environment, sage-setup, sage-sws2rst for PyPI #37099: Platform-independent wheels for pure Python distribution packages sagemath-environment, sage-setup, sage-docbuild. (Currently we only publish sdists, but micropip needs wheels.)
Cross references for non-Python packages that are already available in Pyodide: build/pkgs/*/distros/pyodide.txt: New, corresponding to pyodide 0.25.0 #37120
Non-Python packages that are not available yet need to be added, as documented at https://pyodide.org/en/stable/development/new-packages.html#c-library-dependencies
flint
,python-flint
pyodide/pyodide#4410pyproject.toml
flintlib/python-flint#108pari
,cypari2
pyodide/pyodide#4430e_antic
,normaliz
,pynormaliz
pyodide/pyodide#4439Platform wheels already available in Pyodide:
gmpy2
available since pyodide 0.21.0Platform wheels can be added to Pyodide
sagemath-*
pyodide/pyodide#4438Alternatively, platform wheels can be built "out of (the Pyodide) tree"
pyodide_build.out_of_tree.venv
: Monkey-patchplatform.system
for pip pyodide/pyodide#4400gmpy2
, needcysignals
; are gmp headers available in out of tree builds?sagelib fixes for pyodide / emscripten #37180
Candidate for the first useful package: sagemath-polyhedra (Modularization of sagelib: Break out a separate package sagemath-polyhedra #32432)
Other technologies
CC: @williamstein
Component: porting
Issue created by migration from https://trac.sagemath.org/ticket/34539
The text was updated successfully, but these errors were encountered: