fix: sort imports in test files #23
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@v5 | |
| - 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 | |
| - name: Run README verification tests | |
| run: swift test --filter ReadmeVerificationTests | |
| - name: Check for API breaking changes | |
| run: | | |
| swift package diagnose-api-breaking-changes \ | |
| --breakage-allowlist-path .swift-api-breakage-allowlist || true | |
| continue-on-error: true | |
| # 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@v5 | |
| - 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) | |
| # Note: Swift Testing framework requires Swift 6.0+ | |
| linux-compat: | |
| name: Ubuntu (Swift 6.0, compatibility) | |
| runs-on: ubuntu-latest | |
| container: swift:6.0 | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - 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 |