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
Support for --obfuscate
and --split-debug-info
for iOS/macOS apps
#444
Comments
Hi Folks from Sentry and Dart teams, This problem is in a bit of a hot potato state... The Sentry team:
while the Dart team:
It is fair to assume that due to this state, the problem will not be resolved anytime soon, unless some team opens up for a compromise. Since the debugging symbols produced for iOS are compatible with the Linux binary format (assuming I understood the various conversations correctly), would it be possible for Sentry to allow us to mark given crash as coming from Flutter, and de-symbolicate reports like these using the android toolchain, regardless of platform (iOS or Android)? Alternatively, if I'm understanding this wrong, would you reconsider using the flutter symbolise tool in the interim? Or adding a webhook or something that allows us to integrate with any pre- or post- processing flow? All in all, it's getting difficult to treat flutter as a platform for "large scale", not-a-proof-of-concept products. You cannot expect developers to manually de-symbolicate every crash - it scales terribly. Also, due to the size of the runtime, removal of debugging symbols and obfuscation is really a must rather than nice to have. Thanks, |
@jan-auer can we shell out to |
I followed up on dart-lang/sdk#43612 tldr; is that Flutter CLI can be changed to produce necessary dSYMs. No changes in Dart compilation toolchain are required. I have provided the prototype of necessary changes - just looking for somebody to take it over the finishing line, which means clean it up, fix |
@mraleph thanks a lot for your feedback and prototype, we'll take a look into it. |
Hi, is there any updates? This is quite important and commonly used! Thanks! |
@marandaneto Have you guys had a chance to look into @mraleph 's prototype? Can you clarify Dart's intent here? Do you plan to incorporate this changes or is it shelved and ghosted in a hope that folks stop complaining? :) |
it's part of our Q4 (which ends at the end of January) plan but we're not there yet. We'll need some guidance from the Flutter/Dart team since all the patches are in there and not in sentry itself. @t-kozak sentry, dart, and flutter are also open-source, feel free to open PRs as well, you can help us out on that if you have some urgency. |
Hey @marandaneto thanks for the heads up. Q4 sounds good. I honestly thought this is more on Flutter side than yours. Thanks for your hard work! |
@t-kozak it is on the Dart and Flutter side of things, but we'll try to submit patches as suggested here #444 (comment) |
Related either for better Android or iOS support. |
Looking forward to updates! |
Flutter PR flutter/flutter#101586 and Dart PR dart-lang/sdk#48767 |
--obfuscate
and --split-debug-info
for iOS apps--obfuscate
and --split-debug-info
for iOS/macOS apps
The latest PR is https://dart-review.googlesource.com/c/sdk/+/250381 |
And another one: https://dart-review.googlesource.com/c/sdk/+/251464 |
I see that the PRs were merged? So are we now able to upload debug files for flutter builds with |
No, that's far from done. Only the PR to get the needed functionality to the Dart SDK is merged now. There still need to be changes in Flutter (flutter/flutter#101586) which will also need to come out in a release after they're done and merged, of course, then there's a PR in the sentry-dart SDK (#823). |
Thanks a lot for the clarification. Actively following the progress on the issue. |
There's seem to be some movement from the Dart team too: dart-lang/sdk@24683da |
I've added missing tests in the Flutter PR and then tried macOS which shares some of the code and it didn't work. Tess Strickland is making changes in the dart SDK to support parsing multi-architecture dSYM mach-o & symbolicate stack traces which also missed the architecture info. After that's done, the Flutter PR is hopefully not far from completion. |
The Flutter tool PR is being merged now so unless something prevents that, the dSYM generation be available soon on the master channel. I'm updating the sentry-dart PR so we'll be ready to work with that. |
Thanks for the update @vaind |
Hi guy, I cannot make it works guys :'( 1- Inaccuracies I saw on the documentation
2- My issueNote
Issue
QuestionIs there an issue with the way I build my flutter app (maybe the expected split-debug-info files are really dSYM files?)? Thanks in advance! <3 |
This issue is to track the support for
--obfuscate
and--split-debug-info
on iOS apps.The original request was done on the flutter/flutter issue tracker and since then, Android support was added to Sentry.
For this to happen, Sentry expect symbols on iOS to be in a 'standard' format for that platform. Namely Mach-O files.
The request for the Dart team for this support is tracked here.
Support for desktop is tracked separately, here.
The text was updated successfully, but these errors were encountered: