Skip to content

Latest commit

 

History

History
979 lines (605 loc) · 67.6 KB

CHANGELOG.md

File metadata and controls

979 lines (605 loc) · 67.6 KB

7.2.1 (2022-02-10)

Bug Fixes

  • compat: Typescript 4.5 inference breaks the PromiseProxy (#3144) (f61bc7d), closes #3090 #3088
  • core: Address bad arguments being passed to zone wrapper (#3127) (8b693e4)
  • core: Defensively catch Firebase isSupported calls (#3146) (520930b)
  • schematic: use oneOf rather than array types in the deploy schematic (#3092) (058d624)
  • schematics: Address ng add console lock up (#3151) (4852c35), closes #3145 #3121

7.2.0 (2021-11-11)

Features

  • core: marking as compatible with Angular 13 peer (#3057) (390691b)

Bug Fixes

  • schematics: ng-add should pass if sourceRoot is relative to workspace root (#3052) (7e931cb)

7.1.1 (2021-10-18)

Bug Fixes

7.1.0 (2021-10-08)

Features

  • auth-guard: modular auth guards now available (#3001) (3ae6ce5)
  • schematics: setup wizard on ng add, allow deployment to Cloud Run, and add more configuration options to ng deploy (#2836) (72d3c2e)
  • compat/storage: Adding list function (#2960) (ea544b)
  • app-check: Add AppCheck (#2940) (337116f)
  • compat/storage: Transfer state support for the getDownloadURL pipe (#2921) (d6cfe16)
  • analytics: modular versions of ScreenTrackingService and UserTrackingService now available (#2963) (d724d81)
  • core: provide* methods can pass dependencies & the factory can use the injector for more advanced configuration (#2963) (d724d81)

Bug Fixes

Misc.

  • Analytics, RemoteConfig, and Messaging can be null if isSupported() returns false, this guards against runtime failures in unsupported environments at the cost of null checking
  • Require Firebase 9.1 peer
  • ng add installs firebase-tools globally, this also addressed the race condition
  • Requires firebase-tools 9.9+ peer (optional)
  • Moved peer dependencies for the schematics to proper dependencies
  • Mark compatibility with rxjs 7
  • Increase the accuracy of performance marks
  • ng deploy echos out the firebase-tools version and the user
  • Error message improvements

7.0.4 (2021-09-07)

Bug Fixes

  • compat/database: Zone should be destabilized on get (#2923) (c006da8)
  • compat/perf: AFP should not error in Jest (#2920) (b0e147e)
  • schematics: ng upgrade when e2e is present (#2927) (9071faa)

7.0.3 (2021-09-02)

Bug fixes

  • auth: @angular/fire/auth was Zone wrapping some firebase/auth exports it shouldn't have been
  • messaging: onMessage's callback should fire inside the Angular Zone
  • schematics: ng deploy SSR should assume bundleDependencies defaults to true
  • schematics: ng deploy SSR should not fail if an index.html does not exist (#2765)

7.0.2 (2021-08-30)

Bug fixes

  • types: firebase/* types were not being reexported from the @angular/fire/* modules (modular)

7.0.1 (2021-08-30)

Bug fixes

  • messaging: onMessage will no longer destablize the Angular Zone
  • core: Injected Classes now have a better fallback pattern for finding defaults, #2909 allowing use of emulators and other config options as expected
  • schematic: upgrade schematic will no longer rewrite .ts files outside of your project root, #2907

7.0.0 (2021-08-25)

Breaking changes

  • Angular 12 is required
  • AngularFire now only works in Ivy applications
  • Firebase JS SDK v9 is required
  • The existing AngularFire v6 API surface has moved from @angular/fire/* to @angular/fire/compat/* (see compatibility mode)
  • compat/auth: USE_EMULATOR DI token is now in the form of ['http://localhost:9099']

Features

  • New modular API surface available at @angular/fire/*
  • compat/storage: USE_EMULATOR DI token

See the v7 upgrade guide for more information.

6.1.5 (2021-05-17)

Support Angular 12 peer

Bug Fixes

  • auth: set the passed settings individually (#2826) (984803d)

6.1.4 (2020-12-03)

Bug Fixes

  • storage: firebase.default typing issue with Firebase v7 (#2703) (984006d)
  • storage: snapshotChanges should return a success snapshot (#2704) (972aa85)
  • analytics: no longer error when included in SSR or when using Firebase v7 (#2701) (da8c660)

6.1.3 (2020-11-30)

Bug Fixes

  • afs: allow stateChanges and auditLog to emit blank arrays at first (21442f0)

6.1.2 (2020-11-24)

Bug Fixes

  • afs: document's actions should have appropriate types (#2683) (d36544f)
  • afs: fixing the metadata in snapshotChanges and more (#2670) (d5dbe99)
  • afs: stateChanges and auditLog correctly emit metadata changes (#2684) (fce594b)
  • analytics: screen tracking will no longer fail on broken routes (#2678) (ae26b35), closes #2677
  • auth: removed the shareReplay from auth and addressed Zone.js issues (#2682) (059547b), closes #2681
  • core: ensure the UMDs are importing things correctly for the lazy modules (#2676) (6817bcc)
  • core: try/catch the HMR/DI warning (#2687) (1530112)
  • storage: unsubscribing from the upload progress will not cancel and added replay (#2688) (d845cdd), closes #2685

6.1.1 (2020-11-19)

Bug Fixes

  • afs: fix regression keeping one from overriding collection.doc type (#2668) (22e2883)
  • core: fix the instance cache logic (#2667) (7f89643)
  • storage: error state not represent in UploadTaskSnapshot (#2665) (2ce41aa)

6.1.0 (2020-11-18)

Bug Fixes

  • database: fix Zone.js issues by running ref-gen outside angular (5186389)
  • auth: ScreenTrackingService will now wait for UserTrackingService to report an initial result, if UserTrackingService has been provided (#2661) (b666a80)
  • analytics: Bunch of analytics & screen tracking improvements (#2654) (5bc159a)
  • fcm: tokenChanges now listen for notification permission changes and trip token detection as expected (#2652) (8d3093f)
  • firestore: doc and collection methods generic (#2649) (796b7c1)
  • deploy: remove direct workspace access (#2643) (7e1918a)
  • schematics: remove experimental workspace API type usage (#2644) (b976c58)

Features

  • core: Support Angular 11
  • core: Adding global caches that survive/warn on HMR (#2661) (b666a80), closes #2655
  • auth: Warn when using Auth emulator in conjunction with database or firestore, (#2661) (b666a80), closes #2656
  • auth: Adding AngularFireAuth.credential an observer for firebase.auth.UserCredential (#2661) (b666a80)
  • auth: ScreenTrackingService now logs sign_up and login events (#2661) (b666a80)
  • database: Added USE_EMULATOR DI token (#2652) (8d3093f)
  • fcm: Added VAPID_KEY, SERVICE_WORKER, and USE_EMULATOR DI tokens (#2652) (8d3093f)
  • fcm: deleteToken's token argument is now optional, reflecting Firebase v8 changes (#2652) (8d3093f)
  • auth: Added SETTINGS, TENANT_ID, LANGUAGE_CODE, USE_DEVICE_LANGUAGE, USE_EMULATOR and PERSISTENCE DI tokens (#2652) (8d3093f)
  • functions: Added USE_EMULATOR and NEW_ORIGIN_BEHAVIOR DI token to opt-into the new way of setting ORIGIN (#2652) (8d3093f)
  • functions: httpsCallable function now takes in HttpsCallableOptions (#2652) (8d3093f)
  • storage: Added MAX_UPLOAD_RETRY_TIME and MAX_OPERATION_RETRY_TIME DI tokens (#2652) (8d3093f)
  • firestore: Inherit doc return type from class (#2640) (f7bbd09)
  • firestore: map document ID to the provided idField in a collection group query (#2580) (dbf31d9)
  • auth-guard: add support for specifying a string to redirect to (#2448) (fe31191), closes #2287 #2144
  • database: add option to include key on valueChanges() (#2126) (5cdb8ce)
  • deploy: More deploy options (#2647) (1bbd3e4)
  • firestore: options to include document ID on valueChanges() (#2113) (09ed22a)
  • functions: Add options param to callable functions (#2434) (f8d5a50), closes #2433
  • schematics: support FIREBASE_TOKEN for ng deploy (#2327) (dd92869)
  • storage: getDownloadURL pipe (#2648) (0d799da)

6.1.0-rc.4 (2020-11-17)

Bug Fixes

  • auth: ScreenTrackingService will now wait for UserTrackingService to report an initial result, if UserTrackingService has been provided (#2661) (b666a80)

Features

  • core: Adding global caches that survive/warn on HMR (#2661) (b666a80), closes #2655
  • auth: Warn when using Auth emulator in conjunction with database or firestore, (#2661) (b666a80), closes #2656
  • auth: Adding AngularFireAuth.credential an observer for firebase.auth.UserCredential (#2661) (b666a80)
  • auth: ScreenTrackingService now logs sign_up and login events (#2661) (b666a80)

6.1.0-rc.3 (2020-11-14)

Bug Fixes

  • analytics: Bunch of analytics & screen tracking improvements (#2654) (5bc159a)

6.1.0-rc.2 (2020-11-13)

Bug Fixes

  • fcm: tokenChanges now listen for notification permission changes and trip token detection as expected (#2652) (8d3093f)

Features

  • database: Added USE_EMULATOR DI token (#2652) (8d3093f)
  • fcm: Added VAPID_KEY, SERVICE_WORKER, and USE_EMULATOR DI tokens (#2652) (8d3093f)
  • fcm: deleteToken's token argument is now optional, reflecting Firebase v8 changes (#2652) (8d3093f)
  • auth: Added SETTINGS, TENANT_ID, LANGUAGE_CODE, USE_DEVICE_LANGUAGE, USE_EMULATOR and PERSISTENCE DI tokens (#2652) (8d3093f)
  • functions: Added USE_EMULATOR and NEW_ORIGIN_BEHAVIOR DI token to opt-into the new way of setting ORIGIN (#2652) (8d3093f)
  • functions: httpsCallable function now takes in HttpsCallableOptions (#2652) (8d3093f)
  • storage: Added MAX_UPLOAD_RETRY_TIME and MAX_OPERATION_RETRY_TIME DI tokens (#2652) (8d3093f)

6.1.0-rc.1 (2020-11-12)

Bug Fixes

  • firestore: doc and collection methods generic (#2649) (796b7c1)

Features

  • firestore: Inherit doc return type from class (#2640) (f7bbd09)
  • firestore: map document ID to the provided idField in a collection group query (#2580) (dbf31d9)
  • auth-guard: add support for specifying a string to redirect to (#2448) (fe31191), closes #2287 #2144
  • database: add option to include key on valueChanges() (#2126) (5cdb8ce)
  • deploy: More deploy options (#2647) (1bbd3e4)
  • firestore: options to include document ID on valueChanges() (#2113) (09ed22a)
  • functions: Add options param to httpsCallable functions (#2434) (f8d5a50), closes #2433
  • schematics: support FIREBASE_TOKEN for ng deploy (#2327) (dd92869)
  • storage: getDownloadURL pipe (#2648) (0d799da)

6.1.0-rc.0 (2020-11-11)

Bug Fixes

  • deploy: remove direct workspace access (#2643) (7e1918a)
  • schematics: remove experimental workspace API type usage (#2644) (b976c58)

Features

  • core: Support Angular 11

6.0.5 (2020-11-10)

Bug Fixes

  • core: proxy-polyfill support and various other small fixes (#2633) (af238cd)

6.0.4 (2020-10-30)

Bug Fixes

  • analytics: UserTrackingService and ScreenTrackingService should be opt-in, rather than opt-out (#2605) (92f7aaf)
  • auth: addressing observable errors in non-browser environments (#2626) (120c854)

Features

6.0.3 (2020-09-25)

Bug Fixes

  • perf: Fixing configuration regression with performance monitoring (#2597) (1608676)
  • fcm: Fixing Zone.js and other various regressions (#2597) (1608676)
  • analytics: Fix custom data layer function keeping Analytics from functioning (#2594) (77a9a15), closes #2505
  • core: NG10-style ModuleWithProviders (#2527) (93912bc)
  • core: NG 10 support and various fixes (#2522) (7cb6c03)

6.0.2 (2020-06-24)

  • Quick fix to peers so ng add @angular/fire installs the correct version on Angular 10

6.0.1 (2020-06-24)

  • Updating peer dependencies to allow for Angular 10
  • ng add @angular/fire should correctly add the firebase peer
  • ng add @angular/fire will not duplicate settings entries, if they're already present
  • ng add @angular/fire will error if there are peer incompatabilities
  • ng deploy should function correctly on Windows devices
  • ng deploy will now mark the Angular assets as immutable on Firebase Hosting
  • RTDB and Firestore CRUD operations should return in the ngZone
  • Use of AngularFireAuthGuard should no longer destablize Zone.js

6.0.0 (2020-04-01)

Final relase of version 6.

  • Updating peer dependencies
  • ng add @angular/fire now will overwrite firebase config, if present
  • ng add @angular/fire now adds @firebase/firestore to the server schematic externalDependencies if present
  • ng deploy --preview is now interactive and functions on non-SSR
  • ng deploy will respect the bundleDependencies and externalDependencies server schematic options
  • ng deploy now defaults to 1GB of ram on Cloud Functions
  • Fixed various issues with functions deploy
  • Simplified AngularPerformanceMonitoring

6.0.0-rc.2 (2020-03-29)

Continued work on 6.0.

  • Update peers
  • No longer require developer add bare imports themselves (e.g, import 'firebase/firestore')
  • Zone.js fixes
  • Angular Universal deploy schematic
  • Storage listAll()

6.0.0-rc.1 (2020-02-06)

Continued work on version 6.

  • Brought a fix in 5.4.2 (#2315)
  • Fixed @angular/fire/analytics attempting to use global (#2303)
  • Fix the error message on storage (#2313)
  • Starting on documentation for 6.0

6.0.0-rc.0 (2020-01-30)

Version 6 of AngularFire drops support for Angular version 8 and below, older versions of typescript, Firebase, drops firebase-node, database-deprecated, and more.

  • Support for Angular versions less than 9 has been dropped
  • Support for Firebase versions less than 7.8 has been dropped
  • Support for firebase-tools less than 7.12 has been dropped
  • angularfire2 NPM shim will no longer be updated
  • Dropped @angular/fire/firebase-node and @angular/fire/database-depreciated
  • Using ng-packagr to build the library, bringing us back up to speed on APF
  • All of our @NgModules are now providedIn: 'any' rather than singletons
  • We make use of Proxy in more modules, you'll need to polyfill if you want to support IE 11

@angular/fire

  • Dropped the RealtimeDatabaseURL and DATABASE_URL DI tokens, use import { URL } from '@angular/fire/database' instead
  • Dropped runOutsideAngular, runInZone, FirebaseZoneScheduler, and the Firebase* type aliases

@angular/fire/analytics

  • AngularFireAnalytics now memozies analytics.Analtyics instances keyed to the measurementId, this prevents exceptions if you're using more than one FirebaseApp with the same measurementId. This is also needed as we are providedIn: 'any'.

@angular/fire/auth

  • AngularFireAuthModule is now side-effect free and AngularFireAuth will dynamically import firebase/auth when a request is made
  • AngularFireAuth has dropped the auth property and instead Promise Proxies the underlying Firebase auth.Auth instance

@angular/fire/auth-guard

  • AngularFireAuthGuard and canActivate have dropped (attempted) support for raw AuthPipes, as they were not functioning in AOT builds; you'll want to move to AuthPipeGenerators

@angular/fire/database

  • AngularFireDatabaseModule no longer imports firebase/database on it's own to remain side-effect free, you'll need to import 'firebase/database' on your own
  • Dropped the RealtimeDatabaseURL and DATABASE_URL DI tokens in favor of URL

@angular/fire/firestore

  • AngularFirestoreModule no longer imports firebase/firestore on it's own to remain side-effect free, you'll need to import 'firebase/firestore' on your own
  • Dropped the EnablePersistenceToken DI token in favor of ENABLE_PERSISTENCE
  • Dropped the PersistenceSettingsToken DI token in favor of PERSISTENCE_SETTINGS
  • Dropped the FirestoreSettingsToken DI token in favor of SETTINGS

@angular/fire/functions

  • Dropped the FunctionsRegionToken and FUNCTIONS_REGION DI tokens in favor of REGION
  • Dropped the FUNCTIONS_ORIGIN DI token in favor of ORIGIN
  • AngularFireFunctionsModule is now side-effect free and AngularFireFunctions will dynamically import firebase/functions when a request is made
  • AngularFireFunctions has dropped the functions property and instead Promise Proxies the underlying Firebase functions.Functions instance

@angular/fire/messaging

  • AngularFireMessaging's dynamic import of firebase/messaging is now lazy, if you don't call any methods the SDK will not be loaded
  • AngularFireMessaging has dropped the messaging property and instead Promise Proxies the underlying Firebase messaging.Messaging instance

@angular/fire/performance

  • AngularFirePerformance has dropped the performance property and instead Promise Proxies the underlying Firebase performance.Performance instance

@angular/fire/storage

  • AngularFireStorageModule no longer imports firebase/storage on it's own to remain side-effect free, you'll need to import 'firebase/storage' on your own
  • Dropped StorageBucket DI token in favor of BUCKET

5.4.2 (2020-02-06)

Bug Fixes

  • core: fixing a problem with hot/cold observables resulting in missed events (#2315) (f24df35)

5.4.1 (2020-02-05)

Bug Fixes

  • auth: authState should be using onAuthStateChanged (#2308) (9506f85)

5.4.0 (2020-02-01)

Features

  • core: Register AngularFire and Angular versions with the JS SDK (6096c95)
  • ng-deploy: add option for buildTarget (#2281) (28a4e54)
  • core: Major changes to the Zone.js wrapping to address SSR memory leaks and more (#2294) (56df941)

5.3.1 (2020-02-01)

Bug Fixes

  • schematics: The schematics should be functional again. The version of firebase-tools we were installing when you called ng add @angular/fire was using deprecated API. (#2285) (5867eeb)
  • schematics: fix issues with FS and Devkit Paths (#2279) (5ccf5db)
  • rc: Need to ensureInitialized() (#2290) (0d95523)

5.3.0 (2020-01-07)

AngularFire 5.3 introduces Analytics and Remote Config modules.

5.2.3 (2019-11-12)

Bug Fixes

  • build: Make the build work on windows (#2231) (97d8532)
  • core: Support Firebase 7 peer and fix zone instabilities with AngularFirePerformanceModule and the injectable FirebaseApp (#2240) (60fd575)
  • rtdb: Allow update to take "Partial" (#2169) (ca43c8b)

5.2.2 (2019-11-12)

5.2.2 was mistakenly released to @canary due to a CI/CD bug. It was republished to @latest as 5.2.3.

5.2.1 (2019-06-01)

Removed unnecessary peerDependencies (#2095) (5e49442)

5.2.0 (2019-05-31)

AngularFire 5.2 introduces support for Angular 8 and version 6 of the Firebase SDK.

Bug Fixes

  • firestore: Fix for builds targeting Node (#2079) (8a33826)
  • storage: Typo in updateMetadata method (#2029) (6133296)
  • messaging: Allow AngularFireMessaging to be included in a server build (#1938) (9b870a9)

Features

  • performance: AngularFire Performance Monitoring (#2064) (2469e77)
  • auth-guard: AngularFire Auth Guards (#2016) (e32164d)
  • firestore: Added option to include document IDs on valueChanges() (#1976) (7108875)
  • firestore: Support Firestore Collection Group Queries (#2066) (c34c0f3)
  • functions: Allow configuration of Functions Emulator Origin (#2017) (d12b4c5)
  • schematics: ng deploy schematic (#2046) (be0a1fb)
  • firestore: path on AngularFirestoreCollection's .doc is optional (#1974) (c2354f8)

5.1.2 (2019-03-11)

Bug Fixes

  • afs: No longer pull in the depreciated timestampsInSnapshots setting for Firebase 5.8 (#2013) (5df31c3)

5.1.1 (2018-11-29)

Bug Fixes

  • functions: Fix the default Functions region bug (#1945) (7d175b3)

5.1.0 (2018-10-17)

Features

  • core: Support Angular 7 without peer dependency warnings (ed92c45)
  • afs: Support Firebase 5.5 and Firestore PersistenceSettings (a9cf1ca)
  • functions: Support region configuration via FunctionsRegionToken (8901617)

5.0.2 (2018-09-21)

Bug Fixes

  • messaging: Fix for the binding issue and onTokenRefresh for Messaging (e170da1)

5.0.1 (2018-09-07)

Version 5.0.1 has been released for the deprecated angularfire2 NPM library; this simply re-exports everything from @angular/fire; allowing you to use either angularfire2 or @angular/fire in your imports and package.json.

It will have it's dependency pinned to the corresponding minor and will be released alongside future @angular/fire releases for the rest of the 5.x series.

5.0.0 (2018-09-04)

Bug Fixes

  • firestore: Better handle enablePersistence failures, esp. for Universal (#1850) (334ba7b)
  • firestore: Add document get(), the options argument for get() should be optional, and subscriptions to get() should be run in the Angular Zone(#1849) (185943f)

Breaking changes

5.0 is now final and we're published under @angular/fire.

npm i --save firebase @angular/fire

5.0.0-rc.12 (2018-08-24)

Bug Fixes

  • afs: Gracefully handle duplicate emissions on modified/deleted (#1825) (76ff6c1)
  • core: If an AngularFire observable was empty or threw, it could block Universal rendering (#1832) (36a8ff8)
  • core: Fix for the Firebase ES export problems in Node (#1821) (f1014ee)
  • storage: Fix for zone issues on downloadURL and metadata, which blocked Universal rendering (#1835) (441607a)

Features

5.0.0-rc.11 (2018-06-13)

Bug Fixes

  • Fixed SSR compilation and misc. typing issues (#1729) (eed5802)

5.0.0-rc.10 (2018-05-22)

Bug Fixes

  • firestore: the type passed to AngularFirestoreCollection from a document's sub-collection will now default to DocumentData, rather than any, if no type is specified (#1662) (2c2fe02)

Breaking change

  • core: AngularFire now depends only on the firebase NPM library, rather than @firebase/* and @firebase/*-types; this should simplify issues around keeping types in-sync and conflicts between package versions (#1677) (2c2fe02)

5.0.0-rc.9 (2018-05-16)

Bug Fixes

  • core: allow initializeApp to be used with AOT (#1654) (513565a)
  • core: Allow name + config deps to be optional (#1641) (a6af604)
  • firestore: Fixed a bug where Firestore sub-collections were inheriting the type of the doc by default (#1644) (dff8ddf)

Features

  • auth: Adding user and idTokenResult Observables to AngularFireAuth (#1642) (31045a9)
  • functions: Adding AngularFireFunctions with httpCallable (#1532) (26f3f5f)
  • firestore: types for collection, audit trail, state, and snapshot changes (#1644) (dff8ddf)
  • rtdb: types for collection, audit trail, snapshot, and state changes (#1643) (2c2fe02)

Breaking change

  • To deal with the initializeApp not being able to be used in AOT (#1635) we removed FirebaseAppConfigToken and FirebaseAppNameToken and replaced them with a new FirebaseNameOrConfigToken which accepts either an app name string or a FirebaseAppConfig object. (#1654) (513565a)
  • firestore: If you do not specify a type to Document or Collection the default is now DocumentData (#1644) (dff8ddf)

5.0.0-rc.8 (2018-05-12)

Bug Fixes

Features

  • Supporting Angular and rxjs 6 (dd4a36c)
  • Support Firebase JS SDK 5.0 (#1628) (b99bfa3)
  • Support FirebaseAppConfig, clean up injection tokens (#1627) (57906bd)
  • firestore: Support Firestore Settings, timestampsInSnapshots default to true (#1629) (570c0a7)
  • auth: Update to rxjs pipeable operators (#1621) (0c3b215)
  • core: Update to rxjs pipeable operators (#1620) (3fbbb7d)
  • database: Update to rxjs pipeable operators (#1622) (5c3681d)
  • firestore: Update to rxjs pipeable operators (#1623) (97b26e3)
  • storage: Update to rxjs pipeable operators (#1624) (014be21)

Breaking changes

  • Due to the addition of a conflicting FirebaseAppConfig interface in Firebase 4.13 we've now changed our FirebaseAppConfig Injection Token to be FirebaseOptionsToken
  • For consistency the FirebaseAppName Injection Token is now FirebaseAppNameToken
  • rxjs 5 is no longer supported, upgrade to 6 (see the rxjs migration guide for more information)
  • Firebase JS SDK 4.x is no longer supported, upgrade to 5 (see the changelog for more information)
  • To mirror a change in Firebase 5.x, downloadURL was removed from AngularFireUploadTask

Known issues

  • Some users may experience failures compiling AOT while using AngularFireModule.initializeApp(...), a work-around is available (see #1635)

5.0.0-rc.7 (2018-05-04)

Bug Fixes

  • afs: workarounds for bugs in the Firebase JS SDK #605 and #608 (#1540) (14e78ec)
  • app: add automaticDataCollectionEnabled for compatability with Firebase JS SDK v4.13+ (#1572) (f2cf159)

Features

  • firestore: allow collection and doc from ref (#1487) (136f1e5), closes #1337
  • runOutsideAngular for Universal / service worker compatability and allow advanced configuration with DI (#1454) (e343f13)

5.0.0-rc.6 (2018-01-26)

Bug Fixes

  • Migrate imports to new Typings from 4.8.1 to resolve #1385 (7ec51b2)
  • Removing errant old import. Updating build with latest namespace. Fixing import for main @firebase/app. This resolves failing tests. (a13bf9b)
  • afs: fix di warning (#1401) (23ab383)
  • afs/typings: valueChanges should return Observable<T|null> (#1321) (aadc71a)

Features

  • storage: Add Cloud Storage support (e2283b1)

5.0.0-rc.4 (2017-11-17)

Bug Fixes

5.0.0-rc.3 (2017-10-14)

Bug Fixes

  • afs: change doc.update() parameter type to Partial (#1247) (297cabb), closes #1245 #1215
  • rtdb: Fixed null set handling, ordering, and cleaned up types (#1264) (eda1c41)

5.0.0-rc.2 (2017-10-05)

Bug Fixes

  • afs: Allow multiple subscribers by using share, closes #1191 (#1192) (21522ab)
  • afs: Don't filter empty changes (allow for null set) (eb71edc)
  • afs: remove debugger statement from collection/changes.ts (#1190) (88a25e7)
  • auth: Clean up the authentication module (8ab3803)

5.0.0-rc.0 (2017-10-03)

Features

  • AngularFirestore: Module for Cloud Firestore (90c8ede)
  • New AngularFireDatabase API: New API for the database #1158

Breaking changes

AngularFire 5.0 brings a new API for the Realtime Database. See the migration doc for converting to the new API. If you want to stay on the old database API you can use:

import { AngularFireModule } from 'angularfire2/database-deprecated';

4.0.0-rc.1 (2017-06-02)

Breaking changes

  • rc: Update to Firebase JS SDK 4.0 (9642f5)

In version 4.0 of the Firebase SDK onAuthStateChanged is only fired on sign-in and sign-out, see the Firebase JS SDK changelog for more information. The added AngularFireAuth.idToken: Observable<firebase.User> behaves as authState used to.

4.0.0-rc0 (2017-05-02)

Bug Fixes

  • auth: Use the injected app (980c447)
  • build: Add package.json files for deep paths (cd5f2d1), closes #880
  • database: Fix test TypeScript errors (750737c), closes #875
  • database: use switchMap when a list's query changes (#831) (b85147d), closes #830

Features

  • auth: New Auth API (12aa422)
  • database: Add AngularFireDatabaseModule (b388627)
  • database: support optional endAt/equalTo key (#838) (e146492), closes #837
  • rc: Implement rc0 API (398e4e2)

2.0.0-beta.8 (2017-02-16)

Bug Fixes

  • database: allow null values for equalTo, etc. (#809) (561e7b7)
  • database: call apply instead of call (7a85bd2)
  • database: retrieve initial list content once (#820) (5c5ff7b), closes #819
  • database: store unwrapped snapshots (9f3c47b), closes #791
  • utils: Make object $key and $exists properties non-enumerable (253401f)
  • utils: Minor formatting improvement (fc3774a)

Features

2.0.0-beta.7 (2017-01-13)

Breaking changes

Bug Fixes

  • aot: Remove AuthBackend param for AOT support (f875360)
  • auth_backend: Update logout method to return a promise (169ce64), closes #583
  • config: Add messagingSenderId to FirebaseAppConfig (9c84869)
  • database: Allow null values for equalTo, etc. (70a3e94), closes #704
  • database: Removed unused query option (9cbc59b), closes #706
  • list: Fix FirebaseListObservable emit as array bug #574 (ce3de04)
  • module: Conditionally pass app name (8427009)

Features

  • module: Add a custom FirebaseApp name (73a3e26)

Bug Fixes

  • Database: use Zone scheduler for object and list factories (e18da0e), closes #637
  • AoT: change constructor param interface type annotation to any (2c0a57f)
  • build: Fix npm test and test:watch commands for windows (86b4b24), closes #217
  • database: Add $ref to observables (#447) (a53fac0), closes #294
  • imports: add firebase imports to all places that reference firebase namespace (c3a954c), closes #525

Features

  • docs: Add AoT installation and setup (#546) (7c20d13)
  • docs: update installation guide to latest cli version (#519) (648666f)
  • hmr: Add Hot module reloading (c32a008)

Notes

A TypeScript issue with the previous release has been fixed, where errors about a missing firebase namespace were reported. For applications that worked around this issue by manually adding the firebase.d.ts typings to tsconfig.json, those typings should now be removed since the firebase namespace should automatically be resolved within AngularFire. See this issue for more context.

2.0.0-beta.5 (2016-09-15)

Bug Fixes

  • docs: Remove @next install (5984a99)
  • docs: typos (197026a)
  • docs: Update for beta.4 (f2d5ba5)
  • docs: Update for beta.4 (b347e16)
  • firebase_*_factory.js: Fix calls to off() which inadvertently cancel all listeners on the path (#469) (b4fb281), closes #443
  • package: Version number (986685a)

Features

BREAKING CHANGES

The way this project is packaged has changed to be consistent with other Angular packages. Previously:

  • The project just consisted of CommonJS modules, with angularfire2.js as the main entry point.
  • The project provided an es6 directory which contained es2015 modules and es2015 JS
  • Package.json included main and jsnext:main fields, pointing to angularfire2.js and es6/angularfire2.js, respectively.

Now:

  • The project ships ES2015 modules with ES5 JS at the root, as well as an ES5 UMD bundle at bundles/angulafire2.umd.js
  • The main field of package.json points to bundles/angularfire2.umd.js.
  • Instead of jsnext:main, we're using the module field of package.json to point to index.js.
  • Instead of angularfire2.js being the main entry point, an index.js has been added (though angulafire2.js hasn't changed significantly).

If you're using Rollup or Webpack, they should just work with this new setup (please open issues if not). If using SystemJS, you should be able to add format: 'esm' inside of the packages configuration, and it should load and parse the es2015 modules correctly.

The addition of the umd bundle will also make it possible to use AngularFire2 in a <script> tag, such as in a plunker or JSBin. The library is exported on a global called angularFire2.

2.0.0-beta.4 (2016-08-22)

Bug Fixes

  • auth: add scheduler to schedule onAuth events through Angular zone (#368) (3615318), closes #354
  • auth: Auth config for initializeApp (#428) (a2ee25d)
  • auth: check protocol before calling getRedirectResult (#271) (f38e9d7), closes #243
  • auth: make statically analyzable x2 (#427) (ab80954)
  • auth: providerData issue (#420) (1ebb726)
  • list: FirebaseListObservable shape (#321) (35e8583)
  • providers: make AoT compile friendly (#410) (6219ac1)

Features

BREAKING CHANGES

  • Previously, es modules were published to the es6/ directory inside the npm package. This change publishes them to the esm directory to be consistent with other angular packages. Currently, the es6 directory is still published in the npm package, but will be removed in a future release.
  • auth: The AngularFireAuth class has changed the order of its constructor arguments. Since this is usually instantiated automatically via dependency injection, it shouldn't affect common usage of the library. However, if manually instantiating AngularFireAuth in tests or in an application, the order of arguments is now: (AuthBackend, WindowLocation[, AuthConfiguration]).

2.0.0-beta.2 (2016-06-22)

Bug Fixes

  • auth: check for null user before attempting to transform (981f0f5), closes #251
  • auth: correctly emit anonymous auth state (51c8caa)
  • auth: make sure onAuth runs in Angular zone (d9a6ae7), closes #231
  • build: downgrade to stable TS version to fix d.ts (664a156), closes #250

AngularFire2 2.0.0-beta.1

This release updates AngularFire to the Firebase 3 SDK. There are a few breaking changes, most notably in how apps are configured, and how third-party oauth tokens are handled.

Breaking Changes:

AngularFire2 2.0.0-beta.0

Features

  • Declarative Querying Commit
  • Upgrade to Angular RC.1 Commit

Bug Fixes

  • FirebaseListFactory: prevent first item being duplicated when it Commit

Docs

Breaking Changes:

  • Web Worker support has been temporarily removed due to Angular 2 RC.0 not yet supporting Web Workers