Skip to content

ci: release the Swift package separately from npm - #11

Merged
lemarier merged 2 commits into
mainfrom
lemarier/swift-release-workflow
Sep 24, 2026
Merged

lemarier merged 2 commits into
mainfrom
lemarier/swift-release-workflow

Conversation

@lemarier

@lemarier lemarier commented Sep 24, 2026 •

Copy link
Copy Markdown
Contributor

#9 tied Swift tags to @origin89/ui-react releases, so every Swift-only change needed an unrelated React changeset and npm publish. Several Swift releases are planned for the Apps setup flow (origin89hq/apps#1), so the Swift package now has its own version line.

just swift-release 0.3.0 dispatches the new release-swift.yml on main. It rejects anything but a plain X.Y.Z above every existing Swift tag, runs swift test and the iOS 17 Simulator build on the dispatched commit, then creates the lightweight tag at that commit; an existing tag makes the API call fail rather than move. Runs are serialized with queue: max, so releases dispatched while one is running wait instead of replacing each other. The swift-tag job is removed from publish-react.yml, so npm releases no longer create plain tags that could collide with Swift versions. 0.2.0 remains the first Swift tag.

Validation: scripts/check-swift-version.sh against the current tags accepts 0.2.1, 0.3.0, 0.10.0 and 1.0.0, and rejects 0.2.0, 0.1.9, v0.3.0, 0.3, 0.03.0, 0.3.0-beta.1 and an empty value. The workflow YAML parses and biome ci passes; shellcheck was not available locally. The workflow itself has not run; the first dispatch after merge is its first real test.

Copilot AI lite review requested due to automatic review settings September 24, 2026 13:18
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@coderabbitai

coderabbitai Bot commented Sep 24, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: QUIET

Plan: Advanced

Run ID: 1543378e-bfdf-43f3-b1dc-7404a0b7e817

📥 Commits

Reviewing files that changed from the base of the PR and between 8cb5907 and 3544dd1.

📒 Files selected for processing (1)
  • .github/workflows/release-swift.yml

Included review availability: Your plan provides up to 10 included reviews per hour; 5 remain after this review.


📝 Walkthrough

Walkthrough

The React publishing workflow no longer creates version tags. A manually triggered Swift release workflow validates the requested version, runs Swift tests, builds for the iOS 17 simulator, and creates a version tag at the triggering commit. The just swift-release target dispatches the workflow. The release documentation describes Swift versioning independently from npm releases and updates the Android build instructions.

Priority: ⬇️ Low

Estimated code review effort: 3 (Moderate) | ~20 minutes

Merge Risk: ⚪ Minimal · up to 3544d

The documented 0.3.0 Swift release passes the version check, and release requests are queued. No concrete merge-blocking issue remains.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly identifies the main change: releasing the Swift package separately from npm.
Description check ✅ Passed The description directly explains the separate Swift release workflow, version validation, tagging, and removal of npm-created Swift tags.

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 1


ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: QUIET

Plan: Advanced

Run ID: 8843b0eb-3811-44ac-ad12-d3c8667dd2c7

📥 Commits

Reviewing files that changed from the base of the PR and between eca5951 and 8cb5907.

📒 Files selected for processing (6)
  • .github/workflows/publish-react.yml
  • .github/workflows/release-swift.yml
  • README.md
  • docs/releases.md
  • justfile
  • scripts/check-swift-version.sh
💤 Files with no reviewable changes (1)
  • .github/workflows/publish-react.yml

Included review availability: Your plan provides up to 10 included reviews per hour; 5 remain after this review.

Comment thread .github/workflows/release-swift.yml
@lemarier
lemarier merged commit 2620036 into main Sep 24, 2026
4 checks passed
@lemarier
lemarier deleted the lemarier/swift-release-workflow branch September 24, 2026 13:46
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.

2 participants