[wasm] Rename wasm32-unknown-wasi to wasm32-unknown-wasip1#83167
Merged
Conversation
Member
Author
|
swiftlang/swift-sdk-generator#229 |
Member
Author
|
swiftlang/swift-sdk-generator#229 |
MaxDesiatov
approved these changes
Jul 18, 2025
Contributor
MaxDesiatov
left a comment
There was a problem hiding this comment.
Makes sense. I suppose we shouldn't worry about possible naming collisions with embedded, as Embedded Swift uses embedded subdirectory anyway.
Member
Author
|
@swift-ci smoke test Windows |
MaxDesiatov
pushed a commit
that referenced
this pull request
Jul 22, 2025
…83199) - **Explanation**: Renames the WebAssembly target triple from `wasm32-unknown-wasi` to `wasm32-unknown-wasip1` to align with the broader WebAssembly ecosystem's naming conventions. It's important to include this in 6.2, which is going to be the first stable release of Swift SDK for Wasm, so that we won't introduce a breaking triple change in the stable version series later. The WebAssembly ecosystem has been migrating from the generic wasi target name to more explicit version-specific names like `wasip1` and `wasip2`. This change has been adopted across multiple toolchains and language ecosystems: - Rust: Renamed `wasm32-wasi` to `wasm32-wasip1` (rust-lang/compiler-team#607) - wasi-sdk: Renamed `wasm32-wasi` to `wasm32-wasip1` (WebAssembly/wasi-sdk#386) - Go: Already uses `wasip1` naming convention (golang/go#58141) The "p1" suffix explicitly indicates WASI Preview 1, which helps distinguish it from the newer WASI Preview 2 (wasip2) and provides clarity about which version of the WASI specification is being targeted. Also we already use `wasm32-unknown-wasip1` for Embedded WASI target, and having different names for Embedded and non-Embedded is confusing users. - **Scope**: Narrow, only affects Wasm Swift SDK. - **Original PRs**: #83167 - **Risk**: Low, just a change to Wasm Swift SDK - **Testing**: CI. - **Reviewers**: @MaxDesiatov
MaxDesiatov
added a commit
to MaxDesiatov/swift
that referenced
this pull request
Jul 23, 2025
Fixes a regression introduced with swiftlang#83167
MaxDesiatov
added a commit
to MaxDesiatov/swift
that referenced
this pull request
Jul 24, 2025
Fixes a regression introduced with swiftlang#83167 # Conflicts: # test/embedded/classes-generic-no-stdlib.swift # test/lit.cfg # test/stdlib/POSIX.swift # test/stdlib/simd_diagnostics.swift
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR renames the WebAssembly target triple from
wasm32-unknown-wasitowasm32-unknown-wasip1to align with the broader WebAssembly ecosystem's naming conventions.Motivation
The WebAssembly ecosystem has been migrating from the generic wasi target name to more explicit version-specific names like wasip1 and wasip2. This change has been adopted across multiple toolchains and language ecosystems:
wasm32-wasitarget towasm32-wasi-preview1rust-lang/compiler-team#607)The "p1" suffix explicitly indicates WASI Preview 1, which helps distinguish it from the newer WASI Preview 2 (wasip2) and provides clarity about which version of the WASI specification is being targeted.
Also we already use
wasm32-unknown-wasip1for Embedded WASI target, and having different names for Embedded and non-Embedded is confusing users.Compatibility
Since this is a breaking change to the target name, users will need to update their build configurations. However, the underlying functionality remains identical; only the target identifier changes. Given that we still don't have a stable release for the SDK, I believe it's not too late to migrate.