Swift CI tutorial examples are outdated (Swift 5.2/5.3, setup-swift pinned to a 2021 commit)
- Dominant language
- TypeScript
- Stars
- 20.8k
- Forks
- 68.7k
- Avg merge
- 12h 24m
- Merged PRs (30d)
- 105
Description
### Code of Conduct
- [x] I have read and agree to the GitHub Docs project's [Code of Conduct](https://github.com/github/docs/blob/main/.github/CODE_OF_CONDUCT.md)
### What article on docs.github.com is affected?
[Building and testing Swift](https://docs.github.com/en/actions/tutorials/build-and-test-code/swift)
Source file: `content/actions/tutorials/build-and-test-code/swift.md`
### What part(s) of the article would you like to see updated?
The tutorial's examples have aged and no longer reflect current Swift CI practice:
- **Swift versions are several years old.** The matrix example uses `swift: ["5.2", "5.3"]` and the single-version examples use `"5.3.3"`. Swift is now on the 6.x series (current release 6.3).
- **`swift-actions/setup-swift` is pinned to a 2021 commit** (`65540b95f51493d65f5e59e97dcef9629ddf11bf`). The action's current release is v2.4.0 (November 2025). This is the same kind of staleness previously reported in #12678.
#### Proposed changes (the uncontroversial refresh)
1. Update the example Swift versions to current releases.
2. Refresh the `swift-actions/setup-swift` SHA pin to its current release, keeping the not-certified-by-GitHub notice and SHA-pinning reusables already used on the page.
3. Optionally add a short section showing how to build and test on Linux using the official `swift` container images (and the `swiftlang/swift` nightly images), which doesn't require a separate Swift-setup step.
#### A question before I open a PR
Swift CI today commonly spans more than Ubuntu/macOS `swift build` — Apple platforms via Xcode, plus Windows, Android, and WebAssembly. Would the team be open to a brief cross-platform section that demonstrates these, including links to community actions (for example `compnerd/gha-setup-swift` for Windows and `skiptools/swift-android-action` for Android)?
I'd like to confirm this fits the docs' guidance on mentioning third-party tools before investing in a larger PR. For transparency: one action I might reference, `brightdigit/swift-build`, is one I maintain, so I'd want any mention to be neutral and in line with how the page already references `swift-actions/setup-swift`.
Happy to scope the PR to just items 1–2 (or 1–3) if that's preferable.
### Additional information
_No response_
Contributor guide
Research direction
Start with content/actions/tutorials/build-and-test-code/swift.md and review the existing Swift version matrix, single-version examples, and setup-swift SHA pin. Confirm the intended scope before changing the optional cross-platform material; done means the examples use current Swift releases, the action pin is refreshed, and the existing notices and reusable guidance remain intact.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, swift
- Domain
- ci-cd, documentation
- Issue type
- Documentation
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100