-
Notifications
You must be signed in to change notification settings - Fork 281
Description
We have a pyodide-version to allow testing for pyodide, but it's specific to pydodide; iOS (see #2447) and probably Android would like it too. It might even be useful for GraalPy, maybe even PyPy. Here's a quick thought:
We could allow the options in build-platforms to be overridden (feel free to bike shed names and structure):
[tool.cibuildwheel.override-identifier.cp313-ios_arm64_iphoneos]
url = "https://github.com/beeware/Python-Apple-support/releases/download/3.13-b8/Python-3.13-iOS-support.b8.tar.gz"
[tool.cibuildwheel.override-identifier.cp312-pyodide_wasm32]
default_pyodide_version = "0.27.6"
It could be TOML only, and allow certain parts to be overridden: url
, default_pyodide_version
, and node_version
. We could the last two to pyodide-version
and node-version
. This would work on iOS, macOS, and Windows PyPy/GraalPy.
It would work by matching with identifiers, and then checking to see if matching values are in the table; if so, they get replaced.
Eventually I've considered adding a hash, that would also be overridden if we added it (and we could clear the hash if it wasn't given, for back-compat).
Short term, I'd like to add an "experimental" warning on pyodide-version so we can remove it in 3.1 or 3.2 if we do add something like the above.