From 77bc9b51096c058cc92190e21329eec0eb43787f Mon Sep 17 00:00:00 2001 From: Zoltan Kochan Date: Sat, 23 May 2020 03:03:44 +0300 Subject: [PATCH] fix: resolution sequence Subdependencies should be resolved after all sibling parent dependencies. --- .changeset/cool-carpets-search.md | 5 +++++ packages/resolve-dependencies/src/resolveDependencies.ts | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changeset/cool-carpets-search.md diff --git a/.changeset/cool-carpets-search.md b/.changeset/cool-carpets-search.md new file mode 100644 index 0000000000..0930d210f4 --- /dev/null +++ b/.changeset/cool-carpets-search.md @@ -0,0 +1,5 @@ +--- +"@pnpm/resolve-dependencies": patch +--- + +Resolve subdependencies only after all parent dependencies were resolved. diff --git a/packages/resolve-dependencies/src/resolveDependencies.ts b/packages/resolve-dependencies/src/resolveDependencies.ts index 83f08dd062..03404d1dcb 100644 --- a/packages/resolve-dependencies/src/resolveDependencies.ts +++ b/packages/resolve-dependencies/src/resolveDependencies.ts @@ -324,10 +324,10 @@ export default async function resolveDependencies ( if (postponedResolutionsQueue) { postponedResolutionsQueue.push(resolveChildren) + } else { + await resolveChildren(options.preferredVersions) } - await resolveChildren(options.preferredVersions) - return resolveDependencyResult }) )