WASI has been promoted to a tier 2 platform

I have now finished making all the various updates to make WASI a tier 2 platform after receiving the SC’s approval. Some key details in case you accidentally break something on WASI:

  • There are build instructions in the devguide and the GitHub codespace already has all the tooling installed
  • Nearly all test failures are the tests themselves due to assuming threads, subprocesses, or a higher recursion limit, so they are typically easy to fix just from looking at the failure itself
  • @eric.snow and I are here to help

I have updated the label on the issue tracker for WASI to “OS-wasi” since we no longer need a generic label for all things WebAssembly.

I do plan on seeing if adding WASI to our PR CI makes sense. Technically it’s doable, but I need to see if it’s fast enough to not be the slowest run (I don’t think it is thanks to all the tests that get skipped). I will also eventually start a conversation about whether we want to have container images for development.

And in case you’re wondering what changes were required to move a platform from tier 3 to 2 since I think this is the first promotion:

  1. GH-113632: update `configure.ac` for WebAssembly support tiers by brettcannon · Pull Request #115192 · python/cpython · GitHub
  2. Move WASI builders to tier 2 by brettcannon · Pull Request #464 · python/buildmaster-config · GitHub
  3. PEP 11: promote `wasm32-wasi` to tier 2 by brettcannon · Pull Request #3655 · python/peps · GitHub