Skip to content

pyemscripten/pyodide wheel builds#14787

Open
greateggsgreg wants to merge 25 commits intopyca:mainfrom
greateggsgreg:pyodide-builds
Open

pyemscripten/pyodide wheel builds#14787
greateggsgreg wants to merge 25 commits intopyca:mainfrom
greateggsgreg:pyodide-builds

Conversation

@greateggsgreg
Copy link
Copy Markdown
Contributor

@greateggsgreg greateggsgreg commented May 3, 2026

Enable building pyemscripten/pyodide wheels. Now that https://peps.python.org/pep-0783/ is accepted, Pyodide/PyEmscripten wheels (specifically the Pyemscripten ABI (2026_0) ) are allowed to be published on PyPI.

This should also remove the need for pyodide-recipies to maintain a cryptography wheel build script out of tree.

Remaning tasks / discussion in #14788

Enable building pyemscripten/pyodide wheels. Now that https://peps.python.org/pep-0783/ is accepted, Pyodide/PyEmscripten wheels are allowed to be published on PyPI. This enables the last stable release of the Pyodide/Pyemscripten ABI (2025_0), but, will be revved to pyemscripten_2026_0* when it is available.

pyca-boringbot would need to be updated to automatically bump the OpenSSL version. Happy to add that after this.
@alex
Copy link
Copy Markdown
Member

alex commented May 3, 2026

We don't ship wheels for any platform for which we don't run tests, so that's the first step here if you're interested in pursuing this.

@greateggsgreg
Copy link
Copy Markdown
Contributor Author

We don't ship wheels for any platform for which we don't run tests, so that's the first step here if you're interested in pursuing this.

Definitely interested seeing this through. Started #14788 to track discussion and remaining TODOs. Just pushed tests and looking to improve them.

@alex
Copy link
Copy Markdown
Member

alex commented May 4, 2026

To be clear, when we say running the tests, we mean as a part of our CI workflow, on every PR, with acceptable performance.

- uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9
with:
# Pyodide's emscripten build passes nightly-only `-Z` flags
# (link-native-libraries, emscripten-wasm-eh).
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should be possible to build on stable soon, since neither of these flags are needed any longer. It seems like it might still be passing link-native-libraries=yes somewhere which is the default but it's still nightly only.

Copy link
Copy Markdown
Contributor Author

@greateggsgreg greateggsgreg May 5, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wrote a TODO near this line and in ci.yml to make sure we validate if we still need nightly by the time pyodide 314.0 is released.

Also updated the issue task list to make sure we don't forget about this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants