Roadmap

Current Minor Version (v1.4.0)

Features

  • react-native support (including complete example app as well as a create your own recipe)
  • Server Side Rendering Support - #72
  • Support for Boilerplates - #53
  • pushWithMeta, setWithMeta, and updateWithMeta methods added - write to firebase with createdAt/updatedAt and createdBy/updatedBy
  • Fix for unWatchEvent helper dispatch mapping - #82
  • populatedDataToJS triggers isLoaded to be true only when all data is populated (instead of once for unpopulated data) - #121
  • Support for provider.setCustomParameters on external auth providers (i.e. provider.setCustomParameters({ prompt: 'select_account' }))
  • notParsed query param option added for not parsing when using equalTo (for searching numbers stored as strings)
  • profileParamsToPopulate now works for $key: true lists - thanks @fej-snikduj
  • onRedirectResult config option added (runs when redirect result occurs)

Enhancements/Fixes

  • Improvements to Material Example
    • Projects route is now protected (using UserIsAuthenticated HOC from utils/router)
    • Todos list only displays first 8 (first at the top) - shows using ordering query params
    • Most main routes are now sync (more simple)
  • Firebase Library dependency updated to v3.9.0
  • Fix for unWatchEvent helper dispatch mapping - #82
  • Firebase version is no longer fixed - #109
  • Only used parts of Firebase Library imported (shrinks bundle size)
  • build:size npm script added to generate size report for minified bundle - #107
  • user and credential are now returned from login method - #106
  • yarn.lock file added
  • Compose tests improved promise handling (better use of chai-as-promised)
  • Fix profileParamsToPopulate with key: true lists - thanks @fej-snikduj

Next Minor Version (v1.5.0)

NOTE: v1.5.0 is still in pre-release, please check the releases page for the most up to date release information

  • Use prop-types package instead of React.PropTypes - #122 - thanks @petetnt
  • New Features for Population - #132 - thanks @javamonn
    • Lodash supported path syntax for populates.child
    • Dynamic populates configurations (passing a function that generates populates config based on top level (key, item) tuple)
    • Use storeAs with populates - #130
  • updateUser method for updating currently authenticated user's user object (/users/${uid})
  • updateAuth method for updating currently authenticated user's auth object as seen in the Firebase docs - #129
  • Ability to use different stores - #148
  • Expose Firebase messaging (firebase.messaging())
  • Typescript typings - #142
  • enableEmptyAuthChanges config option added - #137

Enhancements/Fixes

  • Return correct promise from firebase.auth().signOut() - #152
  • Removed browser field from package.json so that webpack will point to main field - #128

Future Minor Versions (v1.6.0 - v1.*.*)

Note: Subject to change

Breaking Changes

None Yet Planned

Features

  • Config option for populated items updating when changed - #69
  • Expose whole Firebase instance (warning: Using Firebase instance methods will not dispatch actions or update redux state)
  • Config option to not remove all data on logout (potential config syntax: preserveOnLogout: ['todos'])
  • Integration for react-native-firebase for using Firebase native modules instead of JS library (allowing for instance to be passed in).
  • Setting that allows for waitForPopulate to be turned off (i.e. return populated data as in becomes available). As of v1.4.0-rc.2, populate only sets isLoaded to true after all children are loaded, waitForPopulate would make this optional - #121
  • Integration for react-native-google-signin to simplify react-native authentication implementation
  • Nested populates - #85

Enhancements/Fixes

None Yet Planned

Future Minor Versions (v1.*.*)

Note: Subject to change

Breaking Changes

None Yet Planned

Features

  • Nested populates #85)

Upcoming Major Version (v2.0.0)

NOTE: The changes are unconfirmed and will most likely change

Progress

Breaking Changes

  • Remove usage of Immutable.js and Immutable Maps (no more need for pathToJS() & dataToJS() to load data from redux)
  • Firebase is now initialized outside of react-redux-firebase - #173, #131, #107
  • reducer split into multiple nested reducers for a few reasons:

Features

  • Support for keeping data on logout - #125
  • react-native index file referenced in package.json that makes it no longer necessary to pass ReactNative in config
  • AuthRequired decorator (or decorator factory) that forces auth to exist before rendering component
  • Support native modules through react-native-firebase #131

Enhancements/Fixes

  • Implement firebase-server for tests instead of using demo firebase instance

Under Consideration

  • Possibility of delayed initialization - #70 (more research needed)

Long Term Goals

  • Optional Built in Role Management
  • Multi-level population
  • Population rules suggestion/generation
  • Routing decorators (most likely to include @AuthRequired, @DataLoaded and @RedirectOnAuth)
  • firebase-admin integration - #22
  • geoFire integration - #32

results matching ""

    No results matching ""