docs/guides/lint_rules/rules/incompatible_package.md
š WASM ā Not Fixable
MW003: Packages in the dependency tree incompatible with WASM.
Reads the notebook's PEP 723 dependencies, walks their transitive
dependency tree via installed metadata, then queries PyPI's JSON API
to check whether each package has a py3-none-any or emscripten
wheel available. Packages only in pyodide-lock.json are also accepted.
Pyodide can only install pure-Python wheels via micropip, or packages that are pre-built in the Pyodide distribution. Packages with only platform-specific native wheels will fail to install in the browser.
Problematic:
import jax # jaxlib (transitive dep) has only native wheels
Not flagged:
import numpy # Native, but pre-built in Pyodide
Not flagged:
import requests # Pure Python wheel on PyPI