diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml deleted file mode 100644 index 46b5a90..0000000 --- a/.github/workflows/build-and-test.yml +++ /dev/null @@ -1,62 +0,0 @@ -# -# This source file is part of the ThreadLocal open source project -# -# SPDX-FileCopyrightText: 2025 Stanford University and the project authors (see CONTRIBUTORS.md) -# -# SPDX-License-Identifier: MIT -# - -name: Build and Test - -on: - push: - branches: - - main - pull_request: - workflow_dispatch: - -concurrency: - group: Build-and-Test-${{ github.ref }} - cancel-in-progress: true - -jobs: - package_tests: - name: Build and Test Swift Package ${{ matrix.platform.name }} (${{ matrix.config }}) - uses: StanfordBDHG/.github/.github/workflows/xcodebuild-or-fastlane.yml@v2 - strategy: - matrix: - config: [Debug, Release] - platform: - - name: iOS - destination: 'platform=iOS Simulator,name=iPhone 17 Pro' - - name: macOS - destination: 'platform=macOS,name=My Mac' - - name: watchOS - destination: 'platform=watchOS Simulator,name=Apple Watch Series 11 (46mm)' - fail-fast: false - with: - runsonlabels: '["macOS", "self-hosted"]' - scheme: ThreadLocal - destination: ${{ matrix.platform.destination }} - buildConfig: ${{ matrix.config }} - resultBundle: ${{ format('ThreadLocal-{0}-{1}.xcresult', matrix.platform.name, matrix.config) }} - artifactname: ${{ format('ThreadLocal-{0}-{1}.xcresult', matrix.platform.name, matrix.config) }} - spm-disable-prebuilts: true - package_tests_linux: - name: Build and Test Swift Package Linux (${{ matrix.config }}) - uses: StanfordBDHG/.github/.github/workflows/swift-test.yml@v2 - strategy: - matrix: - config: [Debug, Release] - fail-fast: false - with: - artifact_name: ${{ format('ThreadLocal-Linux-{0}.lcov', matrix.config) }} - uploadcoveragereport: - name: Upload Coverage Report - needs: [package_tests, package_tests_linux] - uses: StanfordBDHG/.github/.github/workflows/create-and-upload-coverage-report.yml@v2 - with: - coveragereports: ThreadLocal-*.xcresult - coveragereports_lcov: ThreadLocal-Linux-*.lcov - secrets: - token: ${{ secrets.CODECOV_TOKEN }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..109dca7 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,32 @@ +# +# This source file is part of the Stanford Spezi open source project +# +# SPDX-FileCopyrightText: 2026 Stanford University and the project authors (see CONTRIBUTORS.md) +# +# SPDX-License-Identifier: MIT +# + +name: CI + +on: + push: + branches: + - main + pull_request: + workflow_dispatch: + +permissions: + contents: read + pull-requests: write + +concurrency: + group: CI-${{ github.ref }} + cancel-in-progress: true + +jobs: + ci: + name: CI + uses: StanfordBDHG/.github/.github/workflows/swift-package-ci.yml@v2 + with: + linux_run_tests: true + secrets: inherit diff --git a/.github/workflows/static-analysis.yml b/.github/workflows/static-analysis.yml deleted file mode 100644 index 5f8059d..0000000 --- a/.github/workflows/static-analysis.yml +++ /dev/null @@ -1,37 +0,0 @@ -# -# This source file is part of the ThreadLocal open-source project -# -# SPDX-FileCopyrightText: 2025 Stanford University and the project authors (see CONTRIBUTORS.md) -# -# SPDX-License-Identifier: MIT -# - -name: Static Analysis - -on: - push: - branches: - - main - pull_request: - workflow_dispatch: - -concurrency: - group: Static-Analysis-${{ github.ref }} - cancel-in-progress: true - -jobs: - reuse_action: - name: REUSE Compliance Check - uses: StanfordSpezi/.github/.github/workflows/reuse.yml@v2 - swiftlint: - name: SwiftLint - uses: StanfordSpezi/.github/.github/workflows/swiftlint.yml@v2 - markdown_link_check: - name: Markdown Link Check - uses: StanfordBDHG/.github/.github/workflows/markdown-link-check.yml@v2 - breaking_changes: - name: Diagnose Breaking Changes - uses: StanfordSpezi/.github/.github/workflows/breaking-changes.yml@v2 - if: ${{ github.ref_name != 'main' }} - with: - runsonlabels: '["macOS", "self-hosted"]' \ No newline at end of file diff --git a/Package.swift b/Package.swift index fb290eb..0a5775a 100644 --- a/Package.swift +++ b/Package.swift @@ -14,13 +14,17 @@ let package = Package( name: "ThreadLocal", platforms: [ .macOS(.v14), - .iOS(.v17) + .iOS(.v17), + .macCatalyst(.v17), + .watchOS(.v10), + .visionOS(.v1), + .tvOS(.v17) ], products: [ .library(name: "ThreadLocal", targets: ["ThreadLocal"]) ], dependencies: [ - .package(url: "https://github.com/swiftlang/swift-syntax.git", from: "602.0.0") + .package(url: "https://github.com/swiftlang/swift-syntax.git", "601.0.0"..<"604.0.0") ], targets: [ .macro(