Features
- Add experimental MetricKit hang flame graph attachments via
options.experimental.metrickit.hangReportingMode = .flamegraphAttachment, also available throughSentryObjC. The default.legacymode reports the flattened call stack tree, which is also retained when flame graph attachment creation fails (#9347)
This feature is not fully available yet and under active development. Please reach out if you want early access.
Fixes
- Resolve the application state at
UIApplicationDidFinishLaunchingNotificationwhen the SDK starts beforeUIApplicationexists, such as from a SwiftUIApp.init. A process launched in the background was treated as active for its whole lifetime, which let the app hang tracker report fatal app hangs with an idle main thread (#8988) - Keep the UI profiler running when
SentrySDK.startProfiler()is called before a requested stop takes effect at the end of the current chunk (#9401) - Increase the crash report read limit in SentryCrash to 20 MB (#9386)
- Stop applying the current scope, app state and mutable device data to MetricKit events from an earlier app run. These events carry the app and OS versions of the diagnostic and the stable device attributes, while breadcrumbs, user, tags, extras, scope attachments and the current replay stay out. Diagnostics recorded by the running process keep the scope data (#9297)
Internal
- Add scope and debug image serialization APIs for hybrid SDKs through
SentrySDK.internal.serializerandSentryObjCSDK.internal.serializer(#9403).
The publicSentrySerializableprotocol andserialize()methods will be removed in the next major release.