Skip to content

Commit 883da48

Browse files
authored
Merge branch 'main' into nc/quickstarts
2 parents eb1d249 + ec7f926 commit 883da48

File tree

227 files changed

+8146
-701
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

227 files changed

+8146
-701
lines changed

.github/actions/notices_generation/Gemfile.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ GEM
9898
sawyer (~> 0.8.0, >= 0.5.3)
9999
plist (3.6.0)
100100
public_suffix (4.0.6)
101-
rexml (3.4.1)
101+
rexml (3.4.2)
102102
ruby-macho (2.5.1)
103103
ruby2_keywords (0.0.2)
104104
sawyer (0.8.2)

.github/workflows/auth.yml

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -132,13 +132,14 @@ jobs:
132132
# testapp_dir: quickstart-ios/build-for-testing
133133
# test_type: "xctest"
134134

135-
# auth-cron-only:
136-
# needs: pod_lib_lint
137-
# uses: ./.github/workflows/common_cocoapods_cron.yml
138-
# with:
139-
# product: FirebaseAuth
140-
# platforms: '[ "ios", "tvos --skip-tests", "macos --skip-tests", "watchos --skip-tests" ]'
141-
# flags: '[ "--use-static-frameworks" ]'
142-
# setup_command: scripts/configure_test_keychain.sh
143-
# secrets:
144-
# plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
135+
auth-cron-only:
136+
needs: pod_lib_lint
137+
uses: ./.github/workflows/common_cocoapods_cron.yml
138+
with:
139+
product: FirebaseAuth
140+
platforms: '[ "ios", "tvos --skip-tests", "macos --skip-tests", "watchos --skip-tests" ]'
141+
flags: '[ "--use-static-frameworks" ]'
142+
setup_command: scripts/configure_test_keychain.sh
143+
ignore_deprecation_warnings: true
144+
secrets:
145+
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}

.github/workflows/common_cocoapods.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,12 @@ on:
7575
required: false
7676
default: true
7777

78+
# Whether to lint with `--verbose`. Defaults to false.
79+
verbose:
80+
type: boolean
81+
required: false
82+
default: false
83+
7884
# Whether to additionally build with Swift 6. Defaults to false.
7985
supports_swift6:
8086
type: boolean
@@ -151,6 +157,7 @@ jobs:
151157
command: |
152158
scripts/pod_lib_lint.rb ${{ inputs.product }}.podspec --platforms=${{ matrix.platform }} \
153159
${{ inputs.allow_warnings == true && '--allow-warnings' || '' }} \
160+
${{ inputs.verbose == true && '--verbose' || '' }} \
154161
${{ inputs.analyze == false && '--no-analyze' || '' }} \
155162
${{ inputs.test_specs != '' && format('--test-specs={0}', inputs.test_specs) || '' }} \
156163
${{ (contains(inputs.buildonly_platforms, matrix.platform) || contains(inputs.buildonly_platforms, 'all')) && '--skip-tests' || '' }}

.github/workflows/common_cocoapods_cron.yml

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,11 @@ on:
4646
required: false
4747
default: "macos-15"
4848

49-
env:
50-
FIREBASE_CI: true
49+
# Whether to ignore deprecation warnings by setting FIREBASE_CI.
50+
ignore_deprecation_warnings:
51+
type: boolean
52+
required: false
53+
default: false
5154

5255
jobs:
5356
cron-job:
@@ -67,6 +70,9 @@ jobs:
6770
run: scripts/setup_bundler.sh
6871
- name: Xcode
6972
run: sudo xcode-select -s /Applications/${{ inputs.xcode }}.app/Contents/Developer
73+
- name: Set FIREBASE_CI, if needed.
74+
if: inputs.ignore_deprecation_warnings == true
75+
run: echo "FIREBASE_CI=true" >> $GITHUB_ENV
7076
- name: Run setup command, if needed.
7177
if: inputs.setup_command != ''
7278
env:

.github/workflows/crashlytics.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ on:
1818
- 'Interop/Analytics/Public/*.h'
1919
- 'Gemfile*'
2020
schedule:
21-
# Run every day at 7pm (PDT) / 10pm (EDT) - cron uses UTC times
22-
- cron: '0 2 * * *'
21+
# Run every day at 11pm (PDT) / 2am (EDT) - cron uses UTC times
22+
- cron: '0 6 * * *'
2323

