fd65958b88
Interestingly enough, our rollup bundle optimization pipeline did not work properly before 1b827b058e5060963590628d4735e6ac83c6dfdd. Unused declarations were not elided because build optimizer did not consider the Angular packages as side-effect free. Build optimizer has a hard-coded list of Angular packages that are considered side-effect free. Though this one did not match in the old version of the rollup bundle rule, as internal sources were resolved through their resolved bazel-out paths. Hence build optimizer could not detect the known Angular framework packages. Now though, since we leverage the Bazel-idiomatic `@bazel/rollup` implementation, sources are resolved through linked `node_modules`, and build optimizer is able to properly detect files as side-effect free. PR Close #37623 |
||
---|---|---|
.. | ||
animation_world | ||
core_all | ||
cyclic_import | ||
hello_world | ||
hello_world_i18n | ||
hello_world_r2 | ||
injection | ||
todo | ||
todo_i18n | ||
todo_r2 | ||
util | ||
README.md |
README.md
Bundle
js_expected_symbol_test
This folder contains tests which assert that most of the code is tree shaken away. This is asserted by keeping gold files of all symbols which are expected to be retained. When doing renaming it is often necessary to update the gold files, to do so use these commands:
yarn bazel run --config=ivy //packages/core/test/bundling/cyclic_import:symbol_test.accept
yarn bazel run --config=ivy //packages/core/test/bundling/hello_world:symbol_test.accept
yarn bazel run --config=ivy //packages/core/test/bundling/injection:symbol_test.accept
yarn bazel run --config=ivy //packages/core/test/bundling/todo:symbol_test.accept