Skip to content

Releases: launchdarkly/ios-client-sdk

[5.4.4] - 2022-01-19

19 Jan 22:49
a6d94a9
Compare
Choose a tag to compare

Fixed

  • Fixed memory leak when stream connections are terminated by updating LDSwiftEventSource dependency to 1.3.0.
  • The SDK would not allow additional fields on delete flag stream events. This has been updated to allow additional fields for improved future compatibility.
  • Improved internal Throttler implementation to reduce concurrency concerns.
  • Removed unneeded Cartfile defining LDSwiftEventSource dependency, which when bundled could lead to warning messages that LDSwiftEventSource definitions are implemented in multiple frameworks.

[5.4.3] - 2021-08-13

13 Aug 23:27
7e24a7a
Compare
Choose a tag to compare

Fixed

  • Fixed an issue where 304 NOT_MODIFIED responses to SDK polling mode requests would be considered error responses. This could cause the completion on a identify request to not complete, and gave erroneous connection information data and logging output.
  • Fixed a crash when attempting to cache flag data containing variation JSON values containing a JSON null value nested within a JSON array.

[5.4.2] - 2021-06-17

18 Jun 00:05
6813c0e
Compare
Choose a tag to compare

Fixed

  • Avoid crash when TimeInterval configuration options are set to sufficiently large values. This was caused when converting these values to an Int value of milliseconds. (Thanks, @delannoyk!)
  • Update Package.swift to use SwiftPM tools version 5.2. This prevents test dependencies from being included transitively. (Thanks, @escakot!)
  • Update Quick test dependency to 3.1.2 to avoid build warnings and adopt security fixes. (#243)
  • Use AnyObject over class in protocol inheritance to avoid compiler warnings. (#247)
  • Improve CI to test against multiple supported Xcode and Swift language versions.
  • Restored test suite compatibility with Xcode 11.4 and Swift 5.2.

[5.4.1] - 2021-04-06

07 Apr 00:47
3c359d1
Compare
Choose a tag to compare

Fixed

  • Internal throttling logic would sometimes delay new poll or stream connections even when there were no recent connections. This caused switching active user contexts using identify to sometimes delay retrieving the most recent flags and calling the completion.

[5.4.0] - 2021-02-26

26 Feb 19:56
12298b6
Compare
Choose a tag to compare

Added

  • Added the alias method to LDClient. 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 the identify method; by setting autoAliasingOptOut to true, identify will not automatically generate alias events.
  • Added the isInitialized property to LDClient. Unless the client has been set offline, this property's value is false until the client receives an initial set of flag values from the LaunchDarkly service. If the client is offline, the value will be true after initialization.

Changed

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

Fixed

  • Some users reported synchronization issues with the internal DiagnosticReporter implementation, which has been reworked to address these issues. Thanks to @provanandparanjape for one such report (#238).

[5.3.2] - 2021-02-11

11 Feb 18:42
ca8ad47
Compare
Choose a tag to compare

Fixed

  • Updated to prevent a crash in dispatch_group_leave.cold.1 that would rarely occur as the SDK transitioned to an online state for a given configuration or user. This issue may have been exacerbated for a short period due to a temporary change in the behavior of the LaunchDarkly service streaming endpoint. Thanks to all the users who reported (#235).
  • Updated LDSwiftEventSource dependency to correct an issue where a streaming connection could sometimes reconnect after being set offline.

[5.3.1] - 2020-12-15

16 Dec 00:23
89dcc5d
Compare
Choose a tag to compare

Fixed

  • Decoupled FlagStore from LDUser to fix a bug where multiple environments could overwrite each other's flag values.

[5.3.0] - 2020-11-06

06 Nov 21:51
5481134
Compare
Choose a tag to compare

Added

  • Adds to LDConfig the ability to dynamically configure the HTTP headers on requests through the headerDelegate property, which has the type RequestHeaderTransform.

[5.2.0] - 2020-10-09

09 Oct 12:46
b813fee
Compare
Choose a tag to compare

Added

Fixed

  • Corrected a bug preventing private custom attribute names being recorded in events when all custom attributes are set to be private by including "custom" in the LDUser.privateAttributes or LDConfig.privateUserAttributes properties.
  • Update Nimble to 9.0 and Quick to 3.0 to fix tests when run with Swift 5.3.
  • Fixes build warnings in Xcode 12.0.0.

[5.1.0] - 2020-08-04

04 Aug 22:12
c0cf572
Compare
Choose a tag to compare

Added

  • The ability to specify additional headers to be included on HTTP requests to LaunchDarkly services using LDConfig.additionalHeaders. This feature is to enable certain proxy configurations, and is not needed for normal use.
  • Support for building docs with jazzy. These docs will be available through GitHub Pages.

Fixed

  • SDK causing nested bundles in archived product when including the SDK through Carthage. This caused rejections when submitted to the App Store. Thanks to @spr for reporting (#217).
  • SDK causing application to expect LDSwiftEventSource dynamic framework when built with SwiftPM, which does not include the dynamic framework in the resulting application. This causes the application to be rejected when submitted to the App Store. Thanks to @spr for reporting (#216).