Releases: configcat/js-ssr-sdk
Releases · configcat/js-ssr-sdk
v8.4.3
Improvements:
- Make the timing of polling iterations more accurate in Auto Polling mode. (configcat/common-js#106)
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
Security fixes:
- Upgrade the
axios
dependency to v1.7.4 as earlier versions contain a security vulnerability.
v8.4.1
v8.4.0
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
New features/improvements:
- Add an optional parameter named
watchChanges
tocreateFlagOverridesFromMap
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 ofconfigcat-common
changes. (#79)
v8.2.0
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
Fixed a cache issue with non Latin 1 characters in the config.json.
v8.0.0
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 tomatchedTargetingRule
and thematchedEvaluationPercentageRule
property tomatchedPercentageOption
inIEvaluationDetails
. - Throw
Error
when the SDK key passed toConfigCatClient.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 toClientCacheState
). - 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)