Releases: launchdarkly/ruby-server-sdk
Releases · launchdarkly/ruby-server-sdk
5.1.0
[5.1.0] - 2018-08-27
Added:
- The new
LDClient
methodall_flags_state()
should be used instead ofall_flags()
if you are passing flag data to the front end for use with the JavaScript SDK. It preserves some flag metadata that the front end requires in order to send analytics events correctly. Versions 2.5.0 and above of the JavaScript SDK are able to use this metadata, but the output ofall_flags_state()
will still work with older versions. - The
all_flags_state()
method also allows you to select only client-side-enabled flags to pass to the front end, by using the optionclient_side_only: true
.
Changed:
- Unexpected exceptions are now logged at
ERROR
level, and exception stacktraces atDEBUG
level. Previously, both were being logged atWARN
level.
Deprecated:
LDClient.all_flags()
5.0.1
[5.0.1] - 2018-07-02
Fixed:
Fixed a regression in version 5.0.0 that could prevent the client from reconnecting if the stream connection was dropped by the server.
5.0.0
[5.0.0] - 2018-06-26
Changed:
- The client no longer uses Celluloid for streaming I/O. Instead, it uses socketry.
- 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.
- During initialization, if the client receives any of the unrecoverable errors described above, the client constructor will return immediately; previously it would continue waiting until a timeout. The
initialized?
method will return false in this case.
Removed:
- The SDK no longer supports Ruby versions below 2.2.6, or JRuby below 9.1.16.
4.0.0
[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
inline_users_in_events
. For more details, see Analytics Data Stream Reference.
Removed:
- JRuby 1.7 is no longer supported.
- Greatly reduced the number of indirect gem dependencies by removing
moneta
, which was previously a requirement for the Redis feature store.
3.0.3
[3.0.3] - 2018-03-23
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.
3.0.2
3.0.1
[3.0.1] - 2018-02-26
Fixed
- Fixed a bug that could prevent very large feature flags from being updated in streaming mode.
3.0.0
[3.0.0] - 2018-02-22
Added
- Support for a new LaunchDarkly feature: reusable user segments.
Changed
- The feature store interface has been changed to support user segment data as well as feature flags. Existing code that uses
InMemoryFeatureStore
orRedisFeatureStore
should work as before, but custom feature store implementations will need to be updated.
2.5.0
2.5.0 (2018-02-12)
Added
- Adds support for a future LaunchDarkly feature, coming soon: semantic version user attributes.
Changed
- It is now possible to compute rollouts based on an integer attribute of a user, not just a string attribute.
2.4.1
[2.4.1] - 2018-01-23
Changed
- Reduce logging level for missing flags
- Relax json and faraday dependencies
Fixed
- Wrap redis bulk updates in a transaction
- Fixed documentation links