Skip to content
This repository was archived by the owner on May 30, 2024. It is now read-only.

prepare 5.9.2 release#161

Merged
LaunchDarklyCI merged 288 commits intomasterfrom
release-5.9.2
Oct 23, 2019
Merged

prepare 5.9.2 release#161
LaunchDarklyCI merged 288 commits intomasterfrom
release-5.9.2

Conversation

@LaunchDarklyCI
Copy link
Contributor

[5.9.2] - 2019-10-23

Changed:

  • Event listeners for update events were receiving an entire flag configuration object as an argument. This was not useful for applications (since the SDK does not provide any way to use such an object directly), and was unsafe since the object was shared with internal code and was mutable. The argument for update events is now an object with only one property, key (the flag key).
  • The CI build will now fail if npm audit detects any vulnerabilities in the runtime dependencies (not including devDependencies).
  • The CI build now performs code linting.

Fixed:

  • There were significant performance bottlenecks due to the use of setTimeout to defer callbacks. These have been replaced with setImmediate for callbacks into application code, or with direct undeferred callbacks in internal code paths where it is safe to do so. (Thanks, mdgbayly!)
  • When initializing the client, if it gets an HTTP error or network error that is considered retryable (as opposed to for instance a 401 error, which will not be retried), it should not reject the waitForInitialization promise and should not emit an error event. (#155)
  • Fixed some rule matching behavior for consistency with the other SDKs: string operators such as startsWith should only be able to match if both values are strings; numeric operators such as lessThan should only be able to match if both values are numbers; strings should only be usable as date/time values if they match RFC3339 format; and invalid regexes should simply cause a non-match, rather than an error.
  • Previously, an update event would only be triggered for a flag if that flag's configuration were changed directly; it did not take into account indirect changes that could affect a flag's value, such as a change to one of its prerequisite flags or to a user segment that it references. This has been fixed so that any change potentially affecting a flag's value will produce an update event for that flag.
  • The TypeScript declaration for LDFeatureStore.upsert() was wrong. (Thanks, JakeGinnivan!)
  • Removed an unused dependency on the deprecated package hoek. (#158)
  • Updated the dependency on semver. (Thanks, mmcgahan!)
  • Fixed various dependency versions that were flagged as vulnerable by npm audit.

eli-darkly and others added 30 commits August 23, 2018 16:29
fix allFlagsState behavior when options are omitted
validate TypeScript definitions in CI build
# Conflicts:
#	test/LDClient-test.js
fix error handling for malformed flags
prevent unhandled rejection from background flush
don't signal init failure & don't fire an error unless it's unrecoverable
* update eslint to 6.x

* use CircleCI 2.1 syntax

* typo

* rm unused

* minor cleanup

* syntax fix

* add job names
# Conflicts:
#	.circleci/config.yml
fix some vulnerable npm dependencies and add a better way to catch them
better handling of invalid data types
@LaunchDarklyCI LaunchDarklyCI merged commit 5ffe7c3 into master Oct 23, 2019
@LaunchDarklyCI LaunchDarklyCI deleted the release-5.9.2 branch October 23, 2019 19:06
LaunchDarklyCI pushed a commit that referenced this pull request Feb 12, 2020
…ream

diagnostic events, part 3: capture stream connection stats
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants