launchdarkly_flutter_client_sdk 4.0.2 launchdarkly_flutter_client_sdk: ^4.0.2 copied to clipboard
Official Flutter client-side SDK for LaunchDarkly. Get started using LaunchDarkly today!
Change log #
All notable changes to the LaunchDarkly Flutter client-side SDK will be documented in this file. This project adheres to Semantic Versioning.
4.0.2 (2024-01-31) #
Bug Fixes #
4.0.1 (2024-01-31) #
Bug Fixes #
4.0.0 (2024-01-31) #
This version of the SDK has been re-written in dart and now supports Android, iOS, Windows, macOS, Linux, and Web.
The previous versions were wrappers which utilized our native Android and iOS SDKs.
A migration guide will be available in our docs.
Features #
- Add example project. (#93) (588ae01)
- Implement support for REPORT for streaming. (#96) (1de6079)
- Use version 1.0.1 of common client. (#115) (cd85c65)
Bug Fixes #
- Check for network state on resume. (#95) (c1cb489)
- Correct timeout handling in example. (#97) (dc18529)
- Flutter client should depend only on common client. (#113) (edfd06d)
- Mac entitlements. Clarifications. (#107) (077e9aa)
4.0.0-alpha.1 (2024-01-24) #
Features #
- Update common client dependenct to 0.1.0 (#89) (7dcb687)
- Update common/client/event source dependencies. (#87) (9acbab3)
Bug Fixes #
- Fix sink not closed lint. (#66) (051fd9c)
- Remove flutter dependency from event source. (#65) (d557692)
[4.0.0-alpha.0] - 2024-01-22 #
Initial 4.0.0 alpha release. 4.0.0 is a re-write of the SDK using Dart instead of native plugins.
[3.0.1] - 2023-09-21 #
Fixed: #
- Fixed a rare bug in key generation in some contexts generated by the Auto Environment Attributes feature.
[3.0.0] - 2023-08-25 #
Added: #
- Added Automatic Mobile Environment Attributes functionality which makes it simpler to target your mobile customers based on application name or version, or on device characteristics including manufacturer, model, operating system, locale, and so on. To learn more, read Automatic environment attributes.
Removed: #
- Removed LDUser and related functionality. Use LDContext instead. To learn more, read https://docs.launchdarkly.com/home/contexts.
[2.1.0] - 2023-08-17 #
[2.0.1] - 2023-06-07 #
Fixed: #
- Flag listeners are now called correctly after identify results in flag value changes.
[2.0.0] - 2023-04-26 #
The latest version of this SDK supports LaunchDarkly's new custom contexts feature. Contexts are an evolution of a previously-existing concept, "users." Contexts let you create targeting rules for feature flags based on a variety of different information, including attributes pertaining to users, organizations, devices, and more. You can even combine contexts to create "multi-contexts."
For detailed information about this version, please refer to the list below. For information on how to upgrade from the previous version, please read the migration guide.
Added: #
- The type
LDContext
and associated builders which define the new context model. - For SDK methods that took an
LDUser
parameter, there is now an overload (ex:startWithContext
) that takes anLDContext
. The SDK still supportsLDUser
for now, butLDContext
is the preferred model andLDUser
may be removed in a future version.
Changed: #
- The
secondary
attribute which existed inLDUser
is no longer a supported feature. If you set an attribute with that name inLDContext
, it will simply be a custom attribute like any other. - Analytics event data now uses a new JSON schema due to differences between the context model and the old user model.
- The SDK no longer adds
device
andos
values to the user attributes. Applications that wish to use device/OS information in feature flag rules must explicitly add such information. maxCachedUsers
is nowmaxCachedContexts
LDConfig.privateAttributeNames
is nowprivateAttributes
Removed: #
- Removed the
secondary
meta-attribute inLDUser
andLDUser.Builder
. - The
alias
method no longer exists because alias events are not needed in the new context model. - The
inlineUsersInEvents
option no longer exists because it is not relevant in the new context model.
[1.3.0] - 2023-04-04 #
Added: #
LDConfigBuilder.applicationInfo()
and.applicationVersion()
, for configuration of application metadata that may be used in LaunchDarkly analytics or other product features. This does not affect feature flag evaluations.
[1.2.0] - 2022-11-07 #
Changed: #
- Updated Android SDK version.
- Updated Kotlin plugin version to allow working with new default versions in android studio.
- Raised minimum iOS version to 11, and updated to build with XCode 13.
[1.1.4] - 2022-08-15 #
Changed: #
- Update to use android-client-sdk 3.1.6. This release contains fixes related to android ANRs.
[1.1.3] - 2022-07-26 #
Fixed: #
- When using the flutter SDK on iOS the
device
andos
custom attributes would not be populated in the user object. These will now be populated correctly.
[1.1.2] - 2022-06-23 #
Changed: #
- Update the example project to a new version of flutter embedding and removed usage of deprecated flutter components.
- Update to use ios-client-sdk V6.
- Updated to work with kotlin 1.7.0.
- String variation return types were optional when they did not need to be. They are now not optional. This could produce warnings where string variations were used previously. Those null checks can now be removed.
Fixed: #
identify
calls were blocking and could trigger ANRs. They maintain the same interface, and can be awaited, but now they no longer block the calling thread.
[1.0.0] - 2021-10-29 #
First supported release of LaunchDarkly's Flutter SDK. This release contains no SDK code changes from the prior beta release.
Added: #
- Support for LaunchDarkly's internal release tool.
[0.3.0] - 2021-10-15 #
This is a breaking beta release. The changelog may not detail all changes between beta releases. The SDK is considered to be an unsupported beta until release 1.0.0.
Added #
LDClient.startFuture
which can be used to get aFuture
that completes when the SDK has received the most recent flag values for the configured user after starting.LDClient.isInitialized
which can be used to determine whether the SDK has has received the most recent flag values after starting.- Added the ability to configure the limit to the number of users to cache the flag values for on device. This limit can be configured with
LDConfigBuilder.maxCachedUsers
.
Changed #
LDConfigBuilder
setters have had theset
prefix removed, e.g.LDConfigBuilder.setOffline
has becomeLDConfigBuilder.offline
.LDClient.isOnline
has been replaced withLDClient.isOffline
for consistency with other LaunchDarkly SDKs.
[0.2.0] - 2021-09-24 #
This is a breaking beta release. The changelog may not detail all changes between beta releases. The SDK is considered to be an unsupported beta until release 1.0.0.
Added #
- Added the
alias
method toLDClient
. This can be used to associate two user objects for analytics purposes with an alias event. - Added the
autoAliasingOptOut
configuration option. This can be used to control the new automatic aliasing behavior of theidentify
method; by settingautoAliasingOptOut
totrue
.identify
will not automatically generate alias events. - The SDK now supports the ability to control the proportion of traffic allocation to an experiment. This works in conjunction with a new platform feature now available to early access customers.
Changed #
- The SDK implementation is now null-safe.
- The minimum Flutter version has been raised to 2.0.0.
- The minimum Dart version has been raised to 2.12.0.
- The minimum supported Android API version has changed from 16 to 21.
- The underlying SDK on Android has been updated to 3.1.1 from 2.13.0. See the Android SDK changelog for details on improvements.
- The underlying SDK on iOS has been updated from 5.2.0 to 5.4.3. See the iOS SDK changelog for details on improvements.
- The
identify
method will now automatically generate an alias event when switching from an anonymous to a known user. This event associates the two users for analytics purposes as they most likely represent a single person.
[0.1.0] - 2020-10-29 #
This is the first public release of the LaunchDarkly Flutter client-side SDK. The SDK is considered to be an unsupported beta until release 1.0.0.
Added #
- Support for configuring and initializing a SDK instance.
- Flag evaluation with and without details.
- Retrieving all flag values for the current user.
- Switching users with
identify
. - Flag change listeners and flags received listeners.