update error handling docs for current API#18401
Conversation
firebase#17871) * CI: clear cached AVD and adb files before starting emulator * chore: optimize AVD setup by removing unnecessary packages and cleaning up disk space * chore: enhance AVD setup by adding disk space cleanup for fdc step * ci(fdc): dump dataconnect emulator log on failure * chore(fdc): remove dataconnect log dump
…#17867) * fix(database, Android): resolve limit modifier type casting * test: add tests for limitToFirst and limitToLast stream emissions
…ion (firebase#17874) * refactor(firebase_core, web): stop passing variant to registerVersion * refactor(firebase_core, web): add optional variant parameter to registerVersion
…ier and add test for numeric startAt (firebase#17880)
…se_messaging` (firebase#17888) * feat(firebase_messaging): implement scene delegate support for iOS * feat(firebase_messaging, iOS): add scene delegate support firebase_messaging * chore: add missing newline at end of AppDelegate.h, AppDelegate.m, and Info.plist
* ci: upgrade emulator workflows to JDK 21 * ci: add emulator build version to Android and FDC workflows
…e in ThenableReference (firebase#17915)
… methods (firebase#17905) * fix(firebase_messaging): enhance iOS scene delegate support and improve notification handling * fix(firebase_messaging): refactor notification handling in scene delegate methods * fix(firebase_messaging): improve scene delegate support for notification handling * chore: remove redundant plugin registration in AppDelegate
* chore(release): publish packages - cloud_functions@6.0.5 - firebase_analytics@12.1.0 - firebase_app_check_web@0.2.2+1 - firebase_core@4.3.0 - firebase_core_web@3.3.1 - firebase_database@12.1.1 - firebase_database_web@0.2.7+2 - firebase_messaging@16.1.0 - firebase_app_check@0.4.1+3 - firebase_data_connect@0.2.2+1 - firebase_ai@3.6.1 - firebase_auth@6.1.3 - firebase_crashlytics@5.0.6 - _flutterfire_internals@1.3.65 - firebase_remote_config_platform_interface@2.0.6 - firebase_auth_web@6.1.1 - firebase_remote_config@6.1.3 - firebase_auth_platform_interface@8.1.5 - cloud_firestore@6.1.1 - firebase_in_app_messaging_platform_interface@0.2.5+16 - firebase_app_installations@0.4.0+5 - firebase_in_app_messaging@0.9.0+5 - cloud_firestore_platform_interface@7.0.5 - firebase_crashlytics_platform_interface@3.8.16 - firebase_app_installations_web@0.1.7+1 - cloud_firestore_web@5.1.1 - firebase_ml_model_downloader@0.4.0+5 - firebase_analytics_platform_interface@5.0.5 - firebase_analytics_web@0.6.1+1 - firebase_app_check_platform_interface@0.2.1+3 - firebase_performance@0.11.1+3 - firebase_remote_config_web@1.10.2 - firebase_storage@13.0.5 - cloud_functions_web@5.1.1 - firebase_messaging_web@4.1.1 - firebase_database_platform_interface@0.3.0+1 - firebase_app_installations_platform_interface@0.1.4+64 - firebase_messaging_platform_interface@4.7.5 - firebase_ml_model_downloader_platform_interface@0.1.5+16 - firebase_performance_web@0.1.8+1 - firebase_performance_platform_interface@0.1.6+3 - firebase_storage_web@3.11.1 - cloud_functions_platform_interface@5.8.8 - firebase_storage_platform_interface@5.2.16 * chore: BoM Version 4.7.0 * release
…ode (firebase#17919) * fix(firebase_core, web): return empty list from apps getter in WASM mode Fixes firebase#17918 The `apps` getter now checks if the Firebase core module is loaded before accessing `firebase.apps`. This avoids triggering a JavaScript exception when Firebase is not initialized, which is more efficient than relying on exception handling. This change ensures `Firebase.apps` returns an empty list in both JS and WASM web builds when called before `Firebase.initializeApp()`. * Fix test formatting
…and QuotaExceeded (firebase#17928) * fix(firebase_ai): add missing error exports for ServiceApiNotEnabled and QuotaExceeded * refactor(response_parsing_test): remove unused error import
…o iOS 18.0 only (firebase#17932) * fix(messaging, iOS): scope iOS 18 duplicate notification workaround to iOS 18.0 only * fix(messaging, ios): use message id for iOS 18 duplicate filter
* add the thinkingLevel api * Add test cases * Apply suggestions from code review Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * more review feedback * more comments --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
…#17930) * chore(ci): pin android emulator runner action to fixed SHA it was previously on the sliding v2 tag and could update to unknown code without notice * chore(ci): only cache main - avoid branches LRU evicting main cache use the separate actions/cache "restore" and "save" actions so we may only save optional based on whether we are on main or not in the case of ccache-action, specify the optional `save` parameter implementing the same "only save on main" criteria actions/cache isolates branch caches from main to avoid branch cache poison attacks on main runs but branches may see main cache as those caches are considered trustworthy branch caches do consume available LRU storage though, meaning branch caches could evict main caches and in high traffic / large cache repositories like this one that means caches LRU out frequently and cache hit rates are terrible unless you cache on main only * chore(ci): cache restore/save failures should never break the build very occasionally, there are errors in the `hashFiles` function used to calculate cache keys, and this causes a build error that is a flake, not a valid CI failure signal so, continue the workflow even if the caching setup has errors, as that is a recoverable problem and the workflow may still have a valid success outcome * chore(ci): make github primary cache keys unique so caches update github workflow caches are considered immutable, they will never update if there was a hit on the primary cache key ergo, if the primary cache key never changes the caches will never update and you will only ever get fresh caches by chance if stale caches are evicted via LRU cache storage limit management So, all cache primary keys are unique now according to the requirements of the specific cache - the AVD cache is now unique on the api-level/target/arch tuple, and that is set and referenced in an environment variable since it is now used in two places - the firebase emulator cache is set based on the firebase-tools version, which always changes when new emulator versions are downloaded * chore(ci): firebase emulators are cross-platform, share cache across OSs the downloaded/cached files are pure javascript and java, they may be shared across operating systems safely * style(lint): fix minor formatting errors
* add tool_test, add AutoFunctionDeclaration * first pass of the auto function call * Added auto function call to sendMessageStream * update the example test * fix the auto function calling logic * Add test for normal stream function calling and auto stream function calling * Added parallel auto function calling test case * fix analyzer * Apply suggestions from code review Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * convert on of the code review suggestion * clean up and refactor the page * address review comment * fix formatter * fix analyzer * more fix --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
…lecting Firestore instances before termination (firebase#17956)
…on (firebase#17843) * feat(firebase_ai): add LiveServerGoAway message for session termination * feat(firebase_ai): add test for parsing goAway message in LiveServer response * chore: rename LiveServerGoAway to GoingAwayNotice and update related tests
* chore(release): publish packages - cloud_firestore@6.1.2 - cloud_functions@6.0.6 - firebase_ai@3.7.0 - firebase_core@4.4.0 - firebase_core_web@3.4.0 - firebase_database@12.1.2 - firebase_messaging@16.1.1 - _flutterfire_internals@1.3.66 - firebase_database_platform_interface@0.3.0+2 - firebase_crashlytics_platform_interface@3.8.17 - firebase_data_connect@0.2.2+2 - firebase_auth_platform_interface@8.1.6 - firebase_remote_config@6.1.4 - firebase_app_installations@0.4.0+6 - firebase_remote_config_platform_interface@2.0.7 - firebase_app_check_platform_interface@0.2.1+4 - firebase_app_installations_web@0.1.7+2 - firebase_crashlytics@5.0.7 - cloud_functions_web@5.1.2 - firebase_in_app_messaging_platform_interface@0.2.5+17 - firebase_in_app_messaging@0.9.0+6 - firebase_storage_platform_interface@5.2.17 - firebase_database_web@0.2.7+3 - firebase_storage@13.0.6 - firebase_analytics_platform_interface@5.0.6 - firebase_performance_platform_interface@0.1.6+4 - firebase_app_check_web@0.2.2+2 - firebase_app_installations_platform_interface@0.1.4+65 - firebase_ml_model_downloader@0.4.0+6 - firebase_app_check@0.4.1+4 - firebase_ml_model_downloader_platform_interface@0.1.5+17 - firebase_analytics@12.1.1 - firebase_remote_config_web@1.10.3 - firebase_auth@6.1.4 - firebase_auth_web@6.1.2 - cloud_functions_platform_interface@5.8.9 - firebase_analytics_web@0.6.1+2 - firebase_performance@0.11.1+4 - firebase_messaging_web@4.1.2 - firebase_performance_web@0.1.8+2 - cloud_firestore_platform_interface@7.0.6 - firebase_storage_web@3.11.2 - cloud_firestore_web@5.1.2 - firebase_messaging_platform_interface@4.7.6 * chore: BoM Version 4.8.0 * pacakges
…orrectly (firebase#17943) * ci: cache key names must include enough information to expire correctly the flutter action caches things by default with a cache key name that is not specific enough that it will expire if a new version comes out alter the key naming to include all pertinent details about the flutter version (or pub version) being cached so that new versions will get a fresh cache see https://github.com/subosito/flutter-action?tab=readme-ov-file#caching in combination with knowledge that github actions/cache produces *immutable* caches so they will never update meaning you must make a new cache if a new version comes out * ci: pods cache keys based on flutter deps, Podfile.lock is not available the Podfile.lock files are not committed to the repository so they cannot be used for cache key disambiguation via hashfiles - they generate an emptry string however, the real dependencies for Pods are driven from the pubspec, so hashing the pubspec.lock file should be sufficient to generate fresh caches when Pods change
…aPart were serialized as normal generative inlineData (firebase#18350)
* ci: add AGP9 compatibility checks in CI * update * update
* speech config init * add test page for TTS * fix analyzer * format
* improve a bit of the tts test page * format
Bumps [@grpc/grpc-js](https://github.com/grpc/grpc-node) from 1.9.15 to 1.9.16. - [Release notes](https://github.com/grpc/grpc-node/releases) - [Commits](https://github.com/grpc/grpc-node/compare/@grpc/grpc-js@1.9.15...@grpc/grpc-js@1.9.16) --- updated-dependencies: - dependency-name: "@grpc/grpc-js" dependency-version: 1.9.16 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.25.0 to 0.28.1. - [Release notes](https://github.com/evanw/esbuild/releases) - [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG-2025.md) - [Commits](evanw/esbuild@v0.25.0...v0.28.1) --- updated-dependencies: - dependency-name: esbuild dependency-version: 0.28.1 dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…out) (firebase#18261) * first commit for appcheck recaptcha support * update example * apple tentative implementation * add recaptcha in the plugin swift * minor fix * some dart fix * updated sample app UI * update api name and parameter * pigeon update * setup for web, need firebase#18334 for e2e test * make the web work with default rCE provider * Add recaptcha sitekey from options to native sdk * add test for option recaptchaSiteKey * address code review * update the example UI * only make the new web provider const * some clean up in gradle * change the import of recaptcha from implementation to compileOnly * don't need appcheck example update for this PR * fix analyze and format (some) * not use compileOnly, but instead actually depend on appcheck-recaptcha * fix the format of pigeon generated files * bump Firebase android SDK to 34.15.0 * bump Firebase ios SDK to 12.15.0 * bump Firebase web SDK to 12.15.0 * update appcheck test app kotlin version * Add recaptcha dependency to flutter appcheck plugin
* chore: format * format
* chore(release): publish packages - cloud_firestore@6.6.0 - cloud_firestore_web@5.6.0 - firebase_ai@3.13.0 - firebase_analytics@12.4.3 - firebase_app_check@0.4.5 - firebase_app_check_platform_interface@0.4.1 - firebase_app_check_web@0.2.5 - firebase_core@4.11.0 - firebase_core_platform_interface@7.1.0 - firebase_core_web@3.9.0 - firebase_messaging@16.4.0 - firebase_messaging_platform_interface@4.9.0 - firebase_data_connect@0.3.0+4 - _flutterfire_internals@1.3.73 - cloud_firestore_platform_interface@8.0.3 - cloud_functions@6.3.3 - cloud_functions_platform_interface@6.0.3 - cloud_functions_web@5.1.9 - firebase_analytics_platform_interface@6.0.3 - firebase_analytics_web@0.6.1+9 - firebase_app_installations@0.4.2+4 - firebase_app_installations_platform_interface@0.1.4+72 - firebase_app_installations_web@0.1.7+9 - firebase_auth@6.5.3 - firebase_auth_platform_interface@9.0.3 - firebase_auth_web@6.2.3 - firebase_crashlytics@5.2.4 - firebase_crashlytics_platform_interface@3.8.24 - firebase_database@12.4.3 - firebase_database_platform_interface@0.4.0+3 - firebase_database_web@0.2.7+10 - firebase_in_app_messaging@0.9.2+4 - firebase_in_app_messaging_platform_interface@0.2.5+24 - firebase_messaging_web@4.2.1 - firebase_ml_model_downloader@0.4.2+4 - firebase_ml_model_downloader_platform_interface@0.1.5+24 - firebase_performance@0.11.4+3 - firebase_performance_platform_interface@0.2.0+3 - firebase_performance_web@0.1.8+9 - firebase_remote_config@6.5.3 - firebase_remote_config_platform_interface@3.0.3 - firebase_remote_config_web@1.10.10 - firebase_storage@13.4.3 - firebase_storage_platform_interface@6.0.3 - firebase_storage_web@3.11.9 * chore: BoM Version 4.16.0 * updates * fix * fix * fix * fixing
…n in `FLTFirebaseDatabasePlugin` (firebase#18373)
Bumps [protobufjs](https://github.com/protobufjs/protobuf.js) from 7.6.0 to 7.6.4. - [Release notes](https://github.com/protobufjs/protobuf.js/releases) - [Changelog](https://github.com/protobufjs/protobuf.js/blob/protobufjs-v7.6.4/CHANGELOG.md) - [Commits](protobufjs/protobuf.js@protobufjs-v7.6.0...protobufjs-v7.6.4) --- updated-dependencies: - dependency-name: protobufjs dependency-version: 7.6.4 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…its (firebase#18382) Port boot-status polling from react-native-firebase CI: wait for simctl bootstatus after simulator-action (or simctl boot)
* ci: fix running issues * fix * fix * fix * fix
* chore(release): publish packages - firebase_auth@6.5.4 - firebase_database@12.4.4 - firebase_messaging@16.4.1 - firebase_ai@3.13.1 - firebase_data_connect@0.3.0+5 * chore: BoM Version 4.16.1
* chore: remove unused extend from PlatformInterface * fix
…se#18390) * fix(firestore): large snapshots do not block frame scheduling * fix * fix * fix
Removed fetchSignInMethodsForEmail() usage from errors.md code example since it's been deprecated and removed for security reasons (email enumeration). Updated the account-exists-with-different-credential section to prompt users for their existing provider instead. Also improved the deprecation notice in email-link-auth.md to be clearer about why the method was removed and what to use instead.
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. |
Wiz Scan Summary
|
| Scanner | Findings |
|---|---|
| 71 |
|
| - | |
| - | |
| 8 |
|
| 2 |
|
| - | |
| Total | 71 |
To detect these findings earlier in the dev lifecycle, try using Wiz Code VS Code Extension.
The error handling docs were still using
fetchSignInMethodsForEmail()which has been deprecated and removed for security reasons (email enumeration).Updated
docs/auth/errors.md:fetchSignInMethodsForEmail()with a simpler pattern that prompts the user to sign in with their existing providerAlso cleaned up
docs/auth/email-link-auth.md:fetchSignInMethodsForEmail()was removedFixes #12909