Merge pull request #34487 from microsoft/skipTsBuildinfoEmit

Do not write build info if there are no files to emit
This commit is contained in:
Sheetal Nandi
2019-10-17 12:22:25 -07:00
committed by GitHub
9 changed files with 123 additions and 12 deletions

View File

@@ -251,6 +251,7 @@ namespace ts {
state.seenAffectedFiles = createMap<true>();
}
state.emittedBuildInfo = !state.changedFilesSet.size && !state.affectedFilesPendingEmit;
return state;
}

View File

@@ -169,9 +169,15 @@ namespace ts {
Initial = "initial-build",
IncrementalDtsChange = "incremental-declaration-changes",
IncrementalDtsUnchanged = "incremental-declaration-doesnt-change",
IncrementalHeadersChange = "incremental-headers-change-without-dts-changes"
IncrementalHeadersChange = "incremental-headers-change-without-dts-changes",
NoChangeRun ="no-change-run"
}
export const noChangeRun: TscIncremental = {
buildKind: BuildKind.NoChangeRun,
modifyFs: noop
};
export interface TscCompile {
scenario: string;
subScenario: string;

View File

@@ -17,13 +17,10 @@ namespace ts {
}`,
}),
commandLineArgs: ["--incremental", "--p", "src/project", "--tsBuildInfoFile", "src/project/.tsbuildinfo"],
incrementalScenarios: [{
buildKind: BuildKind.IncrementalDtsUnchanged,
modifyFs: noop,
}]
incrementalScenarios: [noChangeRun]
});
verifyTsc({
verifyTscIncrementalEdits({
scenario: "incremental",
subScenario: "when passing rootDir from commandline",
fs: () => loadProjectFromFiles({
@@ -37,6 +34,25 @@ namespace ts {
}`,
}),
commandLineArgs: ["--p", "src/project", "--rootDir", "src/project/src"],
incrementalScenarios: [noChangeRun]
});
verifyTscIncrementalEdits({
scenario: "incremental",
subScenario: "with only dts files",
fs: () => loadProjectFromFiles({
"/src/project/src/main.d.ts": "export const x = 10;",
"/src/project/src/another.d.ts": "export const y = 10;",
"/src/project/tsconfig.json": "{}",
}),
commandLineArgs: ["--incremental", "--p", "src/project"],
incrementalScenarios: [
noChangeRun,
{
buildKind: BuildKind.IncrementalDtsUnchanged,
modifyFs: fs => appendText(fs, "/src/project/src/main.d.ts", "export const xy = 100;")
}
]
});
});
}