Copy as Markdown[Open in ChatGPT](https://chatgpt.com/?q=Read%20https%3A%2F%2Fcoralogix.com%2Fdocs%2Fuser-guides%2Frum%2Fsdk-installation%2Fapple%2Frelease-notes.md%20and%20help%20me%20with%20my%20question%20about%20this%20Coralogix%20documentation%20page.)[Open in Claude](https://claude.ai/new?q=Read%20https%3A%2F%2Fcoralogix.com%2Fdocs%2Fuser-guides%2Frum%2Fsdk-installation%2Fapple%2Frelease-notes.md%20and%20help%20me%20with%20my%20question%20about%20this%20Coralogix%20documentation%20page.)

# RUM iOS SDK changelog

Sep 9, 2026

iOS SDK 2.18.2

Fixed

* A crash is now reported once rather than again on every app launch.

Sep 6, 2026

iOS SDK 2.18.1

Fixed

* The tap frame in a session recording is captured when the finger touches down, once per tap, in native, React Native, and Flutter apps alike, and is reported as a `screenshot` event; previously it was captured when the finger lifted, twice per tap in React Native and Flutter apps, and scrolls and swipes added a second frame at finger-up; the finger-down frame still ships for them. User-interaction events no longer carry `screenshot_id` and `page`; the frame is matched to the interaction by time, as on Android. `flutterViewBitmapProvider` is `(viewId, frameId, completion)` again, matching Android: the `isClick` and `tapTimestampMs` arguments added in 2.18.0 are removed, and an app supplying its own provider closure drops them. **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/session-replay/ios.md)**

Aug 31, 2026

iOS SDK 2.18.0

Changed

* `flutterViewBitmapProvider` takes two more arguments, `isClick` and `tapTimestampMs`, before its completion handler. Flutter apps get this through a plugin update; an app supplying its own provider closure widens the signature and can ignore both.
* Spans that carry a screenshot now end once the capture finishes, so their duration includes it. Visible only to consumers reading raw `SpanData` through `tracesExporter`.
* Session recording frame capture: a frame Flutter has no bitmap for is dropped rather than replaced with an earlier one, frames that should ship are no longer discarded as duplicates, and a capture requested off the main thread now produces a frame. **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/session-replay/ios.md)**
* Screenshot correlation: an event carries `screenshot_id` and `page` only when its frame actually shipped, and a recording always begins at a segment the player has frames for.
* Crash events are exported with the crash rather than on the next launch.

Aug 26, 2026

iOS SDK 2.17.0

ChangedAction required

* **Action required if you use `maskText` or `maskAllImages` on UIKit views to keep sensitive text out of user-interaction events.** Session Replay's pixel policy no longer redacts interaction text or sets `interaction_context.is_masked_element`. Text that these options previously withheld from `target_element_inner_text` is now reported in full. To keep withholding it, move the rule to `shouldSendText`, which is evaluated per interaction and returns `false` to redact. This affects UIKit views only (`UILabel`, `UITextField`, `UITextView`, `UINavigationBar` titles, `UIImageView`), which are the ones the pixel policy reported geometry for. Text inside SwiftUI content is masked by the OCR and Vision stages, which report no geometry, so it never set the flag and was never redacted in interaction events, nothing changes there, and no action is needed. Note also that `shouldSendText` receives whatever the SDK can read from the touched view, which for SwiftUI content is its `accessibilityLabel` at best, so a rule moved there may not see SwiftUI text at all. **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/session-replay/ios.md)**
* `shouldSendText` covers native interactions only, clicks, scrolls, and swipes alike, since it is consulted while the SDK reads the touched view. Interactions reported through `setUserInteraction` from React Native or Flutter never reach it, because their text arrives already resolved in the bridge payload. For those, either have the wrapper send `is_masked: true` for the interaction (the Flutter plugin already does this for taps, so Flutter apps masking in Dart are unaffected), or redact in `beforeSend`, which runs on every path.
* `cxMask`, SwiftUI `.cxMask()`, password fields, and fields with a sensitive `textContentType` are unaffected, they still redact to `***` and still set the flag. Session Replay itself is unaffected: these options mask pixels in the recording exactly as before.
* `is_masked_element` and inner-text redaction now reflect deliberate masking alone, matching the Android and Flutter SDKs. The pixel policy decides which pixels a frame hides, which is a different question from whether text may leave the device. Previously, with a wrapper's default `maskAllTexts`, a tap on almost any text reported as masked and shipped `***`.
* The replay's tap marker is unchanged: it is still suppressed over pixels the frame hid, including policy-masked ones. Flag and marker can now legitimately disagree for policy-masked content, as they already do on Android and Flutter.
* Interaction masking no longer depends on Session Replay being initialized; the verdict resolves from the view hierarchy alone.

