Skip to content

Releases: getsentry/sentry-cocoa

8.47.0

12 Mar 13:49
Compare
Choose a tag to compare

Important

This version fixes an important bug for applying scope data to crash events (#4969).

Previously, the SDK always set the event's user to the user of the scope of the app launch after the crash event, which could result in incorrect user data if the user changed between the crash and the next launch.
Additionally, if specific properties on the crash event were nil, the SDK replaced them with values from the scope of the app launch after the crash event. This affected the following event properties: tags, extra, fingerprints, breadcrumbs, dist, environment, level, and trace context. However, since most of these properties are infrequently nil, the fix should have minimal impact on most users.

Features

  • Add extension for Data to track file I/O operations with Sentry (#4862)
  • Send fatal app hang session updates (#4921) only when enabling the option enableAppHangTrackingV2.
  • Add experimental flag options.sessionReplay.enableExperimentalViewRenderer to enable up to 5x times more performance in Session Replay (#4940)

Fixes

  • Correctly finish TTFD span when no new frame (#4941)
  • Only delete envelopes when receiving HTTP 200 (#4956)
  • Set foreground true for watchdog terminations (#4953)
  • Fix removing value from context not updating observer context (#4960)
  • Fix wrongly applying scope to crash events (#4969)
  • Changed parameter of SDKInfo.initWithOptions to be nullable (#4968)

Improvements

  • More debug logs for UIViewController tracing (#4942)
  • Avoid creating unnecessary User Interaction transactions (#4957)

8.46.0

04 Mar 09:37
Compare
Choose a tag to compare

Features

  • Report fatal app hangs (#4889) only when enabling the option enableAppHangTrackingV2
  • New user feedback API and Widget (#4874)

Improvements

  • Log message when setting user before starting the SDK (#4882)
  • Add experimental flag to disable swizzling of NSData individually (#4859)
  • Replace calls of SentryScope.useSpan with callback to direct span accessor (#4896)
  • Slightly reduce size of SentryCrashReports (#4915)

Fixes

  • Fix rare memory access issue for auto tracing (#4894). For more details, see issue (#4887).
  • Move assignment of file IO span origin outside of block (#4888)
  • Deadline timeout crash in SentryTracer (#4911)
  • Improve memory-safety by converting Swift constants to Objective-C (#4910)
  • Fix C++ compilation error due to changes in Xcode 16.3 beta's compiler toolchain (#4917 and #4918)

8.45.0

13 Feb 16:07
Compare
Choose a tag to compare

Warning

We have been made aware that this version can cause crashes in certain configurations when using network tracking, file I/O tracking, or CoreData tracking features.
We recommend staying on version 8.43.0 or disable the mentioned features until a fix is released.
See issue #4887 for more details.

Features

  • Add showMaskPreview to SentrySDK.replay api to debug replay masking (#4761)
  • Session replay masking preview for SwiftUI (#4737)
  • HTTP Breadcrumb level based on response status code (#4779) 4xx is warning, 5xx is error.
  • Measure app hang duration for AppHangTrackingV2 (#4836)

Improvements

  • Add more debug logs for SentryViewHierarchy (#4780)
  • Add sample_rand to baggage (#4751)
  • Add timeIntervalSince1970 to log messages (#4781)
  • Add waitForFullDisplay to sentryTrace view modifier (#4797)
  • Increase continuous profiling buffer size to 60 seconds (#4826)

Fixes

  • Fix missing sample_rate in baggage (#4751)
  • Serializing SentryGeo with nil values (#4724)
  • Add type-safety for screenshots result array (#4843)

Internal

  • Deserializing SentryEvents with Decodable (#4724)
  • Remove internal unknown dict for Breadcrumbs (#4803) This potentially only impacts hybrid SDKs.

8.44.0

30 Jan 17:19
Compare
Choose a tag to compare

Warning

We have been made aware that this version can cause crashes in certain configurations when using network tracking, file I/O tracking, or CoreData tracking features.
We recommend staying on version 8.43.0 or disable the mentioned features until a fix is released.
See issue #4887 for more details.

Fixes

  • Don't start the SDK inside Xcode preview (#4601)
  • Use strlcpy to save session replay info path (#4740)
  • sentryReplayUnmask and sentryReplayUnmask preventing interaction (#4749)
  • Missing SentryCrashExceptionApplication implementation for non-macOS target (#4759)
  • Add NSNull handling to sentry_sanitize (#4760)

Improvements

  • Add native SDK information in the replay option event (#4663)
  • Add error logging for invalid cacheDirectoryPath (#4693)
  • Add SentryHub to all log messages in the Hub (#4753)
  • More detailed log message when can't start session in SentryHub (#4752)

Features

  • SwiftUI time for initial display and time for full display (#4596)
  • Add protocol for custom screenName for UIViewControllers (#4646)
  • Allow hybrid SDK to set replay options tags information (#4710)
  • Add threshold to always log fatal logs (#4707)

Internal

  • Change macros TEST and TESTCI to SENTRY_TEST and SENTRY_TEST_CI (#4712)
  • Convert constants SentrySpanOperation to Swift (#4718)
  • Convert constants SentryTraceOrigins to Swift (#4717)

8.44.0-beta.1

21 Jan 15:53
Compare
Choose a tag to compare
8.44.0-beta.1 Pre-release
Pre-release

Warning

We have been made aware that this version can cause crashes in certain configurations when using network tracking, file I/O tracking, or CoreData tracking features.
We recommend staying on version 8.43.0 or disable the mentioned features until a fix is released.
See issue #4887 for more details.

Fixes

  • Don't start the SDK inside Xcode preview (#4601)

Improvements

  • Add native SDK information in the replay option event (#4663)
  • Add error logging for invalid cacheDirectoryPath (#4693)

Features

  • SwiftUI time for initial display and time for full display (#4596)
  • Add protocol for custom screenName for UIViewControllers (#4646)
  • Allow hybrid SDK to set replay options tags information (#4710)
  • Add threshold to always log fatal logs (#4707)

Internal

  • Change macros TEST and TESTCI to SENTRY_TEST and SENTRY_TEST_CI (#4712)
  • Convert constants SentrySpanOperation to Swift (#4718)
  • Convert constants SentryTraceOrigins to Swift (#4717)

8.43.1-beta.0

10 Jan 14:33
Compare
Choose a tag to compare
8.43.1-beta.0 Pre-release
Pre-release

Warning

We have been made aware that this version can cause crashes in certain configurations when using network tracking, file I/O tracking, or CoreData tracking features.
We recommend staying on version 8.43.0 or disable the mentioned features until a fix is released.
See issue #4887 for more details.

Fixes

  • Memory growth issue in profiler (#4682)
  • Replace occurences of strncpy with strlcpy (#4636)
  • Fix span recording for NSFileManager.createFileAtPath starting with iOS 18, macOS 15 and tvOS 18. This feature is experimental and must be enabled by setting the option experimental.enableFileManagerSwizzling to true (#4634)

Internal

  • Update to Xcode 16.2 in workflows (#4673)
  • Add method unswizzling (#4647)

8.43.0 (Stable)

02 Jan 16:09
Compare
Choose a tag to compare

Warning

This release contains a breaking change for the previously experimental session replay options. We moved the options from options.experimental.sessionReplay to options.sessionReplay.

Features

  • Session replay GA (#4662)
  • Show session replay options as replay tags (#4639)

Fixes

  • Remove empty session replay tags (#4667)
  • SentrySdkInfo.packages should be an array (#4626)
  • Use the same SdkInfo for envelope header and event (#4629)

Improvements

  • Improve compiler error message for missing Swift declarations due to APPLICATION_EXTENSION_API_ONLY (#4603)
  • Mask screenshots for errors (#4623)
  • Slightly speed up serializing scope (#4661)

Internal

  • Remove loading integrations names from event.extra (#4627)
  • Add Hybrid SDKs API to add extra SDK packages (#4637)

8.43.0-beta.1

23 Dec 13:04
Compare
Choose a tag to compare
8.43.0-beta.1 Pre-release
Pre-release

Improvements

  • Improve compiler error message for missing Swift declarations due to APPLICATION_EXTENSION_API_ONLY (#4603)
  • Mask screenshots for errors (#4623)
  • Slightly speed up serializing scope (#4661)

Features

  • Show session replay options as replay tags (#4639)

Fixes

  • SentrySdkInfo.packages should be an array (#4626)
  • Use the same SdkInfo for envelope header and event (#4629)

Internal

  • Remove loading integrations names from event.extra (#4627)
  • Add Hybrid SDKs API to add extra SDK packages (#4637)

8.42.1

20 Dec 10:22
Compare
Choose a tag to compare

Fixes

  • Fixes Session replay screenshot provider crash (#4649)
  • Session Replay wrong clipping order (#4651)

8.42.0

17 Dec 10:11
Compare
Choose a tag to compare

Features

  • Add in_foreground app context to transactions (#4561)
  • Add in_foreground app context to crash events ((#4584)
  • Promote the option performanceV2 from experimental to stable (#4564)

Fixes

  • Session replay touch tracking race condition (#4548)
  • Use options.reportAccessibilityIdentifier for Breadcrumbs and UIEvents (#4569)
  • Session replay transformed view masking (#4529)
  • Load integration from same binary (#4541)
  • Masking for fast animations (#4574)
  • Fix GraphQL context for HTTP client error tracking (#4567)

Improvements

  • impr: Speed up getBinaryImages V2 (#4539). Follow up on (#4435)
  • Make SentryId Sendable (#4553)
  • Expose Sentry._Hybrid explicit module (#4440)
  • Track adoption of enablePersistingTracesWhenCrashing (#4587)