Skip to content

Releases: optimizely/java-sdk

2.0.0 Beta 6

08 Mar 20:02
060bca7
Compare
Choose a tag to compare
2.0.0 Beta 6 Pre-release
Pre-release

This is a patch on 2.0.0-beta5.

New Features

This release includes a new API Optimizely#getEnabledFeatures() that returns all features that are enabled for a given user.
Features are now enabled or disabled based on the featureEnabled property in each variation the user is bucketed into.

2.0.0 Beta 5

26 Feb 20:12
da0f1f3
Compare
Choose a tag to compare
2.0.0 Beta 5 Pre-release
Pre-release

February 26, 2018

This is a minor patch on 2.0.0-beta4.
This release upgrades the gradle wrapper to 4.5.1 and adds tasks for compiling unit coverage metrics to export to coveralls.

2.0.0 Beta 4

01 Feb 21:47
71280f5
Compare
Choose a tag to compare
2.0.0 Beta 4 Pre-release
Pre-release

2.0.0 Beta 4

February 1, 2018

This release is a fourth beta release supporting feature flags and rollouts. It includes all the same new features and breaking as the last beta release. It also includes the latest Notification Listeners and bucketing Id changes from 1.9.0.

New Features

  • New NotificationCenter for track and activate notifications.
  • Use $opt_bucketing_id in your attribute list to support bucketing like users.

1.9.0

31 Jan 22:24
65d41d5
Compare
Choose a tag to compare

This release adds support for bucketing id (By passing in $opt_bucketing_id in the attribute map to override the user id as the bucketing variable. This is useful when wanting a set of users to share the same experience such as two players in a game).

This release also deprecates the old notification broadcaster in favor of a notification center that supports a wide range of notifications. The notification listener is now registered for the specific notification type such as ACTIVATE and TRACK. This is accomplished by allowing for a variable argument call to notify (a new var arg method added to the NotificationListener). Specific abstract classes exist for the associated notification type (ActivateNotificationListener and TrackNotificationListener). These abstract classes enforce the strong typing that exists in Java. You may also add custom notification types and fire them through the notification center. The notification center is implemented using this var arg approach in all Optimizely SDKs.

New Features

  • Added $opt_bucketing_id in the attribute map for overriding bucketing using the user id. It is available as a static string in DecisionService.ATTRIBUTE_BUCKETING_ID
  • Optimizely notification center for activate and track notifications.

Breaking change

There is a new abstract method on NotificationListener notify(args...);

2.0.0-beta3

05 Jan 23:38
d8439a9
Compare
Choose a tag to compare
2.0.0-beta3 Pre-release
Pre-release

2.0.0 Beta 3

January 5, 2018

This release is a third beta release supporting feature flags and rollouts. It includes all the same new features and breaking as the last beta release.

Bug Fixes

SDK checks for null values in the Feature API parameters.

  • If isFeatureEnabled is called with a null featureKey or a null userId, it will return false immediately.
  • If any of getFeatureVariable are called with a null featureKey, variableKey, or userId, null will be returned immediately.

1.8.1

13 Dec 02:48
9094769
Compare
Choose a tag to compare

1.8.1

December 12, 2017

This is a patch release for 1.8.0. It contains two bug fixes mentioned below.

Bug Fixes

SDK returns NullPointerException when activating with unknown attribute.

Pooled connection times out if it is idle for a long time (AsyncEventHandler's HttpClient uses PoolingHttpClientConnectionManager setting a validate interval).

2.0.0-beta2

06 Oct 21:24
Compare
Choose a tag to compare
2.0.0-beta2 Pre-release
Pre-release

2.0.0 Beta 2

October 5, 2017

This release is a second beta release supporting feature flags and rollouts. It includes all the same new features and breaking changes as the last beta release.

Bug Fixes

Fall back to default feature variable value when there is no variable usage in the variation a user is bucketed into. For more information see PR #149.

2.0.0-beta

29 Sep 21:27
Compare
Choose a tag to compare
2.0.0-beta Pre-release
Pre-release

2.0.0 Beta

September 29, 2017

This release is a beta release supporting feature flags and rollouts.

New Features

Feature Flag Accessors

You can now use feature flags in the Java SDK. You can experiment on features and rollout features through the Optimizely UI.

  • isFeatureEnabled
  • getFeatureVariableBoolean
  • getFeatureVariableDouble
  • getFeatureVariableInteger
  • getFeatureVariableString

Breaking Changes

  • Remove Live Variables accessors
    • getVariableString
    • getVariableBoolean
    • getVariableInteger
    • getVariableDouble
  • Remove track with revenue as a parameter. Pass the revenue value as an event tag instead
    • track(String, String, long)
    • track(String, String, Map<String, String>, long)
  • We will no longer run all unit tests in travis-ci against Java 7.
    We will still continue to set sourceCompatibility and targetCompatibility to 1.6 so that we build for Java 6.

1.8.0

29 Aug 22:17
466ebaa
Compare
Choose a tag to compare

1.8.0

August 29, 2017

This release adds support for numeric metrics and forced bucketing (in code as opposed to whitelisting via project file).

New Features

  • Added setForcedVariation and getForcedVariation
  • Added any numeric metric to event metrics.

Breaking Changes

  • Nothing breaking from 1.7.0

1.7.0

13 Jul 19:51
e265374
Compare
Choose a tag to compare

Release to support android-sdk 1.4.0 - This is a breaking change version

  • Added UserProfileService interface to allow for sticky bucketing
  • Removed UserProfile interface. Replaced with UserProfileService interface.
  • Removed support for v1 datafiles.
  • Fix BuildInfo static initialization.