Skip to content

Commit f05343a

Browse files
committed
fix(@angular/cli): expand package groups for newly added peer dependencies in update schematic
Previously, the package group stabilization loop ran completely before the peer dependencies resolution loop. If a peer dependency was newly added during the peer dependencies loop (e.g., @angular/core), its corresponding package group members (e.g., @angular/router) were never expanded, leaving them at outdated versions. Now, wrap the package group and peer dependencies stabilization logic in a single outer loop so that newly added peer dependencies are also stabilized and their package groups are correctly expanded. (cherry picked from commit 4b1b899)
1 parent 8471ba6 commit f05343a

1 file changed

Lines changed: 9 additions & 7 deletions

File tree

  • packages/angular/cli/src/commands/update/schematic

packages/angular/cli/src/commands/update/schematic/index.ts

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -884,14 +884,16 @@ export default function (options: UpdateSchema): Rule {
884884
let lastPackagesSize;
885885
do {
886886
lastPackagesSize = packages.size;
887-
npmPackageJsonMap.forEach((npmPackageJson) => {
888-
_addPackageGroup(tree, packages, npmDeps, npmPackageJson, logger);
889-
});
890-
} while (packages.size > lastPackagesSize);
891887

892-
// This is done in seperate loop to ensure that package groups are added before peer dependencies.
893-
do {
894-
lastPackagesSize = packages.size;
888+
let lastGroupSize;
889+
do {
890+
lastGroupSize = packages.size;
891+
npmPackageJsonMap.forEach((npmPackageJson) => {
892+
_addPackageGroup(tree, packages, npmDeps, npmPackageJson, logger);
893+
});
894+
} while (packages.size > lastGroupSize);
895+
896+
// This is done in seperate loop to ensure that package groups are added before peer dependencies.
895897
npmPackageJsonMap.forEach((npmPackageJson) => {
896898
_addPeerDependencies(tree, packages, npmDeps, npmPackageJson, npmPackageJsonMap, logger);
897899
});

0 commit comments

Comments
 (0)