Optimize for larger doc sets #1983
Labels
customer-flutter
Issues originating from important to Flutter
P2
A bug or feature request we're likely to work on
type-performance
Issues related to slow dartdoc generation.
Semi-related to #1982
Today, dartdoc generates a full HTML page for each class, member, method, library, etc.
As of right now on Flutter, that's nearly 35,000 files and totals nearly 1GB of space (we further add to it by preparing offline versions as zip archives).
It should be possible to reduce that size by not repeating common content. All pages share a common footer and header, and most pages have very similar left hand navigation. For instance, every property of the
Icons
class has the same sidebar that lists all the other properties: https://master-api.flutter.dev/flutter/material/Icons/ac_unit-constant.html. Depending on how this is designed, it could have additional benefits such as not losing your scroll position in the left nav bar when jumping around class member definitions.Managing this amount of content has introduced flakiness in our CI process, which tries to upload all of this data for master-api.flutter.dev on every merge commit. Some of that pain could be reduced if we had something like a common HTML shell, and scripts that defined (statically) the content to be placed on the page.
For what it's worth, I understand this is not an entirely trivial change :)
The text was updated successfully, but these errors were encountered: