vm_snapshot_analysis
Utilities for analysing AOT snapshot size.
0.7.6
6.3M downloads/mo
#109 most downloaded on pub.dev
dart-lang/sdk
What this package is like to depend on
Last release 3 years ago
no release in 18 months
Release timing varies
gaps range from 9 days to 13 months
Nearly every release is documented
notes for 18 of 18 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
18 releases · first in 2020
0 releases in the last 12 months
see the full history below
Release timeline
18 releases · Jun 2020 to Jul 2023
2021
2022
2023
2024
2025
2026
Releases
latest 18-
0.7.607 Jul 2023Release notes
Open source →- Allow the old
'patched_class_'field forPatchClassuntil we change the SDK lower bound for this package to a version that does not have it.
- Allow the old
-
0.7.507 Jul 2023Release notes
Open source →- Fix for flutter/flutter#130009 where an attempt to lookup the owner info node for type testing stubs would cause a null check error.
-
0.7.404 Jul 2023Release notes
Open source →- Fix for flutter/flutter#128402 where an attempt to lookup the owner info node for type testing stubs would cause a null check error.
-
0.7.231 May 2022 -
0.7.131 Jan 2022 -
0.7.022 Apr 2021 -
0.6.018 Mar 2021 -
0.5.622 Feb 2021Release notes
Open source →- Fix for flutter/flutter#76313 causing issues with profiles containing WSRs serialized as smi-s instead of actual WSR objects.=
-
0.5.502 Sep 2020Release notes
Open source →- Add
deps-display-depth(-d) flag forsummarycommand to make the display depth of outputted dependency trees configurable. - Rename
deps-collapse-depth(formerly-d) flag forsummarycommand todeps-start-depth(now-s). - Add
generateCallGraphWithDominatorsmethod that generates aCallGraphobject from precompiler trace.
- Add
-
0.5.412 Aug 2020 -
0.5.306 Aug 2020Release notes
Open source →- Add
compareProgramInfothat takes in two program info objects and outputs aMapobject containing the diff data.
- Add
-
0.5.205 Aug 2020Release notes
Open source →- Add support for package paths that look like
package:foo.bar.baz/src/foobar.dart - Move
commandsback to lib.
- Add support for package paths that look like
-
0.5.014 Jul 2020Release notes
Open source →- Remove
dart:iodependency from packagelib, and movecommandstobin. - Replace
loadProgramInfoutil method withloadProgramInfoFromJson, which expects anObjectparameter instead of aFileparameter. buildComparisonTreemapnow expects twoObjectparameters foroldJsonandnewJsoninstead of twoFileparameters.comparecommand now prints difference breakdown by node type when this information is available.
- Remove
-
0.5.0+115 Jul 2020 -
0.4.003 Jul 2020Release notes
Open source →- Add
buildComparisonTreemapfor constructing treemap representing the diff between two size profiles. - Implemented support for extracting call graph information from the AOT
compiler trace (
--trace-precompiler-toflag), seeprecompiler_trace.dart. - New command
explain dynamic-callswhich estimates the impact of different dynamic calls on the resulting AOT snapshot size using information from the size dump (e.g. V8 snapshot profile) and AOT compiler trace. summarycommand can now use information from the AOT compiler trace to group packages/libraries together with their dependencies to given more precise estimate of how much a specific package/library brings into the snapshot.
- Add
-
0.3.025 Jun 2020Release notes
Open source →- Extract treemap construction code into a separate library, to make it reusable.
- Add ability to collapse leaf nodes in a treemap created from V8 snapshot
profile. This behavior is programmatically controlled by
TreemapFormat formatparameter and from CLI via--formatflag. The following options are availablecollapsedessentially rendersProgramInfoas a treemap, individual snapshot nodes are ignored.simplifiedsame ascollapsed, but also folds size information from nested functions into outermost function (e.g. top level function or a method) producing easy to consume output.data-and-codecollapses snapshot nodes based on whether they represent data or executable code.object-type(default) collapses snapshot nodes based on their type only.
- When computing
ProgramInfofrom a V8 snapshot profile no longer createProgramInfoNodeforCodenodes which are owned by a function - instead directly attribute theCodenode itself and all retained nodes intoProgramInfoNodefor the function itself. For stubs (including allocation stubs) create an artificialfunctionNodeinstead of usingNodeType.other. The only remaining use ofNodeType.otheris for fields.
-
0.2.024 Jun 2020Release notes
Open source →- Update CLI help message to avoid referring to a snapshot created by pub as the name of the script.
- Fix owner computation code for V8 profiles: the size of a snapshot node
which corresponds to a
ProgramInfoNodeshould be attributed to thatProgramInfoNodeand not to its parent. For exampleFunctionnode corresponds toProgramInfoNodeof typefunctionNode, previously the size ofFunctionnode would be attributed to the parent of thisProgramInfoNode, but it should be attributed to the node itself. - Update
README.mdto include more information on how to pass flags to Dart AOT compiler. - Add
ProgramInfoNode.sizedocumentation to clarify the meaning of the member.
-
0.1.023 Jun 2020