94ec0af582
This commit replaces the `IncrementalDriver` abstraction which powered incremental compilation in the compiler with a new `IncrementalCompilation` design. Principally, it separates two concerns which were tied together in the previous implementation: 1. Tracking the reusable state of a compilation at any given point that could be reused in a subsequent future compilation. 2. Making use of a prior compilation's state to accelerate the current one. The new abstraction adds explicit tracking and types to deal with both of these concerns separately, which greatly reduces the complexity of the state tracking that `IncrementalDriver` used to perform. PR Close #41475 |
||
---|---|---|
.. | ||
src | ||
test | ||
BUILD.bazel | ||
README.md | ||
index.ts | ||
main-ivy-ngcc.ts | ||
main-ngcc.ts |
README.md
Angular Compatibility Compiler (ngcc)
This compiler will convert node_modules
compiled with ngc
, into node_modules
which
appear to have been compiled with ngtsc
.
This conversion will allow such "legacy" packages to be used by the Ivy rendering engine.
Building
The project is built using Bazel:
yarn bazel build //packages/compiler-cli/ngcc
Unit Testing
The unit tests are built and run using Bazel:
yarn bazel test //packages/compiler-cli/ngcc/test
Integration Testing
There are tests that check the behavior of the overall executable:
yarn bazel test //packages/compiler-cli/ngcc/test:integration