Skip to content

Compile against the Swift Static Linux SDK (musl) in CI - #234

Merged
colemancda merged 1 commit into
masterfrom
feature/ci-musl-static-sdk
Aug 3, 2026
Merged

Compile against the Swift Static Linux SDK (musl) in CI#234
colemancda merged 1 commit into
masterfrom
feature/ci-musl-static-sdk

Conversation

@colemancda

Copy link
Copy Markdown
Member

Summary

Adds a swift-musl.yml workflow that installs the official Swift Static Linux SDK and builds the package against both x86_64-swift-linux-musl and aarch64-swift-linux-musl, each on a GitHub-hosted runner of the matching CPU architecture (ubuntu-latest / ubuntu-24.04-arm).

Build-only, not test: verified locally (in the actual swift:6.3.3-jammy container) that the static SDK's swift_static resources don't ship a Testing.swiftmodule, so anything importing swift-testing — the whole test suite — fails to compile against this SDK regardless of host/target architecture match. swift build alone was verified to succeed for both triples.

Note: swift sdk install --checksum needs the checksum SwiftPM itself computes for the bundle, which differs from a plain sha256sum of the downloaded file by one trailing hex digit (SwiftPM appears to use its own checksum representation, not a raw SHA256 digest) — confirmed by having swift sdk install report its own "Computed archive checksum" and using that value verbatim.

Test plan

  • CI run on this PR exercises both Linux (musl, x86_64) and Linux (musl, aarch64) jobs and passes

Verifies both x86_64-swift-linux-musl and aarch64-swift-linux-musl
build cleanly against the official static SDK, each on a host of the
matching architecture. Build-only: the static SDK's swift_static
resources don't include a Testing.swiftmodule, so anything importing
swift-testing (the whole test suite) cannot compile against it
regardless of host/target match.
@github-code-quality

github-code-quality Bot commented Aug 3, 2026

Copy link
Copy Markdown

Code Coverage Overview

Languages: Swift

Swift / code-coverage/llvm-cov

The overall coverage in commit 2c40031 in the feature/ci-musl-stat... branch remains at 89%, unchanged from commit 9a6119b in the master branch.


Updated August 03, 2026 15:13 UTC

@colemancda
colemancda merged commit dada08c into master Aug 3, 2026
49 checks passed
@colemancda
colemancda deleted the feature/ci-musl-static-sdk branch August 3, 2026 17:25
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.

1 participant