From af5c3f57c74e9533521e3f51309f2a1af8a86efc Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Wed, 8 Oct 2025 19:14:20 +0100 Subject: [PATCH 01/16] Clarify Swift version, SwiftPM instructions in `README.md` Also added new SwiftPM CLI commands for adding dependencies. --- README.md | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 5768d2ae..5d790fc2 100644 --- a/README.md +++ b/README.md @@ -23,12 +23,30 @@ Hello, World! #### Swift Package Manager -You can use WasmKit as a [Swift Package Manager](https://www.swift.org/documentation/package-manager/) dependency by adding the following to your `Package.swift` file: +You can use WasmKit as a [Swift Package Manager](https://www.swift.org/documentation/package-manager/) dependency. + +Run the following command to add the dependency: + +``` +swift package add-dependency https://github.com/swiftwasm/WasmKit --up-to-next-minor-from 0.1.6 +swift package add-target-dependency WasmKit --package WasmKit +``` + +You can also add the following snippet manually to your `Package.swift` file: ```swift dependencies: [ - .package(url: "https://github.com/swiftwasm/WasmKit.git", from: "0.1.0"), + // ...other dependencies + .package(url: "https://github.com/swiftwasm/WasmKit.git", .upToNextMinor(from: "0.1.6")), ], +// ...other package configuration +targets: [ + // ...other targets + .target( + name: " Date: Wed, 8 Oct 2025 19:16:34 +0100 Subject: [PATCH 02/16] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 5d790fc2..2f321466 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ Hello, World! You can use WasmKit as a [Swift Package Manager](https://www.swift.org/documentation/package-manager/) dependency. -Run the following command to add the dependency: +Run the following commands to add the dependency: ``` swift package add-dependency https://github.com/swiftwasm/WasmKit --up-to-next-minor-from 0.1.6 From 7626cd8e52bc7e4dff7013f2a736a3d25ce6554e Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Wed, 8 Oct 2025 19:33:00 +0100 Subject: [PATCH 03/16] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2f321466..4f607142 100644 --- a/README.md +++ b/README.md @@ -43,7 +43,7 @@ dependencies: [ targets: [ // ...other targets .target( - name: "", dependencies: [.product(name: "WasmKit", package: "WasmKit")], ) ] From 3cd502dbd05a01c9e7b0151453fa6a97019a16e0 Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Thu, 9 Oct 2025 21:10:39 +0100 Subject: [PATCH 04/16] Address review feedback in `README.md` Co-authored-by: Joseph Heck --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 4f607142..c79ba7b7 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,7 @@ Hello, World! #### Swift Package Manager -You can use WasmKit as a [Swift Package Manager](https://www.swift.org/documentation/package-manager/) dependency. +To use WasmKit in your package, add it as a [Swift Package Manager](https://www.swift.org/documentation/package-manager/) dependency. Run the following commands to add the dependency: From f7eaf44e98096083f9e29579eeadea9027d4a015 Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Fri, 10 Oct 2025 21:54:47 +0100 Subject: [PATCH 05/16] Mention swift.org toolchains inclusion in README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c79ba7b7..dbe275df 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ # WasmKit -**WasmKit** is a standalone and embeddable WebAssembly runtime implementation written in Swift. +**WasmKit** is a standalone and embeddable WebAssembly runtime implementation written in Swift. Starting with Swift 6.2, WasmKit CLI executable is also included in Linux and macOS [toolchains distributed at swift.org](https://swift.org/install). ## Usage From 5e2b55755e83b6cbbea304f5c1aa6d8fe645a378 Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Fri, 10 Oct 2025 21:58:29 +0100 Subject: [PATCH 06/16] Add a link to webassembly.org in README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index dbe275df..ca89fe2f 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ # WasmKit -**WasmKit** is a standalone and embeddable WebAssembly runtime implementation written in Swift. Starting with Swift 6.2, WasmKit CLI executable is also included in Linux and macOS [toolchains distributed at swift.org](https://swift.org/install). +**WasmKit** is a standalone and embeddable [WebAssembly](https://webassembly.org) runtime implementation written in Swift. Starting with Swift 6.2, WasmKit CLI executable is also included in Linux and macOS [toolchains distributed at swift.org](https://swift.org/install). ## Usage From 110d02f76caa8d6236c4596f7508e081a45017fd Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Fri, 10 Oct 2025 21:59:34 +0100 Subject: [PATCH 07/16] Refine wording in README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ca89fe2f..b35de1ce 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ # WasmKit -**WasmKit** is a standalone and embeddable [WebAssembly](https://webassembly.org) runtime implementation written in Swift. Starting with Swift 6.2, WasmKit CLI executable is also included in Linux and macOS [toolchains distributed at swift.org](https://swift.org/install). +**WasmKit** is a standalone and embeddable [WebAssembly](https://webassembly.org) runtime (virtual machine) implementation written in Swift. Starting with Swift 6.2, WasmKit CLI executable is also included in Linux and macOS [toolchains distributed at swift.org](https://swift.org/install). ## Usage From 57385287d8e6560c2e71ba54d38fd5c0b2e25934 Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Fri, 10 Oct 2025 22:00:52 +0100 Subject: [PATCH 08/16] Refine wording in README.md --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index b35de1ce..f7999883 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,7 @@ # WasmKit -**WasmKit** is a standalone and embeddable [WebAssembly](https://webassembly.org) runtime (virtual machine) implementation written in Swift. Starting with Swift 6.2, WasmKit CLI executable is also included in Linux and macOS [toolchains distributed at swift.org](https://swift.org/install). - +**WasmKit** is a standalone and embeddable [WebAssembly](https://webassembly.org) runtime (virtual machine) implementation written in Swift. Starting with Swift 6.2, WasmKit CLI executable is included in [Swift toolchains distributed at swift.org](https://swift.org/install) for Linux and macOS. ## Usage The best way to learn how to use WasmKit is to look at the [Examples](./Examples) directory. From 4f9f5810c245b66441d41167ccc46d67b8f8e292 Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Fri, 10 Oct 2025 22:03:29 +0100 Subject: [PATCH 09/16] Expand on package contents in README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f7999883..b66847c3 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ # WasmKit -**WasmKit** is a standalone and embeddable [WebAssembly](https://webassembly.org) runtime (virtual machine) implementation written in Swift. Starting with Swift 6.2, WasmKit CLI executable is included in [Swift toolchains distributed at swift.org](https://swift.org/install) for Linux and macOS. +**WasmKit** is a standalone and embeddable [WebAssembly](https://webassembly.org) runtime (virtual machine) implementation and related tooling written in Swift. Starting with Swift 6.2, WasmKit CLI executable is included in [Swift toolchains distributed at swift.org](https://swift.org/install) for Linux and macOS. ## Usage The best way to learn how to use WasmKit is to look at the [Examples](./Examples) directory. From 8960b5f0047e73a462fd3b332bf8187327834e9c Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Fri, 10 Oct 2025 22:06:27 +0100 Subject: [PATCH 10/16] Link to WASI website in README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b66847c3..b3cc6e35 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ The best way to learn how to use WasmKit is to look at the [Examples](./Examples ### Command Line Tool -WasmKit provides a command line tool to run WebAssembly binaries compliant with WASI. +WasmKit provides a command line tool to run WebAssembly binaries compatible with [https://wasi.dev](WASI).. ```sh $ git clone https://github.com/swiftwasm/WasmKit.git From c24b8c3e9098366feeaa869472872aa75eb869e7 Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Fri, 10 Oct 2025 22:07:18 +0100 Subject: [PATCH 11/16] Fix WASI link in README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b3cc6e35..a243b676 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ The best way to learn how to use WasmKit is to look at the [Examples](./Examples ### Command Line Tool -WasmKit provides a command line tool to run WebAssembly binaries compatible with [https://wasi.dev](WASI).. +WasmKit provides a command line tool to run WebAssembly binaries compatible with [WASI](https://wasi.dev). ```sh $ git clone https://github.com/swiftwasm/WasmKit.git From e2559ec00cb0e885208ece8000145b8f3a6d5f6b Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Fri, 10 Oct 2025 22:10:33 +0100 Subject: [PATCH 12/16] Highlight SPI docs in README.md --- README.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index a243b676..ef7b1bad 100644 --- a/README.md +++ b/README.md @@ -3,9 +3,10 @@ # WasmKit **WasmKit** is a standalone and embeddable [WebAssembly](https://webassembly.org) runtime (virtual machine) implementation and related tooling written in Swift. Starting with Swift 6.2, WasmKit CLI executable is included in [Swift toolchains distributed at swift.org](https://swift.org/install) for Linux and macOS. + ## Usage -The best way to learn how to use WasmKit is to look at the [Examples](./Examples) directory. +You can find introductory examples and API documentation on the [Swift Package Index documentation page](https://swiftpackageindex.com/swiftwasm/WasmKit/main/documentation/wasmkit). ### Command Line Tool @@ -48,8 +49,6 @@ targets: [ ] ``` -You can find API documentation on the [Swift Package Index](https://swiftpackageindex.com/swiftwasm/WasmKit/main/documentation/wasmkit). - ## Features - [Reasonably fast](./Documentation/RegisterMachine.md#performance-evaluation) From 9ebda114d8b96b4b1dc14567498049ccede6491d Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Fri, 10 Oct 2025 22:14:33 +0100 Subject: [PATCH 13/16] Refine wording in README.md --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index ef7b1bad..e6fe9e80 100644 --- a/README.md +++ b/README.md @@ -25,14 +25,14 @@ Hello, World! To use WasmKit in your package, add it as a [Swift Package Manager](https://www.swift.org/documentation/package-manager/) dependency. -Run the following commands to add the dependency: +Run the following commands in the same directory as your `Package.swift` manifest to add the dependency: ``` swift package add-dependency https://github.com/swiftwasm/WasmKit --up-to-next-minor-from 0.1.6 swift package add-target-dependency WasmKit --package WasmKit ``` -You can also add the following snippet manually to your `Package.swift` file: +You can also add the following snippet manually instead to your `Package.swift` file: ```swift dependencies: [ @@ -58,7 +58,7 @@ targets: [ - Compact and embeddable - Debug build complete in 5 seconds[^1] - Batteries included - - WASI support, WAT parser, etc. + - WASI support, WAT parser/assembler, etc. ## Supported Platforms @@ -91,7 +91,7 @@ and should work on the following platforms: ## Minimum Supported Swift Version -The minimum supported version is Swift 6.0, which is the version used to bootstrap the Swift toolchain in [ci.swift.org](https://ci.swift.org/). +The minimum supported version is Swift 6.0, which is the version used to bootstrap the Swift toolchain on [ci.swift.org](https://ci.swift.org/). ## Testing From 3c685270f562eccc7c86c4bc038e4606dad15ac0 Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Fri, 10 Oct 2025 22:15:51 +0100 Subject: [PATCH 14/16] Explain what WAT means in README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index e6fe9e80..03bbcbcf 100644 --- a/README.md +++ b/README.md @@ -58,7 +58,7 @@ targets: [ - Compact and embeddable - Debug build complete in 5 seconds[^1] - Batteries included - - WASI support, WAT parser/assembler, etc. + - WASI support, WAT (WebAssembly text format) parser/assembler, etc. ## Supported Platforms From 5542e3c26e9d04bc807d672554dc06644cc4919b Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Mon, 27 Oct 2025 17:20:43 +0000 Subject: [PATCH 15/16] Clarify Android support in `README.md` --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 03bbcbcf..6e26b6f5 100644 --- a/README.md +++ b/README.md @@ -63,11 +63,12 @@ targets: [ ## Supported Platforms -WasmKit engine works on all major platforms supported by Swift. It is continuously tested on macOS, Ubuntu, Amazon Linux 2, and Windows, +WasmKit engine works on all major platforms supported by Swift. It is continuously tested on macOS, Ubuntu, Amazon Linux 2, Android, and Windows, and should work on the following platforms: - macOS 10.13+, iOS 12.0+, tvOS 12.0+, watchOS 6.0+ - Amazon Linux 2, Debian 12, Ubuntu 22.04+, Fedora 39+ +- [Android API Level 30](https://developer.android.com/tools/releases/platforms) - Windows 10+ ## Implementation Status From d8c4da5df8df18dc59fab9954d8674d0d6eb66a7 Mon Sep 17 00:00:00 2001 From: Max Desiatov Date: Mon, 27 Oct 2025 17:51:53 +0000 Subject: [PATCH 16/16] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6e26b6f5..ce9f8fcb 100644 --- a/README.md +++ b/README.md @@ -68,7 +68,7 @@ and should work on the following platforms: - macOS 10.13+, iOS 12.0+, tvOS 12.0+, watchOS 6.0+ - Amazon Linux 2, Debian 12, Ubuntu 22.04+, Fedora 39+ -- [Android API Level 30](https://developer.android.com/tools/releases/platforms) +- Android [API Level 30](https://developer.android.com/tools/releases/platforms) - Windows 10+ ## Implementation Status