
`ng-packages-installer` can be used to replace Angular packages with locally built ones (from `dist/packages-dist/`) along with their peer dependencies. Previously, in order to achieve this, `yarn install` was called with the `--no-lockfile` option, which resulted in installing the latest versions of all dependencies (including transitive ones) permitted by the corresponding version ranges in `package.json` files. As a result, newly released versions would be picked, resulting in unexpected, non-deterministic breakages in CI. This commit calls `yarn install` with the `--pure-lockfile` option instead. As a result, only the Angular packages (for which the locally built ones are used) and their peer dependencies are unpinned; the pinned versions from `yarn.lock` are used for all other (direct and transitive) dependencies. While this does not eliminate non-determinism across builds, it significantly reduces it. PR Close #28510
Angular
Angular is a development platform for building mobile and desktop web applications using Typescript/JavaScript and other languages.
Quickstart
Changelog
Learn about the latest improvements.
Want to help?
Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our guidelines for contributing and then check out one of our issues in the hotlist: community-help.
Description
Languages
TypeScript
86.3%
JavaScript
8.5%
HTML
1.8%
Starlark
1.7%
CSS
1%
Other
0.6%