Skip to content

Enable Strict Concurrency Checking #21

Enable Strict Concurrency Checking

Enable Strict Concurrency Checking #21

Workflow file for this run

name: CI (SwiftPM)
on:
push:
branches:
- main
tags:
- "*"
pull_request:
jobs:
filter:
runs-on: ubuntu-latest
outputs:
should_skip: ${{ steps.skip_check.outputs.should_skip }}
steps:
- id: skip_check
uses: fkirc/skip-duplicate-actions@v5.3.1
with:
paths: '[".github/workflows/ci-swiftpm.yml", "Sources/**", "Tests/**", "Package.*"]'
do_not_skip: '["push", "workflow_dispatch", "schedule"]'
swiftpm_darwin:
name: SwiftPM, Darwin, Xcode ${{ matrix.xcode }}
needs: filter
runs-on: macos-12
strategy:
matrix:
xcode: ["14.0.1"]
fail-fast: false
env:
DEVELOPER_DIR: "/Applications/Xcode_${{ matrix.xcode }}.app"
steps:
- uses: actions/checkout@v4
if: ${{ needs.filter.outputs.should_skip != 'true' }}
- run: swift build
if: ${{ needs.filter.outputs.should_skip != 'true' }}
- run: swift test
if: ${{ needs.filter.outputs.should_skip != 'true' }}
swiftpm_linux:
name: SwiftPM, Linux
needs: filter
runs-on: ubuntu-latest
strategy:
matrix:
container:
- swift:5.7
- swift:5.8
- swift:5.9
- swift:5.10
fail-fast: false
container: ${{ matrix.container }}
steps:
- uses: actions/checkout@v4
if: ${{ needs.filter.outputs.should_skip != 'true' }}
- run: swift build
if: ${{ needs.filter.outputs.should_skip != 'true' }}
- run: swift test
if: ${{ needs.filter.outputs.should_skip != 'true' }}