tag:github.com,2008:https://github.com/angular/angularfire/releasesRelease notes from angularfire2025-11-26T05:27:37Ztag:github.com,2008:Repository/49453413/21.0.0-rc.02025-11-26T05:30:52Z21.0.0-rc.0<h2>What's Changed</h2>
<ul>
<li>Bump all Angular dependencies to <code>^21.0.0</code> build to <code>~0.2100.0</code></li>
<li>Bump firebase to next major</li>
<li>Drop vertexai</li>
<li>Lots of lint and tsconfig drama</li>
<li>Unbork Github Actions</li>
</ul>
<p>I fully expect I broke something, there were a lot of build / lint issues with this major. Just need to get the ball rolling here now that all the deps are out. Will publish an update to rxfire to fix the peer conflict.</p>
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/angular/angularfire/compare/20.0.1...21.0.0-rc.0"><tt>20.0.1...21.0.0-rc.0</tt></a></p>jamesdanielstag:github.com,2008:Repository/49453413/20.0.12025-06-12T15:58:07Z20.0.1<h2>What's Changed</h2>
<ul>
<li>fix: Avoid handling promise rejections twice in stability helper by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/atscott/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/atscott">@atscott</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3125755304" data-permission-text="Title is private" data-url="https://github.com/angular/angularfire/issues/3657" data-hovercard-type="pull_request" data-hovercard-url="/angular/angularfire/pull/3657/hovercard" href="https://github.com/angular/angularfire/pull/3657">#3657</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/atscott/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/atscott">@atscott</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3125755304" data-permission-text="Title is private" data-url="https://github.com/angular/angularfire/issues/3657" data-hovercard-type="pull_request" data-hovercard-url="/angular/angularfire/pull/3657/hovercard" href="https://github.com/angular/angularfire/pull/3657">#3657</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/angular/angularfire/compare/20.0.0...20.0.1"><tt>20.0.0...20.0.1</tt></a></p>jamesdanielstag:github.com,2008:Repository/49453413/20.0.02025-06-03T18:17:52Z20.0.0<h2>What's Changed</h2>
<ul>
<li>Peer on Angular v20</li>
<li>Peer on firebase-tools v14</li>
</ul>
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/angular/angularfire/compare/19.2.0...20.0.0"><tt>19.2.0...20.0.0</tt></a></p>jamesdanielstag:github.com,2008:Repository/49453413/20.0.0-rc.02025-05-30T18:22:30Z20.0.0-rc.0<h2>What's Changed</h2>
<ul>
<li>Peer on Angular v20</li>
<li>Peer on firebase-tools v14</li>
</ul>
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/angular/angularfire/compare/19.2.0...20.0.0-rc.0"><tt>19.2.0...20.0.0-rc.0</tt></a></p>jamesdanielstag:github.com,2008:Repository/49453413/19.2.02025-05-20T16:56:25Z19.2.0<h2>What's Changed</h2>
<ul>
<li>Add <code>@angular/fire/ai</code> entry for Firebase AI by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/nohe427/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/nohe427">@nohe427</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3063588558" data-permission-text="Title is private" data-url="https://github.com/angular/angularfire/issues/3650" data-hovercard-type="pull_request" data-hovercard-url="/angular/angularfire/pull/3650/hovercard" href="https://github.com/angular/angularfire/pull/3650">#3650</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/nohe427/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/nohe427">@nohe427</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3063588558" data-permission-text="Title is private" data-url="https://github.com/angular/angularfire/issues/3650" data-hovercard-type="pull_request" data-hovercard-url="/angular/angularfire/pull/3650/hovercard" href="https://github.com/angular/angularfire/pull/3650">#3650</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/angular/angularfire/compare/19.1.0...19.2.0"><tt>19.1.0...19.2.0</tt></a></p>jamesdanielstag:github.com,2008:Repository/49453413/19.1.02025-04-09T03:23:13Z19.1.0<h2>What's Changed</h2>
<ul>
<li>Added data connect to schematics by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/maneesht/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/maneesht">@maneesht</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2915069524" data-permission-text="Title is private" data-url="https://github.com/angular/angularfire/issues/3638" data-hovercard-type="pull_request" data-hovercard-url="/angular/angularfire/pull/3638/hovercard" href="https://github.com/angular/angularfire/pull/3638">#3638</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/maneesht/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/maneesht">@maneesht</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2915069524" data-permission-text="Title is private" data-url="https://github.com/angular/angularfire/issues/3638" data-hovercard-type="pull_request" data-hovercard-url="/angular/angularfire/pull/3638/hovercard" href="https://github.com/angular/angularfire/pull/3638">#3638</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/angular/angularfire/compare/19.0.0...19.1.0"><tt>19.0.0...19.1.0</tt></a></p>jamesdanielstag:github.com,2008:Repository/49453413/19.0.02025-01-17T17:59:14Z19.0.0<h2>What's Changed</h2>
<ul>
<li>Single sample application—demonstrating the modular SDK in a Zoneless SSR application with code-splitting on <code>@defer</code></li>
<li>Now logging zone warnings about instability when using AngularFire outside of an injection context</li>
<li>Added docs on application instability</li>
<li>Bumped Angular, Firebase, and other dependencies</li>
<li>Now bundling CLI dependencies</li>
</ul>
<h3>Added</h3>
<ul>
<li>Support for Angular v19</li>
<li>Support for Zoneless Angular applications</li>
<li>Add <code>setLogLevel</code> to control Zone log verbosity</li>
<li><code>@angular/fire/data-connect</code> entry point</li>
</ul>
<h3>Breaks</h3>
<ul>
<li>Dropped <code>BlockUntilFirstOperator</code> and <code>keepUnstableUntilFirst</code> in favor of Angular's <code>PendingTasks</code> and <code>pendingUntilEvent</code>, this should only be an improvement but requires AngularFire APIs be called in an Injection Context to be able to zone-wrap properly</li>
<li><code>ZoneWrapper</code> and other AngularFire providers are no longer singletons, this allows better functionality with concurrent SSR</li>
<li>Drop <code>isSupported</code> injection hack in favor of testing Angular's <code>PLATFORM_ID</code>, this shouldn't affect most developers but you may need to manually check <code>isSupported</code> if you're targeting browsers that don't support Firebase SDKs e.g, Messaging on older versions of Safari</li>
<li>Renamed <code>vertex-preview</code> entry to <code>vertex</code></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mmalerba/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mmalerba">@mmalerba</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2328674499" data-permission-text="Title is private" data-url="https://github.com/angular/angularfire/issues/3543" data-hovercard-type="pull_request" data-hovercard-url="/angular/angularfire/pull/3543/hovercard" href="https://github.com/angular/angularfire/pull/3543">#3543</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/DellaBitta/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/DellaBitta">@DellaBitta</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2609593269" data-permission-text="Title is private" data-url="https://github.com/angular/angularfire/issues/3570" data-hovercard-type="pull_request" data-hovercard-url="/angular/angularfire/pull/3570/hovercard" href="https://github.com/angular/angularfire/pull/3570">#3570</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/hsubox76/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/hsubox76">@hsubox76</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2659668026" data-permission-text="Title is private" data-url="https://github.com/angular/angularfire/issues/3577" data-hovercard-type="pull_request" data-hovercard-url="/angular/angularfire/pull/3577/hovercard" href="https://github.com/angular/angularfire/pull/3577">#3577</a></li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/rosostolato/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/rosostolato">@rosostolato</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2751346740" data-permission-text="Title is private" data-url="https://github.com/angular/angularfire/issues/3595" data-hovercard-type="pull_request" data-hovercard-url="/angular/angularfire/pull/3595/hovercard" href="https://github.com/angular/angularfire/pull/3595">#3595</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/angular/angularfire/compare/18.0.1...19.0.0"><tt>18.0.1...19.0.0</tt></a></p>jamesdanielstag:github.com,2008:Repository/49453413/19.0.0-rc.52025-01-10T19:33:30Z19.0.0-rc.5<h2>What's Changed</h2>
<ul>
<li>fix(compat): correct injectors to fix issue with compat API on v19 by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/rosostolato/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/rosostolato">@rosostolato</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2751346740" data-permission-text="Title is private" data-url="https://github.com/angular/angularfire/issues/3595" data-hovercard-type="pull_request" data-hovercard-url="/angular/angularfire/pull/3595/hovercard" href="https://github.com/angular/angularfire/pull/3595">#3595</a></li>
<li>Switch the zone console errors to warnings by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jamesdaniels/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jamesdaniels">@jamesdaniels</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2778831371" data-permission-text="Title is private" data-url="https://github.com/angular/angularfire/issues/3608" data-hovercard-type="pull_request" data-hovercard-url="/angular/angularfire/pull/3608/hovercard" href="https://github.com/angular/angularfire/pull/3608">#3608</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/rosostolato/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/rosostolato">@rosostolato</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2751346740" data-permission-text="Title is private" data-url="https://github.com/angular/angularfire/issues/3595" data-hovercard-type="pull_request" data-hovercard-url="/angular/angularfire/pull/3595/hovercard" href="https://github.com/angular/angularfire/pull/3595">#3595</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/angular/angularfire/compare/19.0.0-rc.4...19.0.0-rc.5"><tt>19.0.0-rc.4...19.0.0-rc.5</tt></a></p>jamesdanielstag:github.com,2008:Repository/49453413/19.0.0-rc.42024-12-13T21:36:32Z19.0.0-rc.4<h2>What's Changed</h2>
<ul>
<li>Zone wrapper noops for our other helpers</li>
<li>Add a warning / error on potential Zone / hydration issues</li>
<li>Pass injection context to <code>zoneWrapFn</code></li>
<li>Pass injection context into the Promise wrapper</li>
<li><code>beforeAuthStateChanged</code> should not block</li>
</ul>
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/angular/angularfire/compare/19.0.0-rc.3...19.0.0-rc.4"><tt>19.0.0-rc.3...19.0.0-rc.4</tt></a></p>jamesdanielstag:github.com,2008:Repository/49453413/19.0.0-rc.32024-12-13T04:05:59Z19.0.0-rc.3<h2>What's Changed</h2>
<ul>
<li>Allow use of zone wrappers outside injection context by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/jamesdaniels/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/jamesdaniels">@jamesdaniels</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2737334292" data-permission-text="Title is private" data-url="https://github.com/angular/angularfire/issues/3589" data-hovercard-type="pull_request" data-hovercard-url="/angular/angularfire/pull/3589/hovercard" href="https://github.com/angular/angularfire/pull/3589">#3589</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/angular/angularfire/compare/19.0.0-rc.2...19.0.0-rc.3"><tt>19.0.0-rc.2...19.0.0-rc.3</tt></a></p>jamesdaniels