From 3be7b9ef379136d5dc72ae966b0ae9b6c3a502d3 Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Wed, 17 Sep 2025 19:28:51 +0100 Subject: [PATCH 1/5] Update README.md --- WebGPUDemo/README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/WebGPUDemo/README.md b/WebGPUDemo/README.md index 69b93ad..b360dec 100644 --- a/WebGPUDemo/README.md +++ b/WebGPUDemo/README.md @@ -1,12 +1,12 @@ # WebGPU Example -Install Swift 6.2 development snapshot and Swift SDK for Wasm by following -https://www.swift.org/documentation/articles/wasm-getting-started.html. +Install Swift 6.2 (or later version) and a corresponding Swift SDK for Wasm by following +["Getting Started with Swift SDKs for WebAssembly" article](https://www.swift.org/documentation/articles/wasm-getting-started.html). Build with the installed Swift SDK using JavaScriptKit's `PackageToJSPlugin` plugin. Make sure to update -the Swift SDK in the following command to the version that matches your installed swift.org toolchain. +the Swift SDK in the following command to the version that matches your installed Swift toolchain. ``` -swift package --swift-sdk swift-6.2-DEVELOPMENT-SNAPSHOT-2025-06-17-a_wasm js --use-cdn +swift package --swift-sdk swift-6.2-RELEASE_wasm js --use-cdn ``` If you'd like to produce a smaller binary (under 400 kB), you'll have to use @@ -19,7 +19,7 @@ your installed toolchain version if needed): swift package --swift-sdk swift-DEVELOPMENT-SNAPSHOT-2025-08-11-a_wasm-embedded js --use-cdn -c release ``` -WebGPU is enabled by default in beta and technical preview versions of Safari. Safari 17 and 18 require enabling +WebGPU is enabled by default in Safari 26. Safari 17 and 18 require enabling WebGPU feature flag as shown on the screenshot: Safari Feature Flags settings tab with WebGPU enabled From 514a426539459ffaf677b7cb42a87bff60756a54 Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Wed, 17 Sep 2025 20:11:12 +0100 Subject: [PATCH 2/5] Disable broken CI configurations in `pull_request.yml` `AudioWorkstation/Guest` triggers an assertion in 6.2 release --- .github/workflows/pull_request.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index fb4505b..e5676f8 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -10,6 +10,7 @@ jobs: uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main with: enable_embedded_wasm_sdk_build: true + wasm_exclude_swift_versions: '[{"swift_version": "nightly-6.2"}]' enable_linux_checks: false enable_macos_checks: false enable_windows_checks: false From e7cdea16c51dfb4770f821397572b9afed8c9bed Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Wed, 17 Sep 2025 20:24:39 +0100 Subject: [PATCH 3/5] Pin JavaScriptKit dependency revision in `WebGPUDemo` --- WebGPUDemo/Package.resolved | 5 ++--- WebGPUDemo/Package.swift | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/WebGPUDemo/Package.resolved b/WebGPUDemo/Package.resolved index 52fa2d6..48d29ab 100644 --- a/WebGPUDemo/Package.resolved +++ b/WebGPUDemo/Package.resolved @@ -1,13 +1,12 @@ { - "originHash" : "8b1d9dc30426eb64ddd75cf52781d1b481727ea88d6e78f3147f650919d2e2a6", + "originHash" : "76c1e4088705907beec839fa123b640884ec89a62e0a63341defa9bd1abbd692", "pins" : [ { "identity" : "javascriptkit", "kind" : "remoteSourceControl", "location" : "https://github.com/swiftwasm/JavaScriptKit.git", "state" : { - "revision" : "7510b04120bb26a25dd287af71de47065d577c7e", - "version" : "0.33.1" + "revision" : "0b785610d170a0cbb4777ea379cb7221fc82c401" } }, { diff --git a/WebGPUDemo/Package.swift b/WebGPUDemo/Package.swift index fed0dee..a6948dd 100644 --- a/WebGPUDemo/Package.swift +++ b/WebGPUDemo/Package.swift @@ -11,7 +11,7 @@ let package = Package( ), .package( url: "https://github.com/swiftwasm/JavaScriptKit.git", - from: "0.33.1", + revision: "0b785610d170a0cbb4777ea379cb7221fc82c401", ), ], targets: [ From 1c0e54af2e9079afbb9104e8dbbaa6625b9bd193 Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Wed, 17 Sep 2025 20:34:26 +0100 Subject: [PATCH 4/5] Exclude Embedded Swift from `WebGPUDemo/README.md` for now --- WebGPUDemo/README.md | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/WebGPUDemo/README.md b/WebGPUDemo/README.md index b360dec..88e1a03 100644 --- a/WebGPUDemo/README.md +++ b/WebGPUDemo/README.md @@ -9,16 +9,6 @@ the Swift SDK in the following command to the version that matches your installe swift package --swift-sdk swift-6.2-RELEASE_wasm js --use-cdn ``` -If you'd like to produce a smaller binary (under 400 kB), you'll have to use -`swift-DEVELOPMENT-SNAPSHOT-2025-08-11` or later development snapshot of the `main` Swift toolchain -branch. Earlier versions (including Swift 6.2) have no support for `async` functions in Embedded Swift, -which is required for WebGPU setup. Use the following command to build with Embedded Swift (update for -your installed toolchain version if needed): - -``` -swift package --swift-sdk swift-DEVELOPMENT-SNAPSHOT-2025-08-11-a_wasm-embedded js --use-cdn -c release -``` - WebGPU is enabled by default in Safari 26. Safari 17 and 18 require enabling WebGPU feature flag as shown on the screenshot: From a7c9bc3bf31652056701efda7a274e6cd6e4dec3 Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Wed, 17 Sep 2025 20:36:42 +0100 Subject: [PATCH 5/5] Update pull_request.yml --- .github/workflows/pull_request.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index e5676f8..ef253d1 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -29,7 +29,6 @@ jobs: name: Build WebGPU Demo uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main with: - enable_embedded_wasm_sdk_build: true wasm_exclude_swift_versions: '[{"swift_version": "nightly-6.2"}]' enable_linux_checks: false enable_macos_checks: false