Skip to content

Latest commit

 

History

History
916 lines (397 loc) · 48.8 KB

CHANGELOG.md

File metadata and controls

916 lines (397 loc) · 48.8 KB

Change Log

All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.

3.6.0 (2024-02-13)

Features

  • core: add getInfo method to feature service registry (c7e5311)

3.5.2 (2024-02-08)

Bug Fixes

  • module-loader-amd: use __esModule as default condition (3549b92)

3.5.1 (2024-02-08)

Bug Fixes

  • module-loader-amd: handle AMD modules built by different bundlers (9597cee)

3.5.0 (2024-01-04)

Features

  • async-ssr-manager: support concurrent renderUntilCompleted calls (d5790ed), closes #702

3.4.1 (2023-12-15)

Bug Fixes

  • all: use import/require instead of default in exports (b12e524)

3.4.0 (2023-12-11)

Features

  • core: include consumer ID in externals validation (93bbf51)

3.3.0 (2023-10-16)

Bug Fixes

  • demos: allow dev server to cleanly close after all tests (6236757)

Features

  • all: pass parentFeatureApp into onBind (353680d)
  • module-loader-amd: update SystemJS (8c111ef), closes #80 #80

Reverts

  • Revert "build(all): increase memory for integration tests" (b774733)

3.2.0 (2023-01-20)

Bug Fixes

  • history-service: only declare GetHistoryKeyOptions once (4b97a73)

Features

  • history-service: add support for getHistoryKey option to v1 and v2 (d43ba57)

3.1.0 (2023-01-20)

Features

  • history-service: allow history key to be customized by integrator (487104f)

3.0.1 (2022-09-27)