2424
concurrency:
2525
group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}

.github/workflows/firebaseai.yml

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,12 @@ permissions:
2727

2828
jobs:
2929
spm:
30+
strategy:
31+
matrix:
32+
target: [FirebaseAILogicUnit, FirebaseAIUnit]
3033
uses: ./.github/workflows/common.yml
3134
with:
32-
target: FirebaseAIUnit
35+
target: ${{ matrix.target }}
3336
setup_command: scripts/update_vertexai_responses.sh
3437

3538
testapp-integration:
@@ -56,13 +59,13 @@ jobs:
5659
path: .build
5760
key: ${{ needs.spm.outputs.cache_key }}
5861
- name: Install Secret GoogleService-Info.plist
59-
run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/VertexAI/TestApp-GoogleService-Info.plist.gpg \
62+
run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FirebaseAI/TestApp-GoogleService-Info.plist.gpg \
6063
FirebaseAI/Tests/TestApp/Resources/GoogleService-Info.plist "$secrets_passphrase"
6164
- name: Install Secret GoogleService-Info-Spark.plist
62-
run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/VertexAI/TestApp-GoogleService-Info-Spark.plist.gpg \
65+
run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FirebaseAI/TestApp-GoogleService-Info-Spark.plist.gpg \
6366
FirebaseAI/Tests/TestApp/Resources/GoogleService-Info-Spark.plist "$secrets_passphrase"
6467
- name: Install Secret Credentials.swift
65-
run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/VertexAI/TestApp-Credentials.swift.gpg \
68+
run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FirebaseAI/TestApp-Credentials.swift.gpg \
6669
FirebaseAI/Tests/TestApp/Tests/Integration/Credentials.swift "$secrets_passphrase"
6770
- name: Xcode
6871
run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app/Contents/Developer
@@ -77,9 +80,12 @@ jobs:
7780
retention-days: 2
7881

7982
pod_lib_lint:
83+
strategy:
84+
matrix:
85+
product: [FirebaseAILogic, FirebaseAI]
8086
uses: ./.github/workflows/common_cocoapods.yml
8187
with:
82-
product: FirebaseAI
88+
product: ${{ matrix.product }}
8389
supports_swift6: true
8490
setup_command: scripts/update_vertexai_responses.sh
8591

.github/workflows/spm.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,12 @@ jobs:
8585
max_attempts: 3
8686
retry_wait_seconds: 120
8787
command: scripts/build.sh Firebase-Package iOS ${{ matrix.test }}
88+
- uses: actions/upload-artifact@v4
89+
if: ${{ failure() }}
90+
with:
91+
name: spm-build-run-${{ matrix.os }}-${{ matrix.xcode }}-logs
92+
path: xcodebuild-*.log
93+
if-no-files-found: error
8894

8995
# Test iOS Device build since some Firestore dependencies build different files.
9096
iOS-Device:
@@ -113,6 +119,12 @@ jobs:
113119
run: scripts/setup_spm_tests.sh
114120
- name: iOS Device and Test Build
115121
run: scripts/third_party/travis/retry.sh ./scripts/build.sh Firebase-Package iOS-device spmbuildonly
122+
- uses: actions/upload-artifact@v4
123+
if: ${{ failure() }}
124+
with:
125+
name: spm-ios-device-${{ matrix.os }}-${{ matrix.xcode }}-logs
126+
path: xcodebuild-*.log
127+
if-no-files-found: error
116128

117129
platforms:
118130
# Don't run on private repo unless it is a PR.
@@ -148,3 +160,10 @@ jobs:
148160
run: scripts/third_party/travis/retry.sh ./scripts/build.sh version-test ${{ matrix.target }} spm
149161
- name: Analytics Build Tests
150162
run: scripts/third_party/travis/retry.sh ./scripts/build.sh analytics-import-test ${{ matrix.target }} spm
163+
- uses: actions/upload-artifact@v4
164+
if: ${{ failure() }}
165+
with:
166+
name: spm-platforms-${{ matrix.target }}-${{ matrix.os }}-${{ matrix.xcode }}-logs
167+
path: xcodebuild-*.log
168+
if-no-files-found: error
169+

