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
fix: App start ends when first frame is drawn #3530
Conversation
SentryAppStartMeasurement is only plublic for hybrid SDKs since #2458. Therefore, we can remove the deprecated init method.
When performanceV2 is enabled, the app start ends when the app draws the first frame instead of when it receives the UIWindowDidBecomeVisibleNotification.
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #3530 +/- ##
=============================================
+ Coverage 89.159% 89.258% +0.098%
=============================================
Files 528 528
Lines 57527 57600 +73
Branches 20609 20630 +21
=============================================
+ Hits 51291 51413 +122
- Misses 5200 5276 +76
+ Partials 1036 911 -125
... and 39 files with indirect coverage changes Continue to review full report in Codecov by Sentry.
|
Performance metrics 🚀
|
Revision | Plain | With Sentry | Diff |
---|---|---|---|
ab0012c | 1209.06 ms | 1228.78 ms | 19.72 ms |
51307b7 | 1223.08 ms | 1240.76 ms | 17.68 ms |
15cf6bf | 1241.06 ms | 1248.18 ms | 7.12 ms |
3437454 | 1254.04 ms | 1259.50 ms | 5.46 ms |
25bcc50 | 1209.53 ms | 1224.86 ms | 15.33 ms |
984eb2d | 1220.62 ms | 1235.24 ms | 14.62 ms |
d80d410 | 1231.50 ms | 1240.14 ms | 8.64 ms |
7192d9e | 1221.86 ms | 1248.28 ms | 26.42 ms |
7bb0873 | 1215.65 ms | 1235.00 ms | 19.35 ms |
e7b566f | 1199.57 ms | 1218.76 ms | 19.19 ms |
App size
Revision | Plain | With Sentry | Diff |
---|---|---|---|
ab0012c | 22.85 KiB | 415.09 KiB | 392.24 KiB |
51307b7 | 22.85 KiB | 407.63 KiB | 384.78 KiB |
15cf6bf | 22.85 KiB | 405.38 KiB | 382.53 KiB |
3437454 | 22.85 KiB | 408.87 KiB | 386.02 KiB |
25bcc50 | 20.76 KiB | 427.22 KiB | 406.46 KiB |
984eb2d | 20.76 KiB | 425.77 KiB | 405.01 KiB |
d80d410 | 20.76 KiB | 425.71 KiB | 404.95 KiB |
7192d9e | 20.76 KiB | 431.71 KiB | 410.95 KiB |
7bb0873 | 22.85 KiB | 407.09 KiB | 384.24 KiB |
e7b566f | 22.85 KiB | 414.80 KiB | 391.95 KiB |
47bde7f
to
6d4738f
Compare
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.
LGTM
Just wondering what's the relevance of this now that it aligns with TTID, both info will be always the same.
Yeah, I had the same thought. I don't think this is necessarily bad, but it's redundant. Maybe we need a different concept for app starts. I will keep this in the back of my head and bring it up in our Mobile Starfish discussions. |
Instructions and example for changelogPlease add an entry to Example: ## Unreleased
- App start ends when first frame is drawn ([#3530](https://github.com/getsentry/sentry-cocoa/pull/3530)) If none of the above apply, you can opt out of this check by adding |
When performanceV2 is enabled, the app start ends when the app draws the first frame instead of when it receives the
UIWindowDidBecomeVisibleNotification.
This PR is based on #3525.
📜 Description
💡 Motivation and Context
This the change requested in #3461, but in a non-breaking way behind the feature flag
performanceV2
.💚 How did you test it?
Unit tests and simulator.
📝 Checklist
You have to check all boxes before merging:
sendDefaultPII
is enabled.🔮 Next steps