Aug 18, 2026

iOS SDK 2.16.0

Improved

* Sessions not selected by `sessionSampleRate` now keep sending the `traceparent` header on outgoing requests, so distributed traces still correlate with your backend, while none of their events are reported.
* `excludeFromSampling` no longer re-enables an instrumentation you switched off in `instrumentations`, and has no effect on sessions that are sampled in.
* `instrumentations: [.network: false]` now suppresses the `traceparent` header as well as `network-request` events, whatever `traceParentInHeader` is set to.
* `instrumentations: [.network: false]` now also suppresses network events reported from Flutter and React Native through `setNetworkRequestContext`, which previously ignored the setting. Leave network instrumentation enabled to keep receiving them.
* Fixed sessions not selected by `sessionSampleRate` not reporting the SDK initialization event. They now report it.

Aug 10, 2026

iOS SDK 2.15.1

Fixed

Network requests reported from Flutter and React Native now carry the HTTP reason phrase in `network_request_context.status_text` (for example, `"OK"` or `"Not Found"`). Previously it was always empty on iOS while Android populated it.

Aug 9, 2026

iOS SDK 2.15.0

Improved

* Every user-interaction event now carries `interaction_context.is_masked_element` (always present, boolean): the SDK's own observation that the interaction targeted content Session Replay masked. `false` also covers "could not resolve" (a hybrid payload with no coordinates, or no frame geometry to test the point against) so the flag under-reports rather than over-reports. Read it in `beforeSend` to implement policies stricter than the default redaction: drop the event, blank the coordinates, or rewrite the target. **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/session-replay/ios.md)**
* `setUserInteraction` accepts an optional `is_masked` boolean, an authoritative masking verdict from a hybrid wrapper that owns its own masking (the Flutter plugin sets it). It overrides the SDK's geometry resolution and drives both the flag and inner-text redaction.
* `FlutterViewBitmap` gained `maskRects`, the rectangles Dart masked in the delivered bitmap, in Flutter-view-local points. They merge into the captured frame's mask geometry, so tap markers over masked Flutter content are now suppressed on the same terms as native masks. A reused stale bitmap carries the rects of its own frame, never a newer frame's.
* Fixed network requests reported from Flutter and React Native being exported with a constant duration of 1 ms. They now carry their real measured duration.
* Interactions reported through the hybrid bridge (`setUserInteraction`, React Native, Flutter) are now redacted on the same terms as native taps. Previously the bridge payload's `target_element_inner_text` was copied verbatim, so a masked element's real text shipped in the clear: the redaction only ran on the swizzled native-touch path, which emits no span in hybrid mode. Only the inner text is redacted. Identity fields and coordinates are reported as-is, matching the web SDK, and the masking is resolved from the payload's coordinates against the same frame geometry that suppresses the replay's tap marker.
* Native tap redaction now also tests the tap point against the frame's mask geometry, closing two gaps: text of UIKit views masked by `maskText`/`maskAllImages`, and text under a SwiftUI `.cxMask()` overlay (a sibling, not an ancestor, so the view-tree walk could not see it). Both previously shipped their real text while their pixels and tap marker were masked.

Aug 6, 2026

iOS SDK 2.14.0

New

Buffered spans are now automatically flushed when the app enters the background, ensuring telemetry is uploaded before process suspension. The SDK uses `UIApplication.beginBackgroundTask` to extend the background time window and guarantee completion before the app is terminated.

Aug 5, 2026

iOS SDK 2.13.3

Improved

