From fd6773f94416008149b9c92b1db22179f5b9d747 Mon Sep 17 00:00:00 2001 From: Sheetal Nandi Date: Thu, 18 Apr 2019 17:55:15 -0700 Subject: [PATCH] Diagnostics as ConfigFileMap --- src/compiler/tsbuild.ts | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/src/compiler/tsbuild.ts b/src/compiler/tsbuild.ts index 17c6d893764..d8d55c346f9 100644 --- a/src/compiler/tsbuild.ts +++ b/src/compiler/tsbuild.ts @@ -357,9 +357,9 @@ namespace ts { // Watch state const builderPrograms = createFileMap(); - const diagnostics = createFileMap>(); + const diagnostics = createMap() as ConfigFileMap>; const projectPendingBuild = createMap() as ConfigFileMap; - const projectErrorsReported = createFileMap(); + const projectErrorsReported = createMap() as ConfigFileMap; let timerToBuildInvalidatedProject: any; let reportFileChangeDetected = false; const { watchFile, watchFilePath, watchDirectory, writeLog } = createWatchFactory(host, options); @@ -852,7 +852,7 @@ namespace ts { buildOrder = undefined; } projectStatus.delete(resolved); - diagnostics.removeKey(resolved); + diagnostics.delete(resolved); addProjToQueue(resolved, reloadLevel); } @@ -920,8 +920,9 @@ namespace ts { if (options.watch || (host as SolutionBuilderHost).reportErrorSummary) { // Report errors from the other projects getBuildOrder().forEach(project => { - if (!projectErrorsReported.hasKey(project)) { - reportErrors(diagnostics.getValue(project) || emptyArray); + const projectPath = toResolvedConfigFilePath(project); + if (!projectErrorsReported.has(projectPath)) { + reportErrors(diagnostics.get(projectPath) || emptyArray); } }); let totalErrors = 0; @@ -1191,7 +1192,7 @@ namespace ts { newestDeclarationFileContentChangedTime: anyDtsChanged ? maximumDate : newestDeclarationFileContentChangedTime, oldestOutputFileName: outputFiles.length ? outputFiles[0].name : getFirstProjectOutput(configFile, !host.useCaseSensitiveFileNames()) }; - diagnostics.removeKey(proj); + diagnostics.delete(resolvedPath); projectStatus.set(resolvedPath, status); afterProgramCreate(proj, program); projectCompilerOptions = baseCompilerOptions; @@ -1284,7 +1285,7 @@ namespace ts { oldestOutputFileName: outputFiles[0].name }; - diagnostics.removeKey(proj); + diagnostics.delete(resolvedPath); projectStatus.set(resolvedPath, status); projectCompilerOptions = baseCompilerOptions; return BuildResultFlags.DeclarationOutputUnchanged; @@ -1465,8 +1466,8 @@ namespace ts { function reportAndStoreErrors(proj: ResolvedConfigFilePath, errors: ReadonlyArray) { reportErrors(errors); - projectErrorsReported.setValue(proj, true); - diagnostics.setValue(proj, errors); + projectErrorsReported.set(proj, true); + diagnostics.set(proj, errors); } function reportErrors(errors: ReadonlyArray) {