913 Commits
Author SHA1 Message Date
Daymon 00ed1841fb ci(zip-builder): run infra.zip_diff on pull requests only when the zip builder changes (#17026) 2026-11-06 13:00:08 -06:00
Daymon b4920619a0 ci: run RemoteConfig, AppDistribution and Crashlytics Swift unit tests in SPM CI (#17021) 2026-11-05 21:26:44 -06:00
Daymon 33a58b5ba0 feat(zip-builder): rewrite the zip builder to use SPM as the SoT (#16966) 2026-11-05 15:48:29 -06:00
Nick Cooke 110b22f175 fix(ci): skip sdk and spec_testing builds on changelog updates (#17008) 2026-11-04 21:08:21 -05:00
Daymon aa0118696e ci(zip): use the Authentication quickstart's own FBSDK Swift package (#16993) 2026-11-03 17:18:27 -06:00
Nick Cooke 29e7573f60 fix(ci): stabilize Auth UI tests and integration test retries (#16992) 2026-11-03 15:51:53 -05:00
Nick Cooke e1e760d7ab fix(ci): support cross-repo setup_simulator action and harden runtime matching (#16974) 2026-10-30 12:04:45 -04:00
Daymon 9a9a461f6e chore(ci): pin ubuntu versions (#16958) 2026-10-29 12:24:22 -04:00
DaymonandNick Cooke 8945e1d2d8 fix(ci): bump ruby version (#16956)
Co-authored-by: Nick Cooke <36927374+ncooke3@users.noreply.github.com>
2026-10-27 14:28:29 -04:00
Denver Coneybeare afd5f6dde4 fix(ci): match active Xcode SDK runtime, support iOS 27.1 simulator device, and bump SPM matrix to Xcode 27.1 (#16948) 2026-10-26 11:47:53 -04:00
Denver Coneybeare 56f7e203bc fix(ci): point macOS CMake builds to Homebrew openssl@3 (#16931) 2026-10-22 00:37:24 -04:00
Daymon 272e5bddc7 infra(zip): add basic infra for new zip builder + plan command (#16898) 2026-10-14 19:42:01 +00:00
Paul Beusterien eeb0db81e7 fix(ci): skip test diagnostics collection in SPM test runs (#16781) 2026-10-09 09:49:39 -07:00
Andrew Heard ead1af3543 refactor(ai): revert renaming to Gemini Enterprise API (#16846)
Revert commit dd2cfa8df1 (#16685) to undo
the renaming from Gemini Enterprise Agent Platform to Gemini Enterprise
API.

- Restore Backend.agentPlatform(location:) as the primary public API
  and remove Backend.enterprise(location:).
- Revert APIConfig.Service.enterprise to .agentPlatform and restore
  agentPlatformStagingBypassProxy.
- Revert documentation comments, DocC topics, and guides back to
  Agent Platform Gemini API and Gemini Enterprise Agent Platform.
- Clean up leftover Vertex AI symbols to align with Agent Platform and
  FirebaseAILogic (isFirebaseAILogicServiceDisabledError and
  defaultAgentPlatformAPIConfig).
- Re-align tests and conflict resolutions from #16689, #16693, #16676,
  and #16756.
2026-10-05 23:54:12 +00:00
Andrew Heard 1be8e1fb6b fix(infra): fix quickstart SPM dependency update (#16847)
Update scripts/update_firebase_spm_dependency.sh and
scripts/quickstart_build_spm.sh to reliably update SPM dependencies
across quickstart projects (such as FirebaseAI) in CI.

Key changes:
- Match any requirement type (branch, revision, exactVersion) using
  Perl \K and preserve trailing package attributes like traits.
- Fix --version mode to map to exactVersion instead of branch.
- Pass parameters to Perl via environment variables to prevent regex
  delimiter collisions and variable interpolation issues.
- Add an exit/signal trap with a backup_successful guard to safely
  restore project.pbxproj on failure.
- Run update script as a subprocess rather than sourcing in quickstart
  build script, passing FIREBASECI_USE_LATEST_GOOGLEAPPMEASUREMENT
  explicitly to test.sh.
- Copy mock GoogleService-Info.plist to both sample and nested app
  directories for Xcode 16 synchronized groups.
- Format scripts to adhere to the Google Shell Style Guide and pass
  shellcheck with zero warnings.
2026-10-05 18:44:00 -04:00
ea6d67df19 Test AppCheckCore 12.0.0 (Swift implementation) (#16544)
Co-authored-by: Nick Cooke <nickcooke@google.com>
Co-authored-by: Nick Cooke <36927374+ncooke3@users.noreply.github.com>
2026-09-23 19:22:44 -04:00
762057f711 feat: Add BSON data support for iOS (#16265)
Co-authored-by: Ehsan Nasiri <ehsann@google.com>
Co-authored-by: dlarocque <daniellrq@outlook.com>
Co-authored-by: Daniel La Rocque <dlarocque@google.com>
Co-authored-by: cherylEnkidu <cheryllin@google.com>
Co-authored-by: cherylEnkidu <96084918+cherylEnkidu@users.noreply.github.com>
Co-authored-by: Daymon <daymxn@google.com>
2026-09-23 17:05:26 -04:00
Paul Beusterien dd2cfa8df1 docs(ai): deprecate agentPlatform in favor of enterprise (#16685) 2026-09-23 08:57:25 -07:00
cherylEnkidu ebd232e64b Increase gRPC max metadata size and optimize integration test CI runs (#16661) 2026-09-22 13:09:44 -04:00
Daymon 3b0a09d7da infra(zip): remove CocoaPods umbrella headers. (#16540) 2026-09-18 21:54:13 +00:00
Nick Cooke d04909d0d1 chore: update firestore binary testing package (#16670) 2026-09-18 12:48:28 -04:00
Nick Cooke 4076d94ac5 firebase13: bump minimum macOS to 11.0 and watchOS to 8.0 (#16551) 2026-09-15 11:43:42 -04:00
Nick CookeandAndrew Heard a4e4343e73 firebase13: remove deprecated firebaseai wrapper library (#16610)
Co-authored-by: Andrew Heard <andrewheard@google.com>
2026-09-15 10:17:43 -04:00
Nick Cooke f55b496acd firebase13: remove mlmodeldownloader library (#16512) 2026-09-14 16:20:49 -04:00
cherylEnkiduandNick Cooke 9d157aae90 Update the minimum version from C++14 to C++17 (#15074)
Co-authored-by: Nick Cooke <36927374+ncooke3@users.noreply.github.com>
2026-09-14 17:44:30 +00:00
Andrew Heard 6c5c913df8 test(ai): add GeminiLanguageModel integration test (#16621)
Add an integration test in FirebaseAITestApp verifying streaming
responses using GeminiLanguageModel and FoundationModels on supported
platforms. Update the TestApp project to link FirebaseAILogic.

Enhance scripts/repo to support array options for --filter and
--exclude so multiple test targets can be passed to xcodebuild.

Update sdk.ai.yml to introduce a dedicated integration job running
on xcode-27 with GEMINI_LANGUAGE_MODEL: 1, exclude
GeminiLanguageModelTests from standard integration runs, and provide
human-readable display names for testapp-integration matrix jobs.
2026-09-06 20:17:29 -04:00
Andrew Heard b455c643a8 test(ai): add GeminiLanguageModel SPM test scheme (#16614) 2026-09-05 13:33:58 -04:00
Andrew Heard 3796a55fdf feat(ai): add GeminiLanguageModel (#16601)
Implemented `GeminiLanguageModel`, providing an adapter for Google's
Gemini models conforming to Apple's `FoundationModels.LanguageModel`
protocol. This PR includes text to text generation capabilities; other
modalities and Gemini features will be handled in follow-up PRs.

**Note:** The `GeminiLanguageModel` implementation is guarded by the
environment variable `GEMINI_LANGUAGE_MODEL`. By default none of the
`GeminiLanguageModel` implementation is included.

Key additions:
- `GeminiLanguageModel`: Implements `LanguageModel` protocol with
  reasoning capabilities, configuring execution via `ModelResource`
  and `EndpointConfiguration`.
- `GeminiLanguageModelExecutor`: Converts prompt instructions and
  history into Gemini streaming requests, yielding responses as
  `LanguageModelSession.ResponseStream`.
- `GeminiTranscriptTranslator`: Translates Apple `Transcript` entries
  and segments into Gemini `Content` structures while preserving thought
  signatures and validating supported transcript features.
- `GeminiLanguageModel.Error` and `GeminiErrorMapper`: Translates Gemini
  API, HTTP, and network errors into standard `LanguageModelError` cases
  (`rateLimited`, `timeout`, `guardrailViolation`, `refusal`, and
  `unsupportedLanguageOrLocale`) or `GeminiLanguageModel.Error` cases
  (`serviceUnavailable`, `networkFailure`, `modelNotFound`, `apiError`).
  The `APIError` payload is designed for seamless forward compatibility
  with both GenerateContent and the upcoming Interactions API.
- Testing infrastructure: Adds `ConditionTrait.requireFoundationModels`
  to conditionally run Foundation Models tests only on supported
  platforms (macOS 27+, iOS 27+, watchOS 27+, visionOS 27+), along with
  shared test constants, mock fixtures, and comprehensive unit and
  integration test suites.
2026-09-04 18:05:45 -04:00
Andrew Heard 56c1eef4ea chore(ci): add xcode 27 to spm test matrix (#16604) 2026-09-04 11:38:33 -04:00
Daymon b5bbe060d8 fix(appcheck): build failure with unguarded provider (#16564) 2026-08-28 11:48:10 -05:00
Paul Beusterien 2a6dc1b7f5 Update to clang-format 23 (#16562) 2026-08-26 12:01:13 -07:00
Nick Cooke 956c846935 fix(ci): updates to notices and pull request generators (#16523) 2026-08-19 14:35:12 -07:00
Andrew Heard 5da916b57a ci: replace downloadPlatform with simctl create (#16494) 2026-08-11 12:01:37 -04:00
Andrew Heard 4fea6d1609 fix(ci): isolate AI Live integration test runs (#16493) 2026-08-11 11:59:22 -04:00
Paul Beusterien e5615f4180 Run codeQL for Swift code (#16436) 2026-07-23 08:53:23 -07:00
Nick Cooke 9a0bbc2695 feat(ai-infra): package core team AI skills and infrastructure (#16401) 2026-07-17 15:45:28 -04:00
Daymon 0d902c157a fix(repo): fix root help command logging in repo script (#16403) 2026-07-17 15:32:38 +00:00
Paul BeusterienandAndrew Heard 6b581ae875 [AI] Rename vertexAI to agentPlatform (#16372)
Co-authored-by: Andrew Heard <andrewheard@google.com>
2026-07-13 14:32:58 -07:00
Daniel La Rocque 6aa59b998b Support -b flag in style.sh to format all files changed on current branch (#16384) 2026-07-13 08:15:03 -04:00
Nick Cooke 35140017b6 cleanup(infra): refactor spec testing tooling (#16319) 2026-06-29 18:08:36 -04:00
Nick Cooke e95ff120c0 chore: update .github/actions/testing_report_generation gems (#16325) 2026-06-26 17:07:00 -07:00
Nick Cooke ec27af3339 chore(scripts): remove obsolete style script exclusions (#16314) 2026-06-23 16:55:24 -04:00
Ryan Wilson 228a5ff118 feat(skills): add ios-simulator-test-recording skill for UI test walkthroughs (#16005) 2026-06-22 10:51:43 -04:00
Nick CookeandPaul Beusterien 06d53a2ae0 feat(appcheck): implement RecaptchaEnterpriseProvider and tests (#16155)
Co-authored-by: Paul Beusterien <paulbeusterien@google.com>
2026-06-10 12:08:31 -04:00
Daymon fb7516a9bd feat(ci): separate AI Logic live tests from the others (#16219) 2026-06-02 13:14:45 -05:00
Morgan Chen 6f843d9a81 Use the actual variable name (#16213) 2026-05-28 14:52:33 -07:00
Morgan Chen 0badf7cf14 fix missing variable name (#16212) 2026-05-28 14:29:22 -07:00
Nick Cooke e50c20a74c cleanup(infra): remove health metrics presubmit infra (#16195) 2026-05-27 13:11:23 -04:00
cherylEnkidu b9387da4ec Add xcresults upload for failed test (#16154) 2026-05-04 13:24:01 -04:00
Andrew Heard f0ec14ccf0 [CI] Remove OS=${xcode_version} from watchos_flags in build.sh (#16115) 2026-04-23 21:05:03 -04:00