rust/tests
Alex Crichton ce2087692f Add a new wasm32-wasip3 target to Rust
This commit adds a new tier 3 target to rustc, `wasm32-wasip3`. This
follows in the footsteps of the previous `wasm32-wasip2` target and is
used to represent binding to the WASIp3 set of APIs managed by the WASI
subgroup to the WebAssembly Community Group.

As of now the WASIp3 set of APIs are not finalized nor standardized.
They're in the process of doing so and the current trajectory is to have
the APIs published in December of this year. The goal here is to get the
wheels turning in Rust to have the target in a
more-ready-than-nonexistent state by the time this happens in December.

For now the `wasm32-wasip3` target looks exactly the same as
`wasm32-wasip2` except that `target_env = "p3"` is specified. This
indicates to crates in the ecosystem that WASIp3 APIs should be used,
such as the [`wasip3` crate]. Over time this target will evolve as
implementation in guest toolchains progress, notably:

* The standard library will use WASIp3 APIs natively once they're
  finalized in the WASI subgroup.
* Support through `wasi-libc` will be updated to use WASIp3 natively
  which Rust will then transitively use.
* Longer-term, features such as cooperative multithreading will be added
  to the WASIp3-track of targets to enable using `std::thread`, for
  example, on this target.

These changes are all expected to be non-breaking changes for users of
this target. Runtimes supporting WASIp3, currently Wasmtime and Jco,
support WASIp2 APIs as well and will work with components whether or not
they import WASIp2, both WASIp2 and WASIp3, or just WASIp3 APIs. This
means that changing the internal implementation details of libstd over
time is expected to be a non-breaking change.

[`wasip3` crate]: https://crates.io/crates/wasip3
2025-10-02 15:09:09 -07:00
..
assembly-llvm Add a new wasm32-wasip3 target to Rust 2025-10-02 15:09:09 -07:00
auxiliary Add test for addrspacecasting global vars 2025-09-03 08:40:51 +02:00
codegen-llvm Rollup merge of #147200 - ZuseZ4:fix-autodiff-emptry-ret, r=Zalathar 2025-10-01 22:15:01 +10:00
codegen-units pub async fn implementation coroutine (func::{closure#0}) is monomorphized, when func itself is monomorphized 2025-09-01 13:45:00 +07:00
coverage Auto merge of #145882 - m-ou-se:format-args-extend-1-arg, r=petrochenkov 2025-09-26 04:34:09 +00:00
coverage-run-rustdoc
crashes Auto merge of #147055 - beepster4096:subtype_is_not_a_projection, r=lcnr 2025-10-02 01:54:48 +00:00
debuginfo tests: Ignore basic-stepping.rs on riscv64 2025-08-29 08:11:48 +00:00
incremental Bless incremental tests. 2025-07-13 13:50:01 +00:00
mir-opt Split Bound into Canonical and Bound 2025-09-30 12:58:28 -04:00
pretty Update autodiff tests for the new intrinsics impl 2025-08-14 18:33:43 +00:00
run-make Auto merge of #146376 - durin42:dwo-specify-path, r=davidtwco 2025-09-29 15:06:55 +00:00
run-make-cargo Skip the panic-immediate-abort-works test when cross-compiling 2025-09-22 21:13:38 -04:00
rustdoc Add regression test for doc cfg applied on public items inside private items 2025-09-29 18:08:51 +02:00
rustdoc-gui Remove doc_auto_cfg feature as well 2025-09-27 11:30:57 +02:00
rustdoc-js Add regression test for literal search on paths 2025-09-11 18:05:21 +02:00
rustdoc-js-std tests/rustdoc-js-std/parser-errors.js: remove syntax that is now valid 2025-08-21 20:50:33 -05:00
rustdoc-json Add tests for doc(attribute = "...") attribute 2025-08-28 15:56:30 +02:00
rustdoc-ui Move doc cfg propagation pass before items stripping passes 2025-09-29 18:08:51 +02:00
ui Add a new wasm32-wasip3 target to Rust 2025-10-02 15:09:09 -07:00
ui-fulldeps tests: remove no-remap-src-base 2025-10-01 13:31:42 +08:00
COMPILER_TESTS.md