Skip to main content
Low

v4.36.1

Recommended if you use: Surveys on iPad
  • fix: Fix for survey layout issue when resizing the host app on iPad.
Low

v4.36.0

Recommended if you use: URL Prompt question type
  • chore: Updated the bundled Web SDK to v2.53.0, which carries survey enhacements into this release.
  • add: [impact: behavior] Added the ability to launch an in-app web browser for URL Prompt question types.
  • add: Added new lifecycle event displayInAppBrowser which fires when the in-app experience is triggered.
High

v4.35.0

Recommended if you use: survey lifecycle events
  • chore: Updated the bundled Web SDK to v2.51.0, which carries its survey and Session Replay fixes into this release.
  • add: [impact: behavior] Refactor of the survey lifecycle events for better accuracy with the addition of the new surveyReturned event, the removal of surveyWillPresent, a change to when the surveyAppeared emits and the addition of the new surveyDidNotAppear event.
  • add: Passing the surveyId of the previous survey when a previosSurveyAvailable state is returned.
Low

v4.34.0

Recommended if you use: Session Replay in SwiftUI apps on iOS 26 or later
  • add: Added SwiftUI support for text and image capture in session replays when running on iOS26 or above.

v4.33.1

  • chore: Updated WebSDK to v2.49.0.

v4.33.0

  • chore: Updated WebSDK to v2.48.2.
  • add: questionAnswered lifecycle event added.

v4.32.3

  • chore: Changes to error logging.

v4.32.2

  • chore: Removed WebSDK logging.

v4.32.1

  • chore: Updated WebSDK to v2.46.1.

v4.32.0

  • chore: Updated WebSDK to v2.46.0.

v4.31.0

  • chore: Updated WebSDK to v2.45.0.
  • fix: Fix for issue that was causing a white bar at the bottom of surveys when in dark mode.
  • fix: Fix for survey height and animation issues.

v4.30.0

  • chore: Updated WebSDK to v2.44.0.

v4.29.0

  • chore: Updated WebSDK to v2.43.0.

v4.28.0

  • chore: Updated WebSDK to v2.42.1.
  • add: Returning new previousSurveyReady survey state.
  • add: Logging enhancements.

v4.27.3

  • add: Added additional survey state logging.

v4.27.2

  • add: Additional debug logging for surveys.

v4.27.1

  • fix: For for sliding surveys when the keyboard is displayed.

v4.27.0

  • chore: Updated WebSDK to v2.41.3.
  • add: Updates to survey transition animations.
  • add: Support for Display Logic.

v4.26.2

  • chore: Changed the minimum supported iOS version to 15.0.

v4.26.1

  • add: Survey animation enhancements.
  • add: Updated WebSDK to v2.40.3.

v4.26.0

  • add: Support to pause and unpause surveys.

v4.25.2

  • add: Updated WebSDK to v2.39.3.
  • add: Support for Conversational surveys.

v4.25.1

  • add: Updated WebSDK to v2.37.1.
  • chore: Changed the mimimum supported iOS version to 16.0.
  • fix: Fixed issue where backgrounds for tab bars and alert views did not display in replays for iOS26

v4.25.0

  • add: Updated WebSDK to v2.36.1.
  • add: Support for new Rank Order question type.
  • add: Response piping support.
  • add: Removal of native modals coming from WKWebViews in Sprig replays.
  • fix: Visual and stability improvements to the Sprig Replays experience.
  • fix: Fix for surveys partially loading.

v4.24.7

  • add: Updated WebSDK to v2.34.0.
  • add: Added the ability to capture SwiftUI text and images as images for Session Replays.
  • add: Added the SDK version to the debug logging output.
  • fix: Removed surveyDimensions lifecycle event that was not being emitted.
  • fix: Change to the way images are fed to the video writer for Session replays rendering.

v4.24.6

  • fix: Fix for issue that prevented surveyClosed event from firing.
  • fix: Fix for issue where SDK would crash if passed a non String, Int or Bool value in the properties of a track event call.

v4.24.5

  • fix: Fix for issue that was causing irregular survey height for initial question.
  • fix: Fix for issue where surveys would become partially dismissed if the keyboard was initially showing.
  • add: Made the SDK version available to host applications.
  • add: Added the ability for host applications to subscribe to a logging event for more detailed messages from the SDK.

v4.24.4

  • fix: Changed logic in replays to only truncate text if it is masked.

v4.24.3

  • fix: Fix for issue where dismiss on page change was executed when the current view controller could not be retrieved.
  • fix: Fix for issue where two track events in rapid succession could cause a survey to dismiss.
  • fix: Fix for issue where a session replay could be stopped if the user quickly answered a question and then closed the survey.

