b6e8847967
When statically evaluating CommonJS code it is possible to find that we are looking for the declaration of an identifier that actually came from a typings file (rather than a CommonJS file). Previously, the CommonJS reflection host would always try to use a CommonJS specific algorithm for finding identifier declarations, but when the id is actually in a typings file this resulted in the returned declaration being the containing file of the declaration rather than the declaration itself. Now the CommonJS reflection host will check to see if the file containing the identifier is a typings file and use the appropriate stategy. (Note: This is the equivalent of #34356 but for CommonJS.) PR Close #35191
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