Skip to content

Refactor: Introduce EnvManager for structured environment variable handling #632

Refactor: Introduce EnvManager for structured environment variable handling

Refactor: Introduce EnvManager for structured environment variable handling #632

name: Compatibility tests
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
compatibility_tests_macos:
name: Execute compatibility tests
strategy:
fail-fast: false
matrix:
include:
- os: macos-15
xcode-version: "16.4" # Swift 6.1.2
runs-on: ${{ matrix.os }}
env:
OPENATTRIBUTEGRAPH_WERROR: 1
OPENATTRIBUTEGRAPH_ATTRIBUTEGRAPH: 1
OPENATTRIBUTEGRAPH_COMPATIBILITY_TEST: 1
OPENATTRIBUTEGRAPH_USE_LOCAL_DEPS: 1
OPENATTRIBUTEGRAPH_TARGET_RELEASE: 2024
DARWIN_PRIVATE_FRAMEWORKS_TARGET_RELEASE: 2024
GH_TOKEN: ${{ github.token }}
steps:
- uses: actions/checkout@v4
- name: Setup Xcode
uses: OpenSwiftUIProject/OpenSwiftUI/.github/actions/setup-xcode@main
with:
xcode-version: ${{ matrix.xcode-version }}
- name: Set up build environment
run: Scripts/CI/darwin_setup_build.sh
shell: bash
- name: Swift version
run: swift --version
- name: Run tests against Apple's AttributeGraph on macOS via SwiftPM
run: |
swift test \
--build-path .build-compatibility-test-debug
- name: Run tests against Apple's AttributeGraph on macOS via Xcode
run: |
xcodebuild test \
-scheme OpenAttributeGraph-Package \
-sdk macosx \
-destination "platform=macOS" \
-skipPackagePluginValidation \
-skipMacroValidation