Conversation
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize the Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counterproductive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. |
…gins main replaced the Objective-C and Java auth plugins after this branch was opened, so port the setting over and harden the capture step: - implement setSettings' migration in FLTFirebaseAuthPlugin.swift and update the Kotlin plugin for the new return type - fall back to reading the keychain when currentUser has not been restored yet, so migrating at app startup no longer silently drops the session - move the keychain-sharing entitlement to the auth example app, which is where the auth e2e tests now live - cover the migrateCurrentUser/userAccessGroup argument guard with a test
…entUser Adding a named argument to FirebaseAuth.setSettings invalidates the generated mock's override, which broke analyze and the websocket transport test.
Description
Changing Firebase Auth's Apple keychain access group clears an existing unshared user before Dart can retain it. This adds an opt-in
migrateCurrentUsersetting that captures the native user before switching access groups and restores it withupdateCurrentUser, preserving existing sessions including anonymous users.The captured user is
Auth.currentUser, falling back to reading the keychain directly when Auth has not restored the session yet, so migration also works when it runs at app startup.setSettingsreturns the migrated user so the DartcurrentUsercache is reconciled before auth-state events arrive.migrateCurrentUserrequires a non-nulluserAccessGroupand is iOS/macOS only; other platforms ignore it.An iOS integration test verifies that an anonymous user's UID is preserved when moving to the auth example app's shared keychain access group.
Related Issues
Checklist
///).melos run analyze) does not report any problems on my PR.Breaking Change