* `setUserContext` now promotes the next exported event to a snapshot event, so the session's user information refreshes immediately instead of waiting for the next error, navigation, or one-minute interval, matching the browser SDK's behavior.
* Masking now applies to everything inside a masked view, not just the view it was set on. Masking a container is enough to cover its contents, including individually tappable subviews. **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/session-replay/ios.md)**
* Tapping inside a masked area no longer draws a tap marker in Session Replay, so a recording of a masked keypad no longer reveals which keys were pressed. The frame is still recorded, and interaction events still carry their touch coordinates.
* User interaction events now report `***` for the text of any view inside a masked area. Previously only the masked view itself was redacted, so a tap on a key inside a masked keypad sent the key's label in clear.
* Redacted `target_element_inner_text` is now reported as `***` rather than omitted, matching the Android SDK. This affects views rejected by `shouldSendText`, password fields, and fields with a sensitive `textContentType`, which previously sent no `target_element_inner_text` at all.

Aug 2, 2026

iOS SDK 2.13.2

Fixed

Fixed session sampling dropping buffered spans when the session rotates.

Jul 28, 2026

iOS SDK 2.13.1

Improved

* Exposed `isSessionSampledIn` to the `beforeSend` callback, so you can filter events with awareness of whether the session is sampled in.
* Added the optional `labels` parameter to the hybrid (React Native / Flutter) `reportError` overloads, matching the native API.

Jul 28, 2026

iOS SDK 2.12.0

Improved

`reportError` now takes optional `data` and `labels` parameters on every overload (`exception`, `error`, and `message`). You can attach structured context and event labels in the same call instead of pairing `reportError` with a separate `log`. `data` lands under `error_context.error_custom_data`, and `labels` merge into the error event's labels. **[Learn more](https://coralogix.com/docs/user-guides/rum/sdk-installation/apple/ios/features/sessions-and-user-context.md#error-reporting)**

Jul 23, 2026

iOS SDK 2.11.2

Fixed

Session Replay now masks the navigation-bar title during view transitions, closing a leak where the title could appear unmasked mid-transition.

Jul 20, 2026

iOS SDK 2.11.1

Fixed

Session Replay now holds the last captured Flutter frame instead of black-filling the frame when a bitmap is unavailable.

Jul 20, 2026

iOS SDK 2.11.0

New

Crash-event delivery now survives process death, so a crash that terminates the app is still reported on the next launch.

Jul 19, 2026

iOS SDK 2.10.4

Fixed

The active view is now frozen onto spans at creation time, so `view_context` matches the view that was active when the event occurred.

Jul 14, 2026

iOS SDK 2.10.3

Fixed

On the hybrid network path, iOS now honors the Dart / React Native wire `traceId`, so the exported span matches the `traceparent` sent on the wire.

Jul 14, 2026

iOS SDK 2.10.2

Fixed

Crashes are now attributed to the session that crashed and to the crash-time timestamp, rather than to the session that reports them on the next launch.

Jul 9, 2026

iOS SDK 2.10.1

Fixed

The task span is now reused on resume, so the wire `traceparent` matches the exported span.

Jul 5, 2026

iOS SDK 2.10.0

New

Added the `createNewSession()` public API to rotate the session on demand.

Jun 24, 2026

iOS SDK 2.9.2

Fixed

* On the hybrid (React Native / Flutter) path, a `beforeSend` edit to an editable `cx_rum` field (for example, redacting `session_context.user_email` or rewriting `labels`) was reflected in `text.cx_rum` but not in `instrumentation_data.otelSpan.attributes`: the encoded spans were uploaded verbatim after the callback, so the tracing mirror stayed stale and a redacted value still leaked through tracing. The OTEL attributes are now rebuilt from the edited `cx_rum` before upload (the same rebuild the native single-event path performs) so both destinations carry identical values.

Jun 16, 2026

iOS SDK 2.9.1

Fixed

Fixed Cold Start AVG reporting multi-hour values. Prewarmed launches (iOS spawns the process in the background ahead of user intent, flagged by `ActivePrewarm`) and other background launches (push/fetch/location) were measured from kernel process birth time and counted as cold starts. Prewarmed launches are now skipped, and any cold-start duration beyond a 60s ceiling is dropped as a background-launch artifact. **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/mobile-performance.md)**

Jun 15, 2026

iOS SDK 2.9.0

New

Session Replay now emits a one-shot init log capturing its configuration when recording starts, so the active Session Replay settings are visible in the backend. **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/session-replay/ios.md)**

Jun 11, 2026

iOS SDK 2.8.0

Improved

