-
Notifications
You must be signed in to change notification settings - Fork 12.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove the wasm32-wasi
target from rustc
#132562
Conversation
This commit is the final step in the journey of renaming the historical `wasm32-wasi` target in the Rust compiler to `wasm32-wasip1`. Various steps in this journey so far have been: * 2023-04-03: rust-lang/compiler-team#607 - initial proposal for this rename * 2024-11-27: rust-lang/compiler-team#695 - amended schedule/procedure for rename * 2024-01-29: rust-lang#120468 - initial introduction of `wasm32-wasip1` * 2024-06-18: rust-lang#126662 - warn on usage of `wasm32-wasi` * 2024-11-08: this PR - remove the `wasm32-wasi` target The full transition schedule is in [this comment][comment] and is summarized with: * 2024-05-02: Rust 1.78 released with `wasm32-wasip1` target * 2024-09-05: Rust 1.81 released warning on usage of `wasm32-wasi` * 2025-01-09: Rust 1.84 to be released without the `wasm32-wasi` target This means that support on stable for the replacement target of `wasm32-wasip1` has currently been available for 6 months. Users have already seen warnings on stable for 2 months about usage of `wasm32-wasi` and stable users have another 2 months of warnings before the target is removed from stable. This commit is intended to be the final step in this transition so the source tree should no longer mention `wasm32-wasi` except in historical reference to the older name of the `wasm32-wasip1` target. [comment]: rust-lang#120468 (comment)
Some changes occurred in src/tools/compiletest cc @jieyouxu These commits modify compiler targets. Some changes occurred in src/doc/rustc/src/platform-support cc @Noratrieb |
@@ -377,7 +377,6 @@ target | std | host | notes | |||
`thumbv7a-pc-windows-msvc` | ✓ | | | |||
`thumbv7a-uwp-windows-msvc` | ✓ | | | |||
`thumbv7neon-unknown-linux-musleabihf` | ? | | Thumb2-mode Armv7-A Linux with NEON, musl 1.2.3 | |||
[`wasm32-wasip2`](platform-support/wasm32-wasip2.md) | ✓ | | WebAssembly |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a bit unrelated to this PR, but I figured while I was here that I could go ahead and update the wasm32-wasip2
target from tier 3 to tier 2 to accurately reflect its status.
r? jieyouxu |
This also changes the LLVM/LLD target of wasm32-wasip1 to wasm32-wasip1. Is that intended to be done in this PR? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks mostly fine to me, r=me if the answer to Nora's question of changing the llvm target string is "this is intentional".
Ah yes sorry I forgot to call that out but it is indeed intentional. AFAIK it will have no practical change and it matches how @bors: r=jieyouxu |
…iaskrgr Rollup of 5 pull requests Successful merges: - rust-lang#131261 (Stabilize `UnsafeCell::from_mut`) - rust-lang#131405 (bootstrap/codegen_ssa: ship llvm-strip and use it for -Cstrip) - rust-lang#132077 (Add a new `wide-arithmetic` feature for WebAssembly) - rust-lang#132562 (Remove the `wasm32-wasi` target from rustc) - rust-lang#132660 (Remove unused errs.rs file) Failed merges: - rust-lang#131721 (Add new unstable feature `const_eq_ignore_ascii_case`) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#132562 - alexcrichton:remove-wasm32-wasi, r=jieyouxu Remove the `wasm32-wasi` target from rustc This commit is the final step in the journey of renaming the historical `wasm32-wasi` target in the Rust compiler to `wasm32-wasip1`. Various steps in this journey so far have been: * 2023-04-03: rust-lang/compiler-team#607 - initial proposal for this rename * 2024-11-27: rust-lang/compiler-team#695 - amended schedule/procedure for rename * 2024-01-29: rust-lang#120468 - initial introduction of `wasm32-wasip1` * 2024-06-18: rust-lang#126662 - warn on usage of `wasm32-wasi` * 2024-11-08: this PR - remove the `wasm32-wasi` target The full transition schedule is in [this comment][comment] and is summarized with: * 2024-05-02: Rust 1.78 released with `wasm32-wasip1` target * 2024-09-05: Rust 1.81 released warning on usage of `wasm32-wasi` * 2025-01-09: Rust 1.84 to be released without the `wasm32-wasi` target This means that support on stable for the replacement target of `wasm32-wasip1` has currently been available for 6 months. Users have already seen warnings on stable for 2 months about usage of `wasm32-wasi` and stable users have another 2 months of warnings before the target is removed from stable. This commit is intended to be the final step in this transition so the source tree should no longer mention `wasm32-wasi` except in historical reference to the older name of the `wasm32-wasip1` target. [comment]: rust-lang#120468 (comment)
Since [1], the `wasm32-wasi` target is no longer supported (replaced by `wasm32-wasip1` and `wasm32-wasip2`). This has made it into the latest nightly, so remove it from our testing. [1]: rust-lang/rust#132562
Since [1], the `wasm32-wasi` target is no longer supported (replaced by `wasm32-wasip1` and `wasm32-wasip2`). This has made it into the latest nightly, so remove it from our testing. [1]: rust-lang/rust#132562 (backport <rust-lang#4013>) (cherry picked from commit a4d3ca8)
Since [1], the `wasm32-wasi` target is no longer supported (replaced by `wasm32-wasip1` and `wasm32-wasip2`). This has made it into the latest nightly, so remove it from our testing. [1]: rust-lang/rust#132562 (backport <rust-lang#4013>) (cherry picked from commit a4d3ca8)
Since [1], the `wasm32-wasi` target is no longer supported (replaced by `wasm32-wasip1` and `wasm32-wasip2`). This has made it into the latest nightly, so remove it from our testing. [1]: rust-lang/rust#132562 (backport <rust-lang#4013>) (cherry picked from commit a4d3ca8)
Just a note here: our builds pin nightlies based on LLVM updates, since this impacts compatibility with Xcode and other tools in our pipeline that run LTO on our C++/Rust mixed binaries. We are currently limited to nightlies that support LLVM 17, which is the version in the current Xcode release. It appears that LLVM 18 landed on Feb 13, 2024: eaff1af Meanwhile, This means that there is no nightly version that currently supports both LLVM 17 and |
@sffc is it possible to configure your CI to work around this? For example using a different compiler for wasm than for native? |
Yes it can be worked-around with CI configs, but that's exactly why it is a pain point. It would have been easier if the transition period between |
This commit is the final step in the journey of renaming the historical
wasm32-wasi
target in the Rust compiler towasm32-wasip1
. Various steps in this journey so far have been:wasm32-wasi
target towasm32-wasi-preview1
compiler-team#607 - initial proposal for this renamewasm32-wasi
compiler-team#695 - amended schedule/procedure for renamewasm32-wasip1
target to rustc #120468 - initial introduction ofwasm32-wasip1
wasm32-wasi
#126662 - warn on usage ofwasm32-wasi
wasm32-wasi
targetThe full transition schedule is in this comment and is summarized with:
wasm32-wasip1
targetwasm32-wasi
wasm32-wasi
targetThis means that support on stable for the replacement target of
wasm32-wasip1
has currently been available for 6 months. Users have already seen warnings on stable for 2 months about usage ofwasm32-wasi
and stable users have another 2 months of warnings before the target is removed from stable.This commit is intended to be the final step in this transition so the source tree should no longer mention
wasm32-wasi
except in historical reference to the older name of thewasm32-wasip1
target.