From 866cedd3d36d71bc7e18e700901f37037fb0215c Mon Sep 17 00:00:00 2001 From: Rhys Arkins <rhys@arkins.net> Date: Mon, 13 Apr 2020 10:29:48 +0200 Subject: [PATCH] refactor: fetchDepUpdates no-param-reassign (#5957) --- lib/workers/repository/process/fetch.ts | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/lib/workers/repository/process/fetch.ts b/lib/workers/repository/process/fetch.ts index 918d5cb9df..1d43ed4d52 100644 --- a/lib/workers/repository/process/fetch.ts +++ b/lib/workers/repository/process/fetch.ts @@ -16,15 +16,16 @@ import { PackageUpdateResult, } from '../../../manager/common'; import { SkipReason } from '../../../types'; +import { clone } from '../../../util/clone'; async function fetchDepUpdates( packageFileConfig: ManagerConfig & PackageFile, - dep: PackageDependency -): Promise<void> { - /* eslint-disable no-param-reassign */ + indep: PackageDependency +): Promise<PackageDependency> { + const dep = clone(indep); dep.updates = []; if (dep.skipReason) { - return; + return dep; } const { manager, packageFile } = packageFileConfig; const { depName, currentValue } = dep; @@ -76,7 +77,7 @@ async function fetchDepUpdates( updates: dep.updates, }); } - /* eslint-enable no-param-reassign */ + return dep; } async function fetchManagerPackagerFileUpdates( @@ -87,14 +88,15 @@ async function fetchManagerPackagerFileUpdates( const { packageFile } = pFile; const packageFileConfig = mergeChildConfig(managerConfig, pFile); const { manager } = packageFileConfig; - const queue = pFile.deps.map((dep) => (): Promise<void> => + const queue = pFile.deps.map((dep) => (): Promise<PackageDependency> => fetchDepUpdates(packageFileConfig, dep) ); logger.trace( { manager, packageFile, queueLength: queue.length }, 'fetchManagerPackagerFileUpdates starting with concurrency' ); - await pAll(queue, { concurrency: 5 }); + // eslint-disable-next-line no-param-reassign + pFile.deps = await pAll(queue, { concurrency: 5 }); logger.trace({ packageFile }, 'fetchManagerPackagerFileUpdates finished'); } -- GitLab