flutter / devtools

Performance tools for Flutter
https://flutter.dev/docs/development/tools/devtools/
BSD 3-Clause "New" or "Revised" License
1.59k stars 327 forks source link

Trim mixins from stack frame names in debugger #707

Open kenzieschmoll opened 5 years ago

kenzieschmoll commented 5 years ago

In the timeline, we were getting extremely long class names for stack frames. _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback

The important information here would be _WidgetsFlutterBinding._handlePersistentFrameCallback, and is what we show in the profiler UI as of https://github.com/flutter/devtools/pull/706.

We may have a similar issue in the debugger UI, and should address it there as well.

jacob314 commented 5 years ago

Fyi @bkonyi We should really fix this in the VM itself as these long names just confuse users.

kenzieschmoll commented 5 years ago

Original issue for that here: https://github.com/dart-lang/sdk/issues/36999

bkonyi commented 5 years ago

@jacob314, as discussed in dart-lang/sdk#36999 this isn't something we're planning on doing in the VM itself. However, this could be some functionality that lives in package:vmservice. If the VM team eventually takes over that package once we've gotten everyone off of using private APIs, we'd be happy to add it there.

jacob314 commented 5 years ago

Let me follow up on the dart-sdk issue. The key point is the names with & are a misfeature and we should modify the VM so it never generates those names in the first place. I'll update the SDK bug ccing interested language team members.