Skip to content

dartdoc runs too long - possible patterns #2615

Closed
@isoos

Description

@isoos

We've started to track dartdoc run elapsed times on pub.dev, and on the recent runtimes, the following patterns emerged:

  • The top-1000 slowest runs were using Flutter SDK 94.2% of the time (89% in top-100).

  • The longest to generate is package:colorz which only has a single (but long) Dart file and a simple class reference pattern. It seems that there may be some opportunities for improvements there by caching some calculations wrt. the Color reference? Random sampling of slow packages shows that similar patterns (e.g. single file with lots of int const values).

  • Another slow pattern is having a large number of public libraries like in package:ews.

  • A more surprising pattern seems to be in package:niku, where both the number of libraries and the source code is relatively small, but uses extension methods a lot.

I've attached the list of slow packages to this issue, in the order of decreasing run times: slow.txt

The above patterns were observed with "dart": "2.12.2", "flutter": "2.0.4", "dartdoc": "0.42.0".

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2A bug or feature request we're likely to work ontype-enhancementA request for a change that isn't a bugtype-performanceIssues related to slow dartdoc generation.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions