Skip to content

Conversation

@noahsmartin
Copy link
Contributor

This is a redo of #5459 in a way that makes no changes to the implementation, just creates the Swift wrapper that replaces the ObjC version to allow further migration to Swift

#skip-changelog

@noahsmartin noahsmartin force-pushed the wrapDispatchQueueWrapperSwift branch 3 times, most recently from a19cd41 to a12c848 Compare June 24, 2025 13:40
Copy link
Member

@philipphofmann philipphofmann left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, this looks way better than #5459 cause it's less risky. Thanks.

@github-actions
Copy link
Contributor

github-actions bot commented Jun 24, 2025

Performance metrics 🚀

  Plain With Sentry Diff
Startup time 1215.57 ms 1244.73 ms 29.16 ms
Size 23.75 KiB 860.87 KiB 837.12 KiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
5cfc768 1220.74 ms 1245.06 ms 24.32 ms
e64d3d4 1241.90 ms 1260.10 ms 18.20 ms
f92cfa9 1217.94 ms 1240.06 ms 22.12 ms
63ac649 1192.10 ms 1216.78 ms 24.68 ms
d637379 1226.43 ms 1250.77 ms 24.34 ms
f92cfa9 1228.45 ms 1251.33 ms 22.88 ms
8ea5293 1242.70 ms 1262.25 ms 19.55 ms
35c962f 1207.61 ms 1235.90 ms 28.29 ms
2691350 1224.92 ms 1255.82 ms 30.90 ms
2b02431 1229.63 ms 1248.98 ms 19.35 ms

App size

Revision Plain With Sentry Diff
5cfc768 23.75 KiB 850.73 KiB 826.98 KiB
e64d3d4 23.75 KiB 855.37 KiB 831.62 KiB
f92cfa9 23.75 KiB 855.38 KiB 831.63 KiB
63ac649 23.75 KiB 855.38 KiB 831.63 KiB
d637379 23.75 KiB 855.38 KiB 831.63 KiB
f92cfa9 23.75 KiB 855.38 KiB 831.62 KiB
8ea5293 23.75 KiB 852.24 KiB 828.49 KiB
35c962f 23.75 KiB 854.77 KiB 831.02 KiB
2691350 23.75 KiB 850.73 KiB 826.98 KiB
2b02431 23.75 KiB 850.73 KiB 826.98 KiB

Previous results on branch: wrapDispatchQueueWrapperSwift

Startup times

Revision Plain With Sentry Diff
b1424c9 1223.12 ms 1245.04 ms 21.92 ms
4cb5674 1224.50 ms 1248.70 ms 24.20 ms
a657085 1226.92 ms 1248.04 ms 21.12 ms
caa31a0 1227.37 ms 1248.69 ms 21.33 ms
ea47880 1226.88 ms 1251.48 ms 24.60 ms
02d61c0 1235.37 ms 1254.91 ms 19.55 ms

App size

Revision Plain With Sentry Diff
b1424c9 23.75 KiB 853.28 KiB 829.53 KiB
4cb5674 23.75 KiB 860.80 KiB 837.05 KiB
a657085 23.75 KiB 857.97 KiB 834.22 KiB
caa31a0 23.75 KiB 857.51 KiB 833.76 KiB
ea47880 23.75 KiB 857.96 KiB 834.21 KiB
02d61c0 23.75 KiB 853.27 KiB 829.53 KiB

@noahsmartin noahsmartin force-pushed the wrapDispatchQueueWrapperSwift branch 3 times, most recently from 55c28be to b636afc Compare June 25, 2025 12:56
@noahsmartin noahsmartin mentioned this pull request Jun 25, 2025
Copy link
Member

@philipphofmann philipphofmann left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, when CI is green.

@noahsmartin noahsmartin force-pushed the wrapDispatchQueueWrapperSwift branch from 6cbdd95 to 34a8573 Compare June 25, 2025 16:32
@github-actions
Copy link
Contributor

🚨 Detected changes in high risk code 🚨

High-risk code can easily blow up and is hard to test. We had severe bugs in the past. Be extra careful when changing these files, and have an extra careful look at these:

  • Sources/Sentry/SentryFileManager.m
  • Sources/Sentry/SentrySubClassFinder.m
  • Sources/Sentry/SentryUIViewControllerSwizzling.m

@codecov
Copy link

codecov bot commented Jun 25, 2025

Codecov Report

Attention: Patch coverage is 96.87500% with 2 lines in your changes missing coverage. Please review.

Project coverage is 86.289%. Comparing base (f97a070) to head (e1a0015).
Report is 6 commits behind head on main.

Files with missing lines Patch % Lines
...urces/Sentry/_SentryDispatchQueueWrapperInternal.m 84.615% 1 Missing and 1 partial ⚠️
Additional details and impacted files

Impacted file tree graph

@@              Coverage Diff              @@
##              main     #5472       +/-   ##
=============================================
+ Coverage   85.915%   86.289%   +0.373%     
=============================================
  Files          400       402        +2     
  Lines        34720     34908      +188     
  Branches     14959     15144      +185     
=============================================
+ Hits         29830     30122      +292     
+ Misses        4847      4743      -104     
  Partials        43        43               
Files with missing lines Coverage Δ
SentryTestUtils/TestDispatchFactory.swift 70.588% <ø> (ø)
...ntryTestUtils/TestSentryDispatchQueueWrapper.swift 89.830% <100.000%> (ø)
...urces/Sentry/Profiling/SentryContinuousProfiler.mm 91.176% <ø> (ø)
Sources/Sentry/Profiling/SentryLaunchProfiling.m 89.015% <ø> (ø)
...entry/Profiling/SentryProfiledTracerConcurrency.mm 92.760% <ø> (ø)
Sources/Sentry/Profiling/SentryProfilerState.mm 99.328% <ø> (ø)
Sources/Sentry/Profiling/SentryTraceProfiler.mm 95.522% <ø> (ø)
Sources/Sentry/SentryANRTrackerV1.m 99.206% <ø> (ø)
Sources/Sentry/SentryANRTrackerV2.m 98.863% <ø> (ø)
Sources/Sentry/SentryANRTrackingIntegration.m 99.378% <ø> (ø)
... and 33 more

... and 30 files with indirect coverage changes


Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update f97a070...e1a0015. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@noahsmartin noahsmartin merged commit b0e13a7 into main Jun 25, 2025
151 of 155 checks passed
@noahsmartin noahsmartin deleted the wrapDispatchQueueWrapperSwift branch June 25, 2025 21:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants