swiftlang / swiftlang/github-workflows
Add an opt-in check for only linking FoundationEssentails on Linux
Open
Nobody has claimed this yet.
- Dominant language
- Swift
- Stars
- 115
- Forks
- 57
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 3
Description
In some Swift Server libraries, we're trying to minimize which individual Foundation sub-modules we link, and it'd be useful to have a CI check to avoid a PR accidentally regressing it.
Roughly could work like this:
- a script temporarily adds an extra executable product to the package that imports the library in the package that we want to test for not linking full Foundation on Linux
swift buildthat product- run
lddon that product in the.builddirectory - ensure that
libFoundation.sois not present in there, otherwise fail the CI job
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No file or test is named; start by locating the repository's existing CI workflows and scripts. Use the proposed swift build and ldd steps as the entry points, and verify that the opt-in check builds the temporary executable and fails when libFoundation.so appears in its linked libraries.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, linux, swift
- Domain
- build-system, ci-cd
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100