1
- # Copied from NumPy https://github.com/numpy/numpy/pull/24603
2
- # https://github.com/numpy/numpy/blob/328a9a488c3a146497be704d2cee2f9134e43b5b /.github/workflows/emscripten.yml
1
+ # Copied from NumPy https://github.com/numpy/numpy/pull/25894
2
+ # https://github.com/numpy/numpy/blob/d2d2c25fa81b47810f5cbd85ea6485eb3a3ffec3 /.github/workflows/emscripten.yml
3
3
#
4
- # To enable this workflow on a fork, comment out:
5
- #
6
- # if: github.repository == 'scikit-image/scikit-image'
4
+
7
5
name : Test Emscripten/Pyodide build
8
6
9
7
on :
@@ -22,40 +20,42 @@ permissions:
22
20
jobs :
23
21
build-wasm-emscripten :
24
22
runs-on : ubuntu-22.04
25
- if : " github.repository == 'scikit-image/scikit-image'"
23
+ # To enable this workflow on a fork, comment out:
24
+ if : github.repository == 'scikit-image/scikit-image'
26
25
env :
27
- PYODIDE_VERSION : 0.25.0a2
26
+ PYODIDE_VERSION : 0.25.0
28
27
# PYTHON_VERSION and EMSCRIPTEN_VERSION are determined by PYODIDE_VERSION.
29
28
# The appropriate versions can be found in the Pyodide repodata.json
30
29
# "info" field, or in Makefile.envs:
31
30
# https://github.com/pyodide/pyodide/blob/main/Makefile.envs#L2
32
31
PYTHON_VERSION : 3.11.3
33
- EMSCRIPTEN_VERSION : 3.1.45
32
+ EMSCRIPTEN_VERSION : 3.1.46
34
33
NODE_VERSION : 18
35
34
steps :
36
35
- name : Checkout scikit-image
37
- uses : actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
36
+ uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
38
37
39
- - name : set up python
38
+ - name : Set up Python ${{ env.PYTHON_VERSION }}
40
39
id : setup-python
41
- uses : actions/setup-python@61a6322f88396a6271a6ee3565807d608ecaddd1 # v4.7 .0
40
+ uses : actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0 .0
42
41
with :
43
42
python-version : ${{ env.PYTHON_VERSION }}
44
43
45
- - uses : mymindstorm/setup-emsdk@ab889da2abbcbb280f91ec4c215d3bb4f3a8f775 # v12
44
+ - name : Set up Emscripten toolchain
45
+ uses : mymindstorm/setup-emsdk@6ab9eb1bda2574c4ddb79809fc9247783eaf9021 # v14
46
46
with :
47
47
version : ${{ env.EMSCRIPTEN_VERSION }}
48
48
actions-cache-folder : emsdk-cache
49
49
50
50
- name : Install pyodide-build
51
- run : pip install "pydantic<2" build pyodide-build==$PYODIDE_VERSION
51
+ run : pip install "pydantic<2" pyodide-build==${{ env. PYODIDE_VERSION }}
52
52
53
- - name : Build
53
+ - name : Build scikit-image for Pyodide
54
54
run : |
55
55
pyodide build
56
56
57
- - name : set up node
58
- uses : actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3.8.1
57
+ - name : Set up Node.js
58
+ uses : actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2
59
59
with :
60
60
node-version : ${{ env.NODE_VERSION }}
61
61
64
64
pyodide venv .venv-pyodide
65
65
source .venv-pyodide/bin/activate
66
66
pip install dist/*.whl
67
- python -c "import sys; print(sys.platform)"
68
67
pip install matplotlib>=3.5 numpydoc>=1.5 pooch>=1.6.0 pytest>=7.0 pytest-cov>=2.11.0 pytest-localserver pytest-faulthandler
69
- - name : Test
68
+
69
+ - name : Test scikit-image for Pyodide
70
70
run : |
71
71
source .venv-pyodide/bin/activate
72
72
cd ..
0 commit comments