Files
sdk/pkg/compiler/lib
Nate Biggs 1841a8d9a4 [dart2js] Add support for tree shaking protobuf messages with mixins.
Typically these mixins introduce additional reflective features on the messages extending them. This made it unfavorable to tree shake fields on these messages.

However, some customers have tooling that makes it so the set of messages/fields accessed reflectively through mixins is statically known. Therefore, they can inject special code to retain those messages/fields and still benefit from treeshaking on the rest of the fields in those messages.

This is a separate flag because it introduces new opportunities for breakages that users may want to roll out separately.

Testing on an internal build showed an additional ~2.8% code size reduction from this additional tree shaking.

Change-Id: I6bbe6209acc26f8e8904c81f6960b71e4b516f25
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/414820
Reviewed-by: Mayank Patke <fishythefish@google.com>
Commit-Queue: Nate Biggs <natebiggs@google.com>
2025-03-11 18:11:49 -07:00
..