Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/actions/build-xcframework/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ inputs:
xcode-version:
description: 'Xcode version to use'
required: false
default: '26.3'
default: '26.6'
tag-name:
description: 'Tag name for release URLs (empty for manual builds)'
required: false
Expand Down
8 changes: 3 additions & 5 deletions .github/actions/uitests/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ inputs:
xcode-version:
description: 'Xcode version to use'
required: false
default: '26.3'
default: '26.6'
platform:
description: 'Platform to test (ios or macos)'
required: true
Expand Down Expand Up @@ -230,8 +230,7 @@ runs:
set -o pipefail
record_status=0
baseline_result_bundle="${RUNNER_TEMP:-/tmp}/swiftui-baseline-${GITHUB_RUN_ID}-${GITHUB_RUN_ATTEMPT:-0}-${{ inputs.artifact-name }}.xcresult"
# Swift 6.2 can duplicate-link swift-syntax macro prebuilts; Swift 6.3 fixes this.
NSUnbufferedIO=YES tuist_xcodebuild "$baseline_result_bundle" test -IDEPackageEnablePrebuilts=NO \
NSUnbufferedIO=YES tuist_xcodebuild "$baseline_result_bundle" test \
-workspace Example.xcworkspace \
-scheme SUI_UITests \
-destination "${{ inputs.destination }}" \
Expand Down Expand Up @@ -287,8 +286,7 @@ runs:
echo "artifact_dir=$uitest_tmp/artifacts" >> "$GITHUB_OUTPUT"
echo "xcresult_archive=$uitest_tmp/${{ inputs.artifact-name }}.xcresult.zip" >> "$GITHUB_OUTPUT"
set -o pipefail
# Swift 6.2 can duplicate-link swift-syntax macro prebuilts; Swift 6.3 fixes this.
NSUnbufferedIO=YES tuist_xcodebuild "$result_bundle" test -IDEPackageEnablePrebuilts=NO \
NSUnbufferedIO=YES tuist_xcodebuild "$result_bundle" test \
-workspace Example.xcworkspace \
-scheme OSUI_UITests \
-destination "${{ inputs.destination }}" \
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/build_xcframework.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,9 @@ permissions:
jobs:
build_xcframework:
name: Build XCFrameworks
runs-on: macos-15
runs-on:
- macos-15
- xcode-26.6
env:
OPENSWIFTUI_OPENATTRIBUTESHIMS_ATTRIBUTEGRAPH: 1
OPENSWIFTUI_USE_LOCAL_DEPS: 1
Expand Down
33 changes: 10 additions & 23 deletions .github/workflows/compatibility_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,11 @@ jobs:
fail-fast: false
matrix:
os: [macos-15]
xcode-version: ["26.3"]
xcode-version: ["26.6"]
release: [2024]
# Limit to self-hosted to reduce action cost
runs-on:
- self-hosted
- ${{ matrix.os }}
- xcode-26.6
env:
OPENSWIFTUI_WERROR: 0 # Disable it to avoid enable OAG's werror and hit conflicts
OPENSWIFTUI_OPENATTRIBUTESHIMS_ATTRIBUTEGRAPH: 1
Expand All @@ -58,10 +57,8 @@ jobs:
- name: Run compatibility tests on OpenSwiftUI + macOS
run: |
set -o pipefail
# Swift 6.2 can duplicate-link swift-syntax macro prebuilts; Swift 6.3 fixes this.
# Swift 6.2 also crashes while indexing AppKit with the private framework shims.
# Swift 6.3.3 still crashes while indexing AppKit with the private framework shims.
NSUnbufferedIO=YES swift test \
--disable-experimental-prebuilts \
--disable-index-store \
--filter OpenSwiftUICompatibilityTests \
--build-path .build-compatibility-test-debug \
Expand All @@ -71,10 +68,8 @@ jobs:
- name: Run compatibility tests on SwiftUI + macOS
run: |
set -o pipefail
# Swift 6.2 can duplicate-link swift-syntax macro prebuilts; Swift 6.3 fixes this.
# Swift 6.2 also crashes while indexing AppKit with the private framework shims.
# Swift 6.3.3 still crashes while indexing AppKit with the private framework shims.
NSUnbufferedIO=YES swift test \
--disable-experimental-prebuilts \
--disable-index-store \
--filter OpenSwiftUICompatibilityTests \
--build-path .build-compatibility-test-debug \
Expand All @@ -90,16 +85,15 @@ jobs:
fail-fast: false
matrix:
os: [macos-15]
xcode-version: ["26.3"]
xcode-version: ["26.6"]
release: [2024]
ios-version: ["18.5"]
include:
- ios-version: "18.5"
ios-simulator-name: "iPhone 16 Pro"
# Limit to self-hosted to reduce action cost
runs-on:
- self-hosted
- ${{ matrix.os }}
- xcode-26.6
env:
OPENSWIFTUI_WERROR: 0 # Disable it to avoid enable OAG's werror and hit conflicts
OPENSWIFTUI_OPENATTRIBUTESHIMS_ATTRIBUTEGRAPH: 1
Expand Down Expand Up @@ -150,38 +144,31 @@ jobs:
run: |
set -o pipefail
source Scripts/Tuist/common.sh
# Swift 6.2 can duplicate-link swift-syntax macro prebuilts; Swift 6.3 fixes this.
# Xcode 26.3 + iOS 18.5 fails to launch arm64 SwiftPM package test
# runners with CoreSimulator codesigning errors; force the x86_64
# simulator slice until that launch path is fixed.
# Xcode 26.6 can otherwise link the host macro object into the iOS Simulator test bundle.
NSUnbufferedIO=YES tuist_xcodebuild "$OPENSWIFTUI_RESULT_BUNDLE_PATH" test -IDEPackageEnablePrebuilts=NO \
-scheme OpenSwiftUI \
-configuration Debug \
-destination "platform=iOS Simulator,OS=${{ matrix.ios-version }},name=${{ matrix.ios-simulator-name }},arch=x86_64" \
-destination "platform=iOS Simulator,OS=${{ matrix.ios-version }},name=${{ matrix.ios-simulator-name }}" \
-only-testing:OpenSwiftUICompatibilityTests \
-derivedDataPath "$OPENSWIFTUI_DERIVED_DATA_PATH" \
-skipMacroValidation \
-skipPackagePluginValidation \
ONLY_ACTIVE_ARCH=YES \
2>&1 | xcbeautify --renderer github-actions --preserve-unbeautified
env:
OPENSWIFTUI_COMPATIBILITY_TEST: 0
- name: Run compatibility tests on SwiftUI + iOS
run: |
set -o pipefail
source Scripts/Tuist/common.sh
# Swift 6.2 can duplicate-link swift-syntax macro prebuilts; Swift 6.3 fixes this.
# See the OpenSwiftUI iOS compatibility step above: force x86_64 to
# avoid the arm64 package test runner launch/codesigning failure.
# Match the package prebuilt setting used by the OpenSwiftUI compatibility test.
NSUnbufferedIO=YES tuist_xcodebuild "$SWIFTUI_RESULT_BUNDLE_PATH" test -IDEPackageEnablePrebuilts=NO \
-scheme OpenSwiftUI \
-configuration Debug \
-destination "platform=iOS Simulator,OS=${{ matrix.ios-version }},name=${{ matrix.ios-simulator-name }},arch=x86_64" \
-destination "platform=iOS Simulator,OS=${{ matrix.ios-version }},name=${{ matrix.ios-simulator-name }}" \
-only-testing:OpenSwiftUICompatibilityTests \
-derivedDataPath "$SWIFTUI_DERIVED_DATA_PATH" \
-skipMacroValidation \
-skipPackagePluginValidation \
ONLY_ACTIVE_ARCH=YES \
2>&1 | xcbeautify --renderer github-actions --preserve-unbeautified
env:
OPENSWIFTUI_COMPATIBILITY_TEST: 1
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/documentation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ jobs:
build:
name: Build DocC site
runs-on:
- self-hosted
- macos-15
- xcode-26.6
env:
OPENSWIFTUI_WERROR: 0
OPENSWIFTUI_OPENATTRIBUTESHIMS_ATTRIBUTEGRAPH: 1
Expand All @@ -36,7 +36,7 @@ jobs:
- name: Setup Xcode
uses: OpenSwiftUIProject/setup-xcode@v2
with:
xcode-version: "26.3"
xcode-version: "26.6"
- name: Set up build environment
run: Scripts/CI/darwin_setup_build.sh
shell: bash
Expand Down
20 changes: 6 additions & 14 deletions .github/workflows/ios.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,16 +32,15 @@ jobs:
fail-fast: false
matrix:
os: [macos-15]
xcode-version: ["26.3"]
xcode-version: ["26.6"]
release: [2024]
ios-version: ["18.5"]
include:
- ios-version: "18.5"
ios-simulator-name: "iPhone 16 Pro"
# Limit to self-hosted to reduce action cost
runs-on:
- self-hosted
- ${{ matrix.os }}
- xcode-26.6
env:
OPENSWIFTUI_WERROR: 0 # Disable it to avoid enable OAG's werror and hit conflicts
OPENSWIFTUI_OPENATTRIBUTESHIMS_ATTRIBUTEGRAPH: 1
Expand Down Expand Up @@ -93,34 +92,27 @@ jobs:
run: |
set -o pipefail
source Scripts/Tuist/common.sh
# Xcode 26.3 + iOS 18.5 fails to launch arm64 SwiftPM package test
# runners with CoreSimulator codesigning errors. Build the x86_64
# simulator slice to match the test command below until that is fixed.
# Swift 6.2 macro prebuilts do not support the x86_64 simulator
# testable macro target, so build SwiftSyntax from source instead.
# Xcode 26.6 can otherwise link the host macro object into the iOS Simulator test bundle.
NSUnbufferedIO=YES tuist_xcodebuild "$BUILD_RESULT_BUNDLE_PATH" build -IDEPackageEnablePrebuilts=NO \
-scheme OpenSwiftUI \
-configuration Debug \
-destination "platform=iOS Simulator,OS=${{ matrix.ios-version }},name=${{ matrix.ios-simulator-name }},arch=x86_64" \
-destination "platform=iOS Simulator,OS=${{ matrix.ios-version }},name=${{ matrix.ios-simulator-name }}" \
-derivedDataPath "$DERIVED_DATA_PATH" \
-skipMacroValidation \
-skipPackagePluginValidation \
ONLY_ACTIVE_ARCH=YES \
2>&1 | xcbeautify --renderer github-actions --preserve-unbeautified
- name: Run test target in debug mode
run: |
set -o pipefail
source Scripts/Tuist/common.sh
# See the build step above: force x86_64 to avoid the arm64 package
# test runner launch/codesigning failure on this Xcode/iOS pair.
# Match the package prebuilt setting used by the build step.
NSUnbufferedIO=YES tuist_xcodebuild "$TEST_RESULT_BUNDLE_PATH" test -IDEPackageEnablePrebuilts=NO \
-scheme OpenSwiftUI \
-configuration Debug \
-destination "platform=iOS Simulator,OS=${{ matrix.ios-version }},name=${{ matrix.ios-simulator-name }},arch=x86_64" \
-destination "platform=iOS Simulator,OS=${{ matrix.ios-version }},name=${{ matrix.ios-simulator-name }}" \
-derivedDataPath "$DERIVED_DATA_PATH" \
-skipMacroValidation \
-skipPackagePluginValidation \
ONLY_ACTIVE_ARCH=YES \
2>&1 | xcbeautify --renderer github-actions --preserve-unbeautified
- name: Clean up isolated DerivedData
if: always()
Expand Down
9 changes: 3 additions & 6 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,11 @@ jobs:
fail-fast: false
matrix:
os: [macos-15]
xcode-version: ["26.3"]
xcode-version: ["26.6"]
release: [2024]
# Limit to self-hosted to reduce action cost
runs-on:
- self-hosted
- ${{ matrix.os }}
- xcode-26.6
env:
OPENSWIFTUI_WERROR: 0 # Disable it to avoid enable OAG's werror and hit conflicts
OPENSWIFTUI_OPENATTRIBUTESHIMS_ATTRIBUTEGRAPH: 1
Expand All @@ -57,10 +56,8 @@ jobs:
- name: Build and run tests in debug mode with coverage
run: |
set -o pipefail
# Swift 6.2 can duplicate-link swift-syntax macro prebuilts; Swift 6.3 fixes this.
# Swift 6.2 also crashes while indexing AppKit with the private framework shims.
# Swift 6.3.3 still crashes while indexing AppKit with the private framework shims.
NSUnbufferedIO=YES swift test \
--disable-experimental-prebuilts \
--disable-index-store \
-c debug \
--filter OpenSwiftUITests \
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,9 @@ permissions:
jobs:
build-xcframeworks:
name: Build and Upload XCFrameworks
runs-on: macos-15
runs-on:
- macos-15
- xcode-26.6
outputs:
checksum_OpenSwiftUI: ${{ steps.build.outputs.checksum_OpenSwiftUI }}
checksum_OpenSwiftUICore: ${{ steps.build.outputs.checksum_OpenSwiftUICore }}
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/stdout_renderer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
# stdout_renderer_linux:
# name: Run stdout renderer on Linux
# runs-on: ubuntu-22.04
# container: swift:6.2.4-jammy
# container: swift:6.3.3-jammy
# env:
# OPENSWIFTUI_WERROR: 0
# OPENSWIFTUI_SWIFT_LOG: 1
Expand All @@ -40,7 +40,7 @@ jobs:
fail-fast: false
matrix:
os: [macos-15]
xcode-version: ["26.3"]
xcode-version: ["26.6"]
release: [2024]
backend: [AttributeGraph, Compute]
include:
Expand All @@ -51,8 +51,8 @@ jobs:
attributegraph: "0"
compute: "1"
runs-on:
- self-hosted
- ${{ matrix.os }}
- xcode-26.6
env:
OPENSWIFTUI_WERROR: 0
OPENSWIFTUI_TARGET_RELEASE: ${{ matrix.release }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ubuntu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
strategy:
fail-fast: false
matrix:
swift_version: ["6.2.4"]
swift_version: ["6.3.3"]
runs-on: ubuntu-22.04
env:
OPENSWIFTUI_WERROR: 0 # Disable it to avoid enable OAG's werror and hit conflicts
Expand Down
10 changes: 4 additions & 6 deletions .github/workflows/uitests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -271,17 +271,16 @@ jobs:
fail-fast: false
matrix:
os: [macos-15]
xcode-version: ["26.3"]
xcode-version: ["26.6"]
release: [2024]
ios-version: ["18.5"]
configuration: ${{ fromJSON(needs.prepare_uitests.outputs.configuration-matrix) }}
include:
- ios-version: "18.5"
ios-simulator-name: "iPhone 16 Pro"
# Limit to self-hosted to reduce action cost
runs-on:
- self-hosted
- ${{ matrix.os }}
- xcode-26.6
env:
STATUS_CONTEXT: UI Tests / iOS / ${{ matrix.configuration.id }}
STATUS_ENABLED: ${{ needs.prepare_uitests.outputs.status-enabled }}
Expand Down Expand Up @@ -370,13 +369,12 @@ jobs:
fail-fast: false
matrix:
os: [macos-15]
xcode-version: ["26.3"]
xcode-version: ["26.6"]
release: [2024]
configuration: ${{ fromJSON(needs.prepare_uitests.outputs.configuration-matrix) }}
# Limit to self-hosted to reduce action cost
runs-on:
- self-hosted
- ${{ matrix.os }}
- xcode-26.6
env:
STATUS_CONTEXT: UI Tests / macOS / ${{ matrix.configuration.id }}
STATUS_ENABLED: ${{ needs.prepare_uitests.outputs.status-enabled }}
Expand Down
3 changes: 0 additions & 3 deletions .vdc.json
Original file line number Diff line number Diff line change
Expand Up @@ -67,9 +67,6 @@
"openobservation": "../OpenObservation",
"openrenderbox": "../OpenRenderBox"
},
"buildArguments": [
"--disable-index-store"
],
"doccArguments": [
"--emit-digest"
]
Expand Down
Loading
Loading