If a project has nested projects that contain node_modules folders that get processed by ngcc, it can be confusing when the ngcc version changes since the error message is very generic: ``` The ngcc compiler has changed since the last ngcc build. Please completely remove `node_modules` and try again. ``` This commit augments the error message with the path of the entry-point that failed so that it is more obvious which node_modules folder to remove. BREAKING CHANGE: This commit removes the public export of `hasBeenProcessed()`. This was exported to be availble to the CLI integration but was never used. The change to the function signature is a breaking change in itself so we remove the function altogether to simplify and lower the public API surface going forward. PR Close #32396
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