* Fixed SwiftUI text and images not being masked in session replay, where the synchronous UIView walk could not see inside SwiftUI hosting views (BUGV2-6045). As an interim fix, the Vision-based `TextScanner` (OCR) and `ImageScanner` `maskAll` (rectangle detection) pipeline stages are restored, scoped to captures whose scene contains a SwiftUI hosting view (`URLEntry.containsSwiftUIContent`). UIKit and Flutter capture paths are unchanged. OCR masking is probabilistic (for example, rows clipped at the viewport edge mid-scroll may escape recognition).
* Fixed a session replay mask-skew bug where, during scroll animations, mask rects drifted 16–80+ px behind the text they covered (BUGV2-6045). Native-window capture now uses `layer.render(in:)` (the model layer) and collects mask rects synchronously in the same render pass.
* Fixed Flutter content appearing as a transparent hole in session-replay frames. A new `flutterViewBitmapProvider` requests a pre-masked RGBA8888 bitmap from the Flutter plugin's Dart rasteriser, which captures and masks in a single synchronous frame slice.
* Fixed the session replay capture timer silently never firing when initialised via Flutter's background MethodChannel task queue (background threads have no run loop). All `SessionReplay` entry points now dispatch to `DispatchQueue.main`.
* Fixed session replay click frames not being detected on iOS 26: `getClickPoint` cast tap coordinates with `as? Double`, which no longer succeeds for a boxed `CGFloat` on iOS 26. Coordinates are now coerced from any numeric boxing (`Double`/`CGFloat`/`Int`/`NSNumber`).
* Added `SessionReplayOptions.flutterViewBitmapProvider: FlutterViewBitmapProvider?`, a callback for Flutter hosts to supply pre-masked frame bitmaps per capture. **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/session-replay/ios.md)**

Jun 2, 2026

iOS SDK 2.7.0

Improved

Added a `customAttributes: [String: Any]?` parameter on the `reportError(message:, stackTrace:, ...)` and `reportError(message:, obfuscatedStackTrace:, ...)` overloads. Custom attributes now ride alongside the parsed stack frames on the emitted error event instead of being mutually exclusive with the stack trace (CX-44438).

May 12, 2026

iOS SDK 2.6.4

Fixed

The hybrid SDK path now honors `excludeFromSampling` (CX-40203).

May 11, 2026

iOS SDK 2.6.3

Improved

* Added the `ExcludableInstrumentation` enum and the `excludeFromSampling` SDK option (CX-40199).
* Added per-session sampling reroll with init-flow decoupling (CX-40200).
* Added a per-span sampling filter in `CoralogixExporter` (CX-40201).
* Added SwiftUI swipe detection (CX-33282).
* Fixed Session Replay scroll lag. **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/session-replay/ios.md)**

Apr 28, 2026

iOS SDK 2.6.2

Fixed

Fixed a Flutter scroll freeze by using `afterScreenUpdates: false`.

Apr 26, 2026

iOS SDK 2.6.1

Fixed

