From db7aee89a0e2b17dbc8122644b751bb490380ec3 Mon Sep 17 00:00:00 2001 From: Brandon Cheng Date: Mon, 15 Apr 2024 07:01:08 -0400 Subject: [PATCH] refactor: remove zipWith when resolving dependencies of importers (#7927) * refactor: avoid zipWith when resolving dependencies of importers Instead of creating two separate arrays and zipping them together, the initial map here can create the pairs array directly. I'm not expecting any behavior changes in this commit other than slightly improved readability and performance. * refactor: resolve dependencies --------- Co-authored-by: Zoltan Kochan --- .../src/resolveDependencies.ts | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/pkg-manager/resolve-dependencies/src/resolveDependencies.ts b/pkg-manager/resolve-dependencies/src/resolveDependencies.ts index e7c4263a0d..f9e9b5d5ed 100644 --- a/pkg-manager/resolve-dependencies/src/resolveDependencies.ts +++ b/pkg-manager/resolve-dependencies/src/resolveDependencies.ts @@ -403,16 +403,16 @@ async function resolveDependenciesOfImporters ( ctx: ResolutionContext, importers: ImporterToResolve[] ): Promise { - const extendedWantedDepsByImporters = importers.map(({ wantedDependencies, options }) => getDepsToResolve(wantedDependencies, ctx.wantedLockfile, { - preferredDependencies: options.preferredDependencies, - prefix: options.prefix, - proceed: options.proceed || ctx.forceFullResolution, - registries: ctx.registries, - resolvedDependencies: options.resolvedDependencies, - })) const pickLowestVersion = ctx.resolutionMode === 'time-based' || ctx.resolutionMode === 'lowest-direct' const resolveResults = await Promise.all( - zipWith(async (extendedWantedDeps, importer) => { + importers.map(async (importer) => { + const extendedWantedDeps = getDepsToResolve(importer.wantedDependencies, ctx.wantedLockfile, { + preferredDependencies: importer.options.preferredDependencies, + prefix: importer.options.prefix, + proceed: importer.options.proceed || ctx.forceFullResolution, + registries: ctx.registries, + resolvedDependencies: importer.options.resolvedDependencies, + }) const postponedResolutionsQueue: PostponedResolutionFunction[] = [] const postponedPeersResolutionQueue: PostponedPeersResolutionFunction[] = [] const pkgAddresses: PkgAddress[] = [] @@ -443,7 +443,7 @@ async function resolveDependenciesOfImporters ( } return { pkgAddresses, postponedResolutionsQueue, postponedPeersResolutionQueue } - }, extendedWantedDepsByImporters, importers) + }) ) let publishedBy: Date | undefined let time: Record | undefined