Releases: launchdarkly/js-client-sdk
Releases · launchdarkly/js-client-sdk
2.18.2
[2.18.2] - 2020-10-19
Changed:
- With goals that use substring or regex mode for URL matching, the SDK previously was not able to match anything in a URL's hash fragment. Since some applications use path-like hash fragments (
http://example.com/url/path#/additional/path
), the SDK now considers any hash string that contains a slash to be part of the URL for matching purposes, if the matching mode is substring or regex. Hash strings that do not contain a slash are assumed to be simple HTML anchors and are not included in matching.
2.18.1
[2.18.1] - 2020-09-14
Fixed:
- In streaming mode, when connecting to the Relay Proxy rather than directly to the LaunchDarkly streaming service, if the current user was changed twice within a short time it was possible for the SDK to revert to flag values from the previous user.
2.18.0
[2.18.0] - 2020-07-16
Added:
- Configuration option
disableSyncEventPost
, for preventing the SDK from trying to do a synchronous HTTP request to deliver analytics events while the page is closing. Such requests are not supported in current versions of Chrome, and although the SDK uses browser detection to avoid doing them if they are not supported, the browser detection mechanism does not work in some test environments.
2.17.6
[2.17.6] - 2020-07-13
Fixed:
- Removed uses of
String.startsWith
that caused errors in Internet Explorer unless a polyfill for that function was present.
2.17.5
[2.17.5] - 2020-05-13
Fixed:
- The TypeScript declaration for
track()
was missing the optionalmetricValue
parameter.
2.17.4
[2.17.4] - 2020-04-30
Fixed:
- Some diagnostic event data was being sent twice, resulting in extra HTTP requests. This did not affect analytics events, so customer data on the dashboard and in data export would still be correct.
2.17.3
[2.17.3] - 2020-03-31
Fixed:
- The default logging implementation (
createConsoleLogger
) could throw errors in Internet Explorer 11 if log output (of an enabled level) happened while the developer tools were not open. This is because in IE 11, theconsole
object does not exist unless the tools are open. This has been fixed so the logger does not try to useconsole
unless it currently has a value. - Updated some dependency versions to resolve a security vulnerability in the transitive
acorn
dependency. This dependency is only used for development and as a result the security vulnerability did not affect customers.
2.17.2
[2.17.2] - 2020-03-18
Fixed:
- Some users reported an error where the SDK said that the content type of a response was
application/json, application/json; charset=utf8
. It is invalid to have multiple Content-Type values in a response and the LaunchDarkly service does not do this, but an improperly configured proxy/gateway might add such a header. Now the SDK will tolerate a value like this as long as it starts withapplication/json
. (#205) - Fixed incorrect usage of
Object.hasOwnProperty
which could have caused an error if a feature flag hadhasOwnProperty
as its flag key.
2.17.1
[2.17.1] - 2020-03-06
Fixed:
- At client initialization time, if the initial flag polling request failed, it would cause an unhandled promise rejection unless the application had called
waitForInitialization()
and provided an error handler for the promise that was returned by that method. While that is correct behavior if the application did callwaitForInitialization()
(any promise that might be rejected should have an error handler attached), it is inappropriate if the application did not callwaitForInitialization()
at all-- which is not mandatory, since the application could use events instead, orwaitUntilReady()
, or might simply not care about waiting for initialization. This has been fixed so that no such promise is created until the first time the application callswaitForInitialization()
; subsequent calls to the same method will return the same promise (since initialization can only happen once). - A bug in the event emitter made its behavior unpredictable if an event handler called
on
oroff
while handling an event. This has been fixed so that all event handlers that were defined at the time the event was fired will be called; any changes made will not take effect until the next event.
2.17.0
[2.17.0] - 2020-02-14
Note: if you are using the LaunchDarkly Relay Proxy to forward events, update the Relay to version 5.10.0 or later before updating to this Node SDK version.
Added:
- The SDK now periodically sends diagnostic data to LaunchDarkly, describing the version and configuration of the SDK, the architecture and version of the runtime platform, and performance statistics. No credentials, hostnames, or other identifiable values are included. This behavior can be disabled with the
diagnosticOptOut
option, or configured withdiagnosticRecordingInterval
.
Fixed:
- When using secure mode in conjunction with streaming mode, if an application specified a new
hash
parameter while changing the current user withidentify()
, the SDK was not using the newhash
value when recomputing the stream URL, causing the stream to fail. (Thanks, andrao!) - The
LICENSE.txt
file was accidentally replaced with an incomplete license in an earlier release. The standard Apache 2.0 license file has been restored. (#202)