Skip to content

Latest commit

 

History

History
342 lines (225 loc) · 19.5 KB

CHANGELOG.md

File metadata and controls

342 lines (225 loc) · 19.5 KB

3.1.0 (2023-02-26)

Bug Fixes

  • avoid uncaught firebase error (9b20cfc)
  • database: pending for lists (ee25d06)
  • firestore: pending value for collections (3186afb), closes #1314
  • storage: propagate the error (438ee3e)

Features

  • auth: useIsCurrentUserLoaded() composable (#1307) (f640929)

3.0.1 (2023-01-06)

Bug Fixes

  • firestore: apply converter to nested refs (fe78629), closes #1263
  • unwrap promise $databaseBind() (4e6d32f), closes #1275

3.0.0 (2022-12-23)

VueFire logo

VueFire 3 is now entering its stable phase! 🎉

This release doesn't include any changes from the previous beta, but it's now considered a good time to start using it in production.

Head over to the Documentation to learn more about VueFire 3.

Report any bugs you find on GitHub Issues.

3.0.0-beta.8 (2022-12-21)

Features

  • database: expose databaseDefaultSerializer (278916b)

3.0.0-beta.7 (2022-12-19)

Bug Fixes

Features

  • firestore: default serverTimestamps to estimate (ae85a41)

3.0.0-beta.6 (2022-12-16)

No updates in this release

3.0.0-beta.5 (2022-12-16)

Bug Fixes

  • database: correctly set pending when hydrating and during racing conditions (90bd7f5)
  • firestore: correctly set pending when hydrating and during racing conditions (998fe38)

3.0.0-beta.4 (2022-12-13)

3.0.0-beta.3 (2022-12-12)

Bug Fixes

Features

  • app-check: allow specifying your own debug token (e0b2b5a)
  • auth: allow passing the app name to getUser functions (20ab13d)
  • auth: handle ssr (567fd12)
  • nuxt: handle user context on the server and use LRU cache for apps (a335c54)
  • ssr: allow resolving getCurrentUser (282b6bc)

3.0.0-beta.2 (2022-12-06)

  • SSR fixes

3.0.0-beta.1 (2022-12-05)

Features

  • app-check: add access to appcheck (01d5651)
  • ssr: use env credentials in prod (4fadba7)

3.0.0-alpha.13 (2022-12-01)

Bug Fixes

  • ssr: appcheck force app (cd5168a)

3.0.0-alpha.12 (2022-12-01)

Bug Fixes

  • app-check: run only in client (384085e)
  • firestore: pass snapshotOptions before extracting refs (a61ee09)
  • firestore: pass the id as a value (d0afc0a)
  • firestore: skip ref extraction in non pojo (cc01b84), closes #1257
  • nested refs (c4ab275)
  • options-api: cleanup variables (5d244b7)
  • pass options when unbinding documents (6d4f151)
  • resilient walkSet and walkGet (80879d1)
  • ssr: fallback value in firestore (57cdd82)
  • ssr: use ssrKey in firestore (25d86ca)
  • types: add undefined for initial values (76e1527)

Code Refactoring

  • firestore: rename $bind to $firestoreBind (a636c21)
  • remove manual bind/unbind methods (7b8b037)
  • rename unbind() to stop() (37d3f67)
  • rename rtdbPlugin to databasePlugin (a7f500d)

Features

  • wait on server for data (947a325)
  • warn wrong usage useDocument(), ... (098c16c)

BREAKING CHANGES

  • database: when binding to a primitive value in RTDB, VueFire used to create an object with a property .value for the primitive vaule itself. The . in front forces to always use a bracket syntax (obj['.value']) while the $ doesn't, making its usage cleaner. The $value and id property created in the case of primitives are also enumerable properties. This should make things easier to debug.

3.0.0-alpha.11 (2022-11-25)

Bug Fixes

  • avoid warning isSSR (197b036)
  • ssr: use ssrKey in firestore (25d86ca)

Features

  • add global options (5137a99)
  • database: add once option (0c321fb)
  • database: once on server (c4eb143)
  • firestore: force once option during SSR (397a8de)

3.0.0-alpha.10 (2022-11-21)

Bug Fixes

  • resilient walkSet and walkGet (80879d1)

Features

  • auth: update current profile info (ae90bed)
  • firestore: fetch once option (094f6a5)

3.0.0-alpha.9 (2022-11-17)

Features

3.0.0-alpha.8 (2022-11-15)

Bug Fixes

  • app-check: run only in client (384085e)
  • options-api: cleanup variables (5d244b7)
  • ssr: fallback value in firestore (57cdd82)

Code Refactoring

  • rename unbind() to stop() (37d3f67)

Features

  • add modules for options api (908f6c3)
  • ssr: database and firestore (eca3031)
  • storage: url, metadata and upload tasks (b5fa6b9)

BREAKING CHANGES

  • Composables like useDocument() no longer return an unbind() method. The method is now named stop() to better reflect that they also stop the Vue watcher on top of stopping the Firebase data subscription.

3.0.0-alpha.7 (2022-11-11)

Features

  • app-check: useAppCheckToken() (95ea119)
  • storage: useStorageTask (will be renamed) (5dddcf2)

3.0.0-alpha.6 (2022-11-10)

Features

  • composables to use firebase (f854b67)
  • wait on server for data (947a325)

3.0.0-alpha.5 (2022-11-08)

Bug Fixes

  • firestore: pass the id as a value (d0afc0a)
  • pass options when unbinding documents (6d4f151)

Features

  • better defaults for wait and reset (872bd1c)
  • database: allow passing a vue ref (df66d6e)
  • database: rename .key property to id to match Firestore (0c0b1e4)
  • database: support null as a value (d1d2b5a)
  • firestore: accept a vue ref as parameter in useCollection() and useDocument() (ee180a7)
  • firestore: allow setting the ref value to null (7af2c6e)
  • usePendingPromises() (b0a65dd)

BREAKING CHANGES

  • wait option now defaults to true to better align with SSR. Similarly, the reset option now defaults to false to better align with declarative usage of useDocument() and others. If you want to keep the old behavior, you can still override the defaults globally (refer to global options in the docs).
  • database: the default serialize() option adds a non enumerable property named id that correspond to the DatabaseRef's key. It was previously added as a non-enumerable key named .key. if you want to keep the old behavior you can pass a global serialize() to the rtdbPlugin options:
import { createApp } from 'vue'
import { rtdbPlugin } from 'vuefire'

const app = createApp()
app.use(rtdbPlugin, {
  serialize: (doc) => {
    // write your personalized serialize version
  },
})

3.0.0-alpha.4 (2022-10-20)

This version is very different from the previous alpha. If you were using it, make sure to read the list of breaking changes

Bug Fixes

Build System

Code Refactoring

  • firestore: rename $bind to $firestoreBind (a636c21)
  • remove manual bind/unbind methods (7b8b037)
  • rename rtdbPlugin to databasePlugin (a7f500d)

Features

  • database: add databasePlugin (058d7dc)
  • database: useList for arrays (86ccfc7)
  • database: useObject for objects (44413b2)
  • firestore: allow custom converter (18224e4), closes #608
  • firestore: allow destructuring from useDocument() (3b376f4)
  • firestore: allow passing snapshot options (76d36f5), closes #955
  • firestore: useDocument (e5cb5b0)
  • types: allow generics in useCollection (57dbbc8)
  • types: deprecate serializer in favor of converter (1c8012e)
  • use Firebase 9 (81701bb)

BREAKING CHANGES

  • manual bind, and unbind from database and firestore have been removed. Use the new functions useList()/useCollection() and useObject()/useDocument() instead.
  • firestore: Firestore method $bind() is now named $firestoreBind() to align with Database $rtdbBind(). Note this can be changed through the plugin options with bindName. The same applies to $unbind() which has been renamed to $firestoreUnbind()
  • rename rtdbPlugin to databasePlugin in your code
  • VueFire is compatible only with Vue ^2.7.0 || ^3.2.0, it cannot work with @vue/composition-api (which is natively included and therefore not needed on vue@>=2.7.0). Note VueFire also requires firebase@^9.0.0.
  • firestore: options.serialize() is replaced with converter. It effectively has the same effect as calling doc().withConverter() or collection().withConverter() but it allows to have a global converter that is automatically applied to all snapshots. This custom converter adds a non-enumerable id property for documents like the previous serialize options. If you were not using this option, you don't need to change anything.
  • vuefire now requires firebase 9

3.0.0-alpha.3 (2022-10-07)

Bug Fixes

Features

BREAKING CHANGES

  • vuefire now requires firebase 9

3.0.0-alpha.2 (2020-12-08)

  • Support for Firebase 8

3.0.0-alpha.1 (2020-12-01)

Bug Fixes

  • firestore: fix plugin for Vue 2 (8e775dd)
  • rtdb: fix global vue 2 (8dcf8ef)

3.0.0-alpha.0 (2020-11-30)

Initial release, existing API from docs should be the same. Added composition API functions:

  • firestoreBind
  • firestoreUnbind
  • rtdbBind
  • rtdbUnbind

Waiting for the documentation, rely the typings to know what to pass.

Only Firebase 7 is supported until this regression is solved.

Features