fix(cocoa): crash when cancelling an in-flight NSURLSessionTask with native swizzling enabled - #5596
Merged
Merged
Conversation
bruno-garcia
force-pushed
the
deps/modules/sentry-cocoa
branch
from
September 18, 2026 03:01
b536e8a to
51c903a
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #5596 +/- ##
==========================================
- Coverage 74.85% 74.84% -0.01%
==========================================
Files 515 515
Lines 18963 18963
Branches 3694 3694
==========================================
- Hits 14194 14193 -1
- Misses 3891 3892 +1
Partials 878 878 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
jamescrosswell
approved these changes
Sep 18, 2026
jamescrosswell
left a comment
Collaborator
There was a problem hiding this comment.
Automated approval: eligibility script verdict MERGE (CI green, mergeable, no human change-request, no breaking-change language).
3 tasks
This was referenced Sep 21, 2026
This was referenced Sep 25, 2026
glitchedmob
added a commit
to sgfdevs/sgf.dev
that referenced
this pull request
Oct 1, 2026
Updated [MailKit](https://github.com/jstedfast/MailKit) from 4.18.0 to 4.18.1. <details> <summary>Release notes</summary> _Sourced from [MailKit's releases](https://github.com/jstedfast/MailKit/releases)._ No release notes found for this version range. Commits viewable in [compare view](https://github.com/jstedfast/MailKit/commits). </details> Updated [Sentry.AspNetCore](https://github.com/getsentry/sentry-dotnet) from 6.11.0 to 6.11.1. <details> <summary>Release notes</summary> _Sourced from [Sentry.AspNetCore's releases](https://github.com/getsentry/sentry-dotnet/releases)._ ## 6.11.1 ### Fixes 🐛 - fix(cocoa): iOS and Mac Catalyst apps no longer crash in `[NSURLSessionTask cancel]` when a request is cancelled after it has already completed with `Native.EnableSwizzling` enabled (Cocoa SDK v9.29.0). Note that native crashes now set `mechanism.synthetic`, so expect a one-time regrouping of existing crash issues as your app adopts this version. by @github-actions in [#5596](getsentry/sentry-dotnet#5596) ### Dependencies ⬆️ #### Deps - chore(deps): update Native SDK to v0.16.8 by @github-actions in [#5600](getsentry/sentry-dotnet#5600) - chore(deps): raise the OpenTelemetry floor to 1.12.0 by @jamescrosswell in [#5588](getsentry/sentry-dotnet#5588) - chore(deps): update Java SDK to v8.57.0 by @github-actions in [#5590](getsentry/sentry-dotnet#5590) - chore(deps): update CLI to v3.8.0 by @github-actions in [#5591](getsentry/sentry-dotnet#5591) - chore(deps): update Java SDK to v8.56.0 by @github-actions in [#5562](getsentry/sentry-dotnet#5562) - chore(deps): update Cocoa SDK to v9.28.0 by @github-actions in [#5561](getsentry/sentry-dotnet#5561) - chore(deps): update Native SDK to v0.16.6 by @github-actions in [#5563](getsentry/sentry-dotnet#5563) ### Other - test: add ASP.NET Core blocking detection integration tests by @z0rimo in [#5578](getsentry/sentry-dotnet#5578) Commits viewable in [compare view](getsentry/sentry-dotnet@6.11.0...6.11.1). </details> Updated [uSync](https://github.com/KevinJump/uSync) from 18.1.4 to 18.1.5. <details> <summary>Release notes</summary> _Sourced from [uSync's releases](https://github.com/KevinJump/uSync/releases)._ ## 18.1.5 ## Fixes * Imported block values match what Umbraco publishes, so invariant block editors holding culture-variant elements no longer show pending changes after import (#1098) * Keep the published cache current after content type imports on Umbraco 18.0–18.1: refresh the types that use a changed composition, and treat variance-only changes as structural. No effect from Umbraco 18.2 on (#1102) * Export culture codes in standard casing (`da-DK`), so files no longer change when Umbraco is upgraded (#1101) * The uSync History client loads the uSync client by its package name, so it resolves on case-sensitive file systems (#1105) ## Build and CI * Build the release, the nightly prerelease and the PR build once, in one job, on Linux (#1105) * Allow prerelease builds from any branch to publish to the nightly feed (#1099) * Stamp the nightly version as the informational version in prerelease builds (#1107) * Bump brace-expansion in usync-assets (#1100) Forward merges from v17/main: #1103, #1104, #1106, #1108. See [CHANGELOG.md](https://github.com/KevinJump/uSync/blob/v18/main/CHANGELOG.md#1815---2026-09-30) for details. **Full Changelog**: KevinJump/uSync@v18.1.4...v18.1.5 Commits viewable in [compare view](KevinJump/uSync@v18.1.4...v18.1.5). </details> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Levi Zitting <me@levizitting.com>
This was referenced Oct 1, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bumps modules/sentry-cocoa from 9.28.0 to 9.29.0.
Auto-generated by a dependency updater.
Changelog Entry
fix(cocoa): iOS and Mac Catalyst apps no longer crash in
[NSURLSessionTask cancel]when arequest is cancelled after it has already completed with
Native.EnableSwizzlingenabled(Cocoa SDK v9.29.0). Note that native crashes now set
mechanism.synthetic, so expect aone-time regrouping of existing crash issues as your app adopts this version.
Changelog
9.29.0
Warning
Native crashes now set
mechanism.synthetic, which takes the mach exception name (EXC_BAD_ACCESS) or signal name (SIGSEGV) out of the grouping hash. Expect a one-time regrouping as your app adopts this version: existing crash issues stop receiving events and new ones open. Crashes that differ only by signal at the same stacktrace now share one issue. The mach and signal detail stays onmechanism.meta.Fixes
[NSURLSessionTask cancel]when cancelling an in-flight task with swizzling enabled (#9009)replayIdwhen Session Replay is stopped manually, so events captured afterstop()are no longer linked to a replay that is no longer recording (#9017)machandsignalcrash mechanisms assyntheticso an Apple crash groups with the identical crash reported by the other Sentry SDKs (#9004)mechanism.handledtofalseon crash reports without mach context, which previously left it unset (#9004)Deprecations
options.enableMetricKit = true. TheappHangTimeoutIntervaloption remains supported for watchdog termination classification. (#8944)