From 16ddaabbc1a49c34866d2d3ddf558e31adbd9cc4 Mon Sep 17 00:00:00 2001 From: Nick Cooke <36927374+ncooke3@users.noreply.github.com> Date: Tue, 26 Dec 2023 19:00:01 -0500 Subject: [PATCH 1/5] [Infra] Move ClientApp/ out of repo root (#12218) --- .github/workflows/client_app.yml | 2 +- ClientApp/Podfile | 45 ------------------- .../ClientApp_CocoaPods_iOS13.entitlements | 0 .../Preview Assets.xcassets/Contents.json | 0 .../ClientApp_CocoaPods.entitlements | 0 .../Preview Assets.xcassets/Contents.json | 0 .../ClientApp_iOS13.entitlements | 0 .../Preview Assets.xcassets/Contents.json | 0 .../ClientApp.xcodeproj/project.pbxproj | 2 +- .../ClientApp/ClientApp.entitlements | 0 .../Preview Assets.xcassets/Contents.json | 0 IntegrationTesting/ClientApp/Podfile | 45 +++++++++++++++++++ .../Shared-iOS11+/objc-header-import-test.m | 0 .../Shared-iOS11+/objc-module-import-test.m | 0 .../objcxx-header-import-test.mm | 0 .../Shared-iOS11+/swift-import-test.swift | 0 .../Shared-iOS13+/swift-import-test.swift | 0 .../ClientApp}/Shared/AppDelegate.swift | 0 .../AccentColor.colorset/Contents.json | 0 .../AppIcon.appiconset/Contents.json | 0 .../Shared/Assets.xcassets/Contents.json | 0 scripts/build.sh | 4 +- scripts/check_imports.swift | 2 +- scripts/install_prereqs.sh | 2 +- 24 files changed, 51 insertions(+), 51 deletions(-) delete mode 100644 ClientApp/Podfile rename {ClientApp => IntegrationTesting/ClientApp}/ClientApp-CocoaPods-iOS13/ClientApp_CocoaPods_iOS13.entitlements (100%) rename {ClientApp => IntegrationTesting/ClientApp}/ClientApp-CocoaPods-iOS13/Preview Content/Preview Assets.xcassets/Contents.json (100%) rename {ClientApp => IntegrationTesting/ClientApp}/ClientApp-CocoaPods/ClientApp_CocoaPods.entitlements (100%) rename {ClientApp => IntegrationTesting/ClientApp}/ClientApp-CocoaPods/Preview Content/Preview Assets.xcassets/Contents.json (100%) rename {ClientApp => IntegrationTesting/ClientApp}/ClientApp-iOS13/ClientApp_iOS13.entitlements (100%) rename {ClientApp => IntegrationTesting/ClientApp}/ClientApp-iOS13/Preview Content/Preview Assets.xcassets/Contents.json (100%) rename {ClientApp => IntegrationTesting/ClientApp}/ClientApp.xcodeproj/project.pbxproj (99%) rename {ClientApp => IntegrationTesting/ClientApp}/ClientApp/ClientApp.entitlements (100%) rename {ClientApp => IntegrationTesting/ClientApp}/ClientApp/Preview Content/Preview Assets.xcassets/Contents.json (100%) create mode 100644 IntegrationTesting/ClientApp/Podfile rename {ClientApp => IntegrationTesting/ClientApp}/Shared-iOS11+/objc-header-import-test.m (100%) rename {ClientApp => IntegrationTesting/ClientApp}/Shared-iOS11+/objc-module-import-test.m (100%) rename {ClientApp => IntegrationTesting/ClientApp}/Shared-iOS11+/objcxx-header-import-test.mm (100%) rename {ClientApp => IntegrationTesting/ClientApp}/Shared-iOS11+/swift-import-test.swift (100%) rename {ClientApp => IntegrationTesting/ClientApp}/Shared-iOS13+/swift-import-test.swift (100%) rename {ClientApp => IntegrationTesting/ClientApp}/Shared/AppDelegate.swift (100%) rename {ClientApp => IntegrationTesting/ClientApp}/Shared/Assets.xcassets/AccentColor.colorset/Contents.json (100%) rename {ClientApp => IntegrationTesting/ClientApp}/Shared/Assets.xcassets/AppIcon.appiconset/Contents.json (100%) rename {ClientApp => IntegrationTesting/ClientApp}/Shared/Assets.xcassets/Contents.json (100%) diff --git a/.github/workflows/client_app.yml b/.github/workflows/client_app.yml index 5317b79f001..a040810c2d7 100644 --- a/.github/workflows/client_app.yml +++ b/.github/workflows/client_app.yml @@ -9,7 +9,7 @@ on: - "*.podspec" - "scripts/install_prereqs.sh" - "scripts/build.sh" - - "ClientApp/**" + - "IntegrationTesting/ClientApp/**" - "Gemfile*" schedule: # Run every day at 12am (PST) - cron uses UTC times diff --git a/ClientApp/Podfile b/ClientApp/Podfile deleted file mode 100644 index 3926a76b38a..00000000000 --- a/ClientApp/Podfile +++ /dev/null @@ -1,45 +0,0 @@ -source 'https://github.com/firebase/SpecsDev.git' -source 'https://github.com/firebase/SpecsStaging.git' -source 'https://cdn.cocoapods.org/' - -target 'ClientApp-CocoaPods' do - platform :ios, '11.0' - - use_frameworks! - - pod 'FirebaseCore', :path => '../' - pod 'FirebaseInstallations', :path => '../' - pod 'FirebaseAnalytics' # Binary pods don't work with `:path`. - pod 'FirebaseAnalyticsOnDeviceConversion', :path => '../' - pod 'FirebaseABTesting', :path => '../' - pod 'FirebaseAppCheck', :path => '../' - pod 'FirebaseRemoteConfig', :path => '../' - pod 'FirebaseRemoteConfigSwift', :path => '../' - pod 'FirebaseAppDistribution', :path => '../' - pod 'FirebaseAuth', :path => '../' - pod 'FirebaseCrashlytics', :path => '../' - pod 'FirebaseDatabase', :path => '../' - pod 'FirebaseDatabaseSwift', :path => '../' - pod 'FirebaseDynamicLinks', :path => '../' - pod 'FirebaseFirestore', :path => '../' - pod 'FirebaseFirestoreSwift', :path => '../' - pod 'FirebaseFunctions', :path => '../' - pod 'FirebaseInAppMessaging', :path => '../' - pod 'FirebaseMessaging', :path => '../' - pod 'FirebasePerformance', :path => '../' - pod 'FirebaseStorage', :path => '../' - pod 'FirebaseMLModelDownloader', :path => '../' - pod 'Firebase', :path => '../' -end - -target 'ClientApp-CocoaPods-iOS13' do - platform :ios, '13.0' - - use_frameworks! - - pod 'FirebaseAnalytics' # Binary pods don't work with `:path`. - pod 'FirebaseAnalyticsSwift', :path => '../' # Requires iOS 13.0+ - pod 'FirebaseInAppMessaging', :path => '../' - pod 'FirebaseInAppMessagingSwift', :path => '../' # Requires iOS 13.0+ - -end diff --git a/ClientApp/ClientApp-CocoaPods-iOS13/ClientApp_CocoaPods_iOS13.entitlements b/IntegrationTesting/ClientApp/ClientApp-CocoaPods-iOS13/ClientApp_CocoaPods_iOS13.entitlements similarity index 100% rename from ClientApp/ClientApp-CocoaPods-iOS13/ClientApp_CocoaPods_iOS13.entitlements rename to IntegrationTesting/ClientApp/ClientApp-CocoaPods-iOS13/ClientApp_CocoaPods_iOS13.entitlements diff --git a/ClientApp/ClientApp-CocoaPods-iOS13/Preview Content/Preview Assets.xcassets/Contents.json b/IntegrationTesting/ClientApp/ClientApp-CocoaPods-iOS13/Preview Content/Preview Assets.xcassets/Contents.json similarity index 100% rename from ClientApp/ClientApp-CocoaPods-iOS13/Preview Content/Preview Assets.xcassets/Contents.json rename to IntegrationTesting/ClientApp/ClientApp-CocoaPods-iOS13/Preview Content/Preview Assets.xcassets/Contents.json diff --git a/ClientApp/ClientApp-CocoaPods/ClientApp_CocoaPods.entitlements b/IntegrationTesting/ClientApp/ClientApp-CocoaPods/ClientApp_CocoaPods.entitlements similarity index 100% rename from ClientApp/ClientApp-CocoaPods/ClientApp_CocoaPods.entitlements rename to IntegrationTesting/ClientApp/ClientApp-CocoaPods/ClientApp_CocoaPods.entitlements diff --git a/ClientApp/ClientApp-CocoaPods/Preview Content/Preview Assets.xcassets/Contents.json b/IntegrationTesting/ClientApp/ClientApp-CocoaPods/Preview Content/Preview Assets.xcassets/Contents.json similarity index 100% rename from ClientApp/ClientApp-CocoaPods/Preview Content/Preview Assets.xcassets/Contents.json rename to IntegrationTesting/ClientApp/ClientApp-CocoaPods/Preview Content/Preview Assets.xcassets/Contents.json diff --git a/ClientApp/ClientApp-iOS13/ClientApp_iOS13.entitlements b/IntegrationTesting/ClientApp/ClientApp-iOS13/ClientApp_iOS13.entitlements similarity index 100% rename from ClientApp/ClientApp-iOS13/ClientApp_iOS13.entitlements rename to IntegrationTesting/ClientApp/ClientApp-iOS13/ClientApp_iOS13.entitlements diff --git a/ClientApp/ClientApp-iOS13/Preview Content/Preview Assets.xcassets/Contents.json b/IntegrationTesting/ClientApp/ClientApp-iOS13/Preview Content/Preview Assets.xcassets/Contents.json similarity index 100% rename from ClientApp/ClientApp-iOS13/Preview Content/Preview Assets.xcassets/Contents.json rename to IntegrationTesting/ClientApp/ClientApp-iOS13/Preview Content/Preview Assets.xcassets/Contents.json diff --git a/ClientApp/ClientApp.xcodeproj/project.pbxproj b/IntegrationTesting/ClientApp/ClientApp.xcodeproj/project.pbxproj similarity index 99% rename from ClientApp/ClientApp.xcodeproj/project.pbxproj rename to IntegrationTesting/ClientApp/ClientApp.xcodeproj/project.pbxproj index 0024c4440d4..5d948e53cab 100644 --- a/ClientApp/ClientApp.xcodeproj/project.pbxproj +++ b/IntegrationTesting/ClientApp/ClientApp.xcodeproj/project.pbxproj @@ -75,7 +75,7 @@ EA5A62912A9914F300F5711A /* ClientApp_CocoaPods.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = ClientApp_CocoaPods.entitlements; sourceTree = ""; }; EA5A62932A9914F300F5711A /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = ""; }; EA7DF54229EF20B9005664A7 /* swift-import-test.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "swift-import-test.swift"; sourceTree = ""; }; - EA7DF54929EF2A92005664A7 /* firebase-ios-sdk */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = "firebase-ios-sdk"; path = ../; sourceTree = ""; }; + EA7DF54929EF2A92005664A7 /* firebase-ios-sdk */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = "firebase-ios-sdk"; path = ../../; sourceTree = ""; }; EAA0A98F2AD8494F00C28FCD /* ClientApp-CocoaPods-iOS13.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "ClientApp-CocoaPods-iOS13.app"; sourceTree = BUILT_PRODUCTS_DIR; }; EAA0A9972AD8495000C28FCD /* ClientApp_CocoaPods_iOS13.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = ClientApp_CocoaPods_iOS13.entitlements; sourceTree = ""; }; EAA0A9992AD8495000C28FCD /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = ""; }; diff --git a/ClientApp/ClientApp/ClientApp.entitlements b/IntegrationTesting/ClientApp/ClientApp/ClientApp.entitlements similarity index 100% rename from ClientApp/ClientApp/ClientApp.entitlements rename to IntegrationTesting/ClientApp/ClientApp/ClientApp.entitlements diff --git a/ClientApp/ClientApp/Preview Content/Preview Assets.xcassets/Contents.json b/IntegrationTesting/ClientApp/ClientApp/Preview Content/Preview Assets.xcassets/Contents.json similarity index 100% rename from ClientApp/ClientApp/Preview Content/Preview Assets.xcassets/Contents.json rename to IntegrationTesting/ClientApp/ClientApp/Preview Content/Preview Assets.xcassets/Contents.json diff --git a/IntegrationTesting/ClientApp/Podfile b/IntegrationTesting/ClientApp/Podfile new file mode 100644 index 00000000000..724ff4dcad8 --- /dev/null +++ b/IntegrationTesting/ClientApp/Podfile @@ -0,0 +1,45 @@ +source 'https://github.com/firebase/SpecsDev.git' +source 'https://github.com/firebase/SpecsStaging.git' +source 'https://cdn.cocoapods.org/' + +target 'ClientApp-CocoaPods' do + platform :ios, '11.0' + + use_frameworks! + + pod 'FirebaseCore', :path => '../../' + pod 'FirebaseInstallations', :path => '../../' + pod 'FirebaseAnalytics' # Binary pods don't work with `:path`. + pod 'FirebaseAnalyticsOnDeviceConversion', :path => '../../' + pod 'FirebaseABTesting', :path => '../../' + pod 'FirebaseAppCheck', :path => '../../' + pod 'FirebaseRemoteConfig', :path => '../../' + pod 'FirebaseRemoteConfigSwift', :path => '../../' + pod 'FirebaseAppDistribution', :path => '../../' + pod 'FirebaseAuth', :path => '../../' + pod 'FirebaseCrashlytics', :path => '../../' + pod 'FirebaseDatabase', :path => '../../' + pod 'FirebaseDatabaseSwift', :path => '../../' + pod 'FirebaseDynamicLinks', :path => '../../' + pod 'FirebaseFirestore', :path => '../../' + pod 'FirebaseFirestoreSwift', :path => '../../' + pod 'FirebaseFunctions', :path => '../../' + pod 'FirebaseInAppMessaging', :path => '../../' + pod 'FirebaseMessaging', :path => '../../' + pod 'FirebasePerformance', :path => '../../' + pod 'FirebaseStorage', :path => '../../' + pod 'FirebaseMLModelDownloader', :path => '../../' + pod 'Firebase', :path => '../../' +end + +target 'ClientApp-CocoaPods-iOS13' do + platform :ios, '13.0' + + use_frameworks! + + pod 'FirebaseAnalytics' # Binary pods don't work with `:path`. + pod 'FirebaseAnalyticsSwift', :path => '../../' # Requires iOS 13.0+ + pod 'FirebaseInAppMessaging', :path => '../../' + pod 'FirebaseInAppMessagingSwift', :path => '../../' # Requires iOS 13.0+ + +end diff --git a/ClientApp/Shared-iOS11+/objc-header-import-test.m b/IntegrationTesting/ClientApp/Shared-iOS11+/objc-header-import-test.m similarity index 100% rename from ClientApp/Shared-iOS11+/objc-header-import-test.m rename to IntegrationTesting/ClientApp/Shared-iOS11+/objc-header-import-test.m diff --git a/ClientApp/Shared-iOS11+/objc-module-import-test.m b/IntegrationTesting/ClientApp/Shared-iOS11+/objc-module-import-test.m similarity index 100% rename from ClientApp/Shared-iOS11+/objc-module-import-test.m rename to IntegrationTesting/ClientApp/Shared-iOS11+/objc-module-import-test.m diff --git a/ClientApp/Shared-iOS11+/objcxx-header-import-test.mm b/IntegrationTesting/ClientApp/Shared-iOS11+/objcxx-header-import-test.mm similarity index 100% rename from ClientApp/Shared-iOS11+/objcxx-header-import-test.mm rename to IntegrationTesting/ClientApp/Shared-iOS11+/objcxx-header-import-test.mm diff --git a/ClientApp/Shared-iOS11+/swift-import-test.swift b/IntegrationTesting/ClientApp/Shared-iOS11+/swift-import-test.swift similarity index 100% rename from ClientApp/Shared-iOS11+/swift-import-test.swift rename to IntegrationTesting/ClientApp/Shared-iOS11+/swift-import-test.swift diff --git a/ClientApp/Shared-iOS13+/swift-import-test.swift b/IntegrationTesting/ClientApp/Shared-iOS13+/swift-import-test.swift similarity index 100% rename from ClientApp/Shared-iOS13+/swift-import-test.swift rename to IntegrationTesting/ClientApp/Shared-iOS13+/swift-import-test.swift diff --git a/ClientApp/Shared/AppDelegate.swift b/IntegrationTesting/ClientApp/Shared/AppDelegate.swift similarity index 100% rename from ClientApp/Shared/AppDelegate.swift rename to IntegrationTesting/ClientApp/Shared/AppDelegate.swift diff --git a/ClientApp/Shared/Assets.xcassets/AccentColor.colorset/Contents.json b/IntegrationTesting/ClientApp/Shared/Assets.xcassets/AccentColor.colorset/Contents.json similarity index 100% rename from ClientApp/Shared/Assets.xcassets/AccentColor.colorset/Contents.json rename to IntegrationTesting/ClientApp/Shared/Assets.xcassets/AccentColor.colorset/Contents.json diff --git a/ClientApp/Shared/Assets.xcassets/AppIcon.appiconset/Contents.json b/IntegrationTesting/ClientApp/Shared/Assets.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from ClientApp/Shared/Assets.xcassets/AppIcon.appiconset/Contents.json rename to IntegrationTesting/ClientApp/Shared/Assets.xcassets/AppIcon.appiconset/Contents.json diff --git a/ClientApp/Shared/Assets.xcassets/Contents.json b/IntegrationTesting/ClientApp/Shared/Assets.xcassets/Contents.json similarity index 100% rename from ClientApp/Shared/Assets.xcassets/Contents.json rename to IntegrationTesting/ClientApp/Shared/Assets.xcassets/Contents.json diff --git a/scripts/build.sh b/scripts/build.sh index 44ca9e89f87..3ea1fcd492e 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -666,7 +666,7 @@ case "$product-$platform-$method" in ClientApp-iOS-xcodebuild | ClientApp-iOS13-iOS-xcodebuild) RunXcodebuild \ - -project 'ClientApp/ClientApp.xcodeproj' \ + -project 'IntegrationTesting/ClientApp/ClientApp.xcodeproj' \ -scheme $product \ "${xcb_flags[@]}" \ build @@ -674,7 +674,7 @@ case "$product-$platform-$method" in ClientApp-CocoaPods*-iOS-xcodebuild) RunXcodebuild \ - -workspace 'ClientApp/ClientApp.xcworkspace' \ + -workspace 'IntegrationTesting/ClientApp/ClientApp.xcworkspace' \ -scheme $product \ "${xcb_flags[@]}" \ build diff --git a/scripts/check_imports.swift b/scripts/check_imports.swift index ee153616c4e..5db866dd3d9 100755 --- a/scripts/check_imports.swift +++ b/scripts/check_imports.swift @@ -34,7 +34,7 @@ let skipDirPatterns = ["/Sample/", "/Pods/", [ "CoreOnly/Sources", // Skip Firebase.h. "SwiftPMTests", // The SwiftPM tests test module imports. - "ClientApp", // The ClientApp tests module imports. + "IntegrationTesting/ClientApp", // The ClientApp tests module imports. "FirebaseSessions/Protogen/", // Generated nanopb code with imports ] + diff --git a/scripts/install_prereqs.sh b/scripts/install_prereqs.sh index d1d1fa9007d..ee883ffba01 100755 --- a/scripts/install_prereqs.sh +++ b/scripts/install_prereqs.sh @@ -172,7 +172,7 @@ case "$project-$platform-$method" in ClientApp-iOS-xcodebuild) install_xcpretty - bundle exec pod install --project-directory=ClientApp/ --repo-update + bundle exec pod install --project-directory=IntegrationTesting/ClientApp/ --repo-update ;; *-pod-lib-lint) From 2a3fd2a382ac82c2e0e7cd404c208fb21bdd4bf1 Mon Sep 17 00:00:00 2001 From: Nick Cooke <36927374+ncooke3@users.noreply.github.com> Date: Tue, 26 Dec 2023 19:00:25 -0500 Subject: [PATCH 2/5] [Release Tooling] Stop sourcing .bash_profile when running generated shell scripts (#12159) --- ReleaseTooling/Sources/Utils/ShellUtils.swift | 7 ------- 1 file changed, 7 deletions(-) diff --git a/ReleaseTooling/Sources/Utils/ShellUtils.swift b/ReleaseTooling/Sources/Utils/ShellUtils.swift index e3fe860cded..b2ea9a2870b 100644 --- a/ReleaseTooling/Sources/Utils/ShellUtils.swift +++ b/ReleaseTooling/Sources/Utils/ShellUtils.swift @@ -62,16 +62,9 @@ public extension Shell { // Write the temporary script contents to the script's path. CocoaPods complains when LANG // isn't set in the environment, so explicitly set it here. The `/usr/local/git/current/bin` // is to allow the `sso` protocol if it's there. - // The user's .bash_profile, if it exists, is sourced to modify the - // shell's PATH with any configuration (e.g. adding Ruby to path) - // that may be needed to run the given command. let contents = """ export PATH="/usr/local/bin:/usr/local/git/current/bin:$PATH" export LANG="en_US.UTF-8" - BASH_PROFILE_PATH="~/.bash_profile" - if [ -f "$BASH_PROFILE_PATH" ]; then - source $BASH_PROFILE_PATH - fi \(command) """ try contents.write(to: scriptPath, atomically: true, encoding: .utf8) From 393d768eb4e0b880a9ce8bbf368ac1c851ba4099 Mon Sep 17 00:00:00 2001 From: Paul Beusterien Date: Wed, 27 Dec 2023 07:39:47 -0800 Subject: [PATCH 3/5] Update CI to Xcode 15.1 (#12216) --- .github/workflows/abtesting.yml | 8 ++--- .github/workflows/analytics.yml | 2 +- .github/workflows/appdistribution.yml | 8 ++--- .github/workflows/archiving.yml | 4 +-- .github/workflows/auth.yml | 15 ++++---- .github/workflows/core.yml | 6 ++-- .github/workflows/core_extension.yml | 2 +- .github/workflows/core_internal.yml | 6 ++-- .github/workflows/crashlytics.yml | 13 ++++--- .github/workflows/database.yml | 14 ++++---- .github/workflows/dynamiclinks.yml | 6 ++-- .github/workflows/firebase_app_check.yml | 8 ++--- .github/workflows/firebasepod.yml | 2 +- .github/workflows/firestore.yml | 12 +++---- .github/workflows/functions.yml | 8 ++--- .github/workflows/inappmessaging.yml | 8 ++--- .github/workflows/installations.yml | 9 +++-- .github/workflows/messaging.yml | 34 +++++++++---------- .github/workflows/mlmodeldownloader.yml | 10 +++--- .../performance-integration-tests.yml | 2 +- .github/workflows/performance.yml | 10 +++--- .github/workflows/remoteconfig.yml | 12 +++---- .../workflows/sessions-integration-tests.yml | 2 +- .github/workflows/sessions.yml | 8 ++--- .github/workflows/shared-swift.yml | 6 ++-- .github/workflows/spm.yml | 12 +++---- .github/workflows/storage.yml | 25 ++++++-------- .github/workflows/symbolcollision.yml | 2 +- .github/workflows/watchos-sample.yml | 2 +- .github/workflows/zip.yml | 24 ++++++------- ...IRDatabaseConnectionContextProviderTests.m | 2 +- 31 files changed, 137 insertions(+), 145 deletions(-) diff --git a/.github/workflows/abtesting.yml b/.github/workflows/abtesting.yml index e3c9591872d..8aaf1c20297 100644 --- a/.github/workflows/abtesting.yml +++ b/.github/workflows/abtesting.yml @@ -29,7 +29,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -54,13 +54,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild @@ -77,7 +77,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: catalyst${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/analytics.yml b/.github/workflows/analytics.yml index 83d93f5cdf2..67872715210 100644 --- a/.github/workflows/analytics.yml +++ b/.github/workflows/analytics.yml @@ -28,7 +28,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: diff --git a/.github/workflows/appdistribution.yml b/.github/workflows/appdistribution.yml index 3fcaf6d99e6..eb5d76880af 100644 --- a/.github/workflows/appdistribution.yml +++ b/.github/workflows/appdistribution.yml @@ -27,7 +27,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -52,13 +52,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild @@ -75,7 +75,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: catalyst${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/archiving.yml b/.github/workflows/archiving.yml index 6b1424d076d..b503d4ef2d9 100644 --- a/.github/workflows/archiving.yml +++ b/.github/workflows/archiving.yml @@ -28,7 +28,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: cron-${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh @@ -51,7 +51,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: pods-${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/auth.yml b/.github/workflows/auth.yml index f9d765bc2bd..212007cf72b 100644 --- a/.github/workflows/auth.yml +++ b/.github/workflows/auth.yml @@ -30,11 +30,10 @@ jobs: include: - os: macos-12 xcode: Xcode_14.2 - tests: - # Flaky tests on CI - - os: macos-13 - xcode: Xcode_15.0.1 tests: --skip-tests + - os: macos-13 + xcode: Xcode_15.1 + tests: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -61,7 +60,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: integration-tests${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh @@ -99,14 +98,14 @@ jobs: xcode: Xcode_14.2 test: spm - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 test: spmbuildonly runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild @@ -122,7 +121,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: catalyst${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/core.yml b/.github/workflows/core.yml index 2b554e87dbd..0b251d24426 100644 --- a/.github/workflows/core.yml +++ b/.github/workflows/core.yml @@ -27,7 +27,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -50,13 +50,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild diff --git a/.github/workflows/core_extension.yml b/.github/workflows/core_extension.yml index ea80b4fe248..0706c035fc0 100644 --- a/.github/workflows/core_extension.yml +++ b/.github/workflows/core_extension.yml @@ -25,7 +25,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/core_internal.yml b/.github/workflows/core_internal.yml index 4a5f00e1854..3fa93f047a1 100644 --- a/.github/workflows/core_internal.yml +++ b/.github/workflows/core_internal.yml @@ -23,7 +23,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -46,7 +46,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -65,7 +65,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: catalyst${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/crashlytics.yml b/.github/workflows/crashlytics.yml index ada0f5041eb..26cc1ceb3a7 100644 --- a/.github/workflows/crashlytics.yml +++ b/.github/workflows/crashlytics.yml @@ -29,11 +29,10 @@ jobs: include: - os: macos-12 xcode: Xcode_14.2 - tests: - # Flaky tests on CI - - os: macos-13 - xcode: Xcode_15.0.1 tests: --skip-tests + - os: macos-13 + xcode: Xcode_15.1 + tests: runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -58,13 +57,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild @@ -82,7 +81,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: catalyst${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/database.yml b/.github/workflows/database.yml index 132360f265f..50fee76ee61 100644 --- a/.github/workflows/database.yml +++ b/.github/workflows/database.yml @@ -31,10 +31,10 @@ jobs: include: - os: macos-12 xcode: Xcode_14.2 - tests: --test-specs=unit - - os: macos-13 - xcode: Xcode_15.0.1 tests: --skip-tests + - os: macos-13 + xcode: Xcode_15.1 + tests: --test-specs=unit runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -54,7 +54,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: integration${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh @@ -75,13 +75,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild @@ -99,7 +99,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: catalyst${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/dynamiclinks.yml b/.github/workflows/dynamiclinks.yml index 36a4bc61567..2cc95b49443 100644 --- a/.github/workflows/dynamiclinks.yml +++ b/.github/workflows/dynamiclinks.yml @@ -27,7 +27,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -49,13 +49,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild diff --git a/.github/workflows/firebase_app_check.yml b/.github/workflows/firebase_app_check.yml index 20bb5957891..3bfe934f3c2 100644 --- a/.github/workflows/firebase_app_check.yml +++ b/.github/workflows/firebase_app_check.yml @@ -28,7 +28,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -65,7 +65,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: ${{ matrix.diagnostics }} - name: Initialize xcodebuild run: scripts/setup_spm_tests.sh - name: iOS Unit Tests @@ -107,13 +107,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild diff --git a/.github/workflows/firebasepod.yml b/.github/workflows/firebasepod.yml index f99b6ae98f3..8573ccd6d0d 100644 --- a/.github/workflows/firebasepod.yml +++ b/.github/workflows/firebasepod.yml @@ -28,7 +28,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: firebasepod - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/firestore.yml b/.github/workflows/firestore.yml index e1031f0858b..49464754d05 100644 --- a/.github/workflows/firestore.yml +++ b/.github/workflows/firestore.yml @@ -369,7 +369,7 @@ jobs: - name: Setup Bundler run: ./scripts/setup_bundler.sh - name: Xcode - run: sudo xcode-select -s /Applications/Xcode_15.0.1.app/Contents/Developer + run: sudo xcode-select -s /Applications/Xcode_15.1.app/Contents/Developer - name: Pod lib lint # TODO(#9565, b/227461966): Remove --no-analyze when absl is fixed. @@ -411,7 +411,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: @@ -445,7 +445,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} needs: check env: @@ -454,7 +454,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild @@ -475,7 +475,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm-binary - name: Initialize xcodebuild run: scripts/setup_spm_tests.sh - name: iOS Build Test @@ -516,7 +516,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: ${{ matrix.target }} - name: Initialize xcodebuild run: scripts/setup_spm_tests.sh - name: Build Test - Binary diff --git a/.github/workflows/functions.yml b/.github/workflows/functions.yml index 6b64c485e47..1c19f64a0ae 100644 --- a/.github/workflows/functions.yml +++ b/.github/workflows/functions.yml @@ -35,7 +35,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -68,7 +68,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }} - name: Initialize xcodebuild run: scripts/setup_spm_tests.sh - name: Integration Test Server @@ -93,13 +93,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild diff --git a/.github/workflows/inappmessaging.yml b/.github/workflows/inappmessaging.yml index 7c8e15caa96..b29a51e0ae5 100644 --- a/.github/workflows/inappmessaging.yml +++ b/.github/workflows/inappmessaging.yml @@ -29,7 +29,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -56,7 +56,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: ${{ matrix.platform }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh @@ -75,13 +75,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild diff --git a/.github/workflows/installations.yml b/.github/workflows/installations.yml index 63f16bf75f7..c89c8c695f0 100644 --- a/.github/workflows/installations.yml +++ b/.github/workflows/installations.yml @@ -30,9 +30,8 @@ jobs: - os: macos-12 xcode: Xcode_14.2 test-specs: unit,integration - # Integration tests are flaky on Xcode 15 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 test-specs: unit runs-on: ${{ matrix.os }} steps: @@ -70,13 +69,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild @@ -91,7 +90,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: catalyst${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/messaging.yml b/.github/workflows/messaging.yml index 41bda1c82fb..618e629668b 100644 --- a/.github/workflows/messaging.yml +++ b/.github/workflows/messaging.yml @@ -29,14 +29,12 @@ jobs: if: (github.repository == 'Firebase/firebase-ios-sdk' && github.event_name == 'schedule') || github.event_name == 'pull_request' env: plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }} - # TODO: Investigate why PubSub integration tests fail with Xcode 15.0.1 on macos-13 -# runs-on: macos-13 - runs-on: macos-12 + runs-on: macos-13 steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: integration - name: Configure test keychain run: scripts/configure_test_keychain.sh - uses: ruby/setup-ruby@v1 @@ -49,8 +47,8 @@ jobs: mkdir FirebaseMessaging/Tests/IntegrationTests/Resources scripts/decrypt_gha_secret.sh scripts/gha-encrypted/messaging-sample-plist.gpg \ FirebaseMessaging/Tests/IntegrationTests/Resources/GoogleService-Info.plist "$plist_secret" -# - name: Xcode -# run: sudo xcode-select -s /Applications/xcode_15.0.1.app/Contents/Developer + - name: Xcode + run: sudo xcode-select -s /Applications/Xcode_15.1.app/Contents/Developer - name: BuildAndTest run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/build.sh Messaging all) @@ -67,7 +65,7 @@ jobs: xcode: Xcode_14.2 tests: --test-specs=unit - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 tests: --skip-tests runs-on: ${{ matrix.os }} steps: @@ -91,13 +89,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Initialize xcodebuild run: scripts/setup_spm_tests.sh - name: Xcode @@ -113,7 +111,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: catalyst${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh @@ -132,7 +130,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -194,7 +192,7 @@ jobs: xcode: Xcode_14.2 tests: --test-specs=unit - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 tests: --skip-tests runs-on: ${{ matrix.os }} steps: @@ -217,7 +215,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: sample${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh @@ -228,7 +226,7 @@ jobs: - name: Prereqs run: scripts/install_prereqs.sh MessagingSample iOS - name: Xcode - run: sudo xcode-select -s /Applications/Xcode_15.0.1.app/Contents/Developer + run: sudo xcode-select -s /Applications/Xcode_15.1.app/Contents/Developer - name: Build run: ([ -z $plist_secret ] || scripts/build.sh MessagingSample iOS) @@ -242,7 +240,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: sample${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh @@ -253,7 +251,7 @@ jobs: - name: Prereqs run: scripts/install_prereqs.sh SwiftUISample iOS - name: Xcode - run: sudo xcode-select -s /Applications/Xcode_15.0.1.app/Contents/Developer + run: sudo xcode-select -s /Applications/Xcode_15.1.app/Contents/Developer - name: Build run: ([ -z $plist_secret ] || scripts/build.sh SwiftUISample iOS) @@ -267,7 +265,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: watch-sample${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh @@ -278,7 +276,7 @@ jobs: - name: Prereqs run: scripts/install_prereqs.sh MessagingSampleStandaloneWatchApp watchOS - name: Xcode - run: sudo xcode-select -s /Applications/Xcode_15.0.1.app/Contents/Developer + run: sudo xcode-select -s /Applications/Xcode_15.1.app/Contents/Developer - name: Build run: ([ -z $plist_secret ] || scripts/build.sh MessagingSampleStandaloneWatchApp watchOS) diff --git a/.github/workflows/mlmodeldownloader.yml b/.github/workflows/mlmodeldownloader.yml index 5aadf9706b2..5210baa686f 100644 --- a/.github/workflows/mlmodeldownloader.yml +++ b/.github/workflows/mlmodeldownloader.yml @@ -27,7 +27,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -80,13 +80,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild @@ -101,7 +101,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: catalyst${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh @@ -118,7 +118,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: build-test${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/performance-integration-tests.yml b/.github/workflows/performance-integration-tests.yml index fc15b890a97..25c91e98f83 100644 --- a/.github/workflows/performance-integration-tests.yml +++ b/.github/workflows/performance-integration-tests.yml @@ -31,7 +31,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: integration - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/performance.yml b/.github/workflows/performance.yml index e8d35e1cb63..7f2cedfb6fb 100644 --- a/.github/workflows/performance.yml +++ b/.github/workflows/performance.yml @@ -37,7 +37,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: ${{ matrix.target }}${{ matrix.test }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh @@ -60,7 +60,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -132,13 +132,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild @@ -153,7 +153,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: catalyst - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/remoteconfig.yml b/.github/workflows/remoteconfig.yml index 203a4b22dfa..f7704ff3b2e 100644 --- a/.github/workflows/remoteconfig.yml +++ b/.github/workflows/remoteconfig.yml @@ -32,7 +32,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: rc${{ matrix.target }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh @@ -68,7 +68,7 @@ jobs: tests: # Flaky tests on CI - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 tests: --skip-tests runs-on: ${{ matrix.os }} steps: @@ -95,14 +95,14 @@ jobs: xcode: Xcode_14.2 test: spm - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 test: spmbuildonly runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild @@ -120,7 +120,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: catalyst${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh @@ -178,7 +178,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: build-test - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/sessions-integration-tests.yml b/.github/workflows/sessions-integration-tests.yml index e72b154b7a2..71f586cc9ee 100644 --- a/.github/workflows/sessions-integration-tests.yml +++ b/.github/workflows/sessions-integration-tests.yml @@ -30,7 +30,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: sessions-integration-tests - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/sessions.yml b/.github/workflows/sessions.yml index 101512bf4bc..ccf8fe00e09 100644 --- a/.github/workflows/sessions.yml +++ b/.github/workflows/sessions.yml @@ -31,7 +31,7 @@ jobs: tests: # Flaky tests on CI - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 tests: --skip-tests runs-on: ${{ matrix.os }} steps: @@ -57,13 +57,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild @@ -80,7 +80,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: catalyst${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/shared-swift.yml b/.github/workflows/shared-swift.yml index 384272015c7..5fe07b43f56 100644 --- a/.github/workflows/shared-swift.yml +++ b/.github/workflows/shared-swift.yml @@ -29,7 +29,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -52,13 +52,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild diff --git a/.github/workflows/spm.yml b/.github/workflows/spm.yml index a3ad4158d10..53fddd8d0f7 100644 --- a/.github/workflows/spm.yml +++ b/.github/workflows/spm.yml @@ -34,14 +34,14 @@ jobs: test: spm # The integration tests are slow and flaky on Xcode 15, so just build. - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 test: spmbuildonly runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild @@ -62,13 +62,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: device${{ matrix.os }}${{ matrix.xcode }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild @@ -89,13 +89,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: platforms${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcode run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer - name: Initialize xcodebuild diff --git a/.github/workflows/storage.yml b/.github/workflows/storage.yml index cc49ab0a5b9..87783f72c2a 100644 --- a/.github/workflows/storage.yml +++ b/.github/workflows/storage.yml @@ -23,11 +23,8 @@ jobs: strategy: matrix: include: - # TODO: investigate integration test extreme flakiness on Xcode 15 - - os: macos-12 - xcode: Xcode_14.2 - # - os: macos-13 - # xcode: Xcode_15.0.1 + - os: macos-13 + xcode: Xcode_15.1 env: plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }} runs-on: ${{ matrix.os }} @@ -35,7 +32,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: integration${{ matrix.os }} - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh @@ -65,7 +62,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -90,13 +87,13 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: spm-cron${{ matrix.os }}-${{ matrix.xcode }}-${{ matrix.target }} - name: Xcodes run: ls -l /Applications/Xcode* - name: Xcode @@ -115,7 +112,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 env: plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }} signin_secret: ${{ secrets.GHASecretsGPGPassphrase1 }} @@ -176,10 +173,10 @@ jobs: include: - os: macos-12 xcode: Xcode_14.2 - tests: --test-specs=unit - - os: macos-13 - xcode: Xcode_15.0.1 tests: --skip-tests + - os: macos-13 + xcode: Xcode_15.1 + tests: --test-specs=unit runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -206,7 +203,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} needs: pod-lib-lint steps: diff --git a/.github/workflows/symbolcollision.yml b/.github/workflows/symbolcollision.yml index 588904fd16d..a9088e17c18 100644 --- a/.github/workflows/symbolcollision.yml +++ b/.github/workflows/symbolcollision.yml @@ -26,7 +26,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: symbolcollision - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/watchos-sample.yml b/.github/workflows/watchos-sample.yml index 477e5187297..e4e30396280 100644 --- a/.github/workflows/watchos-sample.yml +++ b/.github/workflows/watchos-sample.yml @@ -33,7 +33,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: watchos-sample - uses: ruby/setup-ruby@v1 - name: Setup Bundler run: scripts/setup_bundler.sh diff --git a/.github/workflows/zip.yml b/.github/workflows/zip.yml index 982af832325..569b12b472f 100644 --- a/.github/workflows/zip.yml +++ b/.github/workflows/zip.yml @@ -33,7 +33,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: package-release - name: Xcode 14.1 run: sudo xcode-select -s /Applications/Xcode_14.1.app/Contents/Developer - uses: ruby/setup-ruby@v1 @@ -73,7 +73,7 @@ jobs: - uses: actions/checkout@v4 - uses: mikehardy/buildcache-action@c87cea0ccd718971d6cc39e672c4f26815b6c126 with: - cache_key: ${{ matrix.os }} + cache_key: package-head - name: Xcode 14.1 run: sudo xcode-select -s /Applications/Xcode_14.1.app/Contents/Developer - uses: ruby/setup-ruby@v1 @@ -108,7 +108,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -170,7 +170,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -224,7 +224,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -276,7 +276,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -352,7 +352,7 @@ jobs: xcode: Xcode_14.2 # TODO: Building FirebaseUI fails on Xcode 15 because it needs to sign the resources. # - os: macos-13 - # xcode: Xcode_15.0.1 + # xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -408,7 +408,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -469,7 +469,7 @@ jobs: xcode: Xcode_14.2 # TODO: Building FirebaseUI fails on Xcode 15 because it needs to sign the resources. # - os: macos-13 - # xcode: Xcode_15.0.1 + # xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -555,7 +555,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -612,7 +612,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 @@ -668,7 +668,7 @@ jobs: - os: macos-12 xcode: Xcode_14.2 - os: macos-13 - xcode: Xcode_15.0.1 + xcode: Xcode_15.1 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 diff --git a/FirebaseDatabase/Tests/Unit/FIRDatabaseConnectionContextProviderTests.m b/FirebaseDatabase/Tests/Unit/FIRDatabaseConnectionContextProviderTests.m index 9988085e5ba..00bde9dd81b 100644 --- a/FirebaseDatabase/Tests/Unit/FIRDatabaseConnectionContextProviderTests.m +++ b/FirebaseDatabase/Tests/Unit/FIRDatabaseConnectionContextProviderTests.m @@ -97,7 +97,7 @@ - (void)testFetchContextWithAppCheckNoAuthError { [completionExpectation fulfill]; }]; - [self waitForExpectations:@[ completionExpectation ] timeout:0.5]; + [self waitForExpectations:@[ completionExpectation ] timeout:2.0]; } - (void)testFetchContextWithAuthNoAppCheckSuccess { From 05f0a1c823fe0642fd9379d33d64898398fda3d7 Mon Sep 17 00:00:00 2001 From: Nick Cooke <36927374+ncooke3@users.noreply.github.com> Date: Wed, 27 Dec 2023 18:01:37 -0500 Subject: [PATCH 4/5] [Infra] Move CocoapodsIntegrationTest/ out of repo root (#12221) --- .github/workflows/cocoapods-integration.yml | 8 ++--- .../Podfile | 36 ------------------- .../project.pbxproj | 0 .../CocoapodsIntegrationTest.xcscheme | 0 .../CocoapodsIntegrationTest/AppDelegate.h | 0 .../CocoapodsIntegrationTest/AppDelegate.m | 0 .../AppIcon.appiconset/Contents.json | 0 .../Assets.xcassets/Contents.json | 0 .../Base.lproj/LaunchScreen.storyboard | 0 .../Base.lproj/Main.storyboard | 0 .../CocoapodsIntegrationTest/Info.plist | 0 .../CocoapodsIntegrationTest/ViewController.h | 0 .../CocoapodsIntegrationTest/ViewController.m | 0 .../CocoapodsIntegrationTest/main.m | 0 .../Gemfile | 0 .../Podfile | 36 +++++++++++++++++++ .../scripts/build_all_environments.sh | 0 .../scripts/build_with_environment.sh | 0 scripts/check_imports.swift | 3 +- 19 files changed, 42 insertions(+), 41 deletions(-) delete mode 100644 CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Podfile rename {CocoapodsIntegrationTest => IntegrationTesting/CocoapodsIntegrationTest}/CocoapodsIntegrationTest.xcodeproj/project.pbxproj (100%) rename {CocoapodsIntegrationTest => IntegrationTesting/CocoapodsIntegrationTest}/CocoapodsIntegrationTest.xcodeproj/xcshareddata/xcschemes/CocoapodsIntegrationTest.xcscheme (100%) rename {CocoapodsIntegrationTest => IntegrationTesting/CocoapodsIntegrationTest}/CocoapodsIntegrationTest/AppDelegate.h (100%) rename {CocoapodsIntegrationTest => IntegrationTesting/CocoapodsIntegrationTest}/CocoapodsIntegrationTest/AppDelegate.m (100%) rename {CocoapodsIntegrationTest => IntegrationTesting/CocoapodsIntegrationTest}/CocoapodsIntegrationTest/Assets.xcassets/AppIcon.appiconset/Contents.json (100%) rename {CocoapodsIntegrationTest => IntegrationTesting/CocoapodsIntegrationTest}/CocoapodsIntegrationTest/Assets.xcassets/Contents.json (100%) rename {CocoapodsIntegrationTest => IntegrationTesting/CocoapodsIntegrationTest}/CocoapodsIntegrationTest/Base.lproj/LaunchScreen.storyboard (100%) rename {CocoapodsIntegrationTest => IntegrationTesting/CocoapodsIntegrationTest}/CocoapodsIntegrationTest/Base.lproj/Main.storyboard (100%) rename {CocoapodsIntegrationTest => IntegrationTesting/CocoapodsIntegrationTest}/CocoapodsIntegrationTest/Info.plist (100%) rename {CocoapodsIntegrationTest => IntegrationTesting/CocoapodsIntegrationTest}/CocoapodsIntegrationTest/ViewController.h (100%) rename {CocoapodsIntegrationTest => IntegrationTesting/CocoapodsIntegrationTest}/CocoapodsIntegrationTest/ViewController.m (100%) rename {CocoapodsIntegrationTest => IntegrationTesting/CocoapodsIntegrationTest}/CocoapodsIntegrationTest/main.m (100%) rename {CocoapodsIntegrationTest => IntegrationTesting/CocoapodsIntegrationTest}/TestEnvironments/Cocoapods_multiprojects_frameworks/Gemfile (100%) create mode 100644 IntegrationTesting/CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Podfile rename {CocoapodsIntegrationTest => IntegrationTesting/CocoapodsIntegrationTest}/scripts/build_all_environments.sh (100%) rename {CocoapodsIntegrationTest => IntegrationTesting/CocoapodsIntegrationTest}/scripts/build_with_environment.sh (100%) diff --git a/.github/workflows/cocoapods-integration.yml b/.github/workflows/cocoapods-integration.yml index 24848968a79..c182ff0701d 100644 --- a/.github/workflows/cocoapods-integration.yml +++ b/.github/workflows/cocoapods-integration.yml @@ -3,7 +3,7 @@ name: cocoapods-integration on: pull_request: paths: - - 'CocoapodsIntegrationTest/**' + - 'IntegrationTesting/CocoapodsIntegrationTest/**' - '.github/workflows/cocoapods-integration.yml' - 'Gemfile*' schedule: @@ -29,6 +29,6 @@ jobs: run: brew install coreutils - name: Build and test run: | - scripts/third_party/travis/retry.sh ./CocoapodsIntegrationTest/scripts/build_with_environment.sh \ - --gemfile=./CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Gemfile \ - --podfile=./CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Podfile + scripts/third_party/travis/retry.sh ./IntegrationTesting/CocoapodsIntegrationTest/scripts/build_with_environment.sh \ + --gemfile=./IntegrationTesting/CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Gemfile \ + --podfile=./IntegrationTesting/CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Podfile diff --git a/CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Podfile b/CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Podfile deleted file mode 100644 index 3307b3c53c7..00000000000 --- a/CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Podfile +++ /dev/null @@ -1,36 +0,0 @@ -source 'https://github.com/firebase/SpecsDev.git' -source 'https://github.com/firebase/SpecsStaging.git' -source 'https://cdn.cocoapods.org/' - -# Uncomment the next line to define a global platform for your project -platform :ios, '11.0' - -target 'CocoapodsIntegrationTest' do - # Comment the next line if you don't want to use dynamic frameworks - use_frameworks! - pod 'FirebaseABTesting', :path => '../' - pod 'FirebaseAppDistribution', :path => '../' - pod 'FirebaseAppCheckInterop', :path => '../' - pod 'FirebaseCore', :path => '../' - pod 'FirebaseCoreExtension', :path => '../' - pod 'FirebaseCoreInternal', :path => '../' - pod 'FirebaseCrashlytics', :path => '../' - pod 'FirebaseAuth', :path => '../' - pod 'FirebaseAuthInterop', :path => '../' - pod 'FirebaseDatabase', :path => '../' - pod 'FirebaseDynamicLinks', :path => '../' - pod 'FirebaseFirestore', :path => '../' - pod 'FirebaseFunctions', :path => '../' - pod 'FirebaseInAppMessaging', :path => '../' - pod 'FirebaseInstallations', :path => '../' - pod 'FirebaseMessaging', :path => '../' - pod 'FirebaseMessagingInterop', :path => '../' - pod 'FirebasePerformance', :path => '../' - pod 'FirebaseStorage', :path => '../' -end - -# Using the new speed-enhancing features available with CocoaPods 1.7+ -# [sudo] gem install cocoapods --pre -install! 'cocoapods', - :generate_multiple_pod_projects => true, - :incremental_installation => true diff --git a/CocoapodsIntegrationTest/CocoapodsIntegrationTest.xcodeproj/project.pbxproj b/IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest.xcodeproj/project.pbxproj similarity index 100% rename from CocoapodsIntegrationTest/CocoapodsIntegrationTest.xcodeproj/project.pbxproj rename to IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest.xcodeproj/project.pbxproj diff --git a/CocoapodsIntegrationTest/CocoapodsIntegrationTest.xcodeproj/xcshareddata/xcschemes/CocoapodsIntegrationTest.xcscheme b/IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest.xcodeproj/xcshareddata/xcschemes/CocoapodsIntegrationTest.xcscheme similarity index 100% rename from CocoapodsIntegrationTest/CocoapodsIntegrationTest.xcodeproj/xcshareddata/xcschemes/CocoapodsIntegrationTest.xcscheme rename to IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest.xcodeproj/xcshareddata/xcschemes/CocoapodsIntegrationTest.xcscheme diff --git a/CocoapodsIntegrationTest/CocoapodsIntegrationTest/AppDelegate.h b/IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/AppDelegate.h similarity index 100% rename from CocoapodsIntegrationTest/CocoapodsIntegrationTest/AppDelegate.h rename to IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/AppDelegate.h diff --git a/CocoapodsIntegrationTest/CocoapodsIntegrationTest/AppDelegate.m b/IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/AppDelegate.m similarity index 100% rename from CocoapodsIntegrationTest/CocoapodsIntegrationTest/AppDelegate.m rename to IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/AppDelegate.m diff --git a/CocoapodsIntegrationTest/CocoapodsIntegrationTest/Assets.xcassets/AppIcon.appiconset/Contents.json b/IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/Assets.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from CocoapodsIntegrationTest/CocoapodsIntegrationTest/Assets.xcassets/AppIcon.appiconset/Contents.json rename to IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/Assets.xcassets/AppIcon.appiconset/Contents.json diff --git a/CocoapodsIntegrationTest/CocoapodsIntegrationTest/Assets.xcassets/Contents.json b/IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/Assets.xcassets/Contents.json similarity index 100% rename from CocoapodsIntegrationTest/CocoapodsIntegrationTest/Assets.xcassets/Contents.json rename to IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/Assets.xcassets/Contents.json diff --git a/CocoapodsIntegrationTest/CocoapodsIntegrationTest/Base.lproj/LaunchScreen.storyboard b/IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/Base.lproj/LaunchScreen.storyboard similarity index 100% rename from CocoapodsIntegrationTest/CocoapodsIntegrationTest/Base.lproj/LaunchScreen.storyboard rename to IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/Base.lproj/LaunchScreen.storyboard diff --git a/CocoapodsIntegrationTest/CocoapodsIntegrationTest/Base.lproj/Main.storyboard b/IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/Base.lproj/Main.storyboard similarity index 100% rename from CocoapodsIntegrationTest/CocoapodsIntegrationTest/Base.lproj/Main.storyboard rename to IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/Base.lproj/Main.storyboard diff --git a/CocoapodsIntegrationTest/CocoapodsIntegrationTest/Info.plist b/IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/Info.plist similarity index 100% rename from CocoapodsIntegrationTest/CocoapodsIntegrationTest/Info.plist rename to IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/Info.plist diff --git a/CocoapodsIntegrationTest/CocoapodsIntegrationTest/ViewController.h b/IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/ViewController.h similarity index 100% rename from CocoapodsIntegrationTest/CocoapodsIntegrationTest/ViewController.h rename to IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/ViewController.h diff --git a/CocoapodsIntegrationTest/CocoapodsIntegrationTest/ViewController.m b/IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/ViewController.m similarity index 100% rename from CocoapodsIntegrationTest/CocoapodsIntegrationTest/ViewController.m rename to IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/ViewController.m diff --git a/CocoapodsIntegrationTest/CocoapodsIntegrationTest/main.m b/IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/main.m similarity index 100% rename from CocoapodsIntegrationTest/CocoapodsIntegrationTest/main.m rename to IntegrationTesting/CocoapodsIntegrationTest/CocoapodsIntegrationTest/main.m diff --git a/CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Gemfile b/IntegrationTesting/CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Gemfile similarity index 100% rename from CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Gemfile rename to IntegrationTesting/CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Gemfile diff --git a/IntegrationTesting/CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Podfile b/IntegrationTesting/CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Podfile new file mode 100644 index 00000000000..03bfe2e2d04 --- /dev/null +++ b/IntegrationTesting/CocoapodsIntegrationTest/TestEnvironments/Cocoapods_multiprojects_frameworks/Podfile @@ -0,0 +1,36 @@ +source 'https://github.com/firebase/SpecsDev.git' +source 'https://github.com/firebase/SpecsStaging.git' +source 'https://cdn.cocoapods.org/' + +# Uncomment the next line to define a global platform for your project +platform :ios, '11.0' + +target 'CocoapodsIntegrationTest' do + # Comment the next line if you don't want to use dynamic frameworks + use_frameworks! + pod 'FirebaseABTesting', :path => '../../' + pod 'FirebaseAppDistribution', :path => '../../' + pod 'FirebaseAppCheckInterop', :path => '../../' + pod 'FirebaseCore', :path => '../../' + pod 'FirebaseCoreExtension', :path => '../../' + pod 'FirebaseCoreInternal', :path => '../../' + pod 'FirebaseCrashlytics', :path => '../../' + pod 'FirebaseAuth', :path => '../../' + pod 'FirebaseAuthInterop', :path => '../../' + pod 'FirebaseDatabase', :path => '../../' + pod 'FirebaseDynamicLinks', :path => '../../' + pod 'FirebaseFirestore', :path => '../../' + pod 'FirebaseFunctions', :path => '../../' + pod 'FirebaseInAppMessaging', :path => '../../' + pod 'FirebaseInstallations', :path => '../../' + pod 'FirebaseMessaging', :path => '../../' + pod 'FirebaseMessagingInterop', :path => '../../' + pod 'FirebasePerformance', :path => '../../' + pod 'FirebaseStorage', :path => '../../' +end + +# Using the new speed-enhancing features available with CocoaPods 1.7+ +# [sudo] gem install cocoapods --pre +install! 'cocoapods', + :generate_multiple_pod_projects => true, + :incremental_installation => true diff --git a/CocoapodsIntegrationTest/scripts/build_all_environments.sh b/IntegrationTesting/CocoapodsIntegrationTest/scripts/build_all_environments.sh similarity index 100% rename from CocoapodsIntegrationTest/scripts/build_all_environments.sh rename to IntegrationTesting/CocoapodsIntegrationTest/scripts/build_all_environments.sh diff --git a/CocoapodsIntegrationTest/scripts/build_with_environment.sh b/IntegrationTesting/CocoapodsIntegrationTest/scripts/build_with_environment.sh similarity index 100% rename from CocoapodsIntegrationTest/scripts/build_with_environment.sh rename to IntegrationTesting/CocoapodsIntegrationTest/scripts/build_with_environment.sh diff --git a/scripts/check_imports.swift b/scripts/check_imports.swift index 5db866dd3d9..04e84aea876 100755 --- a/scripts/check_imports.swift +++ b/scripts/check_imports.swift @@ -28,7 +28,8 @@ let skipDirPatterns = ["/Sample/", "/Pods/", "FirebaseDynamicLinks/Tests/Integration", "FirebaseInAppMessaging/Tests/Integration/", "SymbolCollisionTest/", "/gen/", - "CocoapodsIntegrationTest/", "FirebasePerformance/Tests/TestApp/", + "IntegrationTesting/CocoapodsIntegrationTest/", + "FirebasePerformance/Tests/TestApp/", "cmake-build-debug/", "build/", "ObjCIntegration/", "FirebasePerformance/Tests/FIRPerfE2E/"] + [ From 5ac4a05af5855274893d979b87a486a1b99d14e7 Mon Sep 17 00:00:00 2001 From: Paul Beusterien Date: Tue, 2 Jan 2024 10:56:13 -0800 Subject: [PATCH 5/5] Add build tests for Auth globals (#12227) --- FirebaseAuth/Tests/Unit/ObjCGlobalTests.m | 51 +++++++++++++++++++ .../Tests/Unit/SwiftGlobalTests.swift | 50 ++++++++++++++++++ Package.swift | 1 + 3 files changed, 102 insertions(+) create mode 100644 FirebaseAuth/Tests/Unit/ObjCGlobalTests.m create mode 100644 FirebaseAuth/Tests/Unit/SwiftGlobalTests.swift diff --git a/FirebaseAuth/Tests/Unit/ObjCGlobalTests.m b/FirebaseAuth/Tests/Unit/ObjCGlobalTests.m new file mode 100644 index 00000000000..59fe0718b5e --- /dev/null +++ b/FirebaseAuth/Tests/Unit/ObjCGlobalTests.m @@ -0,0 +1,51 @@ +// Copyright 2023 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#import + +@import FirebaseAuth; + +@interface ObjCAPIGlobalTests : XCTestCase +@end + +@implementation ObjCAPIGlobalTests + +- (void)GlobalSymbolBuildTest { + __unused NSNotificationName n = FIRAuthStateDidChangeNotification; + NSString *s = FIRAuthErrorDomain; + s = FIRAuthErrorUserInfoNameKey; + s = FIRAuthErrorUserInfoEmailKey; + s = FIRAuthErrorUserInfoUpdatedCredentialKey; + s = FIRAuthErrorUserInfoMultiFactorResolverKey; + s = FIREmailAuthProviderID; + s = FIREmailLinkAuthSignInMethod; + s = FIREmailPasswordAuthSignInMethod; + s = FIRFacebookAuthProviderID; + s = FIRFacebookAuthSignInMethod; + s = FIRGameCenterAuthProviderID; + s = FIRGameCenterAuthSignInMethod; + s = FIRGitHubAuthProviderID; + s = FIRGitHubAuthSignInMethod; + s = FIRGoogleAuthProviderID; + s = FIRGoogleAuthSignInMethod; +#if TARGET_OS_IOS + s = FIRPhoneMultiFactorID; + s = FIRTOTPMultiFactorID; + s = FIRPhoneAuthProviderID; + s = FIRPhoneAuthSignInMethod; +#endif + s = FIRTwitterAuthProviderID; + s = FIRTwitterAuthSignInMethod; +} +@end diff --git a/FirebaseAuth/Tests/Unit/SwiftGlobalTests.swift b/FirebaseAuth/Tests/Unit/SwiftGlobalTests.swift new file mode 100644 index 00000000000..0d74f4dd26f --- /dev/null +++ b/FirebaseAuth/Tests/Unit/SwiftGlobalTests.swift @@ -0,0 +1,50 @@ +// Copyright 2023 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +import Foundation +import XCTest + +import FirebaseAuth + +/// Tests globals defined in Objective C sources. These globals are for backward compatibility and +/// should not be used in new code. +class SwiftGlobalTests: XCTestCase { + func GlobalSymbolBuildTest() { + let _ = NSNotification.Name.AuthStateDidChange + let _: String = AuthErrorDomain + let _: String = AuthErrorUserInfoNameKey + let _: String = AuthErrorUserInfoEmailKey + let _: String = AuthErrorUserInfoUpdatedCredentialKey + let _: String = AuthErrorUserInfoMultiFactorResolverKey + let _: String = EmailAuthProviderID + let _: String = EmailLinkAuthSignInMethod + let _: String = EmailPasswordAuthSignInMethod + let _: String = FacebookAuthProviderID + let _: String = FacebookAuthSignInMethod + let _: String = GameCenterAuthProviderID + let _: String = GameCenterAuthSignInMethod + let _: String = GitHubAuthProviderID + let _: String = GitHubAuthSignInMethod + let _: String = GoogleAuthProviderID + let _: String = GoogleAuthSignInMethod + #if os(iOS) + let _: String = PhoneMultiFactorID + let _: String = TOTPMultiFactorID + let _: String = PhoneAuthProviderID + let _: String = PhoneAuthSignInMethod + #endif + let _: String = TwitterAuthProviderID + let _: String = TwitterAuthSignInMethod + } +} diff --git a/Package.swift b/Package.swift index a4d8b4f575a..32eaeb44fab 100644 --- a/Package.swift +++ b/Package.swift @@ -464,6 +464,7 @@ let package = Package( "FIRAuthTests.m", "FIRUserTests.m", "SwiftAPI.swift", // Only builds via CocoaPods testing until Swift source update. + "SwiftGlobalTests.swift", // Only builds via CocoaPods testing until Swift source update. ], cSettings: [ .headerSearchPath("../../.."),