Skip to content
This repository has been archived by the owner on Oct 11, 2019. It is now read-only.

Releases: launchdarkly/go-client

4.2.1

27 Jun 22:00
Compare
Choose a tag to compare

Fixed:

  • Polling processor regressed to polling only once in release 4.1.0.  This has been fixed.

4.2.0

26 Jun 22:15
Compare
Choose a tag to compare

[4.2.0] - 2018-06-26

Changed:

  • The client now treats most HTTP 4xx errors as unrecoverable: that is, after receiving such an error, it will not make any more HTTP requests for the lifetime of the client instance, in effect taking the client offline. This is because such errors indicate either a configuration problem (invalid SDK key) or a bug, which is not likely to resolve without a restart or an upgrade. This does not apply if the error is 400, 408, 429, or any 5xx error.

4.1.0

14 Jun 21:43
Compare
Choose a tag to compare

[4.1.0] - 2018-06-14

Changed

  • The Go client now depends on the latest release of 1.0.0 of LaunchDarkly fork of eventsource, which supports the Close() method.

Fixed

  • Calling Close on the client now immediately closes the streaming connection, if the client is in streaming mode.
  • During initialization, if the client receives a 401 error from LaunchDarkly (indicating an invalid SDK key), the client constructor will return immediately rather than waiting for a timeout, since there is no way for the client to recover if the SDK key is wrong. The Initialized() method will return false in this case.
  • More generally, the error response for creating a client will also indicate that initialization has failed if the client has not yet been initialized by the UpdateProcessor.

4.0.0

10 May 23:53
Compare
Choose a tag to compare

[4.0.0] - 2018-05-10

Changed:

  • To reduce the network bandwidth used for analytics events, feature request events are now sent as counters rather than individual events, and user details are now sent only at intervals rather than in each event. These behaviors can be modified through the LaunchDarkly UI and with the new configuration option InlineUsersInEvents. For more details, see Analytics Data Stream Reference.
  • When sending analytics events, if there is a connection error or an HTTP 5xx response, the client will try to send the events again one more time after a one-second delay.
  • The Close method on the client now conforms to the io.Closer interface.

Added:

  • The new global VersionedDataKinds is an array of all existing VersionedDataKind instances. This is mainly useful if you are writing a custom FeatureStore implementation. (Thanks, mlafeldt!)

3.1.0

19 Mar 23:30
Compare
Choose a tag to compare

[3.1.0] - 2018-03-19

Added

  • Convenience functions NewUser and NewAnonymousUser, for creating a user struct given only the key. (Thanks, mlafeldt!)

Fixed

  • In the Redis feature store, fixed a synchronization problem that could cause a feature flag update to be missed if several of them happened in rapid succession.
  • Fixed errors in the Readme example code. (Thanks, mlafeldt!)

3.0.0

20 Feb 00:32
Compare
Choose a tag to compare

[3.0.0] - 2018-02-19

Added

  • Support for a new LaunchDarkly feature: reusable user segments.
  • The mechanism by which the client retrieves feature and segment data from the server is now customizable through an interface, UpdateProcessor. This will be used in future to support test fixtures.

Changed

  • The FeatureStore interface has been changed to support user segment data as well as feature flags. Existing code that uses InMemoryFeatureStore or RedisFeatureStore should work as before, but custom feature store implementations will need to be updated.
  • Logging is now done through an interface, Logger, instead of directly referencing log.Logger. Existing code that uses log.Logger should still work as before.

2.3.0

31 Jan 22:09
Compare
Choose a tag to compare

[2.3.0] - 2018-01-31

Changed

  • When evaluating a feature flag, if the client has not yet fully initialized but you are using a Redis store that has already been populated, the client will now use the last known feature data from Redis rather than returning a default value.
  • In polling mode, the minimum polling interval is now 30 seconds. Smaller configured values will be adjusted up to the minimum.
  • The streaming client will no longer reconnect after detecting an invalidated SDK key.
  • Added a build tag, launchdarkly_no_redis, which allows building without the Redis dependency.

Fixed

  • Fixed a bug where a previously deleted feature flag might be considered still available.

2.2.3

21 Dec 22:46
Compare
Choose a tag to compare

[2.2.3] - 2017-12-21

Added

  • Allow user to stop user attributes from being sent in analytics events back to LaunchDarkly. Set PrivateAttributeNames to a list of attributes to avoid sending, or set AllAttributesPrivate to true to send no attributes.

Changed

  • Accept an interface for the Logger configuration option (thanks @ZiaoGeorgeJiang).

2.1.0

16 Nov 22:06
Compare
Choose a tag to compare

[2.1.0] - 2017-11-16

Added

  • Stop processing streaming events and errors after Close().