IssueRaiser

Transition Angular from the whole-program compilation to localized compilation

*Note 1: This proposal has its origin in [Out-of-band type-checking for TypeScript and Template compilation](https://github.com/angular/angular/issues/43131) which mentions an "extreme" implementation option — this issue provides more details about this option.* *Note 2: 📺 Check out the [video recording of a community discussion about this proposal](https://youtu.be/FbJLC7GxAAs?t=5919) @ [angularnation.net](https://www.angularnation.net/)* ## The problem As described in the [Out-of-band type-checking for TypeScript and Template compilation](https://github.com/angular/angular/issues/43131) proposal, making Angular's compilation model highly parallelizable would result in major benefits for Angular developers by **significantly lowering the interactive workflow latency** (making the "edit & refresh" cycle faster). This change would additionally **improve the efficiency (in time, and CPU cost) of building Angular at scale** in monorepos and on CI systems. **The current cost of compilation is significant, and becoming a hurdle affecting DX, and our ability to scale massive code bases.** ## Background info The unit of parallelization of Angular's compilation is the ["program" as defined by the TypeScript compiler](https://github.com/Microsoft/TypeScript/wiki/Using-the-Compiler-API#a-minimal-compiler) — the program is the smallest unit of code (a group of `.ts`, `.d.ts`, and `.js` files declared and configured by a single [tsconfig.json](https://www.typescriptlang.org/docs

Posted by IgorMinar on Aug 15, 2021, 5:44 PM

Tags

Related issues

Raise real-world problems, find people facing the same issue, and discuss solutions.3,000 issues0 comments

pricing (Network)

Transition Angular from the whole-program compilation to localized compilation

IgorMinarAug 15, 2021, 5:44 PM

*Note 1: This proposal has its origin in [Out-of-band type-checking for TypeScript and Template compilation](https://github.com/angular/angular/issues/43131) which mentions an "extreme" implementation option — this issue provides more details about this option.* *Note 2: 📺 Check out the [video recording of a community discussion about this proposal](https://youtu.be/FbJLC7GxAAs?t=5919) @ [angularnation.net](https://www.angularnation.net/)* ## The problem As described in the [Out-of-band type-checking for TypeScript and Template compilation](https://github.com/angular/angular/issues/43131) proposal, making Angular's compilation model highly parallelizable would result in major benefits for Angular developers by **significantly lowering the interactive workflow latency** (making the "edit & refresh" cycle faster). This change would additionally **improve the efficiency (in time, and CPU cost) of building Angular at scale** in monorepos and on CI systems. **The current cost of compilation is significant, and becoming a hurdle affecting DX, and our ability to scale massive code bases.** ## Background info The unit of parallelization of Angular's compilation is the ["program" as defined by the TypeScript compiler](https://github.com/Microsoft/TypeScript/wiki/Using-the-Compiler-API#a-minimal-compiler) — the program is the smallest unit of code (a group of `.ts`, `.d.ts`, and `.js` files declared and configured by a single [tsconfig.json](https://www.typescriptlang.org/docs

Comments (0)

No comments yet. Start the discussion.

Comment on this issue