diff --git a/modules/sentry-cocoa b/modules/sentry-cocoa index 4bb2282661..2f64c77f77 160000 --- a/modules/sentry-cocoa +++ b/modules/sentry-cocoa @@ -1 +1 @@ -Subproject commit 4bb2282661ee6ca2212aa01d19a1214394cd3c45 +Subproject commit 2f64c77f77514acd01780d1aac86ae75b7fccd04 diff --git a/scripts/patch-cocoa-bindings.cs b/scripts/patch-cocoa-bindings.cs index f9d156ddff..2afa6c9e40 100644 --- a/scripts/patch-cocoa-bindings.cs +++ b/scripts/patch-cocoa-bindings.cs @@ -83,6 +83,8 @@ .RemoveProperty("SentryObjCOptions", "BeforeSendWithHint") .RemoveProperty("SentryObjCOptions", "BeforeBreadcrumbWithHint") .RemoveProperty("SentryObjCOptions", "ConfigureProfiling") + // Experimental MetricKit options; bind SentryObjCMetricKitOptions too if .NET ever exposes MetricKit. + .RemoveProperty("SentryObjCExperimentalOptions", "Metrickit") // SentryObjCSDK is both the public entry point and the hybrid-SDK gateway (via `internal`). // Keep the public members the .NET SDK calls plus the `internal` accessor; drop the rest, whose // signatures reference SentryObjC* types we don't whitelist. diff --git a/src/Sentry.Bindings.Cocoa/ApiDefinition.cs b/src/Sentry.Bindings.Cocoa/ApiDefinition.cs index fb657dff8f..cf57715f92 100644 --- a/src/Sentry.Bindings.Cocoa/ApiDefinition.cs +++ b/src/Sentry.Bindings.Cocoa/ApiDefinition.cs @@ -1271,6 +1271,7 @@ interface SentryObjCTraceContext [Internal] interface SentryObjCExperimentalOptions { + // @property (nonatomic) BOOL enableUnhandledCPPExceptionsV2; [Export("enableUnhandledCPPExceptionsV2")] bool EnableUnhandledCPPExceptionsV2 { get; set; } @@ -1805,6 +1806,14 @@ interface SentryObjCInternalSdkApi [Internal] interface SentryObjCInternalSerializerApi { + // -(NSDictionary * _Nonnull)serializeScope:(SentryObjCScope * _Nonnull)scope; + [Export("serializeScope:")] + NSDictionary SerializeScope(SentryObjCScope scope); + + // -(NSDictionary * _Nonnull)serializeDebugMeta:(SentryObjCDebugMeta * _Nonnull)debugMeta; + [Export("serializeDebugMeta:")] + NSDictionary SerializeDebugMeta(SentryObjCDebugMeta debugMeta); + // -(NSDictionary * _Nonnull)serializeEvent:(SentryObjCEvent * _Nonnull)event; [Export("serializeEvent:")] NSDictionary SerializeEvent(SentryObjCEvent @event); diff --git a/src/Sentry.Bindings.Cocoa/StructsAndEnums.cs b/src/Sentry.Bindings.Cocoa/StructsAndEnums.cs index f974ee79a4..6954c0e143 100644 --- a/src/Sentry.Bindings.Cocoa/StructsAndEnums.cs +++ b/src/Sentry.Bindings.Cocoa/StructsAndEnums.cs @@ -121,6 +121,13 @@ internal enum SentryObjCRedactRegionType : long RedactSwiftUI } +[Native] +internal enum SentryObjCMetricKitHangReportingMode : long +{ + Legacy = 0, + FlamegraphAttachment = 1 +} + [Native] internal enum SentryObjCSwizzleMode : long {