Skip to content

ci: bump Swift SDK to swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-11-a #462

ci: bump Swift SDK to swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-11-a

ci: bump Swift SDK to swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-11-a #462

Workflow file for this run

name: SwiftWasm
on:
push:
branches: ["wasm32-wasi"]
pull_request:
branches: ["wasm32-wasi"]
env:
WASMTIME_VESRION: 32.0.0
jobs:
build:
strategy:
matrix:
target:
- triple: wasm32-unknown-wasi
sdk:
url: https://github.com/swiftwasm/swift/releases/download/swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-11-a/swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-11-a-wasm32-unknown-wasi.artifactbundle.zip
checksum: 868a2ceb8d0f17fa59396b80382d2dd2381d7a94dee1ede266f74fa4f788b4f7
artifact-name: swift-format.wasm
other-wasmopt-flags:
- triple: wasm32-unknown-wasip1-threads
sdk:
url: https://github.com/swiftwasm/swift/releases/download/swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-11-a/swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-11-a-wasm32-unknown-wasip1-threads.artifactbundle.zip
checksum: 1a14f551650cee1b23e5620ad7861ede7a3eb48b2d175ddd571ab29d32dfa7a5
artifact-name: swift-format-threads.wasm
other-wasmopt-flags: --enable-threads
runs-on: ubuntu-24.04-arm
container: swiftlang/swift:nightly-main-noble@sha256:a09a351b780b08ca7425a65366151c37df00f32e6b4465c8cdfbb1a7af1b9860
env:
STACK_SIZE: 524288
steps:
- uses: actions/checkout@v4
- name: Install tools
run: apt-get update && apt-get install --no-install-recommends -y wabt binaryen unzip
- run: swift --version
- run: swift sdk install ${{ matrix.target.sdk.url }} --checksum ${{ matrix.target.sdk.checksum }}
- name: Build
run: |
swift build --product swift-format --swift-sdk ${{ matrix.target.triple }} -c release -Xlinker -z -Xlinker stack-size=$STACK_SIZE
wasm-strip .build/release/swift-format.wasm
wasm-opt -Oz --enable-bulk-memory --enable-sign-ext ${{ matrix.target.other-wasmopt-flags }} .build/release/swift-format.wasm -o ${{ matrix.target.artifact-name }}
- name: Upload ${{ matrix.target.artifact-name }}
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.target.artifact-name }}
path: ${{ matrix.target.artifact-name }}
test-binary:
needs: build
strategy:
matrix:
target:
- artifact-name: swift-format.wasm
other-wasmtime-flags:
- artifact-name: swift-format-threads.wasm
other-wasmtime-flags: --wasi threads
runs-on: ubuntu-24.04-arm
container: swiftlang/swift:nightly-main-noble@sha256:a09a351b780b08ca7425a65366151c37df00f32e6b4465c8cdfbb1a7af1b9860
steps:
- uses: actions/checkout@v4
- name: Install tools
run: apt-get update && apt-get install --no-install-recommends -y xz-utils
- uses: bytecodealliance/actions/wasmtime/setup@v1
with:
version: ${{ env.WASMTIME_VERSION }}
- run: wasmtime -V
- name: Download ${{ matrix.target.artifact-name }}
uses: actions/download-artifact@v4
with:
name: ${{ matrix.target.artifact-name }}
- run: wasmtime --dir . ${{ matrix.target.other-wasmtime-flags }} ${{ matrix.target.artifact-name }} --version
- run: wasmtime --dir . ${{ matrix.target.other-wasmtime-flags }} ${{ matrix.target.artifact-name }} lint -r .
test:
strategy:
matrix:
target:
- triple: wasm32-unknown-wasi
sdk:
url: https://github.com/swiftwasm/swift/releases/download/swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-11-a/swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-11-a-wasm32-unknown-wasi.artifactbundle.zip
checksum: 868a2ceb8d0f17fa59396b80382d2dd2381d7a94dee1ede266f74fa4f788b4f7
other-wasmtime-flags:
- triple: wasm32-unknown-wasip1-threads
sdk:
url: https://github.com/swiftwasm/swift/releases/download/swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-11-a/swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-11-a-wasm32-unknown-wasip1-threads.artifactbundle.zip
checksum: 1a14f551650cee1b23e5620ad7861ede7a3eb48b2d175ddd571ab29d32dfa7a5
other-wasmtime-flags: --wasi threads
runs-on: ubuntu-24.04-arm
container: swiftlang/swift:nightly-main-noble@sha256:a09a351b780b08ca7425a65366151c37df00f32e6b4465c8cdfbb1a7af1b9860
env:
STACK_SIZE: 4194304
steps:
- uses: actions/checkout@v4
- name: Install tools
run: apt-get update && apt-get install --no-install-recommends -y xz-utils unzip
- uses: bytecodealliance/actions/wasmtime/setup@v1
with:
version: ${{ env.WASMTIME_VERSION }}
- run: swift --version
- run: wasmtime -V
- run: swift sdk install ${{ matrix.target.sdk.url }} --checksum ${{ matrix.target.sdk.checksum }}
- run: swift build -c release --build-tests --swift-sdk ${{ matrix.target.triple }} -Xlinker -z -Xlinker stack-size=$STACK_SIZE
- run: wasmtime --dir / --wasm max-wasm-stack=$STACK_SIZE ${{ matrix.target.other-wasmtime-flags }} .build/release/swift-formatPackageTests.xctest