Bug Fixes

  • demos: remove declaration of external dependencies (0f16746)
  • history-service: do not ignore consumer history changes on root location push (#720) (e14568c)

3.0.0 (2022-09-20)

Bug Fixes

  • all: declare errors as unknown (d240934)
  • react: remove deprecated renderError prop (#719) (0563eeb)

Features

  • history-service: introduce v3 of the history service (#716) (7c7c386)

BREAKING CHANGES

  • react: Removed renderError prop. Use the children prop instead.
  • history-service: Version 5 of the history package is now required as peer dependency. Some types of the root location transformer have been slightly changed, and the deprecated primaryConsumerId has been removed (replaced by primaryConsumerHistoryKey).

2.13.1 (2022-06-20)

Bug Fixes

  • react: export FeatureHubContext (b379913)

2.13.0 (2022-04-04)

Bug Fixes

  • react: attach DOM Feature App after Feature App Definiton is loaded asynchronously (#712) (0022417)

Features

  • core: introduce onBind callback (04c2cfd)

2.12.0 (2022-03-31)

Features

  • serialized-state-manager: introduce a definition factory function (ce6ecbb)

2.11.1 (2022-02-10)

Bug Fixes

  • core: unbind Feature Services if Feature App fails to be created (#705) (98970ce)

2.11.0 (2022-02-10)

Bug Fixes

  • history-service: compatibility with react-router-dom (#704) (9c1913f)

Features

  • all: add optional result parameter to done callback (#701) (86feace)

2.10.0 (2022-01-14)

Bug Fixes

  • website: set strict response headers (63ff878)

Features

  • async-ssr-manager: async render inside renderUntilCompleted (99b80ce)

2.9.0 (2021-07-12)

Bug Fixes

  • all: handle module type during hydration (5cd3373)
  • demos: add missing readonly modifiers (4b6fdb9)
  • demos: add runtime check to loadNodeIntegrator (1c9d7d3)
  • demos: avoid optional chaining operator (83aa522)
  • demos: clean up unnecessary stuff (0f5a728)
  • demos: postcss webpack config for todomvc (f98a155)
  • demos: remove any cast from federation itest (0059fe3)
  • demos: share React as module federation singleton (05c159b)
  • demos: use blueprintjs in federation demo (7d914b8)
  • demos: use empty entry in federated module webpack config (95073f0)
  • demos: use js files for the demo server code (a5d1fed)
  • demos: watch node integrator (ddb29bf), closes #250
  • module-loader-amd: remove unused moduleType from signature (c4edc8d)
  • module-loader-commonjs: remove unused moduleType from signature (f39cd0d)
  • module-loader-federation: remove unused moduleType from signature (0aa329d)
  • react: increase react peer dependency range (4257bf2)

Features

  • core: enhance module loader with module type (ed56640)
  • demos: add demo with multiple module loaders (dd4db94)
  • demos: update to webpack 5 (d25da20)
  • module-loader-federation: add webpack module federation loader (f477b17)
  • module-loader-federation: avoid using a factory (16bd0d0)
  • react: add module type to FeatureAppLoader (bed5484)

2.8.1 (2020-11-14)

Bug Fixes

  • core: update semver to reduce size (#616) (e257e9a), closes #130
  • react: do not set state after FeatureAppContainer has been unmounted (#613) (ba42b6a)

2.8.0 (2020-10-27)

Bug Fixes

  • avoid unmounting of elements in children render function when feature app is loaded (#604) (1709b7d)

Features

  • all: pass featureAppName as consumerName to Feature Service binder (#589) (44b019f)

2.7.0 (2020-06-11)

Features

  • core: allow returning undefined in feature service's create method (#587) (ae53268), closes #582

2.6.0 (2020-03-20)

Features

  • module-loader-commonjs: parameterize the HTTP(S) request (#567) (d5cab0e)

2.5.0 (2020-02-19)

Features

2.4.1 (2020-02-12)

Bug Fixes

  • core: avoid wrong featureServiceAlreadyRegistered logs (#560) (80eb1bf)
  • history-service: handle absolute server request urls (#561) (be84e93)

2.4.0 (2019-12-18)

Features

2.3.1 (2019-11-01)

Bug Fixes

  • core: coerce dependency versions to caret ranges (#543) (915012f)

2.3.0 (2019-08-26)

Features

  • history-service: root location transformer createNewRootLocationForMultipleConsumers (#539) (42691cf)

2.2.1 (2019-07-30)

Bug Fixes

  • module-loader-commonjs: avoid using fs to require commonjs module (#533) (5be4e18), closes #503

2.2.0 (2019-07-11)

Bug Fixes

  • history-service: set initial hash from root location on primary location (#527) (052f7aa)

Features

  • demos: use react-router in history-service demo (#477) (bd94620)

2.1.1 (2019-07-06)

Bug Fixes

  • history-service: allow LocationDescriptorObject in more places (#522) (656eeb0)

2.1.0 (2019-07-05)

Bug Fixes

  • demos: increase feature-hub version in externals (#516) (7d98fb7)

Features

  • history-service: support multiple location changes in one navigation (#518) (1352318), closes #496 #441

2.0.0 (2019-06-20)

Bug Fixes

  • all: do not destroy Feature App when it is rendered multiple times (#512) (bf8a8ad), closes #505
  • all: remove all deprecated interfaces (#510) (7df042e)
  • history-service: reorder createRootLocation params (#511) (92d6070)

Features

  • all: let featureAppId be defined by the integrator (#504) (2565f0c), closes #495
  • all: pass full env to beforeCreate callback (#506) (abeb26a), closes #490
  • async-ssr-manager: move timeout from config to options (#499) (9536ef7)
  • core: remove ability to provide configs via FeatureServiceRegistry (#500) (388b9f0)
  • history-service: rename primaryConsumerUid to primaryConsumerId (#502) (49fae65)
  • react: do not re-throw render errors on server (#508) (4b1c53e)

BREAKING CHANGES

  • all: FeatureAppManager#getFeatureAppScope has been replaced by FeatureAppManager#createFeatureAppScope, since now a new FeatureAppScope is created for every call. When a Feature App is unmounted, the release method (previously called destroy) must be called. Only when all scopes for a Feature App ID have been released, the Feature App instance is destroyed.
  • history-service: The currentRootLocation and consumerLocation parameters of createRootLocation have been switched.
  • all: The following interfaces have been removed:
    • AsyncSsrManagerV0
    • ExternalsValidatorLike
    • FeatureAppManagerLike
    • FeatureServiceRegistryLike
    • HistoryServiceV0
    • FeatureHubContextValue
    • SerializedStateManagerV0
    • ServerRequestV0
  • react: When the FeatureAppContainer/FeatureAppLoader catches a render error on the server, this error was previously re-thrown. To re-create this behavior, an onError prop must be defined that throws the error.
  • all: Instead of passing the featureAppId and the featureServices as separate arguments to the beforeCreate callback, the full Feature App environment, that contains the featureAppId and featureServices, is now passed as a single argument (env). This is the same argument that is passed to the Feature App's create method.
  • all: The option featureAppConfigs has been removed from the options of createFeatureHub and from the options of the FeatureAppManager constructor. The env that is passed to a Feature App's create method does not include an instanceConfig property anymore. If a Feature App must be configured, the integrator needs to specify the config prop of the FeatureAppLoader or FeatureAppContainer. Furthermore, the FeatureAppLoader or FeatureAppContainer now require a featureAppId prop, and the instanceConfig and idSpecifier props have been removed. The same applies to the <feature-app-loader> and <feature-app-container> custom elements. Since the integrator now needs to define the ID of a Feature App, the Feature App definition must not specify an id anymore.
  • history-service: The option primaryConsumerUid of createRootLocationTransformer has been renamed to primaryConsumerId.
  • core: The option featureServiceConfigs has been removed from the options of createFeatureHub and from the options of the FeatureServiceRegistry constructor. The env that is passed to a Feature Service's create method does not include a config property anymore. If a Feature Service must be configured, a factory function that accepts options, and that returns a Feature Service definition, should be used instead, see @feature-hub/async-ssr-manager for an example.
  • async-ssr-manager: The asyncSsrManagerDefinition has been replaced with the factory function defineAsyncSsrManager. This function accepts options to set the timeout, which previously had to be set by the integrator via Feature Service configs. This is in preparation of an upcoming breaking change that removes the ability to provide Feature Service configs through the Feature Service registry.
  • core: The type params of the following interfaces have been changed:
    • FeatureAppDefinition
    • FeatureAppEnvironment
    • FeatureServiceProviderDefinition
    • FeatureServiceEnvironment

1.7.0 (2019-05-10)

Features

1.6.0 (2019-05-03)

Features

  • history-service: support setting a hash by the primary consumer (#483) (8a73593)

1.5.0 (2019-04-16)

Features

  • all: specify a Feature App's base URL (#476) (5f05e7d)

1.4.0 (2019-04-08)

Bug Fixes

  • module-loader-commonjs: avoid require cache (#448) (433690e)

Features

  • demos: add React Error Handling demo (#447) (05fbb75)
  • react: add onError and renderError to FeatureAppContainer (#420) (33fcce7)
  • react: add onError and renderError to FeatureAppLoader (#445) (2a967b5)
  • react: support adding Feature App stylesheets to the document during SSR (#452) (5340f28)

1.3.0 (2019-03-15)

Bug Fixes

  • demos: implement a guard against empty todos (#396) (50276e6)
  • dom: only render defined id specifiers (#427) (d9e1c15)
  • history-service: add missing readonlys (#416) (e67fc27)
  • react: deprecate FeatureHubContextValue interface (#411) (fc13a16)
  • website: improve visibility of note boxes (#419) (4b84a71)

Features

  • async-ssr-manager: use Logger Feature Service instead of console (#415) (e0f0605)
  • core: add logger option to FeatureAppManager, FeatureServiceRegistry, and createFeatureHub (#404) (b70557e), closes #402
  • demos: add custom logging demo (#418) (6ad41b9)
  • demos: dynamize external declarations (#389) (9918fd5)
  • demos: use Logger Feature Service in Todo Manager (#417) (58287e5)
  • dom: add logger option to defineFeatureAppContainer & defineFeatureAppLoader (#406) (1716d6e)
  • dom: allow for container replacement (#428) (ea54ddf)
  • history-service: use Logger Feature Service instead of console (#414) (a363757)
  • logger: add Logger Feature Service (#413) (97d5f3e)
  • react: add custom logger option to FeatureHubContext (#408) (470acd3)

1.2.0 (2019-02-27)

Bug Fixes

  • dom: guard against double definition (#383) (c82947c)

Features

  • demos: add todomvc demo (#190) (f48b9c9)
  • dom: add support for instanceConfig (#384) (19555ed)
  • website: build the todomvc demo into the website build directory (#382) (c62fae8)

1.1.0 (2019-02-25)

Bug Fixes

  • all: add missing sideEffects package.json entries (#377) (e3dbc78)
  • all: correct interfaces of all Feature Services to reflect the switch to version 1.0.0 (#378) (da1066c)

Features

1.0.1 (2019-02-15)

Bug Fixes

  • all: increase feature service versions (#366) (168c771)
  • core: add JSDoc comments to createFeatureHub result (#368) (95c7fb6)

1.0.0 (2019-02-14)

Features

0.13.0 (2019-02-07)

Bug Fixes

  • all: on Node 8 require URLSearchParams from url module (#301) (993b3fc), closes #298
  • all: update dependency ts-node to v8 (#288) (70cdf84)
  • demos: increase jest timeout to 120 seconds (#302) (1401852)
  • react: remove mission critical feature app todos (#297) (da651bc)

Features

  • all: enforce valid semver versions for Feature Services (#330) (6cc19c6)
  • async-ssr-manager: rename rerenderAfter to scheduleRerender (#335) (4477934)
  • async-ssr-manager: support re-scheduling rerender (#337) (2311998)
  • core: integrate ExternalsValidator (#329) (864188d)
  • core: make ExternalsValidator optional for the FeatureAppManager (#341) (18fba0d)
  • core: make ExternalsValidator optional for the FeatureServiceRegistry (#343) (9860ff5)
  • core: move Feature Service dependencies into a separate key (#314) (1ad1d84)
  • core: remove FeatureAppManager#destroy (#336) (04bc770)
  • demos: add "Feature App in Feature App" demo (#313) (2fcecf6)
  • demos: add state serialization to async-ssr-manager demo (#291) (bdbcdb1)
  • demos: enable SSR for FA-in-FA demo and fix externals config (#326) (0f13102)
  • demos: use a FeatureAppLoader in "Feature App in Feature App" demo (#316) (333c302)
  • demos: use addUrlForHydration for preloading in ssr demo (#322) (770090a)
  • react: add addUrlForHydration and integrate into FeatureAppLoader (#320) (9de6cf2)
  • react: add FeatureHubContext (#312) (793bf05)
  • serialized-state-manager: create package (#287) (8cadcb9)
  • serialized-state-manager: implement public API and add JSDoc (#290) (938c8bc)

0.12.0 (2019-01-17)

Bug Fixes

  • demos: do not preload Feature App in SSR demo (#269) (661300e)
  • server-request: align headers with the Request interface from express (#275) (f1b05c1)

Features

  • all: rename manager/registry to featureAppManager/featureServiceRegistry (#247) (f662c45), closes #25
  • all: reset Feature Service versions to 0.1 (#262) (78a145f)
  • async-ssr-manager: remove the serverRequest property (#268) (bef20d5)
  • async-ssr-manager: rename from server-renderer (#243) (af946fa)
  • core: add support for optional dependencies (#244) (4e3c896)
  • core: validate provided feature service versions on register (#252) (d6f89e8)
  • demos: add Async SSR Manager demo and integration test (#251) (b349021)
  • demos: respond with error page for server errors in demos (#257) (97e0484)
  • history-service: make async-ssr-manager dependency optional (#256) (9e8be1e)
  • history-service: reduce public API surface (#258) (5f8b8ec)
  • react: add asyncSsrManager prop to FeatureAppLoader (#248) (92579d9)
  • server-renderer: move and adapt old SSR code (#135) (b33f744)
  • server-renderer: replace register & rerender with rerenderAfter (#241) (5fbfcc6)
  • server-request: create new feature service (#263) (c69ccc2)
  • website: change size of website logo (#253) (894f709)

0.11.0 (2019-01-04)

Bug Fixes

Features

0.10.0 (2018-12-20)

Features

  • module-loader: use standard package entry for node module loader (#203) (e380857)
  • react: improve log message if ID specifier is missing (#204) (cc8be3d)

0.9.0 (2018-12-20)

Features

  • demos: use blueprint components for amd-module-loader demo (#196) (2013ffc)
  • history-service: remove history package type exports (#197) (1694769)

0.8.0 (2018-12-19)

Bug Fixes

Features

  • demos: add push/replace UI for further history-service itest scenarios (#191) (2c3a7d3)

0.7.0 (2018-12-14)

Features

  • core: both the manager and the registry now accept options (#185) (f04693c), closes #117
  • history-service: history is now a peer dependency (#184) (92dc0f1), closes #129
  • react: improve log messages to make them more consistent (#187) (5e3b945), closes #139
  • react: the loader will not try to load an empty src (#186) (236c487), closes #150

0.6.0 (2018-12-13)

Bug Fixes

Features

  • core: add optional id specifier to feature app env (#181) (6c49cdc)
  • demos: add initial history service demo (#178) (cd9daf1)
  • demos: rename integration-tests package to demos (#174) (1decb95)

0.5.1 (2018-12-11)

Bug Fixes

  • history-service: POP to initial location and replaced locations (#159) (4dee669), closes #149

0.5.0 (2018-12-11)

Features

  • core: separate configs for feature apps and services (#165) (bcff8fe), closes #133

0.4.0 (2018-12-03)

Bug Fixes

  • all: enable inlineSources in tsconfig to fix source maps (#116) (03f3b02)

Features

  • history-service: add history feature service (#113) (309e66d), closes #21

0.3.0 (2018-11-30)

Bug Fixes

Features

  • all: rename featureAppKey to idSpecifier (#102) (0e2da7e)
  • core: rename url method argument of the FeatureAppManager (#101) (eb65651)
  • core: rename the ownFeatureServiceDefinitions property of Feature Apps (#100) (078fa9e)
  • examples: setup examples workspace (#81) (170bfb4)
  • server-renderer: rename server-renderer package (#99) (302fcf3)
  • server-renderer-feature-service: create package (7fddfbf), closes #21 #25

0.2.0 (2018-11-28)

Features

  • react: add nodeSrc prop to FeatureAppLoader (#78) (af65f4f)

0.1.1 (2018-11-28)

Bug Fixes

0.1.0 (2018-11-28)

Features

  • all: add initial packages (#1) (019680e)
  • all: merge all React packages, closes #30 (#31) (0f6fdd6)
  • all: merge module loaders to one universal package (#36) (e583b9a)
  • all: remove "React" prefix from both React component class names (#14) (0a795fc)
  • core: introduce the core package (#18) (6809578)
  • module-loader: rename module loader functions, closes #49 (#51) (f9be3cd)