build(deps): bump actions/checkout from 5 to 6 #5
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - main | |
| workflow_dispatch: | |
| concurrency: | |
| group: ci-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| # Primary development workflow: Latest Swift on macOS with debug build | |
| macos-latest: | |
| name: macOS (Swift 6.2, debug) | |
| runs-on: macos-26 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Select Xcode 26.0 | |
| run: sudo xcode-select -s /Applications/Xcode_26.0.app | |
| - name: Print Swift version | |
| run: swift --version | |
| - name: Cache Swift packages | |
| uses: actions/cache@v4 | |
| with: | |
| path: .build | |
| key: ${{ runner.os }}-spm-${{ hashFiles('Package.swift') }} | |
| restore-keys: | | |
| ${{ runner.os }}-spm- | |
| # Note: swift test builds automatically, no separate build step needed | |
| - name: Test | |
| run: swift test -c debug | |
| - name: Validate Package.swift | |
| run: swift package dump-package | |
| # Production validation: Latest Swift on Linux with release build | |
| linux-latest: | |
| name: Ubuntu (Swift 6.2, release) | |
| runs-on: ubuntu-latest | |
| container: swift:6.2 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Cache Swift packages | |
| uses: actions/cache@v4 | |
| with: | |
| path: .build | |
| key: ${{ runner.os }}-spm-${{ hashFiles('Package.swift') }} | |
| restore-keys: ${{ runner.os }}-spm- | |
| # Note: swift test builds automatically in release mode | |
| - name: Test (release) | |
| run: swift test -c release | |
| # Compatibility check: Minimum supported Swift version (6.0) | |
| linux-compat: | |
| name: Ubuntu (Swift 6.0, compatibility) | |
| runs-on: ubuntu-latest | |
| container: swift:6.0 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Cache Swift packages | |
| uses: actions/cache@v4 | |
| with: | |
| path: .build | |
| key: ${{ runner.os }}-swift60-spm-${{ hashFiles('Package.swift') }} | |
| restore-keys: ${{ runner.os }}-swift60-spm- | |
| # Note: swift test builds automatically | |
| - name: Test (Swift 6.0) | |
| run: swift test -c release |