iOS SDK¶
The bitdrift Capture SDK offers developers a straightforward method to seamlessly integrate the Capture platform into their iOS applications.
Info
The iOS SDK requires a minimum iOS version of 15.
This release page lists releases for the following libraries:
- CaptureSDK: Refer to the SDK integration guide for more details.
- CaptureCocoaLumberjack: Refer to the CocoaLumberjack integration guide for more details.
- CaptureSwiftyBeaver: Refer to the SwiftyBeaver integration guide for more details.
Tip
It's strongly recommended that you keep the versions of all the bitdrift Capture libraries in sync. For instance, if your application uses Capture SDK version 0.9.115, you should also use CaptureCocoaLumberjack version 0.9.115.
Releases¶
The source code for this SDK is available on GitHub: bitdriftlabs/capture-sdk
Latest Version¶
0.19.0¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- First version to support free-tier plans for bitdrift.
- Improve performance of Feature Flags writes.
- Improve performance of Uptime clock computations which should improve the performance all across the SDK.
0.18.12¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Add xcframework Makefile target
- Added support for feature flags
0.18.11¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Added support for live workflow debugging
0.18.10¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Make iOS builds reproducible.
- Remove docs from the XCFramework archive and strip bitcode in advance to reduce size and improve compatibility.
- Stability improvements in the native layer.
0.18.9¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Update privacy manifest to include POSIX calls
- Added device code creation for debug builds
- Improved crash logs with crash-time metadata snapshots
0.18.8¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Include .swiftinterface files that were accidentally omitted in 0.18.7 release.
0.18.7¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fatal crash reporting is now enabled by default - can be turned off via configuration. For more details, refer to the setup page
- Added KSCrash integration for improved native crash detection and reporting
- Added support for custom fields in network requests
- Improved rate limiting with better backoff strategies
- Updated to latest KSCrash version for better stability
0.18.6¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- This release is identical to 0.18.5 release.
0.18.5¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fix a bug that prevented custom bare URLSessionDelegates set toURLSession(instrumentedSessionWithConfiguration:delegate:delegateQueue:)from being called. Note thatURLSessionTaskDelegates were still being called as expected.
0.18.4¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fix duplicated symbols error shown in Swift Previews due to a bug in iOS 18.0
0.18.3¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- This release is identical to 0.18.2 release.
0.18.2¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- This release is identical to 0.18.1 release.
0.18.1¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Improved the performance of Fatal Issue Detection initialization by moving expensive operations to a background thread.
0.18.0¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Improved accuracy for fatal issue metadata (fixing a case where the app version or timestamp could be incorrect)
0.17.29¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Timeout Matcher is now available in the SDK. See Timeout Matcher for more details.
0.17.28¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Add fatal app hang reporting
- Add thread index to fatal issue reports
- Prevent potential issue on native layer for metric changes
0.17.27¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Prevent potential crash when start is configured with enableFatalIssueReporting set to true
- Add configuration object for init in Objective-C. See Fatal Issues and Crashes for more details on setup.
0.17.26¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Automatically capture timeline and replay logs when a fatal issue is detected.
- Added an accessor for bitdrift Capture SDK Version.
- Fixed rare Replay crash by temporarily disabling the parsing of SpriteKitviews.
0.17.25¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fatal issue reports setup is now part of Logger.start call. See Fatal Issues and Crashes for more details on setup.
0.17.24¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fix potential deadlock situation that could occur upon internal blocking logger calls.
- Add fatal issue reporting init for Objective-C.
- Enhance fatal issue reports with more reason info.
0.17.23¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Beta support for reporting of Fatal Issues and Crashes can now be enabled via Logger.initFatalIssueReporting()
0.17.22¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- This release is identical to 0.17.21 release.
0.17.21¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- This release is identical to 0.17.20 release.
0.17.20¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Added experimental API which collects fatal issues (Crashes) when configured.
0.17.19¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fix lack of String conformance of MemoryPressureEvent on iOS <= 17
0.17.18¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Guard MemoryPressureEvent for a compiler bug
0.17.17¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Add SpriteKit support in session replay.
- Fixed legacy issue where buffer permissions conflicted with full protection requests.
0.17.16¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Update minimum supported iOS version to iOS 15.0.
- Compile using Xcode 16.2.
- Improved the reliability of client metrics.
0.17.15¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- This release is identical to 0.17.14 release.
0.17.14¶
Changelog:
- This is an invalid release, it's our general suggestion to skip this version.
0.17.13¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Check ring buffer file CRC before reading it. This should prevent the SDK from reading a corrupted file.
0.17.12¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- This release is identical to 0.17.11 release.
0.17.11¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- This release is identical to 0.17.10 release.
0.17.10¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Enhanced crash integration capabilities
- Added protocol information to the automatic networking instrumentation
0.17.9¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Include any string convertible field in error logs
- Spans with custom start and/or end times are now placed at the provided time in the timeline view
- Added support for the Measure Durationaction, allowing the duration between two log lines to be measured using a workflow
0.17.8¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fixed issue that preventing responses to be seen by the URLSession delegate proxy integration under specific conditions
- Changed span interface to include the ability to specify a parent span ID and custom start/end times
0.17.7¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Updated Rust version from 1.83 to 1.85
0.17.6¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Added an assortment of Objective-C method counterparts to the existing SDK API surface area.
0.17.5¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Add additional timing metrics to network responses. See HTTP Response Fields section for more details.
0.17.4¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- This release is identical to 0.17.3 release.
0.17.3¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fix bug that caused uncommon session tasks (such as AVAggregateAssetDownloadTask) to crash in runtime when using URLSession integration.
0.17.2¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fixed swift bug that causes the app to crash during startup in rare conditions.
0.17.1¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Handled the case where apps set the NSURLFileProtectionCompleteoption.
0.17.0¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Event tracking used for User Journey Sankey charts has been made more reliable.
0.16.12¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fixed a crash that could occur while using network capture for apps creating background tasks
0.16.11¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Added a way for emitting a "Screen View" event. Refer to the Screen Views section for more details.
0.16.10¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- This release is identical to 0.16.9 release.
0.16.9¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Swizzling support has been rewritten from the ground-up for better stability.
0.16.8¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fix crash that could occur when using the urlSessionintegration alongside theFirebaseSDK under a specific scenario.
0.16.7¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- GraphQL operation names are now picked-up automatically by the networking integration when using Apollo for iOS
0.16.6¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Added support for handling floating point values in Match Nodes conditions.
Warning
Workflows with conditions using float numbers will be ignored in previous versions of the SDK.
- Fixed a bug causing internal timers to fire more often than expected after returning from suspension.
0.16.5¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fix a potential crash that could occur when taking screenshots alongside the GoogleMapsSDK.
0.16.4¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- This release is identical to 0.16.3 release.
0.16.3¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- This release is identical to 0.16.2 release.
0.16.2¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- This release is identical to 0.16.1 release.
0.16.1¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fixed the implementation of the 'User Journey' workflow action introduced in version 0.16.0 of the SDK to ensure reliable registration of user journeys.
- Fixed a performance issue with the 'Take Screenshot' workflow action, also introduced in version 0.16.0 of the SDK.
0.16.0¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Added a 'Take Screenshot' workflow action, allowing users to capture a screenshot for a specific log or after a designated series of logs.
- Added a 'User Journey' workflow action, enabling users to capture Sankey diagrams to visualize user flows of interest.
- Fixed a rare crash on iOS 15 that occurred when accessing the value of the ProcessInfo.isLowerPowerModeEnabledproperty.
- Fixed an issue where the file, line, and function arguments in the log(...) function were being ignored.
- Reworked the SessionReplayConfigurationAPIs by removing the option to disable the session replay screen capture feature or control the screen capture rate. Instead, this feature is now controlled through a remote runtime configuration that can be updated at any time.
0.15.2¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fixed a potential crash that affected users running bitdrift urlSessionintegration on iOS 17.0.x.
0.15.1¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fixed a potential crash that affected users running bitdrift urlSessionintegration on iOS 16.
0.15.0¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Renamed the Logger.configure(...)method toLogger.start(...)and updated its signature to return an optionalLoggerInteractor. To migrate, use the new method name and apply optional unwrapping (?) to the returned value. For example,Logger.configure(...).enableIntegrations(...)should be changed toLogger.start(...)?.enableIntegrations(...).
- Added exponential backoff and jittering to the logic responsible for establishing connections with the bitdrift control plane.
- Introduced jittering to the logic handling remote bitdrift control plane configuration updates to prevent the synchronization of all connected SDK clients.
0.14.5¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fixed a potential crash that could occur when running bitdrift Capture’s urlSessionintegration alongside theGoogleMapsSDK.
0.14.4¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Added a remote configurable mechanism to limit the lookback window using during buffer flush. This allows limiting the amount of data sent per flush.
- Added further compression improvements to the data sent and received to the server, reducing the amount of memory required to process the data server-side.
0.14.3¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fixed a potential crash that could occur when running bitdrift Capture’s urlSessionintegration alongsideGoogleMapsSDK.
0.14.2¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Treat responses with 3xx HTTP status codes as successes instead of failures. Previously, only the 304 HTTP status code was considered a success.
- Fixed a potential crash that could occur when running bitdrift Capture’s urlSessionintegration alongside certain Google third-party SDKs. The list of problematic SDKs includes, but is not limited to,GooglePlaces.
- Fixed an issue with the propagation of bitdrift remote configuration, which is responsible for log field manipulation and helps sanitize paths displayed in workflow charts.
- Updated Rust version from 1.80.1 to 1.81.0.
- Updated various build dependencies.
0.14.1¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Added an API for emitting the "App Launch TTI" event. Refer to Log Events for more details.
- Added an option for Bitdrift SaaS to control how the path template is extracted from the HTTP URL path.
- Fixed a potential crash that could occur when running bitdrift Capture’s- urlSessionintegration alongside certain Google third-party SDKs. The list of problematic SDKs includes, but is not limited to,- GooglePlaces.
- Fixed an issue with out-of-the-box "App Updated" event not being emitted.
0.14.0¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Added APIs for emitting span logs. Refer to Spans for more details.
- Added a new out-of-the-box "Application Not Responding (ANR)" log event that's emitted each time the main run loop is unresponsive for a specified amount of time. Refer to Log Events for more details.
- Added a new out-of-the-box "Thermal State Change" log event that's emitted each time device's thermal state changes. Refer to Log Events for more details.
- Improved the reliability of stats delivery mechanism.
0.13.0¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Added SDK version attribute to out-of-the-box "SDK Configured" log event.
- Added support for new SET/NOT_SET matching conditions. More details will be provided once they are available to use in bitdrift frontend.
- Modified the "App Updated" event logic so that the app installation size is calculated only if needed. This should reduce the number of disk operations the SDK performs.
- Fixed an issue with fixedsession strategy detecting prohibited re-entrance from within thegenerateSessionIDclosure.
- Improved the overall performance of the Logger.configuremethod call.
0.12.0¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Added a new out-of-the-box "App Updated" log event that's emitted when the SDK runs after the app update. The log includes information about the app installation size. Refer to Log Events for more details.
- Added a new out-of-the-box "SDK Configured" log event that's emitted immediately after the SDK configuration is complete. Refer to Log Events for more details.
- Added a new out-of-the-box "Build Number" attribute to emitted logs. Refer to Default Fields for more details.
- Added an option to visualize the duration the SDK spends capturing screen session replay frames on the application's main thread. Refer to Log Events for more details.
- Added fields to the existing "Resource utilization" log event with information about the amount of used disk space the SDK host app uses.
- Added fields to the existing "Resource utilization" log event with information about the number of downloaded/uploaded bytes per minute.
- Added an accessor for bitdrift Capture Identifier. Refer to Device Identifier for more details.
- Removed the ResourceReportingConfigurationtype and the option to configure the resource reporting polling rate. The feature is enabled by default with a polling rate of 6s, controllable remotely by bitdrift services as needed.
- Significantly reduced the amount of space resource reporting logs take on disk and during over-the-wire transfer.
- Treat responses with an HTTP status code of 304 as successes instead of failures.
0.11.3¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Improved the performance of SDK log methods and SDK configuration. Refer to the Performance Measurements for the latest benchmark numbers.
- Improved the reliability of logs and stats delivery by flushing the relevant state to disk when the SDK detects an event that may imply the app is about to be terminated or suspended.
0.11.2¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Improved the logic used to derive path template from the path of HTTP Request. Refer to HTTP Traffic Log Fields for more details.
- Fixed a potential bug with an infinite loop inside of a logic used to derive path template.
0.11.1¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Updated the podspecs of the CaptureandCaptureCocoaLumberjacklibraries to correctly list iOS 12 as the minimum supported iOS version (previously iOS 13).
0.11.0¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Added support for iOS 12 (downgraded the minimal supported iOS version from iOS 13 to iOS 12).
- Added new out-of-the-box fields to HTTP request and HTTP response logs. Refer to HTTP Traffic Logs for more details.
- Removed _file,_line, and_functionlog fields from HTTP request and HTTP response logs emitted by CaptureurlSessionintegration.
0.10.0¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Upgraded the version of Xcode used to build the Capture framework from 15.2 to 15.4.
0.9.118¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- The first release to support the collection of 'Workflow Insights,' a new feature that will add extra aggregated information to all workflow actions. A separate announcement will be made once the feature is available to the public, but we recommend that customers upgrade their SDK now so they can start benefiting from the new feature as soon as it's released.
- Added a new out-of-the-box localeattribute that is collected as part of the emitted logs. Refer to Default Fields for more details.
- Added a new urlSession()integration that makes it possible to start capturing logs for all of the application's network traffic with one line of code. Refer to URLSession (iOS) for more details.
- Removed the ProxyURLSessionDelegatetype. Refer to the URLSession (iOS) integration documentation for more details on how to add logging for application network traffic.
- Changed APIs for enabling CocoaLumberjackandSwiftyBeaverintegrations. Refer to CocoaLumberjack and SwiftyBeaver for more details.
- Started capturing various request/response-related metrics in HTTP request and response logs using the HTTPRequestInfo/HTTPResponseInfotypes and through CaptureURLSessionintegration.
- Changed the type of pathargument ofHTTPRequestInfoandHTTPResponseInfostructs fromString?to newly introducedHTTPURLPath.
- Fixed a small memory leak that occurred each time the SDK opened a new connection with a remote.
0.9.117¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Fix potential data races that could occur during the Logger.configure(...)method call.
- Correct Objective-C method signature, change from -[CAPLogger level:_:fields:]to-[CAPLogger level:message:fields:].
0.9.116¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Use the CFBundleShortVersionStringkey instead of theCFBundleVersionStringkey for retrieving the app version number from Bundle. Refer to Default Fields for more details.
- Make the pathargument ofHTTPRequestInfooptional.
- Revamped support for app and OS version matching. Refer to Version Matching for more details.
0.9.115¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- This release is identical to 0.9.114 release.
0.9.114¶
- CaptureSDK: xcframework | API Reference Docs
- CaptureCocoaLumberjack: podspec | Package.swift
- CaptureSwiftyBeaver: podspec | Package.swift
Changelog:
- Released side libraries for integrating Capture SDK with CocoaLumberjackandSwiftyBeaver3rd party logging libraries. See Log Forwarding for more details.
0.9.113¶
Changelog:
- Make Logger configuration and logging methods available to Objective-C code. See configuration and usage for more details.
- Start capturing file (#fileID), line (#line), and (#function) for all logs emitted with the use of Swift interfaces. See Capturing file, line, and function to learn more.
- Add an optional argument of Errortype to all methods from thelog(...)family of methods. See custom logs for more details.
- Renamed spanIdargument ofHTTPRequestInfoinitializer tospanID.
0.9.112¶
Changelog:
- Add privacy manifest files, which Apple is about to start requiring for third-party SDKs soon.
- Fixed app validation issues on Xcode 15.3 for Swift Package Manager and CocoaPods users.
0.9.111¶
Changelog:
- Add addField(withKey:value)andremoveField(withKey:)methods that can be used to add and remove fields to be attached to all logs emitted by the SDK.
- Omit fields whose names start with _and are provided viaaddField(withKey:value)or returned byFieldProviders registered with the SDK. See Field Additions and Removal methods for more details.
- Drop fields whose names are on the the list of reserved log field names. See Fields for more details.
- Change the type of log fields accepted by the SDK from [String: String]to[String: Encodable & Sendable].
0.9.110¶
Changelog:
- This release is identical to 0.9.109 release.
0.9.109¶
Changelog:
- Added createTemporaryDeviceCode(completion:)method, which creates a temporary device code that can be used to stream logs from a given device in real-time. See bd cli for more details.
0.9.108¶
Changelog:
- Introduced significant improvements to the way session logs are uploaded. With this update, users now have access to logs not only before the workflow's 'Record Session' action triggers but also after the trigger. This enhancement provides a more comprehensive view of session logs, empowering users to gain deeper insights into their workflows and troubleshoot issues more effectively.
- Added Logger.log(level:message:info:)method that takes log severity level as one of its arguments. The existence of this method may help reduce the amount of boilerplate needed to forward logs from existing logging systems into bitdrift.
- Renamed baseURLparameter ofLogger.configure(...)method toapiURLto make it consistent with the Android counterpart.
0.9.107¶
Changelog:
- Exposed a convenience API method to retrieve a session permalink URL in the Logger.
- Moved to building using Xcode 15.2 (up from Xcode 15.0).
- Fixed a potential bug that may have caused a logger internal run loop to get stuck until the next app relaunch.
0.9.106¶
Changelog:
- Improved support for Funnel Analysis. This update is recommended for customers interested in using funnels in their workflows.
- Funnels improvements were accomplished partially by changes to workflows' traversal rules and have limited impact on session captures and stats emission actions in multi-steps workflows. The final result should be be more intuitive results of workflow actions.
0.9.105¶
Changelog:
- Added support for on-demand log streaming, used to power real-time debugging tools.
0.9.104¶
Changelog:
- This release is identical to 0.9.103 release.
0.9.103¶
Changelog:
- Changed the order the params in the configure()method to denote their importance.
0.9.102¶
Changelog:
- The first release with Screen Replay feature supporting SwiftUI views.
0.9.101¶
Changelog:
- Improved the accuracy of Session Replay feature.
0.9.100¶
Changelog:
- This release is identical to 0.9.99 release.
0.9.99¶
Changelog:
- Remove references to unused protobuf code. The change led to the reduction of the size of SDK binaries by around 4 KiB.
0.9.98¶
Changelog:
- This release is identical to 0.9.97 release.
0.9.97¶
Changelog:
- Disable debug and trace logs for improved performance and reduced binary size (~40 KB smaller binary).
0.9.96¶
Changelog:
- This release is identical to 0.9.95 release.
0.9.95¶
Changelog:
- First public release of the bitdrift Capture SDK.