v4.24.2

  • add: Uploading of partial session replay clips after capture has been stopped due to time on main thread exceeding the threshold.

v4.24.1

  • add: Added new trackAndPresent and present public functions that allow client apps to present surveys without passing in a view controller.
  • add: Added retrying to configure the SDK when there is not initially connectivity.
  • add: Added respecting of content mode for images in session replays.
  • fix: Added masking of images captured by the device camera in session replays.
  • fix: Fixed issue that was preventing the passed block from being called when calling trackAndPresent.

v4.24.0

  • add: Allow capturing of WKWebViews in session replays when unmasked.
  • fix: Prevent potential retain cycle if track event is called but config is never called.
  • fix: Fix for scenario where dismissing a second survey stops session replay capture triggered from an initial survey.

v4.23.10

  • add: Support for the new session replay privacy controls (basic / moderate / strict / mask classes / unmask classes).
  • fix: Fix race condition which prevents surveys from displaying when calling presentSurvey after a delay

v4.23.9

  • fix: Fix for bug that was keeping surveys displayed after the user tapped the close button.

v4.23.8

  • fix: Fix for race condition that could potentially cause blank surveys.

v4.23.7

  • fix: Fix for session replays ignoring max duration value from server.

v4.23.6

  • fix: Fix for session replays rendering issue.

v4.23.5

  • add: Baseline support for SwiftUI in session replays.

v4.23.4

  • fix: Fixed issues with session replays.

v4.23.3

  • Interface fix

v4.23.2

  • add: Functionality for React Native iOS replays

v4.23.1

  • fix: Fix for threading issue triggered by config being called multiple times

v4.23.0

  • add: Support for accordion display matrix questions.

v4.22.3

  • add: Check for available disk space before initiating session replay.

v4.22.2

  • add: Support for rendering of server images in session replays.
  • fix: Fix for crash when calling multiple SDK functions from background threads.

v4.22.1

  • add: Session Replay fidelity enhancements around tinting symbols and text layout.

v4.22.0

  • add: Stability and performance enhancements for Session Replays.

v4.21.9

  • fix: Support survey delays greater than 2 seconds due to WebView limitations

v4.21.8

  • fix: Added thread validation when calling track event.

v4.21.7

  • add: Replays: Added the ability to change SPS in the server config.

v4.21.6

  • add: Replays: Added the ability to mask views based on class names.
  • fix: Replays: Stop touch capture on keyboard when displaying.

v4.21.5

  • add: Ability to turn off session replay capture.
  • fix: Duplicate event listener callbacks fixed.

v4.21.4

  • add: Privacy Manifest.
  • fix: Added logic to dimiss active survey if it is never presented.

v4.21.3

  • fix: Revert top level UIViewController check.

v4.21.2

  • fix: Small bug fixes.

v4.21.1

  • fix: Fix for endpoint issue.

v4.21.0

  • add: Session replays.
  • fix: Prevent config from happening if it has already been called.
  • fix: Escape single quotes in eventName.

v4.20.2

  • add: x-ul-package-version header to report mobile SDK plugin versions
  • fix: set default cssString in getBackgroundColor to prevent regex match failing

v4.20.1

  • fix: Added missing JS files

v4.19.2

  • fix: calling track() from background thread would sporadically cause a SIGSEGV
  • chore: still on web sdk 2.24.4

v4.19.1

  • fix: setPreviewKey was not working because of old web sdk version
  • chore: update web sdk to 2.24.4

v4.19.0

  • add: add setPreviewKey interface method for customer to set previewKey via deep link
  • fix: execution order of custom lifecycle event handlers
  • fix: dismissOnPageChange event race condition for events fired before sdkReady
  • fix: Webview bottom background color based on custom styles configured for survey
  • chore: update web sdk to 2.24.2

v4.18.0

  • add: support for isOverride flag to allow overriding experiments while integrating with Optimizely
  • add: support for survey lifecycle events

v4.17.0

  • add: added a showSurveyCallback to allow dynamically manage whether to show the survey or not
  • fix: fixed a issue that results in a UI blocking routine introduced from 4.15.0
  • chore: update web sdk to 2.24.0

v4.16.0

  • add: add integrateOptimizelyExperiments in the public SprigAPI
  • chore: update to web sdk 2.23.2

v4.15.0

  • add: add dismissOnPageChange functionality to iOS
  • add: add private interface methods for importing LaunchDarkly flag to variation index mapping
  • chore: update to web sdk 2.23.0

v4.14.0

  • add: add additional interface for boolean and number types for setVisitorAttribute
  • fix: fix an issue preventing scrolling after answering an open text question
  • chore: update to web sdk 2.21.7

