Skip to content

Commit 0b6091c

Browse files
paulb777ncooke3
andauthored
More CI updates for Xcode 16 minimum (#14655)
Co-authored-by: Nick Cooke <nickcooke@google.com>
1 parent 164c278 commit 0b6091c

File tree

16 files changed

+53
-78
lines changed

16 files changed

+53
-78
lines changed

.github/workflows/analytics.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@ jobs:
2424
strategy:
2525
matrix:
2626
target: [ios, tvos, macos]
27-
os: [macos-14, macos-13]
27+
os: [macos-14, macos-15]
2828
include:
2929
- os: macos-14
30-
xcode: Xcode_15.3
31-
- os: macos-13
32-
xcode: Xcode_15.2
30+
xcode: Xcode_16.2
31+
- os: macos-15
32+
xcode: Xcode_16.3
3333
runs-on: ${{ matrix.os }}
3434

3535
steps:

.github/workflows/appdistribution.yml

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,10 @@ jobs:
2323
strategy:
2424
matrix:
2525
include:
26-
- os: macos-13
27-
xcode: Xcode_15.2
28-
- os: macos-14
29-
xcode: Xcode_15.4
3026
- os: macos-15
3127
xcode: Xcode_16.2
28+
- os: macos-16
29+
xcode: Xcode_16.3
3230
runs-on: ${{ matrix.os }}
3331
steps:
3432
- uses: actions/checkout@v4
@@ -72,12 +70,10 @@ jobs:
7270
strategy:
7371
matrix:
7472
include:
75-
- os: macos-13
76-
xcode: Xcode_15.2
7773
- os: macos-14
78-
xcode: Xcode_15.4
79-
- os: macos-15
8074
xcode: Xcode_16.2
75+
- os: macos-15
76+
xcode: Xcode_16.3
8177
runs-on: ${{ matrix.os }}
8278
steps:
8379
- uses: actions/checkout@v4
@@ -113,7 +109,7 @@ jobs:
113109
appdistribution-cron-only:
114110
if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'
115111

116-
runs-on: macos-14
112+
runs-on: macos-15
117113
strategy:
118114
matrix:
119115
target: [ios]

.github/workflows/archiving.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
# Don't run on private repo.
2121
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule')
2222

23-
runs-on: macos-14
23+
runs-on: macos-15
2424
strategy:
2525
matrix:
2626
# These need to be on a single line or else the formatting won't validate.
@@ -42,7 +42,7 @@ jobs:
4242
# Don't run on private repo.
4343
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule')
4444

45-
runs-on: macos-14
45+
runs-on: macos-15
4646
strategy:
4747
matrix:
4848
target: [ios, tvos, macos]

.github/workflows/auth.yml

Lines changed: 11 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -30,37 +30,8 @@ jobs:
3030
matrix:
3131
podspec: [FirebaseAuthInterop.podspec, FirebaseAuth.podspec]
3232
target: [ios, tvos, macos --skip-tests, watchos]
33-
os: [macos-14]
34-
xcode: [Xcode_15.2]
35-
runs-on: ${{ matrix.os }}
36-
steps:
37-
- uses: actions/checkout@v4
38-
- uses: ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
39-
- name: Setup Bundler
40-
run: scripts/setup_bundler.sh
41-
- name: Configure test keychain
42-
run: scripts/configure_test_keychain.sh
43-
- name: Xcode
44-
run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
45-
- uses: nick-fields/retry@ce71cc2ab81d554ebbe88c79ab5975992d79ba08 # v3
46-
with:
47-
timeout_minutes: 120
48-
max_attempts: 3
49-
retry_on: error
50-
retry_wait_seconds: 120
51-
command: scripts/pod_lib_lint.rb ${{ matrix.podspec }} --platforms=${{ matrix.target }} ${{ matrix.tests }}
52-
53-
# TODO: Fix warnings on Xcode 16 and move into matrix above.
54-
pod-lib-lint-xc16:
55-
# Don't run on private repo unless it is a PR.
56-
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
57-
58-
strategy:
59-
matrix:
60-
podspec: [FirebaseAuthInterop.podspec, FirebaseAuth.podspec]
61-
target: [ios, tvos, macos --skip-tests --allow-warnings, watchos]
6233
os: [macos-15]
63-
xcode: [Xcode_16.2]
34+
xcode: [Xcode_16.3]
6435
runs-on: ${{ matrix.os }}
6536
steps:
6637
- uses: actions/checkout@v4
@@ -77,12 +48,12 @@ jobs:
7748
max_attempts: 3
7849
retry_on: error
7950
retry_wait_seconds: 120
80-
command: scripts/pod_lib_lint.rb ${{ matrix.podspec }} --platforms=${{ matrix.target }} ${{ matrix.tests }} --allow-warnings
51+
command: scripts/pod_lib_lint.rb ${{ matrix.podspec }} --platforms=${{ matrix.target }} ${{ matrix.tests }}
8152

8253
spm-package-resolved:
8354
env:
8455
FIREBASECI_USE_LATEST_GOOGLEAPPMEASUREMENT: 1
85-
runs-on: macos-14
56+
runs-on: macos-15
8657
outputs:
8758
cache_key: ${{ steps.generate_cache_key.outputs.cache_key }}
8859
steps:
@@ -109,29 +80,26 @@ jobs:
10980
strategy:
11081
matrix:
11182
include:
112-
- os: macos-13
113-
xcode: Xcode_15.2
114-
target: iOS spm
11583
- os: macos-14
116-
xcode: Xcode_15.4
84+
xcode: Xcode_16.2
11785
target: iOS spm
11886
- os: macos-15
119-
xcode: Xcode_16.2
87+
xcode: Xcode_16.3
12088
target: iOS spm
12189
- os: macos-15
122-
xcode: Xcode_16.2
90+
xcode: Xcode_16.3
12391
target: tvOS spm
12492
- os: macos-15
125-
xcode: Xcode_16.2
93+
xcode: Xcode_16.3
12694
target: macOS spmbuildonly
12795
- os: macos-15
128-
xcode: Xcode_16.2
96+
xcode: Xcode_16.3
12997
target: watchOS spm
13098
- os: macos-15
131-
xcode: Xcode_16.2
99+
xcode: Xcode_16.3
132100
target: catalyst spm
133101
- os: macos-15
134-
xcode: Xcode_16.2
102+
xcode: Xcode_16.3
135103
target: visionOS spm
136104
runs-on: ${{ matrix.os }}
137105
steps:
@@ -272,7 +240,7 @@ jobs:
272240
# Don't run on private repo.
273241
if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'
274242

275-
runs-on: macos-14
243+
runs-on: macos-15
276244
strategy:
277245
matrix:
278246
# The macos and tvos tests can hang, and watchOS doesn't have tests.

.github/workflows/client_app.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ jobs:
2727
client-app-spm:
2828
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
2929
strategy:
30+
# TODO: Add Xcode matrix when Xcode 16 is ubiquitous on CI runners.
3031
matrix:
3132
#TODO(ncooke3): Add multi-platform support: tvOS, macOS, catalyst
3233
platform: [iOS]
@@ -49,6 +50,7 @@ jobs:
4950
FIREBASECI_USE_LATEST_GOOGLEAPPMEASUREMENT: 1
5051
FIREBASE_SOURCE_FIRESTORE: 1
5152
strategy:
53+
# TODO: Add Xcode matrix when Xcode 16 is ubiquitous on CI runners.
5254
matrix:
5355
#TODO(ncooke3): Add multi-platform support: tvOS, macOS, catalyst
5456
platform: [iOS]
@@ -69,6 +71,7 @@ jobs:
6971
# Don't run on private repo unless it is a PR.
7072
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
7173
strategy:
74+
# TODO: Add Xcode matrix when Xcode 16 is ubiquitous on CI runners.
7275
matrix:
7376
scheme: [ClientApp-CocoaPods]
7477
os: [macos-14, macos-15]

.github/workflows/cocoapods-integration.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,9 @@ concurrency:
1818
jobs:
1919
tests:
2020
# Don't run on private repo unless it is a PR.
21-
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
22-
|| github.event_name == 'workflow_dispatch'
21+
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
2322

24-
runs-on: macos-14
23+
runs-on: macos-15
2524
steps:
2625
- uses: actions/checkout@v4
2726
- uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126

.github/workflows/combine.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ jobs:
4949
xcodebuild:
5050
# Don't run on private repo unless it is a PR.
5151
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
52-
runs-on: macos-14
52+
runs-on: macos-15
5353

5454
strategy:
5555
matrix:
@@ -77,7 +77,7 @@ jobs:
7777
if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request'
7878
env:
7979
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
80-
runs-on: macos-14
80+
runs-on: macos-15
8181
steps:
8282
- uses: actions/checkout@v4
8383
- uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126

.github/workflows/core.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@ jobs:
2828
xcode: Xcode_16.2
2929
- os: macos-15
3030
xcode: Xcode_16.2
31+
# TODO: Add Xcode matrix when Xcode 16 is ubiquitous on CI runners.
32+
# - os: macos-15
33+
# xcode: Xcode_16.3
3134
runs-on: ${{ matrix.build-env.os }}
3235
steps:
3336
- uses: actions/checkout@v4
@@ -42,7 +45,7 @@ jobs:
4245
spm-package-resolved:
4346
env:
4447
FIREBASECI_USE_LATEST_GOOGLEAPPMEASUREMENT: 1
45-
runs-on: macos-14
48+
runs-on: macos-15
4649
outputs:
4750
cache_key: ${{ steps.generate_cache_key.outputs.cache_key }}
4851
steps:
@@ -70,13 +73,17 @@ jobs:
7073
needs: [spm-package-resolved]
7174
strategy:
7275
matrix:
76+
# TODO: Add Xcode matrix when Xcode 16 is ubiquitous on CI runners.
7377
include:
7478
- os: macos-14
7579
xcode: Xcode_16.2
7680
target: iOS
7781
- os: macos-15
7882
xcode: Xcode_16.2
7983
target: iOS
84+
- os: macos-15
85+
xcode: Xcode_16.2
86+
target: iOS
8087
- os: macos-15
8188
xcode: Xcode_16.2
8289
target: tvOS

.github/workflows/core_extension.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,9 @@ jobs:
2626
xcode: Xcode_16.2
2727
- os: macos-15
2828
xcode: Xcode_16.2
29+
# TODO: Enable when Xcode 16 is ubiquitous on CI runners.
30+
# - os: macos-15
31+
# xcode: Xcode_16.3
2932
runs-on: ${{ matrix.build-env.os }}
3033
steps:
3134
- uses: actions/checkout@v4
@@ -40,7 +43,7 @@ jobs:
4043
core-internal-cron-only:
4144
# Don't run on private repo.
4245
if: github.event_name == 'schedule' && github.repository == 'Firebase/firebase-ios-sdk'
43-
runs-on: macos-14
46+
runs-on: macos-15
4447
strategy:
4548
matrix:
4649
target: [ios, tvos, macos]

FirebaseAppDistributionInternal/Sources/ApiService.swift

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@ import FirebaseInstallations
1717
import Foundation
1818
import UIKit
1919

20-
// Avoids exposing internal APIs to Swift users
21-
@_implementationOnly import FirebaseCoreInternal
20+
internal import FirebaseCoreInternal
2221

2322
enum Strings {
2423
static let errorDomain = "com.firebase.appdistribution.api"

FirebaseAppDistributionInternal/Sources/Internal/Logger.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515

1616
import Foundation
1717

18-
@_implementationOnly import FirebaseCoreExtension
18+
internal import FirebaseCoreExtension
1919

2020
///
2121
/// Logger is responsible for printing console logs

FirebaseAuth/Sources/Swift/Auth/Auth.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ import FirebaseAuthInterop
1919
import FirebaseCore
2020
import FirebaseCoreExtension
2121
#if COCOAPODS
22-
@_implementationOnly import GoogleUtilities
22+
internal import GoogleUtilities
2323
#else
24-
@_implementationOnly import GoogleUtilities_AppDelegateSwizzler
25-
@_implementationOnly import GoogleUtilities_Environment
24+
internal import GoogleUtilities_AppDelegateSwizzler
25+
internal import GoogleUtilities_Environment
2626
#endif
2727

2828
#if os(iOS) || os(tvOS) || targetEnvironment(macCatalyst)

FirebaseAuth/Sources/Swift/MultiFactor/TOTP/TOTPSecret.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@
1414

1515
import Foundation
1616
#if COCOAPODS
17-
@_implementationOnly import GoogleUtilities
17+
internal import GoogleUtilities
1818
#else
19-
@_implementationOnly import GoogleUtilities_Environment
19+
internal import GoogleUtilities_Environment
2020
#endif
2121

2222
#if os(iOS)

FirebaseAuth/Sources/Swift/SystemService/AuthAPNSTokenManager.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@
1717
import UIKit
1818

1919
#if COCOAPODS
20-
@_implementationOnly import GoogleUtilities
20+
internal import GoogleUtilities
2121
#else
22-
@_implementationOnly import GoogleUtilities_Environment
22+
internal import GoogleUtilities_Environment
2323
#endif // COCOAPODS
2424

2525
// Protocol to help with unit tests.

FirebaseAuth/Sources/Swift/Utilities/AuthDefaultUIDelegate.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@
1717
import Foundation
1818
import UIKit
1919
#if COCOAPODS
20-
@_implementationOnly import GoogleUtilities
20+
internal import GoogleUtilities
2121
#else
22-
@_implementationOnly import GoogleUtilities_Environment
22+
internal import GoogleUtilities_Environment
2323
#endif
2424

2525
/// Class responsible for providing a default AuthUIDelegate.

IntegrationTesting/CocoapodsIntegrationTest/scripts/build_with_environment.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ function runXcodebuild() {
2727
-workspace 'CocoapodsIntegrationTest.xcworkspace'
2828
-scheme 'CocoapodsIntegrationTest'
2929
-sdk 'iphonesimulator'
30-
-destination 'platform=iOS Simulator,name=iPhone 15'
30+
-destination 'platform=iOS Simulator,name=iPhone 16'
3131
CODE_SIGNING_REQUIRED=NO
3232
clean
3333
build

0 commit comments

Comments
 (0)