-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Description
Flutter supports two sets of features around deferring code: (a) deferring chunks of Dart and (b) deferring the engine. The latter (b) is used, including in google3, to, quote "not pay 5mb when a 1000 screen app adds their first 1 Flutter screen". The former feature, however, is not known to have any internal use, and we suspect very little (or no) external use.
Feature overview:
- https://github.com/flutter/flutter/wiki/Deferred-Components
- https://docs.flutter.dev/perf/deferred-components
From talking to @jonahwilliams and in my own experiences spelunking through the flutter tool, deferred components is a complex feature that is almost not tested at all, and has implementation elements throughout most of the product - in the tool, framework, and engine. Deprecating and removing it would remove a significant source of haunted graveyard-style complexity, especially if the feature is not used or tested.
As a first step, I'll work with @andrewkolos to enable Google analytics tracking for this feature.