-
-
Notifications
You must be signed in to change notification settings - Fork 26.9k
Description
We started having bug reports (at least one indirect, in real life report at a conference: #23707) from users of scikit-learn in WASM environment (e.g. pyodide / jupyterlite, pyscript...).
Shall we invest effort in setting CI tooling to properly test and maybe even handle packaging of scikit-learn to target that platform?
It's very likely that not all of scikit-learn will work out of the box, but with proper tooling in place we could maintain a public list of modules that have all their tests that pass and maybe a list of modules that required so patches to handle graceful degradation to target this platform (e.g. number of parallel worker threads with n_jobs).
@rth put some interesting info in the following comment on how to run the tests:
Pros:
- WASM is likely to be a very popular target platform, at least for education (can directly teach Python programming and ML concepts without having to teach how to install packages from the command line first).
Cons:
- test execution is probably much slower that on our regular CI targets;
- need to maintain a list of known issues / limitations;
- more packaging, release process will be even more complicated;
- SciPy is quite heavily patched because there is no working Fortran compiler on that platform (that might change soon with lfotran) so it relies on a semi-hackish Fortran to C transpilation step that introduces additional complexity.