Skip to content

Commit 6b34f3a

Browse files
authored
fix: make sure library compiles on Xcode 16 (#19)
1 parent 97016c6 commit 6b34f3a

File tree

2 files changed

+14
-7
lines changed

2 files changed

+14
-7
lines changed

.github/workflows/ci.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,12 @@ jobs:
5252

5353
build-ios:
5454
runs-on: macos-26
55+
strategy:
56+
matrix:
57+
xcode-version: ['16', '26']
5558
env:
5659
TURBO_CACHE_DIR: .turbo/ios
60+
XCODE_VERSION: ${{ matrix.xcode-version }}
5761
steps:
5862
- name: Checkout
5963
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -65,9 +69,9 @@ jobs:
6569
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
6670
with:
6771
path: ${{ env.TURBO_CACHE_DIR }}
68-
key: ${{ runner.os }}-turborepo-ios-${{ hashFiles('yarn.lock') }}
72+
key: ${{ runner.os }}-turborepo-ios-xcode${{ matrix.xcode-version }}-${{ hashFiles('yarn.lock') }}
6973
restore-keys: |
70-
${{ runner.os }}-turborepo-ios-
74+
${{ runner.os }}-turborepo-ios-xcode${{ matrix.xcode-version }}-
7175
7276
- name: Check turborepo cache for iOS
7377
run: |

ios/LiquidGlassView.swift

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import UIKit
55
case clear
66
case none
77

8+
#if compiler(>=6.2)
89
@available(iOS 26.0, *)
910
var converted: UIGlassEffect.Style? {
1011
switch self {
@@ -16,6 +17,8 @@ import UIKit
1617
return nil
1718
}
1819
}
20+
#endif
21+
1922
}
2023

2124
#if compiler(>=6.2)
@@ -30,13 +33,13 @@ import UIKit
3033
public override func layoutSubviews() {
3134
if (self.effect != nil) { return }
3235
setupView()
33-
36+
3437
if isFirstMount {
3538
isFirstMount = false
3639
}
3740
}
38-
39-
41+
42+
4043
@available(iOS 26.0, *)
4144
@objc public func setupView() {
4245
guard let preferredStyle = style.converted else {
@@ -46,11 +49,11 @@ import UIKit
4649
}
4750
return
4851
}
49-
52+
5053
let glassEffect = UIGlassEffect(style: preferredStyle)
5154
glassEffect.isInteractive = interactive
5255
glassEffect.tintColor = effectTintColor
53-
56+
5457
if isFirstMount {
5558
self.effect = glassEffect
5659
} else {

0 commit comments

Comments
 (0)