.github/workflows/zip.yml

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -457,6 +457,57 @@ jobs:
457457
quickstart-ios/
458458
!quickstart-ios/**/GoogleService-Info.plist
459459
460+
quickstart_framework_firebaseai:
461+
needs: package-head
462+
if: ${{ !cancelled() && (success() || github.event.inputs.zip_run_id != '') }}
463+
env:
464+
plist_secret: ${{ secrets.GHASecretsGPGPassphrase1 }}
465+
SDK: "FirebaseAI"
466+
# This is a workaround to use the FirebaseAIExampleZip scheme that does not have the SPM dependency.
467+
SWIFT_SUFFIX: "Zip"
468+
strategy:
469+
matrix:
470+
artifact: [Firebase-actions-dir, Firebase-actions-dir-dynamic]
471+
build-env:
472+
- os: macos-15
473+
xcode: Xcode_16.4
474+
runs-on: ${{ matrix.build-env.os }}
475+
steps:
476+
- uses: actions/checkout@v4
477+
- name: Get framework dir
478+
uses: actions/[email protected]
479+
with:
480+
name: ${{ matrix.artifact }}
481+
run-id: ${{ github.event.inputs.zip_run_id || github.run_id }}
482+
github-token: ${{ secrets.GITHUB_TOKEN }}
483+
- uses: ruby/setup-ruby@354a1ad156761f5ee2b7b13fa8e09943a5e8d252 # v1
484+
- name: Xcode
485+
run: sudo xcode-select -s /Applications/${{ matrix.build-env.xcode }}.app/Contents/Developer
486+
- name: Setup Bundler
487+
run: ./scripts/setup_bundler.sh
488+
- name: Move frameworks
489+
run: |
490+
mkdir -p "${HOME}"/ios_frameworks/
491+
find "${GITHUB_WORKSPACE}" -name "Firebase*latest.zip" -exec unzip -d "${HOME}"/ios_frameworks/ {} +
492+
- uses: actions/checkout@v4
493+
- name: Setup quickstart
494+
run: SAMPLE="$SDK" TARGET="${SDK}ExampleZip" scripts/setup_quickstart_framework.sh \
495+
"${HOME}"/ios_frameworks/Firebase/FirebaseAILogic/* \
496+
"${HOME}"/ios_frameworks/Firebase/FirebaseAnalytics/*
497+
- name: Install Secret GoogleService-Info.plist
498+
run: scripts/decrypt_gha_secret.sh scripts/gha-encrypted/FirebaseAI/TestApp-GoogleService-Info.plist.gpg \
499+
quickstart-ios/firebaseai/GoogleService-Info.plist "$plist_secret"
500+
- name: Test Quickstart
501+
run: ([ -z $plist_secret ] || scripts/third_party/travis/retry.sh scripts/test_quickstart_framework.sh "${SDK}")
502+
- name: Remove data before upload
503+
if: ${{ failure() }}
504+
run: scripts/remove_data.sh firebaseai
505+
- uses: actions/upload-artifact@v4
506+
if: ${{ failure() }}
507+
with:
508+
name: quickstart_artifacts_firebaseai
509+
path: quickstart-ios/
510+
460511
quickstart_framework_firestore:
461512
needs: packaging_done
462513
if: ${{ !cancelled() }}

Carthage.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ Firebase components that you want to include in your app. Note that
3131

3232
```
3333
binary "https://dl.google.com/dl/firebase/ios/carthage/FirebaseABTestingBinary.json"
34-
binary "https://dl.google.com/dl/firebase/ios/carthage/FirebaseAIBinary.json"
34+
binary "https://dl.google.com/dl/firebase/ios/carthage/FirebaseAILogicBinary.json"
3535
binary "https://dl.google.com/dl/firebase/ios/carthage/FirebaseAdMobBinary.json"
3636
binary "https://dl.google.com/dl/firebase/ios/carthage/FirebaseAnalyticsBinary.json"
3737
binary "https://dl.google.com/dl/firebase/ios/carthage/FirebaseAppCheckBinary.json"

CoreOnly/NOTICES

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ AppCheckCore
22
Firebase
33
FirebaseABTesting
44
FirebaseAI
5+
FirebaseAILogic
56
FirebaseAppCheck
67
FirebaseAppCheckInterop
78
FirebaseAppDistribution

0 commit comments

Comments
 (0)