Skip to content

Releases: configcat/js-ssr-sdk

v8.4.3

06 Sep 16:00
e1f3dd7
Compare
Choose a tag to compare

Improvements:

Bug fixes:

  • Check cache expiration in every poll iteration, not just the first one in Auto Polling mode to reduce network traffic when the SDK uses a shared cache (including LocalStorage cache used by instances of a browser app running in multiple browser tabs). (configcat/common-js#106)
  • Synchronize in-memory cache with the external cache in every poll iteration, not just the first one in Auto Polling mode regardless of offline mode to keep in-memory cache up-to-date when the SDK uses a shared cache.
  • Protect poll iterations with try-catch so a potential exception doesn't stop the polling loop in Auto Polling mode.

v8.4.2

22 Aug 10:17
0feb6af
Compare
Choose a tag to compare

Security fixes:

v8.4.1

18 Apr 08:53
d9a2efb
Compare
Choose a tag to compare

Security fixes:

  • Upgrade the axios dependency to v1.6.8 as earlier versions use a vulnerable version of the follow-redirects package. (#81)

v8.4.0

21 Mar 12:24
890475b
Compare
Choose a tag to compare

Improvements:

  • Make naming of UserComparator members consistent. (configcat/common-js#102)
  • Make line terminator character sequence configurable in log messages.
  • Adjust the terminology used in JSDoc comments to the main documentation.
  • Minor performance improvements.

Bug fixes:

  • Align evaluation logging and evaluator error reporting in some edge cases where the config JSON contains errors.
  • Correct grammar mistakes in error messages.

Breaking changes:

  • Change the name of some UserComparator members: Is(Not)OneOf -> TextIs(Not)OneOf, SensitiveIs(Not)OneOf -> SensitiveTextIs(Not)OneOf, (Not)ContainsAnyOf -> Text(Not)ContainsAnyOf. (Low impact expected.)

v8.3.0

16 Jan 16:51
90c4d83
Compare
Choose a tag to compare

New features/improvements:

  • Add an optional parameter named watchChanges to createFlagOverridesFromMap which controls whether the client should detect changes to the flag override map after client initialization. (configcat/common-js#101)

Bug fixes:

  • Reference a fixed version of configcat-common to avoid issues in case the "pubternal" API of configcat-common changes. (#79)

v8.2.0

09 Jan 11:25
8e2e8e9
Compare
Choose a tag to compare

Improvements:

  • Upgrade to configcat-common v9.1.0.
  • Send ETag as a query string parameter when running in browser (because browsers don't send it automatically in every case).
  • Upon client initialization test for the availability of the local storage and use LocalStorageCache only if it's available. Otherwise, use the default (in-memory) cache implementation.
  • Don't swallow exceptions which are thrown in the LocalStorageCache.get/set methods so the outer exception handlers can catch and log them.

v8.1.0

20 Dec 16:38
b69a4e1
Compare
Choose a tag to compare

Fixed a cache issue with non Latin 1 characters in the config.json.

v8.0.0

24 Nov 15:19
47b77f3
Compare
Choose a tag to compare

New features and improvements:

  • Add support for the new Config JSON v6 format: update the config model and implement new features in setting evaluation logic. (configcat/common-js#96)
  • Overhaul setting evaluation-related logging and make it consistent across SDKs.
  • Performance improvements to setting evaluation (building of evaluation log is expensive, so it is skipped when info level logging is turned off).

Bug fixes:

  • Hook event handlers which close over the client instance should not prevent the client from being collected by the GC when user has no more references to the client instance. (configcat/common-js#97)
  • Prevent potential issues with weak references when awaiting IConfigCatClient.waitForReady. Also, make observable if the initial cache sync-up fails.

Breaking changes (listed in the order of expected impact):

  • Rename the matchedEvaluationRule property to matchedTargetingRule and the matchedEvaluationPercentageRule property to matchedPercentageOption in IEvaluationDetails.
  • Throw Error when the SDK key passed to ConfigCatClient.get is in invalid format (unless the client is set up to use local-only flag override behavior).
  • Remove the deprecated ClientReadyState enum (it was renamed to ClientCacheState).
  • Change config model (IConfig and related interfaces/enums).
  • Slightly change the behavior of the ClientReady hook in Auto Poll mode to fire after the completion of the first fetch operation - regardless of success or failure - to make the behavior consistent with other SDKs. (configcat/common-js#94)

v7.1.2

09 Jan 09:09
Compare
Choose a tag to compare

Improvements:

  • Upgrade TypeScript version to 4.8.4

Security:

  • Upgrade axios library to 1.6.2

v7.1.1

04 Aug 17:07
d5c555a
Compare
Choose a tag to compare

Improvements:

  • For better compatibility, restrict the TypeScript language features used to those which are available in v4.0 by downgrading the TypeScript compiler version.