Skip to content

chore: Support Swift 5.9 - 5.10 #23

chore: Support Swift 5.9 - 5.10

chore: Support Swift 5.9 - 5.10 #23

Workflow file for this run

name: Tests
on:
push:
paths-ignore:
- '.github/**.md'
- 'README.md'
branches:
- main
pull_request:
paths-ignore:
- '.github/**.md'
- 'README.md'
types: [opened, synchronize, reopened, ready_for_review]
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
env:
DEVELOPER_DIR: /Applications/Xcode_15.3.app/Contents/Developer
jobs:
test:
name: Run tests on ${{ matrix.os }} with Swift version ${{ matrix.swift }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: true
matrix:
os: ["ubuntu-latest", "macos-13", "macos-14"]
swift: ["5.7", "5.8", "5.9", "5.10"]
include:
- os: macos-13
xcode: 14
- os: macos-14
xcode: 15
steps:
- name: Setup Xcode version
if: runner.os == 'macOS'
uses: maxim-lobanov/setup-xcode@v1.4.1
with:
xcode-version: ${{ matrix.xcode }}
- name: Setup swift
if: matrix.swift != '' && (matrix.swift != 'latest' || runner.os != 'macOS')
uses: SwiftyLab/setup-swift@latest
with:
swift-version: ${{ matrix.swift }}
- name: Report Swift Version
run: xcrun swift --version
- name: Checkout Package
uses: actions/checkout@v4
- name: Cache SPM
uses: actions/cache@v4
with:
path: .build
key: v2-${{ runner.os }}-spm-${{ hashFiles('**/Package.resolved') }}
restore-keys: |
v2-${{ runner.os }}-spm-
- name: Test
run: make test-all
- name: Swift Coverage Report
continue-on-error: true
uses: maxep/spm-lcov-action@0.3.1
with:
file-format: lcov
output-file: ./coverage.lcov