-
-
Notifications
You must be signed in to change notification settings - Fork 354
chore(deps): update Cocoa SDK to v9.0.0 #5417
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
c5bf125 to
3965923
Compare
antonis
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will be handled in #5356
f5b64f9 to
b1a2479
Compare
60a2e78 to
aae81fc
Compare
aae81fc to
df48710
Compare
| s.compiler_flags = other_cflags | ||
|
|
||
| s.dependency 'Sentry/HybridSDK', '8.57.3' | ||
| s.dependency 'Sentry/HybridSDK', '9.0.0' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bug: Uses setExtraValue:forKey: which was removed in Sentry Cocoa SDK v9.0.0, causing compilation or runtime failure.
Severity: CRITICAL | Confidence: High
🔍 Detailed Analysis
The setExtra bridge method in packages/core/ios/RNSentry.mm at line 788 attempts to call [scope setExtraValue:extra forKey:key]; on SentryScope. This method was removed from the Sentry Cocoa SDK in v9.0.0. This will result in a compilation error, or a runtime crash with an unrecognized selector exception if the setExtra() JavaScript API is invoked.
💡 Suggested Fix
Replace the call to [scope setExtraValue:extra forKey:key]; with [scope setContextValue:extra forKey:@"extra"]; to align with the Sentry Cocoa SDK v9.0.0 API.
🤖 Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent.
Verify if this is a real issue. If it is, propose a fix; if not, explain why it's not
valid.
Location: packages/core/RNSentry.podspec#L49
Potential issue: The `setExtra` bridge method in `packages/core/ios/RNSentry.mm` at line
788 attempts to call `[scope setExtraValue:extra forKey:key];` on `SentryScope`. This
method was removed from the Sentry Cocoa SDK in v9.0.0. This will result in a
compilation error, or a runtime crash with an unrecognized selector exception if the
`setExtra()` JavaScript API is invoked.
Did we get this right? 👍 / 👎 to inform future reviews.
Reference ID: 6493501
Bumps scripts/update-cocoa.sh from 8.57.3 to 9.0.0.
Auto-generated by a dependency updater.
Changelog
9.0.0
This changelog lists every breaking change. For a high-level overview and upgrade guidance, see the migration guide.
Breaking Changes
SentryEventDecoderto SPI (#6365)PreviewRedactOptions,SentryProfileOptions,SentryRedactViewHelper,SentryViewScreenshotOptions,SentryReplayOptions,SentryUserFeedbackConfiguration,SentryUserFeedbackFormConfiguration,SentryUserFeedbackThemeConfiguration,SentryUserFeedbackWidgetConfiguration,SentryFeedback, andSentryExperimentalOptionsfinal(#6365)setExtraValuefrom SentrySpan (#5864)integrationsproperty fromSentryOptions(#5749)defaultIntegrationsfunction fromSentryOptions(#6664)SentryEventDecodableinternal (#5808)spanproperty onSentryScopeis now readonly (#5866)SentryIntegrationProtocolfrom the API. This is not used after the removal of theintegrationsproperty (#6660)enablePerformanceV2option and makes this the default. The app start duration will now finish when the first frame is drawn instead of when the OS posts the UIWindowDidBecomeVisibleNotification. (#6008)SentryFrame.instructionproperty (#6504)uuidandnameofSentryDebugMeta(#6512) UsedebugIDinstead ofuuidandcodeFileinstead ofname.SentryFrame.functiondefault tonilinstead of<redacted>(#6608)valueandtypeofSentryExceptionto be nullable (#6563)getHashfrom SentryDsn (#6605)If you need a precompiled XCFramework built with Xcode 15, continue using Sentry SDK 8.x.x.
SentryException.typetonilwhenNSExceptionhas noreason(#6653). The backend then can provide a proper message when there is no reason.SentryLog.LevelandSentryLog.Attributefor ObjC (#6666)SentryFeedbackinitializer to support multiple attachments (#6752)These components run in separate processes or sandboxes with different execution characteristics, which can cause false positive app hang reports.
SentryLevelenum to be written in ObjC (#6802)http.response.status_codefor spans to int (#6896)Features
enablePropagateTraceparentto support OTel/W3C trace propagation (#6356)enableFileManagerSwizzlingfrom experimental options to top-level options (#6592).This option is still disabled by default and will be enabled in a future major release.
enableDataSwizzlingfrom experimental options to top-level options (#6592). This option remains enabled by default.sentry.replay_idattribute to logs (#6515)HubandClient(#6737)Fixes
SentryMechanismMetatoSentryMechanismContextto resolve Kotlin Multi-Platform build errors (#6607)SentryCppHelperto Sentry (#6754)beforeSend(#6910)Improvements
SentryAttachmentfor downstream SDKs (like sentry-godot) (#6521)9.0.0-rc.1
Breaking Changes
SentryEventDecoderto SPI (#6365)PreviewRedactOptions,SentryProfileOptions,SentryRedactViewHelper,SentryViewScreenshotOptions,SentryReplayOptions,SentryUserFeedbackConfiguration,SentryUserFeedbackFormConfiguration,SentryUserFeedbackThemeConfiguration,SentryUserFeedbackWidgetConfiguration,SentryFeedback, andSentryExperimentalOptionsfinal(#6365)setExtraValuefrom SentrySpan (#5864)integrationsproperty fromSentryOptions(#5749)defaultIntegrationsfunction fromSentryOptions(#6664)SentryEventDecodableinternal (#5808)spanproperty onSentryScopeis now readonly (#5866)SentryIntegrationProtocolfrom the API. This is not used after the removal of theintegrationsproperty (#6660)enablePerformanceV2option and makes this the default. The app start duration will now finish when the first frame is drawn instead of when the OS posts the UIWindowDidBecomeVisibleNotification. (#6008)SentryFrame.instructionproperty (#6504)uuidandnameofSentryDebugMeta(#6512) UsedebugIDinstead ofuuidandcodeFileinstead ofname.SentryFrame.functiondefault tonilinstead of<redacted>(#6608)valueandtypeofSentryExceptionto be nullable (#6563)getHashfrom SentryDsn (#6605)If you need a precompiled XCFramework built with Xcode 15, continue using Sentry SDK 8.x.x.
SentryException.typetonilwhenNSExceptionhas noreason(#6653). The backend then can provide a proper message when there is no reason.SentryLog.LevelandSentryLog.Attributefor ObjC (#6666)SentryFeedbackinitializer to support multiple attachments (#6752)These components run in separate processes or sandboxes with different execution characteristics, which can cause false positive app hang reports.
SentryLevelenum to be written in ObjC (#6802)Features
enablePropagateTraceparentto support OTel/W3C trace propagation (#6356)enableFileManagerSwizzlingfrom experimental options to top-level options (#6592).This option is still disabled by default and will be enabled in a future major release.
enableDataSwizzlingfrom experimental options to top-level options (#6592). This option remains enabled by default.sentry.replay_idattribute to logs (#6515)HubandClient(#6737)Fixes
SentryMechanismMetatoSentryMechanismContextto resolve Kotlin Multi-Platform build errors (#6607)SentryCppHelperto Sentry (#6754)Improvements
SentryAttachmentfor downstream SDKs (like sentry-godot) (#6521)9.0.0-rc.0
Breaking Changes
SentryEventDecoderto SPI (#6365)PreviewRedactOptions,SentryProfileOptions,SentryRedactViewHelper,SentryViewScreenshotOptions,SentryReplayOptions,SentryUserFeedbackConfiguration,SentryUserFeedbackFormConfiguration,SentryUserFeedbackThemeConfiguration,SentryUserFeedbackWidgetConfiguration,SentryFeedback, andSentryExperimentalOptionsfinal(#6365)setExtraValuefrom SentrySpan (#5864)integrationsproperty fromSentryOptions(#5749)defaultIntegrationsfunction fromSentryOptions(#6664)SentryEventDecodableinternal (#5808)spanproperty onSentryScopeis now readonly (#5866)SentryIntegrationProtocolfrom the API. This is not used after the removal of theintegrationsproperty (#6660)enablePerformanceV2option and makes this the default. The app start duration will now finish when the first frame is drawn instead of when the OS posts the UIWindowDidBecomeVisibleNotification. (#6008)SentryFrame.instructionproperty (#6504)uuidandnameofSentryDebugMeta(#6512) UsedebugIDinstead ofuuidandcodeFileinstead ofname.SentryFrame.functiondefault tonilinstead of<redacted>(#6608)valueandtypeofSentryExceptionto be nullable (#6563)getHashfrom SentryDsn (#6605)If you need a precompiled XCFramework built with Xcode 15, continue using Sentry SDK 8.x.x.
SentryException.typetonilwhenNSExceptionhas noreason(#6653). The backend then can provide a proper message when there is no reason.SentryLog.LevelandSentryLog.Attributefor ObjC (#6666)SentryFeedbackinitializer to support multiple attachments (#6752)These components run in separate processes or sandboxes with different execution characteristics, which can cause false positive app hang reports.
SentryLevelenum to be written in ObjC (#6802)Features
enablePropagateTraceparentto support OTel/W3C trace propagation (#6356)enableFileManagerSwizzlingfrom experimental options to top-level options (#6592).This option is still disabled by default and will be enabled in a future major release.
enableDataSwizzlingfrom experimental options to top-level options (#6592). This option remains enabled by default.sentry.replay_idattribute to logs (#6515)HubandClient(#6737)Fixes
SentryMechanismMetatoSentryMechanismContextto resolve Kotlin Multi-Platform build errors (#6607)SentryCppHelperto Sentry (#6754)Improvements
SentryAttachmentfor downstream SDKs (like sentry-godot) (#6521)9.0.0-alpha.1
Breaking Changes
SentryEventDecoderto SPI (#6365)PreviewRedactOptions,SentryProfileOptions,SentryRedactViewHelper,SentryViewScreenshotOptions,SentryReplayOptions,SentryUserFeedbackConfiguration,SentryUserFeedbackFormConfiguration,SentryUserFeedbackThemeConfiguration,SentryUserFeedbackWidgetConfiguration,SentryFeedback, andSentryExperimentalOptionsfinal(#6365)setExtraValuefrom SentrySpan (#5864)integrationsproperty fromSentryOptions(#5749)defaultIntegrationsfunction fromSentryOptions(#6664)SentryEventDecodableinternal (#5808)spanproperty onSentryScopeis now readonly (#5866)SentryIntegrationProtocolfrom the API. This is not used after the removal of theintegrationsproperty (#6660)enablePerformanceV2option and makes this the default. The app start duration will now finish when the first frame is drawn instead of when the OS posts the UIWindowDidBecomeVisibleNotification. (#6008)SentryFrame.instructionproperty (#6504)uuidandnameofSentryDebugMeta(#6512) UsedebugIDinstead ofuuidandcodeFileinstead ofname.SentryFrame.functiondefault tonilinstead of<redacted>(#6608)valueandtypeofSentryExceptionto be nullable (#6563)getHashfrom SentryDsn (#6605)If you need a precompiled XCFramework built with Xcode 15, continue using Sentry SDK 8.x.x.
SentryException.typetonilwhenNSExceptionhas noreason(#6653). The backend then can provide a proper message when there is no reason.SentryLog.LevelandSentryLog.Attributefor ObjC (#6666)SentryFeedbackinitializer to support multiple attachments (#6752)Fixes
SentryMechanismMetatoSentryMechanismContextto resolve Kotlin Multi-Platform build errors (#6607)SentryCppHelperto Sentry (#6754)Improvements
SentryAttachmentfor downstream SDKs (like sentry-godot) (#6521)Features
enablePropagateTraceparentto support OTel/W3C trace propagation (#6356)enableFileManagerSwizzlingfrom experimental options to top-level options (#6592).This option is still disabled by default and will be enabled in a future major release.
enableDataSwizzlingfrom experimental options to top-level options (#6592). This option remains enabled by default.sentry.replay_idattribute to logs (#6515)HubandClient(#6737)9.0.0-alpha.0
Breaking Changes
SentryEventDecoderto SPI (#6365)PreviewRedactOptions,SentryProfileOptions,SentryRedactViewHelper,SentryViewScreenshotOptions,SentryReplayOptions,SentryUserFeedbackConfiguration,SentryUserFeedbackFormConfiguration,SentryUserFeedbackThemeConfiguration,SentryUserFeedbackWidgetConfiguration,SentryFeedback, andSentryExperimentalOptionsfinal(#6365)setExtraValuefrom SentrySpan (#5864)integrationsproperty fromSentryOptions(#5749)defaultIntegrationsfunction fromSentryOptions(#6664)SentryEventDecodableinternal (#5808)SentryIntegrationProtocolfrom the API. This is not used after the removal of theintegrationsproperty (#6660)debug=Truewhich fixes various deadlocks (#6562)enablePerformanceV2option and makes this the default. The app start duration will now finish when the first frame is drawn instead of when the OS posts the UIWindowDidBecomeVisibleNotification. (#6008)SentryFrame.instructionproperty (#6504)uuidandnameofSentryDebugMeta(#6512) UsedebugIDinstead ofuuidandcodeFileinstead ofname.SentryFrame.functiondefault tonilinstead of<redacted>(#6608)valueandtypeofSentryExceptionto be nullable (#6563)getHashfrom SentryDsn (#6605)If you need a precompiled XCFramework built with Xcode 15, continue using Sentry SDK 8.x.x.
SentryException.typetonilwhenNSExceptionhas noreason(#6653). The backend then can provide a proper message when there is no reason.SentryLog.LevelandSentryLog.Attributefor ObjC (#6666)Fixes
SentryMechanismMetatoSentryMechanismContextto resolve Kotlin Multi-Platform build errors (#6607)Improvements
SentryAttachmentfor downstream SDKs (like sentry-godot) (#6521)Features
enablePropagateTraceparentto support OTel/W3C trace propagation (#6356)enableFileManagerSwizzlingfrom experimental options to top-level options (#6592).This option is still disabled by default and will be enabled in a future major release.
enableDataSwizzlingfrom experimental options to top-level options (#6592). This option remains enabled by default.sentry.replay_idattribute to logs (#6515)