Releases: optimizely/java-sdk
Releases · optimizely/java-sdk
Release 2.1.4
Release 2.1.4
December 6th, 2018
Bug Fixes
- fix/wrap in try catch for getting build version in static init which might crash (#241)
3.0.0-RC2
3.0.0-RC2
November 20th, 2018
This is the release candidate for the 3.0 SDK, which includes a number of improvements to audience targeting along with a few bug fixes.
New Features
- Support for number-valued and boolean-valued attributes. (#213)
- Support for audiences with new match conditions for attribute values, including “substring” and “exists” matches for strings; “greater than”, “less than”, exact, and “exists” matches for numbers; and “exact”, and “exists” matches for booleans.
- Built-in datafile version compatibility checks so that SDKs will not initialize with a newer datafile it is not compatible with. (#209)
- Audience combinations within an experiment are unofficially supported in this release.
- Refactor EventDispatcher to handle graceful shutdown via a call to AsyncEventHandler.shutdownAndAwaitTermination.
Breaking Changes
- Previously, notification listeners filtered non-string attribute values from the data passed to registered listeners. To support our growing list of supported attribute values, we’ve changed this behavior. Notification listeners will now post any value type passed as an attribute. Therefore, the interface of the notification listeners has changed to accept a
Map<String, ?>
. - Update to use Java 1.7 (#208)
Bug Fixes
- refactor: Performance improvements for JacksonConfigParser (#209)
- refactor: typeAudience.combinations will not be string encoded like audience.combinations. To handle this we created a new parsing type TypedAudience.
- fix for exact match when dealing with integers and doubles. Created a new Numeric match type.
- make a copy of attributes passed in to avoid any concurrency problems. Addresses GitHub isue in Optimizely Andriod SDK.
- allow single root node for audience.conditions, typedAudience.conditions, and Experiment.audienceCombinations.
Release 3.0.0-RC
3.0.0-RC
November 7th, 2018
This is the release candidate for the 3.0 SDK, which includes a number of improvements to audience targeting along with a few bug fixes.
New Features
- Support for number-valued and boolean-valued attributes. (#213)
- Support for audiences with new match conditions for attribute values, including “substring” and “exists” matches for strings; “greater than”, “less than”, exact, and “exists” matches for numbers; and “exact”, and “exists” matches for booleans.
- Built-in datafile version compatibility checks so that SDKs will not initialize with a newer datafile it is not compatible with. (#209)
- Audience combinations within an experiment are unofficially supported in this release.
Breaking Changes
- Previously, notification listeners filtered non-string attribute values from the data passed to registered listeners. To support our growing list of supported attribute values, we’ve changed this behavior. Notification listeners will now post any value type passed as an attribute. Therefore, the interface of the notification listeners has changed to accept a
Map<String, ?>
. - Update to use Java 1.7 (#208)
Bug Fixes
- refactor: Performance improvements for JacksonConfigParser (#209)
- refactor: typeAudience.combinations will not be string encoded like audience.combinations. To handle this we created a new parsing type TypedAudience.
- fix for exact match when dealing with integers and doubles. Created a new Numeric match type.
- make a copy of attributes passed in to avoid any concurrency problems. Addresses GitHub isue in Optimizely Andriod SDK.
3.0.0-alpha
October 10th, 2018
This is the alpha release of the 3.0 SDK, which includes a number of improvements to audience targeting along with a few bug fixes.
New Features
- Support for number-valued and boolean-valued attributes. (#213)
- Support for audiences with new match conditions for attribute values, including “substring” and “exists” matches for strings; “greater than”, “less than”, “exact”, and “exists” matches for numbers; and “exact” and “exists” matches for booleans.
- Built-in datafile version compatibility checks so that SDKs will not initialize with a newer datafile it is not compatible with. (#209)
Breaking Changes
- Previously, notification listeners filtered non-string attribute values from the data passed to registered listeners. To support our growing list of supported attribute values, we’ve changed this behavior. Notification listeners will now post any value type passed as an attribute. Therefore, the interface of the notification listeners has changed to accept a
Map<String, ?>
. - Update to use Java 1.7 (#208)
Bug Fixes
- refactor: Performance improvements for JacksonConfigParser (#209)
Release 2.1.3
2.1.3 - September 21st, 2018
Bug Fixes
- fix(attributes): Filters out attributes with null values from the event payload (#204)
Release 2.1.2
August 1st, 2018
Bug Fixes
- Move serialization to LogEvent.getBody() to improve performance of API calls (#201)
2.1.1
chore: release 2.1.1 (#195) * Fix impression sent from feature experiment variation toggled off. (#193)
2.0.2
chore: release 2.0.2 (#194) * Fix impression sent from feature experiment variation toggled off. (#193)
2.1.0
June 15th, 2018
- Introduces support for bot filtering.
2.0.1 Release
2.0.1
April 25th, 2018
This is a patch release of the Optimizely SDK for 2.0.0 which is a major release.
Bug Fixes
- Checking for invalid variables passed into getEnabledFeature, Activate, getVariation and track.