From be3f1b1b91cd7ec9e3b931820e63d450d95b1e9e Mon Sep 17 00:00:00 2001 From: Matt Seddon Date: Wed, 26 Jul 2023 13:53:17 +1000 Subject: [PATCH] Remove await from inside of loops --- extension/src/experiments/data/index.ts | 17 +++++++---------- extension/src/repository/model/collect.ts | 8 +++++++- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/extension/src/experiments/data/index.ts b/extension/src/experiments/data/index.ts index fd4f422164..adc78ead19 100644 --- a/extension/src/experiments/data/index.ts +++ b/extension/src/experiments/data/index.ts @@ -56,20 +56,18 @@ export class ExperimentsData extends BaseData { private async updateExpShow() { await this.updateBranches() const branches = this.experiments.getBranchesToShow() - let gitLog = '' const rowOrder: { branch: string; sha: string }[] = [] const availableNbCommits: { [branch: string]: number } = {} const args: Args = [] + const promises = [] for (const branch of branches) { - gitLog = await this.collectGitLogAndOrder( - gitLog, - branch, - rowOrder, - availableNbCommits, - args + promises.push( + this.collectGitLogAndOrder(branch, rowOrder, availableNbCommits, args) ) } + const gitBranchLogs = await Promise.all(promises) + const gitLog = gitBranchLogs.join(COMMITS_SEPARATOR) const expShow = await this.internalCommands.executeCommand( AvailableCommands.EXP_SHOW, @@ -82,7 +80,6 @@ export class ExperimentsData extends BaseData { } private async collectGitLogAndOrder( - gitLog: string, branch: string, rowOrder: { branch: string; sha: string }[], availableNbCommits: { [branch: string]: number }, @@ -103,7 +100,7 @@ export class ExperimentsData extends BaseData { branch ) ]) - gitLog = [gitLog, branchGitLog].join(COMMITS_SEPARATOR) + availableNbCommits[branch] = totalCommits for (const commit of branchGitLog.split(COMMITS_SEPARATOR)) { @@ -114,7 +111,7 @@ export class ExperimentsData extends BaseData { } args.push(ExperimentFlag.REV, sha) } - return gitLog + return branchGitLog } private async updateBranches() { diff --git a/extension/src/repository/model/collect.ts b/extension/src/repository/model/collect.ts index 6b14c7b567..8116db6171 100644 --- a/extension/src/repository/model/collect.ts +++ b/extension/src/repository/model/collect.ts @@ -335,9 +335,15 @@ export const collectTrackedPaths = async ( return acc } const children = await getChildren(resourceUri.fsPath) + const promises = [] for (const child of children) { - acc.push(...(await collectTrackedPaths(child, getChildren))) + promises.push(collectTrackedPaths(child, getChildren)) } + const results = await Promise.all(promises) + for (const result of results) { + acc.push(...result) + } + return acc }