v4.13.0

  • add: Add new optional parameter to configure function
  • chore: remove storage.swift
  • chore: add ios legacy build automation
  • chore: update to web sdk 2.21.3

v4.12.1

  • New EventPayload object to simplify calling track methods available for ObjC projects
  • Allows public methods (excluding displaySurvey and other UI methods) to be called from a background thread
  • Uses web 2.19.7

v4.12.0

  • New EventPayload object to simplify calling track methods
  • Uses web 2.19.7

v4.11.1

  • Fixed an issue in text url prompt that prevents opening in external browser

v4.11.0

  • Added mobile trigger delay and optimizely integration
  • Bug fixes and improvements

v4.10.0

  • Added required questions in the sdk
  • Bug fixes and improvements

v4.9.0

  • Added event properties in the sdk
  • Bug fixes and improvements

v4.8.6

  • Built using xcode 14. Bitcode is removed in xcode 14, please update your build environment for compatibility. Xcode 13 compatible builds will be available in a later release.
  • Bug fixes and improvements

v4.8.5

  • Bug fixes and improvements

v4.8.4

  • Added a public api method trackAndPresentWithEventName that allows presenting survey immediately after tracking an event
  • Bug fixes and improvements

v4.8.3

  • Added a public api method setVisitorAttributes that allows setting user id and partner anonymous id

v4.8.2

  • Added a public api method to track event with optional parameters userId and partner anonymous id
  • Gracefully handle configure from being called multiple times

v4.8.1

  • Added an additional public api for setting the anonymous id from partner’s integration

v4.8.0

  • Added support for new question types, functionalities and bug fixes
  • removed presentDebugSurvey
  • deprecated the NSNumber visitorIdentifier in preference to the String visitorIdentifierString

v4.7.0

  • license update
  • bug fixes and improvements

v4.6.0

  • support SPM

v4.5.0

  • built sdk using xcframework

v4.4.4

  • fixed an sdk versioning issue that omitted the change in 4.4.3

v4.4.3

  • removed arm64 from excluded architecture to support simulator builds

v4.4.2

  • Fixed reported SDK version
  • Security improvements

v4.4.1

  • Built with Xcode 13.0 (13A233)

v4.4.0

  • New Sprig namespace, you can now import and use the Sprig singleton
  • Built with Xcode 12.5.1 (12E507)

v4.4.0-beta

  • New Sprig namespace, you can now import and use the Sprig singleton
  • Built with Xcode 13.0 beta (13A5155e)

v4.3.0-beta

  • Built with Xcode 13.0 beta (13A5155e) which fixes the “Unable to use malformed module source info” build error

v4.3.0

  • Added support for text url prompt, a new question type that allows external link with informational title and body text.

v4.2.1

  • Fixes bug: When visitor id changes when a survey is in progress, the responses for that survey should be associated with the visitor id at the time the survey was delivered.

v4.2.0

  • Added support for multiple choice multi-select skip logic

v4.1.1

  • Bug fixes and improvements

v4.1.0

  • Added the ability to dynamically control the question text and thanks card text from dashboard settings

v3.2.0

  • Support visitorId as string type
  • Improved network performance when app is backgrounded

v3.1.1

  • Included i386 architecture to framework

v3.1.0

  • Added setVisitorAttributes(_ attributes: [String: String]) which allows setting multiple attributes at a time, saving network round trips
  • Added removeVisitorAttributes(_ attributes: [String])

v3.0.0

  • Updated UserLeap class to be visible to Objective-C projects
  • UserLeap.visitorIdentifier type has been changed from Int? to NSNumber?
  • Reachability class which was erroneously public is now private
  • Calling UserLeap init() is no longer allowed, please access through the singleton shared method

v2.3.3

  • Build with Xcode 12A6163b

v2.3.3

  • Fixed bug with multiple choice routing logic
  • Built with Xcode 12 beta 2, Swift 5.3

v2.3.2

  • Improved implementation of UserLeap.shared.setLocale()

v2.3.1

  • Added UserLeap.shared.setLocale() so clients can override static text localization

v2.3.0

  • Added localization for ja, ko, fr, ru, zh, de, hi

v2.2.0

  • Allow visitors to see and respond to the same survey if the customers wants (done through the dashboard)

v2.1.0

  • Added NPS question type support

v2.0.0

  • Change framework name to UserLeapKit so it doesn’t conflict with class UserLeap

v1.1.0

  • Enabled Module Stability
  • Added disableNetworkAccess parameter

v1.0.2

  • Bump, no changes

v1.0.1

  • Fixed: Presenting the debug survey before the SDK finishes initializing can cause non-main-thread UI operations

v1.0.0

  • The first version