unstale

npm / firebase

firebase

What changed in firebase 12 to 13, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-20.

9 breaking1 security6 deprecations3 new APIs and options1 performance5 behavior and defaults12 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli on npm

firebase 1322 changes

Breaking changes 8

  • The previously deprecated backend type was removed; use BackendType.AGENT_PLATFORM instead.

    13.0.0release notes

  • ChatSession is now exported as an interface instead of a class.

    13.0.0release notes

  • Part is now a discriminated union with explicit type properties; type discriminators are stripped on wire egress.

    13.0.0release notes

  • templateVariables is now required in StartTemplateChatParams.

    13.0.0release notes

  • Now accepts a unified TemplateRequest object as its first parameter.

    13.0.0release notes

  • Now accepts a unified TemplateRequest object as its first parameter.

    13.0.0release notes

  • templateVariables is now required in TemplateRequest.

    13.0.0release notes

  • The previously deprecated VertexAIBackend API was removed; use AgentPlatformBackend instead.

    13.0.0release notes

Deprecations 6

  • Deprecated in GenerationConfig and LiveGenerationConfig because the parameter is unsupported in Gemini 3.x and later models.

    13.0.0release notes

  • Deprecated in GenerationConfig and LiveGenerationConfig because the parameter is unsupported in Gemini 3.x and later models.

    13.0.0release notes

  • Deprecated in GenerationConfig and LiveGenerationConfig because the parameter is unsupported in Gemini 3.x and later models.

    13.0.0release notes

  • Deprecated in GenerationConfig and LiveGenerationConfig because the parameter is unsupported in Gemini 3.x and later models.

    13.0.0release notes

  • Deprecated in GenerationConfig and LiveGenerationConfig because the parameter is unsupported in Gemini 3.x and later models.

    13.0.0release notes

  • Deprecated in GenerationConfig and LiveGenerationConfig because the parameter is unsupported in Gemini 3.x and later models.

    13.0.0release notes

New APIs and options 2

Behavior and default changes 3

  • Its default model-access location is global; specify us-central1 explicitly when needed.

    13.0.0release notes

  • The default hybrid-in-cloud model is now gemini-3.5-flash-lite.

    13.0.0release notes

  • UpdateData<T> now allows indexed types or Record<X, T> for T.

    13.0.0release notes

Fixes and other changes 3

  • Suppresses false-positive CONFIG_UPDATE_STREAM_ERROR events when the application enters the background and reconnects if it returns to the foreground before closing finishes.

    13.0.0release notes

  • Auth initialization now preserves the persisted user when the initial reload fails due to transient quota or rate-limit errors.

    13.0.0release notes

  • The Temporal namespace declaration is now included in global_index.d.ts.

    13.0.0release notes

firebase 1215 changes

Breaking changes 1

  • Imagen methods and types have been removed because Imagen models were shut down; migrate apps to Gemini Image models as a replacement.

    12.18.0release notes

Security 1

  • Fixed recognition of App Check tokens sent in Firebase SQL Connect Realtime requests.

    12.18.0release notes

New APIs and options 1

  • Firestore now supports conversion and serialization between Temporal.Instant and Firestore Timestamp.

    12.19.0release notes

Performance 1

  • Updated the WebSocket URL path for SQL Connect server affinity to improve server resource usage efficiency and performance.

    12.18.0release notes

Behavior and default changes 2

  • The debug token log message now includes Firebase CLI commands, a Firebase Console registration link, and a debug token guide.

    12.18.0release notes

  • FunctionsError now includes the HTTP status code in its message and the URL in customData, providing more details about the error.

    12.18.0release notes

Fixes and other changes 9

  • Firestore fetch connection error messages are no longer undefined.

    12.19.0release notes

  • Storage and persistence errors during current user updates are wrapped as FirebaseError with code auth/internal-error; the original exception is attached under error.customData.originalError.

    12.19.0release notes

  • The SDK no longer hardcodes an invalid function role, preventing 400 errors during function calling on gemini-3.6-flash.

    12.19.0release notes

  • Persistence can reconnect on demand after pagehide events, fixing Database is closing errors during signInWithPopup on iPadOS and iOS Safari.

    12.19.0release notes

  • When persistence initialization fails or storage is inaccessible, the SDK falls back to in-memory persistence, preventing initialization deadlocks and ensuring authStateReady() resolves.

    12.19.0release notes

  • Structured outputs now accept text/x.enum alongside application/json when responseSchema or responseJsonSchema is provided.

    12.19.0release notes

  • Corrected the log to name the referenced document rather than the document that contains the reference.

    12.18.0release notes

  • Removed the visibilitychange listener to fix signInWithPopup and other background-tab operations failing with “Database is closing/hidden.”

    12.18.0release notes

  • Fixed LanguageModel detection that prevented on-device models from being used in Chrome Extensions.

    12.18.0release notes