| Index: README.md
|
| diff --git a/README.md b/README.md
|
| index 811877e3d248c0811f8b627ae76205d9dba3d216..50a26929ea94c1763cf9ca429a991dda1cfbe39b 100644
|
| --- a/README.md
|
| +++ b/README.md
|
| @@ -69,6 +69,11 @@ The following tools are a available today:
|
| in many ways (e.g. to tally together all libraries that belong to a package,
|
| or all libraries that match certain name pattern).
|
|
|
| + * [`deferred_library_check`][deferred_lib]: a tool that verifies that code
|
| + was split into deferred parts as expected. This tool takes a specification
|
| + of the expected layout of code into deferred parts, and checks that the
|
| + output from `dart2js` meets the specification.
|
| +
|
| * [`function_size_analysis`][function_analysis]: a tool that shows how much
|
| code was attributed to each function. This tool also uses dependency
|
| information to compute dominance and reachability data. This information can
|
| @@ -188,6 +193,47 @@ size attributed of all libraries, constants, and the program size.
|
| size. Currently dart2js's `--dump-info` is not complete, so numbers for
|
| bootstrapping code and lazy static initializers are missing.
|
|
|
| +### Deferred library verification
|
| +
|
| +This tool checks that the output from dart2js meets a given specification,
|
| +given in a YAML file. It can be run as follows:
|
| +
|
| +```bash
|
| +pub global activate dart2js_info # only needed once
|
| +dart2js_info_deferred_library_check out.js.info.json manifest.yaml
|
| +```
|
| +
|
| +The format of the YAML file is:
|
| +
|
| +```yaml
|
| +main:
|
| + packages:
|
| + - some_package
|
| + - other_package
|
| +
|
| +foo:
|
| + packages:
|
| + - foo
|
| + - bar
|
| +
|
| +baz:
|
| + packages:
|
| + - baz
|
| + - quux
|
| +```
|
| +
|
| +The YAML file consists of a list of declarations, one for each deferred
|
| +part expected in the output. At least one of these parts must be named
|
| +"main"; this is the main part that contains the program entrypoint. Each
|
| +top-level part contains a list of package names that are expected to be
|
| +contained in that part. Any package that is not explicitly listed is
|
| +expected to be in the main part. For instance, in the example YAML above
|
| +the part named "baz" is expected to contain the packages "baz" and "quux".
|
| +
|
| +The names for parts given in the specification YAML file (besides "main")
|
| +are arbitrary and just used for reporting when the output does not meet the
|
| +specification.
|
| +
|
| ### Function size analysis tool
|
|
|
| This command-line tool presents how much each function contributes to the total
|
| @@ -268,6 +314,7 @@ bugs at the [issue tracker][tracker].
|
| [tracker]: https://github.com/dart-lang/dart2js_info/issues
|
| [code_deps]: https://github.com/dart-lang/dart2js_info/blob/master/bin/code_deps.dart
|
| [lib_split]: https://github.com/dart-lang/dart2js_info/blob/master/bin/library_size_split.dart
|
| +[lib_split]: https://github.com/dart-lang/dart2js_info/blob/master/bin/deferred_library_check.dart
|
| [coverage]: https://github.com/dart-lang/dart2js_info/blob/master/bin/coverage_log_server.dart
|
| [live]: https://github.com/dart-lang/dart2js_info/blob/master/bin/live_code_size_analysis.dart
|
| [function_analysis]: https://github.com/dart-lang/dart2js_info/blob/master/bin/function_size_analysis.dart
|
|
|