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

Releases: launchdarkly/react-native-client-sdk

7.0.0

24 Feb 20:08
Compare
Choose a tag to compare

[7.0.0] - 2023-02-24

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."

This feature is only available to members of LaunchDarkly's Early Access Program (EAP). If you're in the EAP, you can use contexts by updating your SDK to the latest version and, if applicable, updating your Relay Proxy. Outdated SDK versions do not support contexts, and will cause unpredictable flag evaluation behavior.

If you are not in the EAP, only use single contexts of kind "user", or continue to use the user type if available. If you try to create contexts, the context will be sent to LaunchDarkly, but any data not related to the user object will be ignored.

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 types LDContext, LDSingleKindContext, and LDMultiKindContext define the new "context" model.

Changed:

  • LDConfig changes to be consistent with the Javascript SDK:

    • pollUri, streamUri, eventsUri are now pollUrl, streamUrl and eventsUrl.
    • eventsCapacity is now eventCapacity
    • eventsFlushIntervalMillis, connectionTimeoutMillis, pollingIntervalMillis, backgroundPollingIntervalMillis are now flushInterval, connectionTimeout, pollingInterval, backgroundPollingInterval.
    • diagnosticRecordingIntervalMillis is now diagnosticRecordingInterval
    • maxCachedUsers is now maxCachedContexts
    • allUserAttributesPrivate, privateAttributeNames are now allAttributesPrivate and privateAttributes
  • LDUser type is now imported from the Javascript sdk common package.

  • All SDK methods that took an LDUser parameter now take an LDContext. LDUser is now a subset of LDContext, so existing code based on users will still work.

Removed:

  • Support for React Native versions < 0.69 have been removed. The LaunchDarkly React Native SDK now supports only React Native versions >=0.69.0 <0.71.0.
  • Removed the secondary meta-attribute in LDUser.
  • The alias method no longer exists because alias events are not needed in the new context model.
  • The autoAliasingOptOut and inlineUsersInEvents options no longer exist because they are not relevant in the new context model.

Deprecated:

  • The LDUser object has been deprecated. Support for LDUser is maintained to simplify the upgrade process, but it is recommended to use LDContext in the shape of either LDSingleKindContext or LDMultiKindContext.

6.3.1

23 Feb 20:52
Compare
Choose a tag to compare

[6.3.1] - 2023-02-23

Changed:

  • Update ManualTestApp iOS pod dependency launchdarkly-react-native-client-sdk to 6.3.0.

Fixed:

  • iOS bug where force unwrapping of nil LDClient cause crashes. Issue #152.

6.3.0

30 Jan 21:15
Compare
Choose a tag to compare

[6.3.0] - 2023-01-30

Added:

  • Support for application id and version configuration options

Changed:

  • Updated iOS client SDK to 7.1.0. This requires at minimum iOS 11 so the podspec has been updated to 11
  • Updated android client SDK to 3.6.0
  • Updated gradle version to 7.4.0

Fixed:

  • Android build failures for RN 0.64.3 due to a facebook release issue
  • Android local build issues due to outdated gradle version and repository configuration

6.2.4

06 Oct 23:00
Compare
Choose a tag to compare

[6.2.4] - 2022-10-06

Fixed:

  • Reverted the isInitialized fix that is not working in 6.2.3 (#157)
  • Fixed RN 0.70.x support. (#158)

6.2.3

29 Sep 23:04
Compare
Choose a tag to compare

[6.2.3] - 2022-09-29

Added:

  • React Native 0.70 Support
  • Xcode 14.0 Support

Fixed:

  • Android: Updated Android SDK dependency to 3.2.0.
  • Android: Updated isInitialized to return false instead of a Promise rejection if the native Android client is not available.

6.2.2

16 Aug 18:48
Compare
Choose a tag to compare

[6.2.2] - 2022-08-16

Added:

  • React Native 0.69 Support

6.2.1

02 Aug 22:40
Compare
Choose a tag to compare

[6.2.1] - 2022-08-02

Fixed:

  • Android: Updated Android SDK dependency to 3.1.6.

6.2.0

17 May 21:53
Compare
Choose a tag to compare

[6.2.0] - 2022-05-17

Changed:

  • iOS: Using "custom" as a private attribute name in LDConfig.privateAttributeNames or LDUser.privateAttributeNames will no longer set all LDUser custom attributes private.
  • iOS: The automatically set device and operatingSystem custom attributes can now be set private.
  • iOS: Significant internal changes from updating to the 6.0.0 release of the iOS SDK.

Fixed:

  • The TypeScript definitions for LDClient.jsonVariation and LDClient.jsonVariationDetail no longer restrict the defaultValue and result type to Record<string, any>. These methods can accept any for defaultValue and return any type.

6.1.3

14 Apr 21:28
Compare
Choose a tag to compare

[6.1.3] - 2022-04-14

Added:

  • React Native 0.68 Support

Fixed:

  • Android: variationDetail methods return the correct variation when the reason is not present
  • Android: The object returned by variationDetail methods will now include the inExperiment field when appropriate.
  • ManualTestApp Int and Float options now work correctly

6.1.2

25 Mar 18:07
Compare
Choose a tag to compare

[6.1.2] - 2022-03-25

Fixed:

  • Android: Prevent multiple allocations of the DiagnosticEventProcessor.