Skip to content

6.0.0-rc.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@jamesdaniels jamesdaniels released this 30 Jan 23:48
014911b

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