Skip to content

chore: expand swift-syntax version range to 509.0.0..<604.0.0 and bump CI to Xcode 26.3#28

Merged
ElonPark merged 2 commits into
mainfrom
task/elon/IOS-4896-expand-swift-syntax-version-range
Jul 15, 2026
Merged

chore: expand swift-syntax version range to 509.0.0..<604.0.0 and bump CI to Xcode 26.3#28
ElonPark merged 2 commits into
mainfrom
task/elon/IOS-4896-expand-swift-syntax-version-range

Conversation

@ElonPark

@ElonPark ElonPark commented Jul 15, 2026

Copy link
Copy Markdown
Member

Background (Required)

  • The swift-syntax dependency upper bound was capped below 602.0.0, so KarrotCodableKit could not be used in dependency graphs that resolve swift-syntax 602.x (Swift 6.2) or 603.x (Swift 6.3).
  • CI was pinned to Xcode 16.4 (Swift 6.1), which predates the newer swift-syntax lines.

Changes

  • Widen the swift-syntax version range from "509.0.0"..<"602.0.0" to "509.0.0"..<"604.0.0" in Package.swift, allowing the 602.x (Swift 6.2) and 603.x (Swift 6.3) lines.
  • Bump the CI test matrix from Xcode 16.4 (Swift 6.1) to Xcode 26.3 (Swift 6.3), which is available on the macos-15 runner image.

Testing Methods

  • Resolved swift-syntax to 603.0.2 (the newest version in the widened range) and ran the full suite locally on Swift 6.3.1 — the same Swift line as the new CI toolchain:
    • swift test (debug): 194 XCTest + 171 Swift Testing tests, 0 failures — macro expansion tests (exact-string assertions) all pass against 603.
    • swift test -c release: all tests pass.
  • Also verified against 602.0.0 earlier in this branch: debug and release suites both pass.
  • Since no Package.resolved is committed, this PR's CI resolves 603.0.2 and validates the new upper bound directly.

Review Notes

  • The check-macro-compatibility job pins its own version list (509.0.0–601.0.1), so it still guards the lower end of the range and is unaffected by the upper-bound change.
  • swift-syntax 602.0.0/603.0.2 both declare swift-tools-version: 5.9, so SwiftPM on older toolchains will also resolve them; consumers stuck on older Xcode can pin a lower version if needed.

Ref: IOS-4896

https://claude.ai/code/session_01G5CQ6RqYaohJ4yPkDksNc7

Allow swift-syntax 602.x (Swift 6.2 toolchain) so KarrotCodableKit can
coexist with dependency graphs that resolve swift-syntax 602.

Claude-Session: https://claude.ai/code/session_01G5CQ6RqYaohJ4yPkDksNc7
@coderabbitai

coderabbitai Bot commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

The swift-syntax dependency upper version bound in Package.swift changes from 602.0.0 to 603.0.0, while the lower bound remains 509.0.0.

Changes

Dependency Update

Layer / File(s) Summary
Update swift-syntax version range
Package.swift
The allowed swift-syntax version range now extends below 603.0.0 instead of 602.0.0.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Suggested labels: Update

🚥 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.
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 matches the main dependency-range and CI toolchain changes, though the upper-bound version is slightly off from the actual diff.
Description check ✅ Passed The description follows the required template and includes background, changes, testing, and review notes with concrete details.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch task/elon/IOS-4896-expand-swift-syntax-version-range

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

Widen the swift-syntax range from ..<603.0.0 to ..<604.0.0 so the
Swift 6.3 line (603.x) can be resolved, and bump the CI test matrix
from Xcode 16.4 (Swift 6.1) to Xcode 26.3 (Swift 6.3) to match.

Claude-Session: https://claude.ai/code/session_01G5CQ6RqYaohJ4yPkDksNc7
@ElonPark ElonPark changed the title chore: expand swift-syntax version range to 509.0.0..<603.0.0 chore: expand swift-syntax version range to 509.0.0..<604.0.0 and bump CI to Xcode 26.3 Jul 15, 2026
@ElonPark
ElonPark merged commit 5842b66 into main Jul 15, 2026
4 checks passed
@ElonPark ElonPark self-assigned this Jul 15, 2026
@ElonPark
ElonPark deleted the task/elon/IOS-4896-expand-swift-syntax-version-range branch July 15, 2026 09:29
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