Skip to content

Support Swift 6 language mode and Swift Syntax 600.0.0 #168

Support Swift 6 language mode and Swift Syntax 600.0.0

Support Swift 6 language mode and Swift Syntax 600.0.0 #168

Workflow file for this run

name: "Tests"
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
validate-spi-manifest:
name: Validate SPI Manifest
runs-on: macos-14
env:
DEVELOPER_DIR: /Applications/Xcode_15.4.app/Contents/Developer
VALIDATE_SPI_MANIFEST: YES
steps:
- name: Checkout Repo
uses: actions/checkout@v4
- name: Validate SPI Manifest
run: swift package plugin validate-spi-manifest
compile-snapshots:
name: Compile Snapshots
runs-on: macos-14
env:
DEVELOPER_DIR: /Applications/Xcode_15.4.app/Contents/Developer
steps:
- name: Checkout Repo
uses: actions/checkout@v4
- name: Compile Snapshots
run: .github/scripts/compile-snapshots.sh
unit-test-xcode:
name: Unit Tests (Xcode ${{ matrix.xcode }})
strategy:
fail-fast: false
matrix:
xcode: ["15.0", "15.2", "15.3", "15.4"]
include:
- xcode: "15.0"
macos: macOS-13
- xcode: "15.2"
macos: macOS-14
- xcode: "15.3"
macos: macOS-14
- xcode: "15.4"
macos: macOS-14
runs-on: ${{ matrix.macos }}
env:
DEVELOPER_DIR: /Applications/Xcode_${{ matrix.xcode }}.app/Contents/Developer
steps:
- name: Checkout Repo
uses: actions/checkout@v4
- name: Run Tests
run: xcodebuild clean test -scheme XCStringsTool-Package -destination platform=macOS
unit-test-swift-syntax:
name: Unit Tests (Swift Syntax ${{ matrix.swift-syntax }})
strategy:
fail-fast: false
matrix:
swift-syntax:
- "509.0.2"
- "509.1.1"
- "510.0.2"
- "600.0.0-prerelease-2024-06-12"
include:
- swift-syntax: "509.0.2"
revision: 6ad4ea24b01559dde0773e3d091f1b9e36175036
- swift-syntax: "509.1.1"
revision: 64889f0c732f210a935a0ad7cda38f77f876262d
- swift-syntax: "510.0.2"
revision: 303e5c5c36d6a558407d364878df131c3546fad8
- swift-syntax: "600.0.0-prerelease-2024-06-12"
revision: 4c6cc0a3b9e8f14b3ae2307c5ccae4de6167ac2c
runs-on: macOS-14
env:
DEVELOPER_DIR: /Applications/Xcode_15.4.app/Contents/Developer
SWIFT_SYNTAX_REVISION: ${{ matrix.revision }}
steps:
- name: Get Revision
id: get-revision
uses: actions/github-script@v7
with:
result-encoding: string
script: |
github.rest.tags.get({
owner: "apple",
repo: "swift-syntax",
tag_sha: "${{ matrix.swift-syntax }}"
})
- name: Get result
run: echo "${{steps.set-result.outputs.result}}"; exit 1;
- name: Checkout Repo
uses: actions/checkout@v4
- name: Run Tests
run: xcodebuild clean test -scheme XCStringsTool-Package -destination platform=macOS