Skip to content

Commit 53ddceb

Browse files
committed
Move node lookup to inner loops
1 parent ca06719 commit 53ddceb

File tree

2 files changed

+47
-45
lines changed

2 files changed

+47
-45
lines changed

src/commands/fix/npm-fix.ts

Lines changed: 24 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -155,30 +155,32 @@ export async function npmFix(
155155
firstPatchedVersionIdentifier,
156156
vulnerableVersionRange
157157
} of infos) {
158-
const revertTree = arb.idealTree!
159-
arb.idealTree = null
160-
// eslint-disable-next-line no-await-in-loop
161-
await arb.buildIdealTree()
162-
const node = findPackageNode(arb.idealTree!, name, oldVersion)
163-
if (!node) {
164-
continue
165-
}
166-
if (
167-
!updateNode(
168-
node,
169-
packument,
170-
vulnerableVersionRange,
171-
firstPatchedVersionIdentifier
172-
)
173-
) {
174-
if (!unavailableSpecs.has(oldSpec)) {
175-
unavailableSpecs.add(oldSpec)
176-
spinner?.fail(`No update available for ${oldSpec}`)
158+
for (const pkgJsonPath of pkgJsonPaths) {
159+
const revertTree = arb.idealTree!
160+
arb.idealTree = null
161+
// eslint-disable-next-line no-await-in-loop
162+
await arb.buildIdealTree()
163+
164+
const node = findPackageNode(arb.idealTree!, name, oldVersion)
165+
if (!node) {
166+
continue
167+
}
168+
169+
if (
170+
!updateNode(
171+
node,
172+
packument,
173+
vulnerableVersionRange,
174+
firstPatchedVersionIdentifier
175+
)
176+
) {
177+
if (!unavailableSpecs.has(oldSpec)) {
178+
unavailableSpecs.add(oldSpec)
179+
spinner?.fail(`No update available for ${oldSpec}`)
180+
}
181+
continue
177182
}
178-
continue
179-
}
180183

181-
for (const pkgJsonPath of pkgJsonPaths) {
182184
const isWorkspaceRoot =
183185
pkgJsonPath === pkgEnvDetails.editablePkgJson.filename
184186
const workspaceName = isWorkspaceRoot

src/commands/fix/pnpm-fix.ts

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -171,32 +171,32 @@ export async function pnpmFix(
171171
firstPatchedVersionIdentifier,
172172
vulnerableVersionRange
173173
} of infos) {
174-
const node = findPackageNode(actualTree, name, oldVersion)
175-
if (!node) {
176-
continue
177-
}
174+
debugLog('pkgJsonPaths', pkgJsonPaths)
175+
for (const pkgJsonPath of pkgJsonPaths) {
176+
const node = findPackageNode(actualTree, name, oldVersion)
177+
if (!node) {
178+
continue
179+
}
180+
181+
const availableVersions = Object.keys(packument.versions)
182+
const newVersion = findBestPatchVersion(
183+
node,
184+
availableVersions,
185+
vulnerableVersionRange,
186+
firstPatchedVersionIdentifier
187+
)
188+
const newVersionPackument = newVersion
189+
? packument.versions[newVersion]
190+
: undefined
178191

179-
const availableVersions = Object.keys(packument.versions)
180-
const newVersion = findBestPatchVersion(
181-
node,
182-
availableVersions,
183-
vulnerableVersionRange,
184-
firstPatchedVersionIdentifier
185-
)
186-
const newVersionPackument = newVersion
187-
? packument.versions[newVersion]
188-
: undefined
189-
190-
if (!(newVersion && newVersionPackument)) {
191-
if (!unavailableSpecs.has(oldSpec)) {
192-
unavailableSpecs.add(oldSpec)
193-
spinner?.fail(`No update available for ${oldSpec}`)
192+
if (!(newVersion && newVersionPackument)) {
193+
if (!unavailableSpecs.has(oldSpec)) {
194+
unavailableSpecs.add(oldSpec)
195+
spinner?.fail(`No update available for ${oldSpec}`)
196+
}
197+
continue
194198
}
195-
continue
196-
}
197199

198-
debugLog('pkgJsonPaths', pkgJsonPaths)
199-
for (const pkgJsonPath of pkgJsonPaths) {
200200
const isWorkspaceRoot =
201201
pkgJsonPath === pkgEnvDetails.editablePkgJson.filename
202202
const workspaceName = isWorkspaceRoot

0 commit comments

Comments
 (0)