5.0.0-rc.4 (2017-11-17)
- afs: added missing type to doc() (#1286) (3e00e16)
- afs: allow document set options (#1333) (81018ed), closes #1332
- afs: catch error when enabling persistence (#1300) (61245a3)
- afs: export interfaces (#1277) (4a21857)
- db: inherit generics in valueChanges interface (10afd64), closes #1214
- db: update should take a Partial object (#1330) (20e66f5), closes #1329
5.0.0-rc.3 (2017-10-14)
- 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)
- 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)
- AngularFirestore: Module for Cloud Firestore (90c8ede)
- New AngularFireDatabase API: New API for the database #1158
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)
- 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)
- 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
- 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)
- 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)
- database: adds auditTime for queries (f9cb5c3), closes #389 #770
- database: support the optional startAt key (#821) (c469b11)
2.0.0-beta.7 (2017-01-13)
- auth: Remove
FirebaseAuth
in favor ofAngularFireAuth
. ([d422e6])(https://github.com/angular/angularfire2/commit/d422e62b46a80d9fb12c9a9e2cf1cf2f7db04dd3)
- 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)
- module: Add a custom FirebaseApp name (73a3e26)
2.0.0-beta.6-preview (2016-11-02)
- 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
- docs: Add AoT installation and setup (#546) (7c20d13)
- docs: update installation guide to latest cli version (#519) (648666f)
- hmr: Add Hot module reloading (c32a008)
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)
- 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)
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
andjsnext:main
fields, pointing toangularfire2.js
andes6/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 ofpackage.json
points tobundles/angularfire2.umd.js
. - Instead of
jsnext:main
, we're using themodule
field of package.json to point toindex.js
. - Instead of
angularfire2.js
being the main entry point, anindex.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)
- 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)
- docs: Docs for RC5 (9870a7f)
- 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)
- 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
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.
- Upgrade to the Firebase 3.0+ SDK, versions less than 3.0 are not supported. abe11a2
defaultFirebase
takes in a configuration object rather than a database url string. See docs for more info.- Access tokens for third party auth (github, google, facebook, twitter) are not persisted after refresh.
- FirebaseListFactory: prevent first item being duplicated when it Commit
- Many Developer guides added! First Guide Commit
- Web Worker support has been temporarily removed due to Angular 2 RC.0 not yet supporting Web Workers