Ship additional Pyodide wheels at build time#
User-installable wheels can be included at extension build time. Wheel indices can be
generated with the jupyter lite pip index
CLI and then included in
package.json#/piplite: make sure to include the index and .whl files in
package.json#/files as well.
Adding wheels to the Pyodide kernel#
The Pyodide kernel itself consists of a bit of JavaScript and customized python wheels, which in turn require other wheels and pre-built WASM modules and other JavaScript.
Extra wheels that can be installed via piplite in a running kernel can be added via
the --piplite-wheels CLI flag or PipliteAddon/piplite_urls config value, or simply
left in-place in lite_dir/pypi.
These will be:
downloaded to the local cache
copied into
{output-dir}/pypiindexed into an
all.jsonwith data similar to the [PyPI Warehouse API]added to
pipliteUrlsinjupyter-lite.json
If a package is not found in one of these URLs, it will be sought on the main Python
Package Index (PyPI). This behavior can be disabled via jupyter-lite.json:
"jupyter-config-data": {
"litePluginSettings": {
"@jupyterlite/pyodide-kernel-extension:kernel": {
"disablePyPIFallback": true
}
}
}