Fixed the `tracesExporter` `instrumentation_data` payload and the `TracesExporterViewController` per-span table UI. **[Learn more](https://coralogix.com/docs/user-guides/rum/sdk-installation/apple/ios/configuration/options.md#trace-exporter)**

Apr 23, 2026

iOS SDK 2.6.0

Improved

Hardened the Custom Spans API and fixed a network span 422 error (CX-39134). **[Learn more](https://coralogix.com/docs/user-guides/rum/sdk-installation/apple/ios/features/custom-instrumentation.md#custom-spans)**

Apr 16, 2026

iOS SDK 2.5.1

Improved

* Removed all `assert`/`precondition`/`fatalError` calls from SDK code, so the SDK can no longer crash the host app (CX-37986).
* Added a global span registry (CX-37986).

Apr 14, 2026

iOS SDK 2.5.0

New

* Added the Traces Exporter (OTLP JSON) with a callback. **[Learn more](https://coralogix.com/docs/user-guides/rum/sdk-installation/apple/ios/configuration/options.md#trace-exporter)**
* Added global span trace propagation and `ignoredInstruments` for automatic spans (CX-35954/CX-35955).
* Added the Custom Spans API, OTel context, and RUM/Tracing parity with the Browser SDK (CX-35951). **[Learn more](https://coralogix.com/docs/user-guides/rum/sdk-installation/apple/ios/features/custom-instrumentation.md#custom-spans)**
* Added the `US3` domain to the `CoralogixDomain` enum.
* Fixed preservation of `telemetry.sdk.*` attributes in the OTel Resource.

Mar 29, 2026

iOS SDK 2.4.1

Fixed

Fixed `traceparent` header capture in the React Native / Flutter hybrid network path.

Mar 26, 2026

iOS SDK 2.4.0

New

Added Flutter obfuscated errors plus error metadata (`arch`, `build_id`, `stack_trace_type`).

Mar 22, 2026

iOS SDK 2.3.3

Improved

Forward request and response headers and payload in the Flutter hybrid network path.

Mar 22, 2026

iOS SDK 2.3.2

Improved

Made `Span` conform to `Equatable` and record events conform to `Hashable`.

Mar 22, 2026

iOS SDK 2.3.1

Improved

Made `Span` conform to `Hashable`.

Mar 18, 2026

iOS SDK 2.3.0

Improved

* Added request/response body capture, a hybrid severity fix, and tap x/y rounding (CX-33235).
* Added response body capture with content-type stringification and a 1024-char limit (CX-33234).
* Unified `beforeSendCallBack` behavior across SDKs (CX-32889).
* Fixed React Native response body capture plus `URLSession` race conditions.
* Fixed the `beforeSend` error count when severity changes (BUGV2-5379).
* Preserve the request in `requestMap` for network header capture, and moved `SDKSampler`.

Mar 9, 2026

iOS SDK 2.2.0

Improved

[![mobile-performance-hero](/docs/assets/images/hero-ae701411e123f6f1658f5c199ca3f3e6.webp)](https://coralogix.com/docs/assets/images/hero-ae701411e123f6f1658f5c199ca3f3e6.webp)

* Added hybrid platform support for `setUserInteraction`, `setNetworkRequestContext`, and session-replay decoupling.
* Enriched `instrumentation_data.otelSpan` with `cx_rum.*` structured attributes.
* Added the `NetworkCaptureRule` model and the `networkExtraConfig` SDK option (CX-33230).
* Added capture-rule fields on `NetworkRequestContext` (CX-33232).
* Added the `resolveConfigForUrl(_:configs:)` API (CX-33231).
* Added `shouldSendText` and `resolveTargetName` delegates for user-action events (CX-32583).
* Added `UISwipeGestureRecognizer` swipe detection (CX-32582).
* Extended the interaction schema with scroll detection and PII-safe text (CX-32580/CX-32581).
* Process MetricKit hang diagnostics as error events (CX-31668).
* Allow clearing user context by passing `nil` to `setUserContext`.
* Decoupled ANR from Mobile Vitals and report it as error events.
* Removed unused mobile-vitals sample-rate configuration (CX-31659).
* Fixed accurate cold-start measurement via `sysctl` and removed the swizzle dependency (CX-31662).
* Report warm start for Flutter and React Native apps (CX-31661).
* Include zero-count windows in frame statistics for accurate percentiles (CX-31666).
* Removed the 100% cap from memory utilization (CX-31664).
* Removed the CPU 100% cap to detect multi-core saturation (CX-31663). **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/mobile-performance.md)**

Feb 12, 2026

iOS SDK 2.1.0

Improved

Eliminated delegate class scanning and migrated to industry-standard swizzling for multi-SDK compatibility.

Feb 5, 2026

iOS SDK 2.0.0

Improved

* Added Flutter session-recording masking support.
* Fixed severity syncing from the `beforeSend` callback to `CxSpan`.

Jan 21, 2026

iOS SDK 1.5.3

Fixed

Fixed a negative-duration bug and now mark the session ID and session creation date correctly (CX-4620).

Jan 5, 2026

iOS SDK 1.5.2

Improved

Wired ANR detection into the scheme (CX-26496).

Dec 23, 2025

iOS SDK 1.5.1

Improved

Adopted `async`/`await` in internal APIs (CX-25861).

Dec 3, 2025

iOS SDK 1.5.0

New

Added a masking bridge widget (ALPH-22252). **[Learn more](https://coralogix.com/docs/user-guides/rum/sdk-installation/javascript/browser-sdk/configuration/options.md)**

Nov 9, 2025

iOS SDK 1.4.0

New

Added an iOS mask-view for the native SDK (ALPH-15201). **[Learn more](https://coralogix.com/docs/user-guides/rum/sdk-installation/javascript/browser-sdk/configuration/options.md)**

Nov 3, 2025

iOS SDK 1.3.2

Fixed

Fixed a missing session-replay function (ALPH-1234). **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/session-replay/ios.md)**

Oct 30, 2025

iOS SDK 1.3.1

Fixed

Fixed a session-replay segment-index bug (ALPH-1234). **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/session-replay/ios.md)**

Oct 26, 2025

iOS SDK 1.3.0

New

[![mobile-performance-hero](/docs/assets/images/hero-ae701411e123f6f1658f5c199ca3f3e6.webp)](https://coralogix.com/docs/assets/images/hero-ae701411e123f6f1658f5c199ca3f3e6.webp)

* Added a screenshot change-detection filter for iOS Session Replay (ALPH-2515). **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/session-replay/ios.md)**
* Added mobile-vitals options (ALPH-2754). **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/mobile-performance.md)**

Sep 28, 2025

iOS SDK 1.2.6

Improved

* Emit Navigation events (ALPH-2546).
* Added a Custom-measurement API. **[Learn more](https://coralogix.com/docs/user-guides/rum/sdk-installation/javascript/browser-sdk/features/custom-instrumentation.md)**
* Added custom log labels (ALPH-2257).
* Send an internal-init event (ALPH-2654).
* Refactored mobile vitals (ALPH-2704).
* Session reset now uses a closure instead of `NotificationCenter`.
* Fixed an idle bug.

Sep 4, 2025

iOS SDK 1.2.5

Improved

Automated the CocoaPods release pipeline (ALPH-6671).

Sep 1, 2025

iOS SDK 1.2.3

Improved

Bumped the `PLCrashReporter` dependency.

Aug 31, 2025

iOS SDK 1.2.2

Fixed

* Fixed the user-agent string.
* React Native integration fixes (ALPH-1234).

Aug 26, 2025

iOS SDK 1.2.1

Fixed

* Fixed broken `spanid` and `traceid`.
* Fixed an app freeze on the main thread.

Aug 25, 2025

iOS SDK 1.2.0

New

[![mobile-performance-hero](/docs/assets/images/hero-ae701411e123f6f1658f5c199ca3f3e6.webp)](https://coralogix.com/docs/assets/images/hero-ae701411e123f6f1658f5c199ca3f3e6.webp)

* Added persistent anonymous fingerprinting (ALPH-2644).
* Added a unified Mobile Vitals reporting API.
* Added slow / freeze frame detection (ALPH-2588).
* Added a memory detector (ALPH-2550).
* Added native iOS CPU tracking (ALPH-2579).
* Added missing metrics and logic (ALPH-1234). **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/mobile-performance.md)**

Aug 11, 2025

iOS SDK 1.1.3

Fixed

Fixed an app crash in `NSMutableURLRequest` ObjC bridging (ALPH-2631).

Jul 30, 2025

iOS SDK 1.1.2

Improved

* Externalized `PLCrashReporter` from the main RUM module (ALPH-2488).
* Fixed iOS schema issues (ALPH-2530).
* Removed duplicate swizzle code that sent multiple clicks.
* `sessionId` is now lowercase (ALPH-2523).
* `ignoreUrl` now works with regex (ALPH-2519).
* Fixed a `URLSession` instrumentation deadlock.
* Fixed a crash in `URLSessionInstrumentation.injectIntoNSURLSessionCreateTaskWithParameterMethod` (ALPH-2507).

Jul 17, 2025

iOS SDK 1.1.1

Fixed

Fixed several crashes (ALPH-2498).

Jul 10, 2025

iOS SDK 1.1.0

Improved

Refactored the idle logic (ALPH-2468).

Jul 2, 2025

iOS SDK 1.0.27

Improved

* Added an `isManual` flag (ALPH-2429).
* Added snapshot context on all severity-5 events (ALPH-2424).
* Fixed a crash in the `BatchWorker` / `NetworkStatus` class (ALPH-2423).

Jun 26, 2025

iOS SDK 1.0.26

Improved

* Added `traceparent` header injection (native) (ALPH-2296).
* When using a proxy URL, the exporter now removes the span correctly (ALPH-2148).

Jun 24, 2025

iOS SDK 1.0.25

Improved

* Added a `traceparent` header option on `CoralogixOptions` (ALPH-2295).
* Added proxy URL support (native) (ALPH-2292).
* Fixed a crash in `SessionMetaDataManager` (ALPH-2914).

Jun 22, 2025

iOS SDK 1.0.24

Improved

* Changed duration handling, added undefined-text handling, and repaired broken tests (ALPH-2388).
* Fixed images being skipped during session recording (ALPH-2360). **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/session-replay/ios.md)**

Jun 5, 2025

iOS SDK 1.0.23

Improved

* Added Flutter support for cold / warm mobile vitals (ALPH-1234).
* Initialize `segmentIndex` when the page is incremented (ALPH-2286).

May 25, 2025

iOS SDK 1.0.22

New

* Added Session Replay click events (ALPH-1885).
* Added a disable-swizzling option (ALPH-2246). **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/session-replay/ios.md)**

May 8, 2025

iOS SDK 1.0.21

Improved

* Added screenshot events in session recording (ALPH-2159).
* Fixed a crash in `URLSessionInstrumentation` (ALPH-2218). **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/session-replay/ios.md)**

Apr 24, 2025

iOS SDK 1.0.20

Improved

* Merged Session Replay into the main module (ALPH-2183).
* Fixed a crash in `URLSession` instrumentation (ALPH-2195). **[Learn more](https://coralogix.com/docs/user-guides/rum/product-features/session-replay/ios.md)**

Apr 14, 2025

iOS SDK 1.0.19

New

Added `beforeSend` logic.

Apr 3, 2025

iOS SDK 1.0.18

Improved

* Rolled back OpenTelemetry to 1.9.0 (ALPH-2154).
* Fixed a DANZ duration bug. Durations are now in milliseconds (ALPH-2151).
* Fixed a crash in the "xploretechnologey" path (ALPH-2148).

Mar 27, 2025

iOS SDK 1.0.17

Fixed

Fixed `ignoreUrl` and `ignoreError` API behavior.

Mar 16, 2025

iOS SDK 1.0.16

Improved

* Added missing API functions (ALPH-2128).
* Fixed network requests not being captured in some cases (ALPH-2128).

Mar 6, 2025

iOS SDK 1.0.15

New

Added new public API functions (ALPH-2214).

Feb 24, 2025

iOS SDK 1.0.14

Changed

Switched the library to static linkage.

Feb 4, 2025

iOS SDK 1.0.13

Fixed

Fixed a crash in the `UICollectionView` swizzle.

Nov 19, 2024

iOS SDK 1.0.12

New

* Added lifecycle events (ALPH-1623).
* Added daily metrics log reporting (ALPH-1625).
* Added `beforeSend` logic (ALPH-1622).
* Added instrumentation config (ALPH-1567).
* Added AP3 environment support.
* Added performance mobile vitals (ALPH-1463).
* Skip collecting IP data (ALPH-1570).
* Fixed a Flutter gap, lifecycle bugs, and a Flutter stuck-trace bug (ALPH-1759).

Aug 28, 2024

iOS SDK 1.0.11

Fixed

Fixed iOS 13 compatibility (Xcode 15.0.1).

Aug 27, 2024

iOS SDK 1.0.10

New

* Added basic tvOS support (ALPH-1506).
* Added a `samplerRate` option on `CoralogixOptions`.
* Added RUM user actions (ALPH-1285).
* Added traces support (ALPH-1375).
* Flatten error context.
* Fixed a wrong Swift tools version, now 5.9.
* Fixed telephony info handling.

Jul 7, 2024

iOS SDK 1.0.8

Improved

Added native enhancements for Flutter capabilities (ALPH-1137).

Jun 23, 2024

iOS SDK 1.0.6

New

Added the CocoaPods podspec.

Jun 20, 2024

iOS SDK 1.0.5

New

* Added OpenTelemetry API/SDK and `PLCrashReporter` as XCFrameworks.
* Added session-snapshot logic (ALPH-1187).
* Added OpenTelemetry SDK/API integration (ALPH-1187).

May 26, 2024

iOS SDK 1.0.4

New

* Added ViewController extraction for Swift UIKit.
* Added ViewController extraction for SwiftUI (ALPH-1085).
* Added `DeviceState` and `DeviceContext` (ALPH-1112).

May 2, 2024

iOS SDK 1.0.0

New

Initial release of the Coralogix iOS RUM SDK.
