Skip to content

Releases: launchdarkly/react-client-sdk

2.16.1

17 Dec 20:53
Compare
Choose a tag to compare

[2.16.1] - 2019-12-17

The 2.16.0 release was unpublished due to a packaging error. This is a rerelease containing the same changes but fixing the packaging.

Added:

  • Configuration property eventCapacity: the maximum number of analytics events (not counting evaluation counters) that can be held at once, to prevent the SDK from consuming unexpected amounts of memory in case an application generates events unusually rapidly. In JavaScript code this would not normally be an issue, since the SDK flushes events every two seconds by default, but you may wish to increase this value if you will intentionally be generating a high volume of custom or identify events. The default value is 100.
  • Configuration properties wrapperName and wrapperVersion: used by the React SDK to identify a JS SDK instance that is being used with a wrapper API.

Changed:

  • The SDK now logs a warning if any configuration property has an inappropriate type, such as baseUri:3 or sendEvents:"no" (normally not possible in TypeScript, but could happen if an arbitrary object is cast to LDOptions). For boolean properties, the SDK will still interpret the value in terms of truthiness, which was the previous behavior. For all other types, since there's no such commonly accepted way to coerce the type, it will fall back to the default setting for that property; previously, the behavior was undefined but most such mistakes would have caused the SDK to throw an exception at some later point.

Fixed:

  • When calling identify, the current user (as reported by getUser()) was being updated before the SDK had received the new flag values for that user, causing the client to be temporarily in an inconsistent state where flag evaluations would be associated with the wrong user in analytics events. Now, the current-user state will stay in sync with the flags and change only when they have finished changing. (Thanks, edvinerikson!)

Deprecated:

  • The samplingInterval configuration property was deprecated in the code in the previous minor version release, and in the changelog, but the deprecation notice was accidentally omitted from the documentation comments. It is hereby deprecated again.

2.16.0

17 Dec 00:23
Compare
Choose a tag to compare

[2.16.0] - 2019-12-16

This release was broken and has been removed.

2.15.1

14 Nov 22:59
Compare
Choose a tag to compare

[2.15.1] - 2019-11-14

Fixed:

  • Fixed a bug where, when bootstrapping flag data, subsequent flag changes were incorrectly applied to the original bootstrapped data instead of the latest known flag data.
  • Fixed browser warnings and errors in the sample application.

2.15.0

06 Nov 20:29
Compare
Choose a tag to compare

[2.15.0] - 2019-11-06

Changed:

  • Changed the behavior of the warning message that is logged on failing to establish a streaming connection. Rather than the current behavior where the warning message appears upon each failed attempt, it will now only appear on the first failure in each series of attempts. Also, the message has been changed to mention that retries will occur. (#182)

Fixed:

  • The beforeunload event handler no longer calls close on the client, which was causing the SDK to become unusable if the page did not actually close after this event fired (for instance if the browser navigated to a URL that launched an external application, or if another beforeunload handler cancelled leaving the page). Instead, it now only flushes events. There is also an unload handler that flushes any additional events that might have been created by any code that ran during the beforeunload stage. (#181)
  • Removed uses of Object.assign that caused errors in Internet Explorer unless a polyfill for that function was present. These were removed earlier in the 2.1.1 release, but had been mistakenly added again.
  • Removed development dependency on typedoc which caused some vulnerability warnings.

Deprecated:

  • The samplingInterval configuration property is deprecated and will be removed in a future version. The intended use case for the samplingInterval feature was to reduce analytics event network usage in high-traffic applications. This feature is being deprecated in favor of summary counters, which are meant to track all events.

2.14.0

13 Sep 00:53
Compare
Choose a tag to compare

[2.14.0] - 2019-09-12

Added:

  • TypeDoc-generated documentation for all public types and methods is now online.
  • The asyncWithLDProvider function to allow for your flags and the LDClient to be ready for use at the beginning of your app's lifecycle.

Changed:

  • The launchdarkly-react-client-sdk package has been moved from the js-client-sdk monorepo into its own repository. All subsequent releases will be made from this new repository.