angular/packages/core
Charles Lyding 27a89a9298 fix(core): add pure annotations to static property initializers (#43064)
Class static properties with initializers that cause code execution (for example, call expressions or new expressions) have the potential to cause side effects at module evaluation. This is similar in effect to module level code. As a result, optimizers can not safely remove a class with such a static property as the potential side effects may have meaningful effects on the state of the application execution. To allow classes with these type of static properties to be optimized and removed if unused, the initializer expressions for the static properties can be annotated as pure. This annotation provides a signal to an optimizer that the expression does not have any potential side effects and is useful in cases where static analysis can not currently prove that there are, in fact, no side effects caused by the initializer.

PR Close #43064
2021-08-16 17:20:20 -07:00
..
global build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
schematics refactor: add override keyword to members implementing abstract declarations (#42512) 2021-07-12 13:11:17 -07:00
src fix(core): add pure annotations to static property initializers (#43064) 2021-08-16 17:20:20 -07:00
test fix(router): eagerly update internal state on browser-triggered navigations (#43102) 2021-08-16 09:33:23 -07:00
testing fix(core): associate the NgModule scope for an overridden component (#42817) 2021-07-13 15:59:28 -07:00
BUILD.bazel build: wire up new CLDR generation tool within Bazel (#42230) 2021-07-16 12:44:59 -07:00
index.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
package.json refactor(core): update peerDependencies to allow rxjs7 (#42991) 2021-08-02 13:55:01 -07:00
PACKAGE.md docs: add package doc files (#26047) 2018-10-05 15:42:14 -07:00
public_api.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00