@@ -3,7 +3,12 @@ name: Build
33on : [push, pull_request]
44
55env :
6- PYODIDE_VERSION : 0.28.2
6+ # These four values need to be kept in sync. Each pyodide version pins an
7+ # emscripten version and a CPython version.
8+ PYODIDE_VERSION : ' 0.29.3'
9+ PYODIDE_EMSCRIPTEN_VERSION : ' 4.0.9'
10+ PYODIDE_PYTHON_VERSION : ' 3.13'
11+ PYODIDE_CIBW_BUILD : ' cp313-*'
712
813jobs :
914 build_wheels :
5459 os : ubuntu-22.04
5560 kind : pyodide
5661 artifact_name : wheels-pyodide
57- emscripten_version : 4.0.9
5862 cibw_platform : pyodide
59- cibw_build : cp313-*
6063
6164 steps :
6265 - uses : actions/checkout@v6.0.2
99102 name : Set up Emscripten toolchain
100103 uses : pyodide/setup-emsdk@ca2dd8aef8c2a0e11743c5c36f0b430ddb694b5c # v15
101104 with :
102- version : ${{ matrix.emscripten_version }}
105+ version : ${{ env.PYODIDE_EMSCRIPTEN_VERSION }}
103106 actions-cache-folder : emsdk-cache
104107
105108 - if : ${{ matrix.kind == 'pyodide' }}
@@ -118,9 +121,8 @@ jobs:
118121 uses : pypa/cibuildwheel@298ed2fb2c105540f5ed055e8a6ad78d82dd3a7e # v3.3.1
119122 env :
120123 CIBW_PLATFORM : ${{ matrix.cibw_platform }}
121- CIBW_BUILD : ${{ matrix.cibw_build }}
124+ CIBW_BUILD : ${{ matrix.kind == 'pyodide' && env.PYODIDE_CIBW_BUILD || matrix. cibw_build }}
122125 CIBW_PYODIDE_VERSION : ${{ env.PYODIDE_VERSION }}
123- PYODIDE_EMSCRIPTEN_VERSION : ${{ matrix.kind == 'pyodide' && matrix.emscripten_version || '' }}
124126 # override setting in pyproject.toml to use msys2 instead of msys64 bash
125127 CIBW_BEFORE_ALL_WINDOWS : ${{ matrix.os == 'windows-11-arm' && 'msys2 -c bin/cibw_before_all_windows_arm64.sh' || 'msys2 -c bin/cibw_before_all_windows_amd64.sh' }}
126128
@@ -138,7 +140,7 @@ jobs:
138140
139141 - uses : actions/setup-python@v6
140142 with :
141- python-version : ' 3.13 '
143+ python-version : ${{ env.PYODIDE_PYTHON_VERSION }}
142144
143145 - run : bin/install_latest_flint_ubuntu.sh
144146 - run : pip install build
@@ -202,7 +204,7 @@ jobs:
202204 steps :
203205 - uses : actions/setup-python@v6
204206 with :
205- python-version : ' 3.13 '
207+ python-version : ${{ env.PYODIDE_PYTHON_VERSION }}
206208
207209 - uses : actions/setup-node@v6
208210 with :
0 commit comments