swiftlang / swiftlang/github-workflows
Add an API diff workflow
Nobody has claimed this yet.
- Dominant language
- Swift
- Stars
- 115
- Forks
- 57
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 3
Description
In addition to the existing API breakage workflow, it'd be helpful to see the diff of the swiftinterface file (or equivalent for packages that can't build with library evolution enabled) that the PR is making.
When a package has a large diff where most of the code is implementation, it can be difficult to spot the exact API changes it's making.
There are a few ways this could be surfaced to the user:
- Option A: A comment posted by the workflow back on the PR
- Option B: The workflow just printing the diff and the user needing to click on the GitHub check link and reviewing it manually
Either would be fine to start.
Presumably, this would come with some configurability, mainly the list of modules to diff - there might be internal modules that the maintainer might not care about seeing the diff of, and might even cause noise.
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
Start by reading the existing API breakage workflow and trace how it runs on pull requests. Determine how to obtain the swiftinterface diff, or an equivalent for packages without library evolution, and compare presenting it as a PR comment versus a GitHub check output. Done means the workflow surfaces the API diff and supports configuring which modules are included.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, swift
- Domain
- api, ci-cd
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100