Tree shaking for Angular 10 shook out AsyncPipe when using sideEffects: false
This is a known bug with Angular 10 and an issue with Ivy.
It happens when you have recursive dependencies between your components, e.g. AComponent
imports BComponent
, but BComponent
also imports AComponent
.
For importing, what matters is the generated component code - not the Typescript of your component class.
That would mean having <app-b-component></app-b-component>
in your AComponent's template also counts as importing BComponent
, because internally it references BComponent
.
So the current work-around, while still keeping the more aggressive tree-shaking with sideEffects: false
, would be to eliminate all recursive imports.