Skip to content

feat: Adds opt-in only wasm target to vapor CI workflows#54

Merged
gwynne merged 5 commits intovapor:mainfrom
PassiveLogic:feat/add-swift-wasm-ci
Jul 10, 2025
Merged

feat: Adds opt-in only wasm target to vapor CI workflows#54
gwynne merged 5 commits intovapor:mainfrom
PassiveLogic:feat/add-swift-wasm-ci

Conversation

@scottmarchant
Copy link
Copy Markdown
Contributor

Change summary

Added swift wasm as an opt-in only CI target, to help prevent future breakages to swift wasm builds in vapor repositories.

New usage of the wasm build will be added to vapor repositories on a case-by-case basis, once the required wasm support is in place.

Notes

This PR is part of a larger effort by PassiveLogic to add wasm support to many popular repositories.

Testing done

Verified this new workflow functions correctly using a temporary PR that enables the new wasm build.

See https://github.com/PassiveLogic/sql-kit/actions/runs/15886122859/job/44798410586?pr=1

Copy link
Copy Markdown
Member

@0xTim 0xTim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

Copy link
Copy Markdown
Member

@0xTim 0xTim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@scottmarchant can you enable the WASM build in the self test workflow so it's run as part of CI here?

@scottmarchant
Copy link
Copy Markdown
Contributor Author

@scottmarchant can you enable the WASM build in the self test workflow so it's run as part of CI here?

Yep, working on that. Turns out there is a hidden gotcha limitation, can't have more than 10 inputs on the workflow input. I'll probably split it up or something.

CleanShot 2025-07-02 at 12 53 57@2x

…ms, rather than individual toggles. This provides workaround for the maximum 10 input limit GitHub imposes on workflow_dispatch.
@scottmarchant
Copy link
Copy Markdown
Contributor Author

scottmarchant commented Jul 2, 2025

@0xTim I added wasm to the self test workflow, but doing so caused us to exceed the 10 input maximum on workflow_dispatch. To work around that, I refactored the workflow_dispatch to provide a dropdown choice for platforms instead. This is a little less flexible than before. You can select all, or a specific platform. But not a mixture of different options.

See https://github.com/vapor/ci/pull/54/files#diff-7bb6d159868d8887fc8bbb8c6c19c12c47a04ed1c3731f4934ecc1e7768c4a4dR38

If there is a better way to address that issue, please let me know.

That limitation only applies to the workflow_dispatch for self test. I kept the individual boolean options under run-unit-test.yml, since it is obviously best to have per-platform configuration when possible.

@scottmarchant
Copy link
Copy Markdown
Contributor Author

@0xTim @gwynne Please let me know if anything needs changed on this PR. Also, note that the change to add wasm to self-test required condensing down the workflow_dispatch options due to a github limit of 10 max items in workflow_dispatch.

@gwynne gwynne merged commit e9ffda0 into vapor:main Jul 10, 2025
13 of 14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants