Skip to content

Latest commit

 

History

History
265 lines (182 loc) · 10.2 KB

CHANGELOG.md

File metadata and controls

265 lines (182 loc) · 10.2 KB

Change Log

The feature-redux project adheres to Semantic Versioning.

Each release is documented on this page (in addition to the Github Release Notes), and contains migration instructions.

Summary:

Release What When
v3.0.0 Redux Enhancer Injection and Aspect Plugin Changes February, 5, 2020
v1.0.1 Address Security Alerts December 10, 2019
v1.0.0 feature-u V1 Integration August 14, 2018
v0.1.3 Establish Polyfill Strategy July 2, 2018
v0.1.2 Auto Redux DevTools Integration March 29, 2018
v0.1.1 react-native android patch March 7, 2018
v0.1.0 Initial Release March 6, 2018

v3.0.0 - Redux Enhancer Injection and Aspect Plugin Changes (February, 5, 2020)

GitHub ContentGitHub ReleaseDiff

NOTE: This release contains minor breaking changes from prior releases ... some API changes, at minimum a new version of the feature-u peer dependency (also v3.0.0). A trivial retrofit of client code is necessary!

  • Pardon the version bump (from v1.0.1 to v3.0.0). We skipped v2 strictly as an internal management convenience - to match the required peer dependency of feature-u (which is also v3.0.0).

  • Added: External Aspects may now introduce their own enhancers to the redux store through the Aspect.getReduxEnhancer() API (an "aspect cross-communication mechanism") ... thanks @sylvainlg!! This similar to how External Aspects have always been able to introduce their own redux middleware. Please refer to the "Enhancer Integration" Inputs section for more information.

  • Added: This Aspect Plugin now promotes the redux getState/dispatch functions in the namedParams of feature-u's Application Life Cycle Hooks ... see Interface Points / Exposure

    Previously, these parameters were promoted directly by feature-u, but that coupling has been removed in favor of a new internal mechanism allowing any Aspect to inject their namedParams.

    As a result, this feature-redux release (V3) requires feature-u V3 or greater (and is reflected in it's feature-u peerDependency: ">=3.0.0").

  • Changed: The createReducerAspect() creator function now accepts only named parameters ... see API

  • Added: A new optional initialState parameter was introduced (in the createReducerAspect() creator function), that provides a pre-loaded initial state of your store ... see API

  • Added: A new optional allowNoReducers parameter was introduced (in the createReducerAspect() creator function), that directs what happens when no reducers were specified on your features ... see API

  • Internal: All initialization/validation was moved from the genesis() hook into our constructor.

v1.0.1 - Address Security Alerts (December 10, 2019)

GitHub ContentGitHub ReleaseDiff

NOTE: This release is a non-breaking change (i.e. no API was affected).

  • Security: Address potential security vulnerabilities in dependent libs (mostly devDependencies completely unrelated to deployment)!

v1.0.0 - feature-u V1 Integration (August 14, 2018)

GitHub ContentGitHub ReleaseDiff

NOTE: This release contains breaking changes from prior releases (i.e. a retrofit of client code is necessary).

  • Added/Removed: Eliminate singletons in favor of creators

    The singleton: reducerAspect, has been replaced with a new creator: createReducerAspect().

    This is useful in both testing and server side rendering.

  • Internal: Integrate to feature-u V1

    feature-u V1 has replaced the app object with a fassets object.

    In general, this is not a change that would break a plugin, because app/fassets is a positional parameter that is merely passed through the plugin. In other words the app/fassets is not directly interpreted by this plugin.

    However, feature-redux does have subtle indirect references to changed feature-u V1 APIs, such as Error message strings, etc.

    Therefore, it is best to tidy up this detail.

    As a result, this plugin has now updated it's feature-u peerDependency to ">=1.0.0".

v0.1.3 - Establish Polyfill Strategy (July 2, 2018)

GitHub ContentGitHub ReleaseDiff

NOTE: This release is a non-breaking change (i.e. no API was affected).

  • Review: A new policy is in affect where polyfills are the responsibility of the client app, when the target JavaScript engine is inadequate (such as the IE browser). Please refer to Potential Need for Polyfills for more information.

    As a result, all previous code patches related to es2015+ polyfill issues were removed, in favor of polyfilling at the app-level.

  • Internal: The most current babel version/configuration is now used to transpile the library's es5 distribution.

v0.1.2 - Auto Redux DevTools Integration (March 29, 2018)

GitHub ContentGitHub ReleaseDiff

NOTE: This release is a non-breaking change (i.e. no API was affected).

  • Enhanced: Integration with Redux DevTools is automatically configured (when detected).

  • Docs: Removed action-u reference from example code, using a more conventional "defined constant" action type.

v0.1.1 - react-native android patch (March 7, 2018)

GitHub ContentGitHub ReleaseDiff

NOTE: This release is a non-breaking change (i.e. no API was affected).

  • Fixed: A patch was applied in support of react-native android.

    When running react-native under android, receiving the following exception:

    ERROR: undefined is not a function
           evaluating 'content[typeof Symbol === 'function' ? Symbol.iterator: '@@iterator']()'
    

    This is a transpiler issue related to the es6 "for of" loop. It is believed to be limited to the react-native android JS engine.

    This may be a babel transpiler issue (possibly due to a stale babel version), or an issue with with react-native android's JS engine. The problem was temporarily avoided by employing old style es5 "for loop" constructs (till further research is conducted).

v0.1.0 - Initial Release (March 6, 2018)

GitHub ContentGitHub Release

This is where it all began ...