| # Changelog |
| |
| ## 0.7.0 |
| |
| - Migrate to null-safety. |
| |
| ## 0.6.0 |
| |
| - Update to latest args, path, meta dependency. |
| |
| ## 0.5.6 |
| - Fix for flutter/flutter#76313 causing issues with profiles containing |
| WSRs serialized as smi-s instead of actual WSR objects.= |
| |
| ## 0.5.5 |
| - Add `deps-display-depth` (`-d`) flag for `summary` command to make the display |
| depth of outputted dependency trees configurable. |
| - Rename `deps-collapse-depth` (formerly `-d`) flag for `summary` command to |
| `deps-start-depth` (now `-s`). |
| - Add `generateCallGraphWithDominators` method that generates a `CallGraph` |
| object from precompiler trace. |
| |
| ## 0.5.4 |
| - Fix bug causing name clash for Type class. |
| |
| ## 0.5.3 |
| - Add `compareProgramInfo` that takes in two program info objects and outputs |
| a `Map` object containing the diff data. |
| |
| ## 0.5.2 |
| - Add support for package paths that look like `package:foo.bar.baz/src/foobar.dart` |
| - Move `commands` back to lib. |
| |
| ## 0.5.0+1 |
| - Fix broken package by moving non-executable file out of bin/ directory. |
| |
| ## 0.5.0 |
| - Remove `dart:io` dependency from package `lib`, and move `commands` to `bin`. |
| - Replace `loadProgramInfo` util method with `loadProgramInfoFromJson`, which |
| expects an `Object` parameter instead of a `File` parameter. |
| - `buildComparisonTreemap` now expects two `Object` parameters for `oldJson` and |
| `newJson` instead of two `File` parameters. |
| - `compare` command now prints difference breakdown by node type when this |
| information is available. |
| |
| ## 0.4.0 |
| |
| - Add `buildComparisonTreemap` for constructing treemap representing the diff |
| between two size profiles. |
| - Implemented support for extracting call graph information from the AOT |
| compiler trace (`--trace-precompiler-to` flag), see `precompiler_trace.dart`. |
| - New command `explain dynamic-calls` which 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. |
| - `summary` command 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. |
| |
| ## 0.3.0 |
| |
| - 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 format` |
| parameter and from CLI via `--format` flag. The following options are available |
| - `collapsed` essentially renders `ProgramInfo` as a treemap, individual |
| snapshot nodes are ignored. |
| - `simplified` same as `collapsed`, 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-code` collapses snapshot nodes based on whether they represent |
| data or executable code. |
| - `object-type` (default) collapses snapshot nodes based on their type only. |
| - When computing `ProgramInfo` from a V8 snapshot profile no longer create |
| `ProgramInfoNode` for `Code` nodes which are owned by a function - instead |
| directly attribute the `Code` node itself and all retained nodes into |
| `ProgramInfoNode` for the function itself. For stubs (including allocation |
| stubs) create an artificial `functionNode` instead of using `NodeType.other`. |
| The only remaining use of `NodeType.other` is for fields. |
| |
| ## 0.2.0 |
| |
| - 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 `ProgramInfoNode` should be attributed to that |
| `ProgramInfoNode` and not to its parent. For example `Function` node corresponds |
| to `ProgramInfoNode` of type `functionNode`, previously the size of `Function` |
| node would be attributed to the parent of this `ProgramInfoNode`, but it |
| should be attributed to the node itself. |
| - Update `README.md` to include more information on how to pass flags to |
| Dart AOT compiler. |
| - Add `ProgramInfoNode.size` documentation to clarify the meaning of the member. |
| |
| ## 0.1.0 |
| |
| - Initial release |