Skip to content

Releases: cap-js-community/feature-toggle-library

v1.1.5

06 Jun 13:11

Choose a tag to compare

Changed

  • fallback value null is no longer allowed (fixes #62).
  • change handlers no longer receive null as new values, they get the actual new value for the relevant scope instead
    (fixes #64).

Fixed

  • cds-plugin: unify and fix syntax of context.error and context.reject for cds service.
  • change processing is more resilient. for redis message with multiple changes, if one change fails, then subsequent
    changes will still be processed.

v1.1.4

08 Apr 13:37

Choose a tag to compare

Added

  • docs: basic documentation for newest cds-plugin features.
  • cds-plugin: better access control (fixes #57).

Fixed

  • redis: better integration mode, will not log a connection error if redis is not present.

v1.1.2

21 Mar 10:19

Choose a tag to compare

Added

  • cds-plugin: fts feature toggles are detected and configured automatically (fixes #50).
  • cds-plugin: allow custom scope map callback for fts feature toggles (fixes #51).
  • cds-plugin: can configure unique name, i.e. which apps store the same toggles in redis, as part of cds configuration.

Fixed

  • cds-plugin: feature toggles will not initialize during cds build.
  • redis: proper usage of redis-client built-in reconnect capabilities.

v1.1.1

05 Dec 12:18

Choose a tag to compare

Changed

  • cds-service: always log update contents for traceability and improved logging for redis read and update errors.
  • docs: add getting started section (fixes #43).

v1.1.0

01 Dec 14:07

Choose a tag to compare

⚠️ User action required! This release will be more disruptive than usual. We re-thought that main require API and
made it much leaner. These changes should have happened in 1.0, sorry for the inconvenience.

// before
const {
  singleton: { getFeatureValue },
} = require("@cap-js-community/feature-toggle-library");

function someFunc() {
  getFeatureValue(key);
}

// after
const toggles = require("@cap-js-community/feature-toggle-library");

function someFunc() {
  toggles.getFeatureValue(key);
}

For details see
https://cap-js-community.github.io/feature-toggle-library/usage/

Changed

  • the library now exports only the singleton instance (fixes #39).
  • cds-plugin: the request header features are only respected in development environments (fixes #41).

v1.0.0

27 Nov 14:11

Choose a tag to compare

We are releasing 1.0, after 2 years of continuous usage, testing, and small improvements.

Removed

  • restrict to node v18+

Added

  • act as Feature Vector Provider when used as a CDS-plugin.
  • allow graceful shutdown by closing redis clients on cds shutdown event (fixes #34).

v0.7.2

18 Oct 09:21

Choose a tag to compare

Added

  • support for redis cluster configurations.
  • enable setting maximal log level through env variable BTP_FEATURES_LOG_LEVEL. this can be used to silence the
    library during tests.

Changed

  • implement new cds-plugin API, where plugins export a promise instead of an activate property and stay compatible for
    older cds versions.

v0.7.1

13 Sep 11:20

Choose a tag to compare

Fixed

  • cds-plugin integration now works for projects that run cds build --production and only use the resulting
    csn.json at runtime.

v0.7.0

08 Sep 14:07

Choose a tag to compare

Added

  • new harmonized validation configuration for scope and regex checks, as well as external validation with user
    provided modules.

  • new (optional) cds-plugin integration. for details, see the new
    plugin and service documentation.

  • new logger implementation which replaces
    cf-nodejs-logging-support dependency. it has better cds
    integration (if present). for example, it will log
    correlation ids that are present in cds
    context via async local storage.

Changed

  • allowedScopes: [xxx] configuration will now be ignored and needs to be replaced with
    validations: [{ scopes: [xxx] }].

  • validation: yyy configuration will now be ignored and needs to be replaced with
    validations: [{ regex: yyy }].

Fixed

  • re-work pipelines to separate main branch and pr-voter status

v0.6.9

18 Jul 16:09

Choose a tag to compare

Added

Fixed

  • better documentation regarding scoping and redis hash map persistence

  • more resilient handling of bad input for scopeMaps in all external APIs