Swift Concurrency/Isolation Support (MainActor) #18
Workflow file for this run
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 iOS | |
| on: [push, pull_request] | |
| jobs: | |
| build-and-test: | |
| runs-on: macos-15 | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v3 | |
| - name: Select Xcode 26.2 (Swift 6.2 — isolated deinit supported) | |
| run: sudo xcode-select -s /Applications/Xcode_26.2.app | |
| - name: Set up Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: '3.1' | |
| - name: Install CocoaPods | |
| run: gem install cocoapods | |
| - name: Install pod dependencies | |
| working-directory: ./Examples/Example1 | |
| run: pod install || pod install --repo-update | |
| - name: Run tests with coverage | |
| working-directory: ./Examples/Example1 | |
| run: | | |
| xcodebuild \ | |
| -workspace RIBs.xcworkspace \ | |
| -scheme RIBs-Example \ | |
| -sdk iphonesimulator \ | |
| -destination 'platform=iOS Simulator,name=iPhone SE (3rd generation),OS=18.5' \ | |
| -enableCodeCoverage YES \ | |
| clean test | |
| - name: Extract and print coverage | |
| run: | | |
| RESULT_BUNDLE=$(find ~/Library/Developer/Xcode/DerivedData -type d -name "*.xcresult" | sort | tail -n 1) | |
| echo "Found result bundle at: $RESULT_BUNDLE" | |
| xcrun xccov view --report --json "$RESULT_BUNDLE" > coverage.json | |
| cat coverage.json | |
| xcrun xccov view --report "$RESULT_BUNDLE" | |
| - name: Lint podspec | |
| run: | | |
| pod lib lint RIBs.podspec \ | |
| --skip-tests |