From 5360b7b4fff4cd8219905bf9f04797acd375d2bc Mon Sep 17 00:00:00 2001 From: Sheetal Nandi Date: Fri, 7 Jun 2024 12:38:29 -0700 Subject: [PATCH 1/3] Initial change to allow noCheck on commandLine (including build) and tests --- src/compiler/commandLineParser.ts | 43 +- src/testRunner/tests.ts | 1 + src/testRunner/unittests/helpers/noCheck.ts | 81 + src/testRunner/unittests/tsbuild/noCheck.ts | 87 +- src/testRunner/unittests/tsc/noCheck.ts | 5 + .../tsconfig.json | 2 +- .../tsconfig.json | 2 +- .../tsconfig.json | 2 +- .../tsconfig.json | 2 +- .../tsconfig.json | 2 +- .../tsconfig.json | 2 +- .../tsconfig.json | 2 +- .../tsconfig.json | 2 +- .../tsconfig.json | 2 +- .../tsconfig.json | 2 +- .../tsconfig.json | 2 +- .../noCheck/tsconfig.json | 4 +- .../semantic-errors-with-incremental.js | 472 ----- .../tsbuild/noCheck-errors/semantic-errors.js | 387 ---- .../syntax-errors-with-incremental.js | 445 ----- .../tsbuild/noCheck-errors/syntax-errors.js | 369 ---- .../multiFile/dts-errors-discrepancies.js | 44 + ...s-errors-with-incremental-discrepancies.js | 362 ++++ .../multiFile/dts-errors-with-incremental.js | 1267 ++++++++++++ .../tsbuild/noCheck/multiFile/dts-errors.js | 887 +++++++++ .../semantic-errors-discrepancies.js | 64 + ...c-errors-with-incremental-discrepancies.js | 438 +++++ .../semantic-errors-with-incremental.js | 1016 ++++++++++ .../noCheck/multiFile/semantic-errors.js | 666 +++++++ .../multiFile/syntax-errors-discrepancies.js | 44 + ...x-errors-with-incremental-discrepancies.js | 610 ++++++ .../syntax-errors-with-incremental.js | 1181 +++++++++++ .../noCheck/multiFile/syntax-errors.js | 843 ++++++++ .../outFile/dts-errors-discrepancies.js | 44 + ...s-errors-with-incremental-discrepancies.js | 304 +++ .../outFile/dts-errors-with-incremental.js | 1186 +++++++++++ .../tsbuild/noCheck/outFile/dts-errors.js | 928 +++++++++ .../outFile/semantic-errors-discrepancies.js | 64 + ...c-errors-with-incremental-discrepancies.js | 370 ++++ .../semantic-errors-with-incremental.js | 926 +++++++++ .../noCheck/outFile/semantic-errors.js | 695 +++++++ .../outFile/syntax-errors-discrepancies.js | 44 + ...x-errors-with-incremental-discrepancies.js | 384 ++++ .../outFile/syntax-errors-with-incremental.js | 1117 +++++++++++ .../tsbuild/noCheck/outFile/syntax-errors.js | 884 +++++++++ .../semantic-errors-with-incremental.js | 398 ---- .../tsbuild/noCheck/semantic-errors.js | 285 --- .../noCheck/syntax-errors-with-incremental.js | 440 ----- .../tsbuild/noCheck/syntax-errors.js | 331 ---- .../multiFile/dts-errors-with-incremental.js | 1742 +++++++++++++++++ .../tsc/noCheck/multiFile/dts-errors.js | 739 +++++++ .../semantic-errors-with-incremental.js | 1637 ++++++++++++++++ .../tsc/noCheck/multiFile/semantic-errors.js | 675 +++++++ ...x-errors-with-incremental-discrepancies.js | 248 +++ .../syntax-errors-with-incremental.js | 1656 ++++++++++++++++ .../tsc/noCheck/multiFile/syntax-errors.js | 730 +++++++ .../outFile/dts-errors-with-incremental.js | 1539 +++++++++++++++ .../tsc/noCheck/outFile/dts-errors.js | 807 ++++++++ .../semantic-errors-with-incremental.js | 1409 +++++++++++++ .../tsc/noCheck/outFile/semantic-errors.js | 722 +++++++ ...x-errors-with-incremental-discrepancies.js | 80 + .../outFile/syntax-errors-with-incremental.js | 1470 ++++++++++++++ .../tsc/noCheck/outFile/syntax-errors.js | 798 ++++++++ ...does-not-add-color-when-NO_COLOR-is-set.js | 10 +- ...-when-host-can't-provide-terminal-width.js | 10 +- ...tatus.DiagnosticsPresent_OutputsSkipped.js | 10 +- 66 files changed, 28759 insertions(+), 3261 deletions(-) create mode 100644 src/testRunner/unittests/helpers/noCheck.ts create mode 100644 src/testRunner/unittests/tsc/noCheck.ts delete mode 100644 tests/baselines/reference/tsbuild/noCheck-errors/semantic-errors-with-incremental.js delete mode 100644 tests/baselines/reference/tsbuild/noCheck-errors/semantic-errors.js delete mode 100644 tests/baselines/reference/tsbuild/noCheck-errors/syntax-errors-with-incremental.js delete mode 100644 tests/baselines/reference/tsbuild/noCheck-errors/syntax-errors.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-discrepancies.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental-discrepancies.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-discrepancies.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental-discrepancies.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-discrepancies.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-discrepancies.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental-discrepancies.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-discrepancies.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental-discrepancies.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-discrepancies.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental.js create mode 100644 tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors.js delete mode 100644 tests/baselines/reference/tsbuild/noCheck/semantic-errors-with-incremental.js delete mode 100644 tests/baselines/reference/tsbuild/noCheck/semantic-errors.js delete mode 100644 tests/baselines/reference/tsbuild/noCheck/syntax-errors-with-incremental.js delete mode 100644 tests/baselines/reference/tsbuild/noCheck/syntax-errors.js create mode 100644 tests/baselines/reference/tsc/noCheck/multiFile/dts-errors-with-incremental.js create mode 100644 tests/baselines/reference/tsc/noCheck/multiFile/dts-errors.js create mode 100644 tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors-with-incremental.js create mode 100644 tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors.js create mode 100644 tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js create mode 100644 tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental.js create mode 100644 tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors.js create mode 100644 tests/baselines/reference/tsc/noCheck/outFile/dts-errors-with-incremental.js create mode 100644 tests/baselines/reference/tsc/noCheck/outFile/dts-errors.js create mode 100644 tests/baselines/reference/tsc/noCheck/outFile/semantic-errors-with-incremental.js create mode 100644 tests/baselines/reference/tsc/noCheck/outFile/semantic-errors.js create mode 100644 tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js create mode 100644 tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental.js create mode 100644 tests/baselines/reference/tsc/noCheck/outFile/syntax-errors.js diff --git a/src/compiler/commandLineParser.ts b/src/compiler/commandLineParser.ts index 4a9918c9671e9..cbba9ad42b838 100644 --- a/src/compiler/commandLineParser.ts +++ b/src/compiler/commandLineParser.ts @@ -502,6 +502,26 @@ export const commonOptionsWithBuild: CommandLineOption[] = [ description: Diagnostics.Include_sourcemap_files_inside_the_emitted_JavaScript, defaultValueDescription: false, }, + { + name: "noCheck", + type: "boolean", + showInSimplifiedHelpView: false, + category: Diagnostics.Compiler_Diagnostics, + description: Diagnostics.Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported, + transpileOptionValue: true, + defaultValueDescription: false, + affectsSemanticDiagnostics: true, + affectsBuildInfo: true, + }, + { + name: "noEmit", + type: "boolean", + showInSimplifiedHelpView: true, + category: Diagnostics.Emit, + description: Diagnostics.Disable_emitting_files_from_a_compilation, + transpileOptionValue: undefined, + defaultValueDescription: false, + }, { name: "assumeChangesOnlyAffectDirectDependencies", type: "boolean", @@ -772,29 +792,6 @@ const commandOptionsWithoutBuild: CommandLineOption[] = [ defaultValueDescription: false, description: Diagnostics.Disable_emitting_comments, }, - { - name: "noCheck", - type: "boolean", - showInSimplifiedHelpView: false, - category: Diagnostics.Compiler_Diagnostics, - description: Diagnostics.Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported, - transpileOptionValue: true, - defaultValueDescription: false, - affectsSemanticDiagnostics: true, - affectsBuildInfo: true, - extraValidation() { - return [Diagnostics.Unknown_compiler_option_0, "noCheck"]; - }, - }, - { - name: "noEmit", - type: "boolean", - showInSimplifiedHelpView: true, - category: Diagnostics.Emit, - description: Diagnostics.Disable_emitting_files_from_a_compilation, - transpileOptionValue: undefined, - defaultValueDescription: false, - }, { name: "importHelpers", type: "boolean", diff --git a/src/testRunner/tests.ts b/src/testRunner/tests.ts index af34d74a1ac66..329649891df3f 100644 --- a/src/testRunner/tests.ts +++ b/src/testRunner/tests.ts @@ -122,6 +122,7 @@ export * from "./unittests/tsc/incremental.js"; export * from "./unittests/tsc/libraryResolution.js"; export * from "./unittests/tsc/listFilesOnly.js"; export * from "./unittests/tsc/moduleResolution.js"; +export * from "./unittests/tsc/noCheck.js"; export * from "./unittests/tsc/noEmit.js"; export * from "./unittests/tsc/noEmitOnError.js"; export * from "./unittests/tsc/projectReferences.js"; diff --git a/src/testRunner/unittests/helpers/noCheck.ts b/src/testRunner/unittests/helpers/noCheck.ts new file mode 100644 index 0000000000000..d3f8e0c8edf79 --- /dev/null +++ b/src/testRunner/unittests/helpers/noCheck.ts @@ -0,0 +1,81 @@ +import { jsonToReadableText } from "../helpers.js"; +import { + noChangeRun, + TestTscEdit, + verifyTsc, +} from "./tsc.js"; +import { loadProjectFromFiles } from "./vfs.js"; + +export function forEachTscScenarioWithNoCheck(buildType: "-b" | "-p") { + const commandLineArgs = buildType === "-b" ? + ["-b", "/src/tsconfig.json", "-v"] : + ["-p", "/src/tsconfig.json"]; + + function forEachNoCheckScenarioWorker( + subScenario: string, + aText: string, + ) { + const checkNoChangeRun: TestTscEdit = { + ...noChangeRun, + caption: "No Change run with checking", + commandLineArgs, + }; + const noCheckFixError: TestTscEdit = { + caption: "Fix `a` error with noCheck", + edit: fs => fs.writeFileSync("/src/a.ts", `export const a = "hello";`), + }; + const noCheckError: TestTscEdit = { + caption: "Introduce error with noCheck", + edit: fs => fs.writeFileSync("/src/a.ts", aText), + }; + + [undefined, true].forEach(incremental => { + [{}, { module: "amd", outFile: "../outFile.js" }].forEach(options => { + verifyTsc({ + scenario: "noCheck", + subScenario: `${options.outFile ? "outFile" : "multiFile"}/${subScenario}${incremental ? " with incremental" : ""}`, + fs: () => + loadProjectFromFiles({ + "/src/a.ts": aText, + "/src/b.ts": `export const b = 10;`, + "/src/tsconfig.json": jsonToReadableText({ + compilerOptions: { + declaration: true, + incremental, + ...options, + }, + }), + }), + commandLineArgs: [...commandLineArgs, "--noCheck"], + edits: [ + noChangeRun, // Should be no op + noCheckFixError, // Fix error with noCheck + noChangeRun, // Should be no op + checkNoChangeRun, // Check errors - should not report any errors - update buildInfo + checkNoChangeRun, // Should be no op + noChangeRun, // Should be no op + noCheckError, + noChangeRun, // Should be no op + checkNoChangeRun, // Should check errors and update buildInfo + noCheckFixError, // Fix error with noCheck + checkNoChangeRun, // Should check errors and update buildInfo + { + caption: "Add file with error", + edit: fs => fs.writeFileSync("/src/c.ts", `export const c: number = "hello";`), + commandLineArgs, + }, + noCheckError, + noCheckFixError, + checkNoChangeRun, + noChangeRun, // Should be no op + checkNoChangeRun, // Should be no op + ], + baselinePrograms: true, + }); + }); + }); + } + forEachNoCheckScenarioWorker("syntax errors", `export const a = "hello`); + forEachNoCheckScenarioWorker("semantic errors", `export const a: number = "hello";`); + forEachNoCheckScenarioWorker("dts errors", `export const a = class { private p = 10; };`); +} diff --git a/src/testRunner/unittests/tsbuild/noCheck.ts b/src/testRunner/unittests/tsbuild/noCheck.ts index 9cfef3a03ae23..50aa4da9202c9 100644 --- a/src/testRunner/unittests/tsbuild/noCheck.ts +++ b/src/testRunner/unittests/tsbuild/noCheck.ts @@ -1,86 +1,5 @@ -import { - CommandLineOption, - optionDeclarations, -} from "../../_namespaces/ts.js"; -import { jsonToReadableText } from "../helpers.js"; -import { - noChangeRun, - verifyTsc, -} from "../helpers/tsc.js"; -import { loadProjectFromFiles } from "../helpers/vfs.js"; +import { forEachTscScenarioWithNoCheck } from "../helpers/noCheck.js"; -function verifyNoCheckFlag(variant: string) { - function verifyNoCheckWorker(subScenario: string, declAText: string, commandLineArgs: readonly string[]) { - verifyTsc({ - scenario: variant, - subScenario, - fs: () => - loadProjectFromFiles({ - "/src/a.ts": getATsContent(declAText), - "/src/tsconfig.json": jsonToReadableText({ - compilerOptions: { noCheck: true, emitDeclarationOnly: true, declaration: true }, - }), - }), - commandLineArgs, - edits: [ - noChangeRun, - { - caption: "Fix `a` error", - edit: fs => fs.writeFileSync("/src/a.ts", getATsContent(`const a = "hello"`)), - }, - noChangeRun, - { - caption: "Disable noCheck", - edit: fs => - fs.writeFileSync( - "/src/tsconfig.json", - jsonToReadableText({ - compilerOptions: { emitDeclarationOnly: true, declaration: true }, - }), - ), - }, - noChangeRun, - ], - baselinePrograms: true, - }); - - function getATsContent(declAText: string) { - return `const err: number = "error"; -${declAText}`; - } - } - - function verifyNoCheck(subScenario: string, aTsContent: string) { - verifyNoCheckWorker(subScenario, aTsContent, ["--b", "/src/tsconfig.json", "-v"]); - verifyNoCheckWorker(`${subScenario} with incremental`, aTsContent, ["--b", "/src/tsconfig.json", "-v", "--incremental"]); - } - - verifyNoCheck("syntax errors", `const a = "hello`); - verifyNoCheck("semantic errors", `const a: number = "hello"`); -} - -describe("unittests:: tsbuild:: noCheck", () => { - // Enable the `noCheck` option on the CLI for testing purposes, to ensure it works with incremental/build - let validate: CommandLineOption["extraValidation"]; - before(() => { - for (const opt of optionDeclarations) { - if (opt.name === "noCheck") { - validate = opt.extraValidation; - opt.extraValidation = () => undefined; - } - } - }); - after(() => { - for (const opt of optionDeclarations) { - if (opt.name === "noCheck") { - opt.extraValidation = validate; - } - } - }); - - verifyNoCheckFlag("noCheck"); -}); - -describe("unittests:: tsbuild:: noCheck:: errors", () => { - verifyNoCheckFlag("noCheck-errors"); +describe("unittests:: tsbuild:: noCheck::", () => { + forEachTscScenarioWithNoCheck("-b"); }); diff --git a/src/testRunner/unittests/tsc/noCheck.ts b/src/testRunner/unittests/tsc/noCheck.ts new file mode 100644 index 0000000000000..d69925817b905 --- /dev/null +++ b/src/testRunner/unittests/tsc/noCheck.ts @@ -0,0 +1,5 @@ +import { forEachTscScenarioWithNoCheck } from "../helpers/noCheck.js"; + +describe("unittests:: tsc:: noCheck::", () => { + forEachTscScenarioWithNoCheck("-p"); +}); diff --git a/tests/baselines/reference/config/initTSConfig/Default initialized TSConfig/tsconfig.json b/tests/baselines/reference/config/initTSConfig/Default initialized TSConfig/tsconfig.json index 8bb6097f80145..4c3a3cb096410 100644 --- a/tests/baselines/reference/config/initTSConfig/Default initialized TSConfig/tsconfig.json +++ b/tests/baselines/reference/config/initTSConfig/Default initialized TSConfig/tsconfig.json @@ -54,10 +54,10 @@ // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ + // "noEmit": true, /* Disable emitting files from a compilation. */ // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ // "outDir": "./", /* Specify an output folder for all emitted files. */ // "removeComments": true, /* Disable emitting comments. */ - // "noEmit": true, /* Disable emitting files from a compilation. */ // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ diff --git a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with --help/tsconfig.json b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with --help/tsconfig.json index 8bb6097f80145..4c3a3cb096410 100644 --- a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with --help/tsconfig.json +++ b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with --help/tsconfig.json @@ -54,10 +54,10 @@ // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ + // "noEmit": true, /* Disable emitting files from a compilation. */ // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ // "outDir": "./", /* Specify an output folder for all emitted files. */ // "removeComments": true, /* Disable emitting comments. */ - // "noEmit": true, /* Disable emitting files from a compilation. */ // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ diff --git a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with --watch/tsconfig.json b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with --watch/tsconfig.json index 8bb6097f80145..4c3a3cb096410 100644 --- a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with --watch/tsconfig.json +++ b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with --watch/tsconfig.json @@ -54,10 +54,10 @@ // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ + // "noEmit": true, /* Disable emitting files from a compilation. */ // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ // "outDir": "./", /* Specify an output folder for all emitted files. */ // "removeComments": true, /* Disable emitting comments. */ - // "noEmit": true, /* Disable emitting files from a compilation. */ // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ diff --git a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with advanced options/tsconfig.json b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with advanced options/tsconfig.json index b3d05912583d9..edb7ea2b9b349 100644 --- a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with advanced options/tsconfig.json +++ b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with advanced options/tsconfig.json @@ -54,10 +54,10 @@ // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ + // "noEmit": true, /* Disable emitting files from a compilation. */ // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ // "outDir": "./", /* Specify an output folder for all emitted files. */ // "removeComments": true, /* Disable emitting comments. */ - // "noEmit": true, /* Disable emitting files from a compilation. */ // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ diff --git a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with boolean value compiler options/tsconfig.json b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with boolean value compiler options/tsconfig.json index 558f4243438d2..e01c1d7bb35dc 100644 --- a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with boolean value compiler options/tsconfig.json +++ b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with boolean value compiler options/tsconfig.json @@ -54,10 +54,10 @@ // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ + // "noEmit": true, /* Disable emitting files from a compilation. */ // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ // "outDir": "./", /* Specify an output folder for all emitted files. */ // "removeComments": true, /* Disable emitting comments. */ - // "noEmit": true, /* Disable emitting files from a compilation. */ // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ diff --git a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with enum value compiler options/tsconfig.json b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with enum value compiler options/tsconfig.json index 5679f8b921cdf..e0614bfc14e17 100644 --- a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with enum value compiler options/tsconfig.json +++ b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with enum value compiler options/tsconfig.json @@ -54,10 +54,10 @@ // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ + // "noEmit": true, /* Disable emitting files from a compilation. */ // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ // "outDir": "./", /* Specify an output folder for all emitted files. */ // "removeComments": true, /* Disable emitting comments. */ - // "noEmit": true, /* Disable emitting files from a compilation. */ // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ diff --git a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with files options/tsconfig.json b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with files options/tsconfig.json index 535e6a2d97860..ef17a1a4dcfb2 100644 --- a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with files options/tsconfig.json +++ b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with files options/tsconfig.json @@ -54,10 +54,10 @@ // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ + // "noEmit": true, /* Disable emitting files from a compilation. */ // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ // "outDir": "./", /* Specify an output folder for all emitted files. */ // "removeComments": true, /* Disable emitting comments. */ - // "noEmit": true, /* Disable emitting files from a compilation. */ // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ diff --git a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with incorrect compiler option value/tsconfig.json b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with incorrect compiler option value/tsconfig.json index da587b6bded7f..015e6dc8a3c76 100644 --- a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with incorrect compiler option value/tsconfig.json +++ b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with incorrect compiler option value/tsconfig.json @@ -54,10 +54,10 @@ // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ + // "noEmit": true, /* Disable emitting files from a compilation. */ // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ // "outDir": "./", /* Specify an output folder for all emitted files. */ // "removeComments": true, /* Disable emitting comments. */ - // "noEmit": true, /* Disable emitting files from a compilation. */ // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ diff --git a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with incorrect compiler option/tsconfig.json b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with incorrect compiler option/tsconfig.json index 8bb6097f80145..4c3a3cb096410 100644 --- a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with incorrect compiler option/tsconfig.json +++ b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with incorrect compiler option/tsconfig.json @@ -54,10 +54,10 @@ // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ + // "noEmit": true, /* Disable emitting files from a compilation. */ // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ // "outDir": "./", /* Specify an output folder for all emitted files. */ // "removeComments": true, /* Disable emitting comments. */ - // "noEmit": true, /* Disable emitting files from a compilation. */ // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ diff --git a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with list compiler options with enum value/tsconfig.json b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with list compiler options with enum value/tsconfig.json index a6e74d92a6a8f..b153779e49c2b 100644 --- a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with list compiler options with enum value/tsconfig.json +++ b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with list compiler options with enum value/tsconfig.json @@ -54,10 +54,10 @@ // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ + // "noEmit": true, /* Disable emitting files from a compilation. */ // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ // "outDir": "./", /* Specify an output folder for all emitted files. */ // "removeComments": true, /* Disable emitting comments. */ - // "noEmit": true, /* Disable emitting files from a compilation. */ // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ diff --git a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with list compiler options/tsconfig.json b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with list compiler options/tsconfig.json index 41c2964e0e7fa..9120ea674fb57 100644 --- a/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with list compiler options/tsconfig.json +++ b/tests/baselines/reference/config/initTSConfig/Initialized TSConfig with list compiler options/tsconfig.json @@ -54,10 +54,10 @@ // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */ + // "noEmit": true, /* Disable emitting files from a compilation. */ // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */ // "outDir": "./", /* Specify an output folder for all emitted files. */ // "removeComments": true, /* Disable emitting comments. */ - // "noEmit": true, /* Disable emitting files from a compilation. */ // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */ // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */ // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */ diff --git a/tests/baselines/reference/config/showConfig/Shows tsconfig for single option/noCheck/tsconfig.json b/tests/baselines/reference/config/showConfig/Shows tsconfig for single option/noCheck/tsconfig.json index cd727e8ccdc88..e115e386cb6e9 100644 --- a/tests/baselines/reference/config/showConfig/Shows tsconfig for single option/noCheck/tsconfig.json +++ b/tests/baselines/reference/config/showConfig/Shows tsconfig for single option/noCheck/tsconfig.json @@ -1,3 +1,5 @@ { - "compilerOptions": {} + "compilerOptions": { + "noCheck": true + } } diff --git a/tests/baselines/reference/tsbuild/noCheck-errors/semantic-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck-errors/semantic-errors-with-incremental.js deleted file mode 100644 index 36ab139a99eba..0000000000000 --- a/tests/baselines/reference/tsbuild/noCheck-errors/semantic-errors-with-incremental.js +++ /dev/null @@ -1,472 +0,0 @@ -currentDirectory:: / useCaseSensitiveFileNames: false -Input:: -//// [/lib/lib.d.ts] -/// -interface Boolean {} -interface Function {} -interface CallableFunction {} -interface NewableFunction {} -interface IArguments {} -interface Number { toExponential: any; } -interface Object {} -interface RegExp {} -interface String { charAt: any; } -interface Array { length: number; [n: number]: T; } -interface ReadonlyArray {} -declare const console: { log(msg: any): void; }; - -//// [/src/a.ts] -const err: number = "error"; -const a: number = "hello" - -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'src/tsconfig.tsbuildinfo' does not exist - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - -src/a.ts:2:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -2 const a: number = "hello" -   ~ - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 3 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] -declare const err: number; -declare const a: number; - - -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"9312413704-const err: number = \"error\";\nconst a: number = \"hello\"","signature":"-22763377875-declare const err: number;\ndeclare const a: number;\n","affectsGlobalScope":true}],"root":[2],"options":{"declaration":true,"emitDeclarationOnly":true},"semanticDiagnosticsPerFile":[[2,[{"start":6,"length":3,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."},{"start":35,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "9312413704-const err: number = \"error\";\nconst a: number = \"hello\"", - "signature": "-22763377875-declare const err: number;\ndeclare const a: number;\n", - "affectsGlobalScope": true - }, - "version": "9312413704-const err: number = \"error\";\nconst a: number = \"hello\"", - "signature": "-22763377875-declare const err: number;\ndeclare const a: number;\n", - "affectsGlobalScope": true - } - }, - "root": [ - [ - 2, - "./a.ts" - ] - ], - "options": { - "declaration": true, - "emitDeclarationOnly": true - }, - "semanticDiagnosticsPerFile": [ - [ - "./a.ts", - [ - { - "start": 6, - "length": 3, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - }, - { - "start": 35, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion", - "size": 1089 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - -src/a.ts:2:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -2 const a: number = "hello" -   ~ - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 3 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: - -No shapes updated in the builder:: - - - - -Change:: Fix `a` error -Input:: -//// [/src/a.ts] -const err: number = "error"; -const a = "hello" - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 2 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/src/a.ts (computed .d.ts) - - -//// [/src/a.d.ts] -declare const err: number; -declare const a = "hello"; - - -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"6909448549-const err: number = \"error\";\nconst a = \"hello\"","signature":"-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n","affectsGlobalScope":true}],"root":[2],"options":{"declaration":true,"emitDeclarationOnly":true},"semanticDiagnosticsPerFile":[[2,[{"start":6,"length":3,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "6909448549-const err: number = \"error\";\nconst a = \"hello\"", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - }, - "version": "6909448549-const err: number = \"error\";\nconst a = \"hello\"", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - } - }, - "root": [ - [ - 2, - "./a.ts" - ] - ], - "options": { - "declaration": true, - "emitDeclarationOnly": true - }, - "semanticDiagnosticsPerFile": [ - [ - "./a.ts", - [ - { - "start": 6, - "length": 3, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion", - "size": 970 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 2 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: - -No shapes updated in the builder:: - - - - -Change:: Disable noCheck -Input:: -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: - -No shapes updated in the builder:: - - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: - -No shapes updated in the builder:: - - diff --git a/tests/baselines/reference/tsbuild/noCheck-errors/semantic-errors.js b/tests/baselines/reference/tsbuild/noCheck-errors/semantic-errors.js deleted file mode 100644 index f8dc65820ea76..0000000000000 --- a/tests/baselines/reference/tsbuild/noCheck-errors/semantic-errors.js +++ /dev/null @@ -1,387 +0,0 @@ -currentDirectory:: / useCaseSensitiveFileNames: false -Input:: -//// [/lib/lib.d.ts] -/// -interface Boolean {} -interface Function {} -interface CallableFunction {} -interface NewableFunction {} -interface IArguments {} -interface Number { toExponential: any; } -interface Object {} -interface RegExp {} -interface String { charAt: any; } -interface Array { length: number; [n: number]: T; } -interface ReadonlyArray {} -declare const console: { log(msg: any): void; }; - -//// [/src/a.ts] -const err: number = "error"; -const a: number = "hello" - -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'src/tsconfig.tsbuildinfo' does not exist - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - -src/a.ts:2:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -2 const a: number = "hello" -   ~ - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 3 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] -declare const err: number; -declare const a: number; - - -//// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts"],"errors":true,"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "root": [ - "./a.ts" - ], - "errors": true, - "version": "FakeTSVersion", - "size": 59 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - -src/a.ts:2:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -2 const a: number = "hello" -   ~ - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 3 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents - - -Change:: Fix `a` error -Input:: -//// [/src/a.ts] -const err: number = "error"; -const a = "hello" - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 2 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] -declare const err: number; -declare const a = "hello"; - - -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 2 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents - - -Change:: Disable noCheck -Input:: -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents diff --git a/tests/baselines/reference/tsbuild/noCheck-errors/syntax-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck-errors/syntax-errors-with-incremental.js deleted file mode 100644 index e03962a88aac7..0000000000000 --- a/tests/baselines/reference/tsbuild/noCheck-errors/syntax-errors-with-incremental.js +++ /dev/null @@ -1,445 +0,0 @@ -currentDirectory:: / useCaseSensitiveFileNames: false -Input:: -//// [/lib/lib.d.ts] -/// -interface Boolean {} -interface Function {} -interface CallableFunction {} -interface NewableFunction {} -interface IArguments {} -interface Number { toExponential: any; } -interface Object {} -interface RegExp {} -interface String { charAt: any; } -interface Array { length: number; [n: number]: T; } -interface ReadonlyArray {} -declare const console: { log(msg: any): void; }; - -//// [/src/a.ts] -const err: number = "error"; -const a = "hello - -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'src/tsconfig.tsbuildinfo' does not exist - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:2:17 - error TS1002: Unterminated string literal. - -2 const a = "hello -    - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 2 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -No cached semantic diagnostics in the builder:: - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] -declare const err: number; -declare const a = "hello"; - - -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"8018408675-const err: number = \"error\";\nconst a = \"hello","signature":"-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n","affectsGlobalScope":true}],"root":[2],"options":{"declaration":true,"emitDeclarationOnly":true},"semanticDiagnosticsPerFile":[1,2],"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "8018408675-const err: number = \"error\";\nconst a = \"hello", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - }, - "version": "8018408675-const err: number = \"error\";\nconst a = \"hello", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - } - }, - "root": [ - [ - 2, - "./a.ts" - ] - ], - "options": { - "declaration": true, - "emitDeclarationOnly": true - }, - "semanticDiagnosticsPerFile": [ - [ - "../lib/lib.d.ts", - "not cached" - ], - [ - "./a.ts", - "not cached" - ] - ], - "version": "FakeTSVersion", - "size": 852 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:2:17 - error TS1002: Unterminated string literal. - -2 const a = "hello -    - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 2 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -No cached semantic diagnostics in the builder:: - -No shapes updated in the builder:: - - - - -Change:: Fix `a` error -Input:: -//// [/src/a.ts] -const err: number = "error"; -const a = "hello" - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 2 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/src/a.ts (computed .d.ts) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"6909448549-const err: number = \"error\";\nconst a = \"hello\"","signature":"-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n","affectsGlobalScope":true}],"root":[2],"options":{"declaration":true,"emitDeclarationOnly":true},"semanticDiagnosticsPerFile":[[2,[{"start":6,"length":3,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "6909448549-const err: number = \"error\";\nconst a = \"hello\"", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - }, - "version": "6909448549-const err: number = \"error\";\nconst a = \"hello\"", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - } - }, - "root": [ - [ - 2, - "./a.ts" - ] - ], - "options": { - "declaration": true, - "emitDeclarationOnly": true - }, - "semanticDiagnosticsPerFile": [ - [ - "./a.ts", - [ - { - "start": 6, - "length": 3, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion", - "size": 970 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 2 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: - -No shapes updated in the builder:: - - - - -Change:: Disable noCheck -Input:: -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: - -No shapes updated in the builder:: - - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: - -No shapes updated in the builder:: - - diff --git a/tests/baselines/reference/tsbuild/noCheck-errors/syntax-errors.js b/tests/baselines/reference/tsbuild/noCheck-errors/syntax-errors.js deleted file mode 100644 index d2d88eb69b0ed..0000000000000 --- a/tests/baselines/reference/tsbuild/noCheck-errors/syntax-errors.js +++ /dev/null @@ -1,369 +0,0 @@ -currentDirectory:: / useCaseSensitiveFileNames: false -Input:: -//// [/lib/lib.d.ts] -/// -interface Boolean {} -interface Function {} -interface CallableFunction {} -interface NewableFunction {} -interface IArguments {} -interface Number { toExponential: any; } -interface Object {} -interface RegExp {} -interface String { charAt: any; } -interface Array { length: number; [n: number]: T; } -interface ReadonlyArray {} -declare const console: { log(msg: any): void; }; - -//// [/src/a.ts] -const err: number = "error"; -const a = "hello - -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'src/tsconfig.tsbuildinfo' does not exist - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:2:17 - error TS1002: Unterminated string literal. - -2 const a = "hello -    - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 2 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -No cached semantic diagnostics in the builder:: - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] -declare const err: number; -declare const a = "hello"; - - -//// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts"],"errors":true,"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "root": [ - "./a.ts" - ], - "errors": true, - "version": "FakeTSVersion", - "size": 59 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:2:17 - error TS1002: Unterminated string literal. - -2 const a = "hello -    - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 2 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -No cached semantic diagnostics in the builder:: - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents - - -Change:: Fix `a` error -Input:: -//// [/src/a.ts] -const err: number = "error"; -const a = "hello" - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 2 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - -src/tsconfig.json:3:16 - error TS5023: Unknown compiler option 'noCheck'. - -3 "noCheck": true, -   ~~~~ - - -Found 2 errors. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents - - -Change:: Disable noCheck -Input:: -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-discrepancies.js new file mode 100644 index 0000000000000..f359d21bb7bb4 --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-discrepancies.js @@ -0,0 +1,44 @@ +14:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "errors": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "version": "FakeTSVersion" +} +16:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "errors": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental-discrepancies.js new file mode 100644 index 0000000000000..bdb3abf8331ac --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental-discrepancies.js @@ -0,0 +1,362 @@ +3:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} +4:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} +10:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} +14:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} +16:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental.js new file mode 100644 index 0000000000000..c67d8513f4956 --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental.js @@ -0,0 +1,1267 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = class { private p = 10; }; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "incremental": true + } +} + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'src/tsconfig.tsbuildinfo' does not exist + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (used version) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; +}()); + + +//// [/src/b.d.ts] +export declare const b = 10; + + +//// [/src/b.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.b = void 0; +exports.b = 10; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"-9502176711-export const a = class { private p = 10; };",{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-9502176711-export const a = class { private p = 10; };", + "signature": "-9502176711-export const a = class { private p = 10; };" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "emitDiagnosticsPerFile": [ + [ + "./a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 965 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 853 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; +}()); + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-9502176711-export const a = class { private p = 10; };","signature":"-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected."},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-9502176711-export const a = class { private p = 10; };", + "signature": "-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected." + }, + "version": "-9502176711-export const a = class { private p = 10; };", + "signature": "-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected." + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "emitDiagnosticsPerFile": [ + [ + "./a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1169 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-9502176711-export const a = class { private p = 10; };","signature":"-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected."},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-9502176711-export const a = class { private p = 10; };", + "signature": "-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected." + }, + "version": "-9502176711-export const a = class { private p = 10; };", + "signature": "-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected." + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "emitDiagnosticsPerFile": [ + [ + "./a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1154 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 853 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/c.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/src/c.ts (computed .d.ts) + + +//// [/src/c.d.ts] +export declare const c: number; + + +//// [/src/c.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.c = void 0; +exports.c = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1122 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; +}()); + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-9502176711-export const a = class { private p = 10; };","signature":"-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected."},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-9502176711-export const a = class { private p = 10; };", + "signature": "-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected." + }, + "version": "-9502176711-export const a = class { private p = 10; };", + "signature": "-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected." + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "emitDiagnosticsPerFile": [ + [ + "./a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1301 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 985 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors.js new file mode 100644 index 0000000000000..e217716768a51 --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors.js @@ -0,0 +1,887 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = class { private p = 10; }; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true + } +} + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'src/tsconfig.tsbuildinfo' does not exist + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + +[HH:MM:SS AM] Updating unchanged output timestamps of project '/src/tsconfig.json'... + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (used version) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; +}()); + + +//// [/src/b.d.ts] +export declare const b = 10; + + +//// [/src/b.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.b = void 0; +exports.b = 10; + + +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 68 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + +[HH:MM:SS AM] Updating unchanged output timestamps of project '/src/tsconfig.json'... + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (used version) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] file written with same contents +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "version": "FakeTSVersion", + "size": 54 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + +[HH:MM:SS AM] Updating unchanged output timestamps of project '/src/tsconfig.json'... + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (used version) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file changed its modified time +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; +}()); + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 68 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + +[HH:MM:SS AM] Updating unchanged output timestamps of project '/src/tsconfig.json'... + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (used version) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file changed its modified time +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] file written with same contents +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + +[HH:MM:SS AM] Updating unchanged output timestamps of project '/src/tsconfig.json'... + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (used version) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file changed its modified time +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] file written with same contents +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "version": "FakeTSVersion", + "size": 54 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/c.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +/src/c.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] +export declare const c: number; + + +//// [/src/c.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.c = void 0; +exports.c = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts","./c.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 77 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + +[HH:MM:SS AM] Updating unchanged output timestamps of project '/src/tsconfig.json'... + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (used version) +/src/b.ts (computed .d.ts during emit) +/src/c.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file changed its modified time +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; +}()); + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] file written with same contents +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +/src/c.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts","./c.ts"],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "version": "FakeTSVersion", + "size": 63 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-discrepancies.js new file mode 100644 index 0000000000000..8f08bc8ec294f --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-discrepancies.js @@ -0,0 +1,64 @@ +8:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "errors": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "version": "FakeTSVersion" +} +14:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "errors": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "version": "FakeTSVersion" +} +16:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "errors": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental-discrepancies.js new file mode 100644 index 0000000000000..51b9a9199ecfb --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental-discrepancies.js @@ -0,0 +1,438 @@ +3:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} +4:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} +8:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-11705693502-export const a: number = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-11705693502-export const a: number = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} +10:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} +14:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} +16:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental.js new file mode 100644 index 0000000000000..e9a1bb28b5ba4 --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental.js @@ -0,0 +1,1016 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a: number = "hello"; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "incremental": true + } +} + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'src/tsconfig.tsbuildinfo' does not exist + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] +export declare const a: number; + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] +export declare const b = 10; + + +//// [/src/b.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.b = void 0; +exports.b = 10; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 857 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/b.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 853 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] +export declare const a: number; + + +//// [/src/a.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 857 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 853 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/c.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/src/c.ts (computed .d.ts) + + +//// [/src/c.d.ts] +export declare const c: number; + + +//// [/src/c.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.c = void 0; +exports.c = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1122 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] +export declare const a: number; + + +//// [/src/a.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 989 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 985 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors.js new file mode 100644 index 0000000000000..f4793a798c488 --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors.js @@ -0,0 +1,666 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a: number = "hello"; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true + } +} + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'src/tsconfig.tsbuildinfo' does not exist + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] +export declare const a: number; + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] +export declare const b = 10; + + +//// [/src/b.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.b = void 0; +exports.b = 10; + + +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "version": "FakeTSVersion", + "size": 54 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/b.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] file written with same contents +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] +export declare const a: number; + + +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] file written with same contents +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] file written with same contents +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/c.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +/src/c.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] +export declare const c: number; + + +//// [/src/c.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.c = void 0; +exports.c = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts","./c.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 77 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +/src/c.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] +export declare const a: number; + + +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts","./c.ts"],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "version": "FakeTSVersion", + "size": 63 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +/src/c.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] file written with same contents +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-discrepancies.js new file mode 100644 index 0000000000000..f359d21bb7bb4 --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-discrepancies.js @@ -0,0 +1,44 @@ +14:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "errors": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "version": "FakeTSVersion" +} +16:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "errors": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js new file mode 100644 index 0000000000000..1616d62fd615e --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js @@ -0,0 +1,610 @@ +3:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} +4:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} +6:: Introduce error with noCheck +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-14000546910-export const a = \"hello" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-14000546910-export const a = \"hello" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} +7:: no-change-run +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-14000546910-export const a = \"hello" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-14000546910-export const a = \"hello" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} +8:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-14000546910-export const a = \"hello" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-14000546910-export const a = \"hello" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} +10:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} +14:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} +16:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental.js new file mode 100644 index 0000000000000..0b776d47ade00 --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental.js @@ -0,0 +1,1181 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = "hello + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "incremental": true + } +} + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'src/tsconfig.tsbuildinfo' does not exist + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello; + + +//// [/src/b.d.ts] +export declare const b = 10; + + +//// [/src/b.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.b = void 0; +exports.b = 10; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"semanticDiagnosticsPerFile":[1,2,3],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 887 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 853 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"semanticDiagnosticsPerFile":[2],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 883 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 853 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/c.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/src/c.ts (computed .d.ts) + + +//// [/src/c.d.ts] +export declare const c: number; + + +//// [/src/c.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.c = void 0; +exports.c = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1122 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No cached semantic diagnostics in the builder:: + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"semanticDiagnosticsPerFile":[1,2,3,4],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ], + [ + "./c.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 1021 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 985 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors.js new file mode 100644 index 0000000000000..33f08454575be --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors.js @@ -0,0 +1,843 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = "hello + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true + } +} + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'src/tsconfig.tsbuildinfo' does not exist + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello; + + +//// [/src/b.d.ts] +export declare const b = 10; + + +//// [/src/b.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.b = void 0; +exports.b = 10; + + +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 68 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] file written with same contents +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "version": "FakeTSVersion", + "size": 54 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 68 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] file written with same contents +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] file written with same contents +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "version": "FakeTSVersion", + "size": 54 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/c.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +/src/c.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] +export declare const c: number; + + +//// [/src/c.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.c = void 0; +exports.c = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts","./c.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 77 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No cached semantic diagnostics in the builder:: + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +/src/c.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] file written with same contents +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +/src/c.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts","./c.ts"],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "version": "FakeTSVersion", + "size": 63 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-discrepancies.js new file mode 100644 index 0000000000000..8d390f4cdd92b --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-discrepancies.js @@ -0,0 +1,44 @@ +14:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "errors": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "version": "FakeTSVersion" +} +16:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "errors": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental-discrepancies.js new file mode 100644 index 0000000000000..1d27fb5b0d21d --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental-discrepancies.js @@ -0,0 +1,304 @@ +3:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +4:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +10:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +14:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +16:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental.js new file mode 100644 index 0000000000000..db7f9464bab7d --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental.js @@ -0,0 +1,1186 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = class { private p = 10; }; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "incremental": true, + "module": "amd", + "outFile": "../outFile.js" + } +} + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'outFile.tsbuildinfo' does not exist + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; + }()); +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-9502176711-export const a = class { private p = 10; };", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "emitDiagnosticsPerFile": [ + [ + "./src/a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 901 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 713 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; + }()); +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-9502176711-export const a = class { private p = 10; };", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "emitDiagnosticsPerFile": [ + [ + "./src/a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 901 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-9502176711-export const a = class { private p = 10; };", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "emitDiagnosticsPerFile": [ + [ + "./src/a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 886 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 713 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/c.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 915 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; + }()); +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-9502176711-export const a = class { private p = 10; };", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "emitDiagnosticsPerFile": [ + [ + "./src/a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 966 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 778 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors.js b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors.js new file mode 100644 index 0000000000000..807f37b0eb67c --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors.js @@ -0,0 +1,928 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = class { private p = 10; }; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "module": "amd", + "outFile": "../outFile.js" + } +} + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'outFile.tsbuildinfo' does not exist + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + +[HH:MM:SS AM] Updating unchanged output timestamps of project '/src/tsconfig.json'... + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; + }()); +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 76 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + +[HH:MM:SS AM] Updating unchanged output timestamps of project '/src/tsconfig.json'... + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] file written with same contents +//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "version": "FakeTSVersion", + "size": 62 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + +[HH:MM:SS AM] Updating unchanged output timestamps of project '/src/tsconfig.json'... + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file changed its modified time +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; + }()); +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 76 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + +[HH:MM:SS AM] Updating unchanged output timestamps of project '/src/tsconfig.json'... + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file changed its modified time +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] file written with same contents +//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + +[HH:MM:SS AM] Updating unchanged output timestamps of project '/src/tsconfig.json'... + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file changed its modified time +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] file written with same contents +//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "version": "FakeTSVersion", + "size": 62 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/c.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 89 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + +[HH:MM:SS AM] Updating unchanged output timestamps of project '/src/tsconfig.json'... + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file changed its modified time +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; + }()); +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] file written with same contents +//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "version": "FakeTSVersion", + "size": 75 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-discrepancies.js new file mode 100644 index 0000000000000..34ea2b9343bef --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-discrepancies.js @@ -0,0 +1,64 @@ +8:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "errors": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "version": "FakeTSVersion" +} +14:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "errors": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "version": "FakeTSVersion" +} +16:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "errors": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental-discrepancies.js new file mode 100644 index 0000000000000..fabe157609ae6 --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental-discrepancies.js @@ -0,0 +1,370 @@ +3:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +4:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +8:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-11705693502-export const a: number = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/a.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-11705693502-export const a: number = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +10:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +14:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +16:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental.js new file mode 100644 index 0000000000000..67f271f26f1d5 --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental.js @@ -0,0 +1,926 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a: number = "hello"; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "incremental": true, + "module": "amd", + "outFile": "../outFile.js" + } +} + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'outFile.tsbuildinfo' does not exist + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a: number; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-11705693502-export const a: number = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 721 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/b.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 713 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a: number; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-11705693502-export const a: number = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 721 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 713 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/c.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 915 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a: number; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-11705693502-export const a: number = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 786 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 778 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors.js b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors.js new file mode 100644 index 0000000000000..80ff4ef0c8be8 --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors.js @@ -0,0 +1,695 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a: number = "hello"; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "module": "amd", + "outFile": "../outFile.js" + } +} + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'outFile.tsbuildinfo' does not exist + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a: number; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "version": "FakeTSVersion", + "size": 62 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/b.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] file written with same contents +//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a: number; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] file written with same contents +//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] file written with same contents +//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/c.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 89 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a: number; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "version": "FakeTSVersion", + "size": 75 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] file written with same contents +//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-discrepancies.js new file mode 100644 index 0000000000000..8d390f4cdd92b --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-discrepancies.js @@ -0,0 +1,44 @@ +14:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "errors": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "version": "FakeTSVersion" +} +16:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "errors": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js new file mode 100644 index 0000000000000..e79a55193d21a --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js @@ -0,0 +1,384 @@ +3:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +4:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +8:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-14000546910-export const a = \"hello", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-14000546910-export const a = \"hello", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} +10:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +14:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +16:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental.js new file mode 100644 index 0000000000000..e9cd63ac1c529 --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental.js @@ -0,0 +1,1117 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = "hello + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "incremental": true, + "module": "amd", + "outFile": "../outFile.js" + } +} + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'outFile.tsbuildinfo' does not exist + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-14000546910-export const a = \"hello", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 747 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 713 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-14000546910-export const a = \"hello", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 747 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 713 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/c.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 915 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-14000546910-export const a = \"hello", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ], + [ + "./src/c.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 814 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 778 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' + +exitCode:: ExitStatus.Success + + diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors.js b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors.js new file mode 100644 index 0000000000000..5552de09c2893 --- /dev/null +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors.js @@ -0,0 +1,884 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = "hello + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "module": "amd", + "outFile": "../outFile.js" + } +} + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'outFile.tsbuildinfo' does not exist + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 76 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] file written with same contents +//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "version": "FakeTSVersion", + "size": 62 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 76 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] file written with same contents +//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] file written with same contents +//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "version": "FakeTSVersion", + "size": 62 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/c.ts' + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 89 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] file written with same contents +//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "noCheck": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "version": "FakeTSVersion", + "size": 75 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v --noCheck +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' + +exitCode:: ExitStatus.Success + + diff --git a/tests/baselines/reference/tsbuild/noCheck/semantic-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck/semantic-errors-with-incremental.js deleted file mode 100644 index 1c0fc9d140535..0000000000000 --- a/tests/baselines/reference/tsbuild/noCheck/semantic-errors-with-incremental.js +++ /dev/null @@ -1,398 +0,0 @@ -currentDirectory:: / useCaseSensitiveFileNames: false -Input:: -//// [/lib/lib.d.ts] -/// -interface Boolean {} -interface Function {} -interface CallableFunction {} -interface NewableFunction {} -interface IArguments {} -interface Number { toExponential: any; } -interface Object {} -interface RegExp {} -interface String { charAt: any; } -interface Array { length: number; [n: number]: T; } -interface ReadonlyArray {} -declare const console: { log(msg: any): void; }; - -//// [/src/a.ts] -const err: number = "error"; -const a: number = "hello" - -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'src/tsconfig.tsbuildinfo' does not exist - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -exitCode:: ExitStatus.Success -Program root files: [ - "/src/a.ts" -] -Program options: { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] -declare const err: number; -declare const a: number; - - -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"9312413704-const err: number = \"error\";\nconst a: number = \"hello\"","signature":"-22763377875-declare const err: number;\ndeclare const a: number;\n","affectsGlobalScope":true}],"root":[2],"options":{"declaration":true,"emitDeclarationOnly":true,"noCheck":true},"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "9312413704-const err: number = \"error\";\nconst a: number = \"hello\"", - "signature": "-22763377875-declare const err: number;\ndeclare const a: number;\n", - "affectsGlobalScope": true - }, - "version": "9312413704-const err: number = \"error\";\nconst a: number = \"hello\"", - "signature": "-22763377875-declare const err: number;\ndeclare const a: number;\n", - "affectsGlobalScope": true - } - }, - "root": [ - [ - 2, - "./a.ts" - ] - ], - "options": { - "declaration": true, - "emitDeclarationOnly": true, - "noCheck": true - }, - "version": "FakeTSVersion", - "size": 838 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' - -exitCode:: ExitStatus.Success - - - - -Change:: Fix `a` error -Input:: -//// [/src/a.ts] -const err: number = "error"; -const a = "hello" - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -exitCode:: ExitStatus.Success -Program root files: [ - "/src/a.ts" -] -Program options: { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/src/a.ts - -Shape signatures in builder refreshed for:: -/src/a.ts (computed .d.ts) - - -//// [/src/a.d.ts] -declare const err: number; -declare const a = "hello"; - - -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"6909448549-const err: number = \"error\";\nconst a = \"hello\"","signature":"-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n","affectsGlobalScope":true}],"root":[2],"options":{"declaration":true,"emitDeclarationOnly":true,"noCheck":true},"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "6909448549-const err: number = \"error\";\nconst a = \"hello\"", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - }, - "version": "6909448549-const err: number = \"error\";\nconst a = \"hello\"", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - } - }, - "root": [ - [ - 2, - "./a.ts" - ] - ], - "options": { - "declaration": true, - "emitDeclarationOnly": true, - "noCheck": true - }, - "version": "FakeTSVersion", - "size": 834 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' - -exitCode:: ExitStatus.Success - - - - -Change:: Disable noCheck -Input:: -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/tsconfig.json' - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -No shapes updated in the builder:: - - -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"6909448549-const err: number = \"error\";\nconst a = \"hello\"","signature":"-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n","affectsGlobalScope":true}],"root":[2],"options":{"declaration":true,"emitDeclarationOnly":true},"semanticDiagnosticsPerFile":[[2,[{"start":6,"length":3,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "6909448549-const err: number = \"error\";\nconst a = \"hello\"", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - }, - "version": "6909448549-const err: number = \"error\";\nconst a = \"hello\"", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - } - }, - "root": [ - [ - 2, - "./a.ts" - ] - ], - "options": { - "declaration": true, - "emitDeclarationOnly": true - }, - "semanticDiagnosticsPerFile": [ - [ - "./a.ts", - [ - { - "start": 6, - "length": 3, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion", - "size": 970 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: - -No shapes updated in the builder:: - - diff --git a/tests/baselines/reference/tsbuild/noCheck/semantic-errors.js b/tests/baselines/reference/tsbuild/noCheck/semantic-errors.js deleted file mode 100644 index e1ae89b9e9f35..0000000000000 --- a/tests/baselines/reference/tsbuild/noCheck/semantic-errors.js +++ /dev/null @@ -1,285 +0,0 @@ -currentDirectory:: / useCaseSensitiveFileNames: false -Input:: -//// [/lib/lib.d.ts] -/// -interface Boolean {} -interface Function {} -interface CallableFunction {} -interface NewableFunction {} -interface IArguments {} -interface Number { toExponential: any; } -interface Object {} -interface RegExp {} -interface String { charAt: any; } -interface Array { length: number; [n: number]: T; } -interface ReadonlyArray {} -declare const console: { log(msg: any): void; }; - -//// [/src/a.ts] -const err: number = "error"; -const a: number = "hello" - -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'src/tsconfig.tsbuildinfo' does not exist - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -exitCode:: ExitStatus.Success -Program root files: [ - "/src/a.ts" -] -Program options: { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] -declare const err: number; -declare const a: number; - - -//// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts"],"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "root": [ - "./a.ts" - ], - "version": "FakeTSVersion", - "size": 45 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.d.ts' - -exitCode:: ExitStatus.Success - - - - -Change:: Fix `a` error -Input:: -//// [/src/a.ts] -const err: number = "error"; -const a = "hello" - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -exitCode:: ExitStatus.Success -Program root files: [ - "/src/a.ts" -] -Program options: { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] -declare const err: number; -declare const a = "hello"; - - -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.d.ts' - -exitCode:: ExitStatus.Success - - - - -Change:: Disable noCheck -Input:: -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/a.d.ts' is older than input 'src/tsconfig.json' - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts"],"errors":true,"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "root": [ - "./a.ts" - ], - "errors": true, - "version": "FakeTSVersion", - "size": 59 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents diff --git a/tests/baselines/reference/tsbuild/noCheck/syntax-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck/syntax-errors-with-incremental.js deleted file mode 100644 index 8c53c97a6152e..0000000000000 --- a/tests/baselines/reference/tsbuild/noCheck/syntax-errors-with-incremental.js +++ /dev/null @@ -1,440 +0,0 @@ -currentDirectory:: / useCaseSensitiveFileNames: false -Input:: -//// [/lib/lib.d.ts] -/// -interface Boolean {} -interface Function {} -interface CallableFunction {} -interface NewableFunction {} -interface IArguments {} -interface Number { toExponential: any; } -interface Object {} -interface RegExp {} -interface String { charAt: any; } -interface Array { length: number; [n: number]: T; } -interface ReadonlyArray {} -declare const console: { log(msg: any): void; }; - -//// [/src/a.ts] -const err: number = "error"; -const a = "hello - -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'src/tsconfig.tsbuildinfo' does not exist - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:2:17 - error TS1002: Unterminated string literal. - -2 const a = "hello -    - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -No cached semantic diagnostics in the builder:: - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] -declare const err: number; -declare const a = "hello"; - - -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"8018408675-const err: number = \"error\";\nconst a = \"hello","signature":"-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n","affectsGlobalScope":true}],"root":[2],"options":{"declaration":true,"emitDeclarationOnly":true,"noCheck":true},"semanticDiagnosticsPerFile":[1,2],"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "8018408675-const err: number = \"error\";\nconst a = \"hello", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - }, - "version": "8018408675-const err: number = \"error\";\nconst a = \"hello", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - } - }, - "root": [ - [ - 2, - "./a.ts" - ] - ], - "options": { - "declaration": true, - "emitDeclarationOnly": true, - "noCheck": true - }, - "semanticDiagnosticsPerFile": [ - [ - "../lib/lib.d.ts", - "not cached" - ], - [ - "./a.ts", - "not cached" - ] - ], - "version": "FakeTSVersion", - "size": 867 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:2:17 - error TS1002: Unterminated string literal. - -2 const a = "hello -    - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -No cached semantic diagnostics in the builder:: - -No shapes updated in the builder:: - - - - -Change:: Fix `a` error -Input:: -//// [/src/a.ts] -const err: number = "error"; -const a = "hello" - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -exitCode:: ExitStatus.Success -Program root files: [ - "/src/a.ts" -] -Program options: { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/src/a.ts (computed .d.ts) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"6909448549-const err: number = \"error\";\nconst a = \"hello\"","signature":"-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n","affectsGlobalScope":true}],"root":[2],"options":{"declaration":true,"emitDeclarationOnly":true,"noCheck":true},"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "6909448549-const err: number = \"error\";\nconst a = \"hello\"", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - }, - "version": "6909448549-const err: number = \"error\";\nconst a = \"hello\"", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - } - }, - "root": [ - [ - 2, - "./a.ts" - ] - ], - "options": { - "declaration": true, - "emitDeclarationOnly": true, - "noCheck": true - }, - "version": "FakeTSVersion", - "size": 834 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' - -exitCode:: ExitStatus.Success - - - - -Change:: Disable noCheck -Input:: -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/tsconfig.json' - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -No shapes updated in the builder:: - - -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"6909448549-const err: number = \"error\";\nconst a = \"hello\"","signature":"-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n","affectsGlobalScope":true}],"root":[2],"options":{"declaration":true,"emitDeclarationOnly":true},"semanticDiagnosticsPerFile":[[2,[{"start":6,"length":3,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "6909448549-const err: number = \"error\";\nconst a = \"hello\"", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - }, - "version": "6909448549-const err: number = \"error\";\nconst a = \"hello\"", - "signature": "-22441876417-declare const err: number;\ndeclare const a = \"hello\";\n", - "affectsGlobalScope": true - } - }, - "root": [ - [ - 2, - "./a.ts" - ] - ], - "options": { - "declaration": true, - "emitDeclarationOnly": true - }, - "semanticDiagnosticsPerFile": [ - [ - "./a.ts", - [ - { - "start": 6, - "length": 3, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion", - "size": 970 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v --incremental -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "incremental": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: - -No shapes updated in the builder:: - - diff --git a/tests/baselines/reference/tsbuild/noCheck/syntax-errors.js b/tests/baselines/reference/tsbuild/noCheck/syntax-errors.js deleted file mode 100644 index 9c9d99d929691..0000000000000 --- a/tests/baselines/reference/tsbuild/noCheck/syntax-errors.js +++ /dev/null @@ -1,331 +0,0 @@ -currentDirectory:: / useCaseSensitiveFileNames: false -Input:: -//// [/lib/lib.d.ts] -/// -interface Boolean {} -interface Function {} -interface CallableFunction {} -interface NewableFunction {} -interface IArguments {} -interface Number { toExponential: any; } -interface Object {} -interface RegExp {} -interface String { charAt: any; } -interface Array { length: number; [n: number]: T; } -interface ReadonlyArray {} -declare const console: { log(msg: any): void; }; - -//// [/src/a.ts] -const err: number = "error"; -const a = "hello - -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'src/tsconfig.tsbuildinfo' does not exist - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:2:17 - error TS1002: Unterminated string literal. - -2 const a = "hello -    - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -No cached semantic diagnostics in the builder:: - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] -declare const err: number; -declare const a = "hello"; - - -//// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts"],"errors":true,"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "root": [ - "./a.ts" - ], - "errors": true, - "version": "FakeTSVersion", - "size": 59 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:2:17 - error TS1002: Unterminated string literal. - -2 const a = "hello -    - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -No cached semantic diagnostics in the builder:: - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents - - -Change:: Fix `a` error -Input:: -//// [/src/a.ts] -const err: number = "error"; -const a = "hello" - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -exitCode:: ExitStatus.Success -Program root files: [ - "/src/a.ts" -] -Program options: { - "noCheck": true, - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts"],"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "root": [ - "./a.ts" - ], - "version": "FakeTSVersion", - "size": 45 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.d.ts' - -exitCode:: ExitStatus.Success - - - - -Change:: Disable noCheck -Input:: -//// [/src/tsconfig.json] -{ - "compilerOptions": { - "emitDeclarationOnly": true, - "declaration": true - } -} - - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/a.d.ts' is older than input 'src/tsconfig.json' - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts"],"errors":true,"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "root": [ - "./a.ts" - ], - "errors": true, - "version": "FakeTSVersion", - "size": 59 -} - - - -Change:: no-change-run -Input:: - - -Output:: -/lib/tsc --b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:7 - error TS2322: Type 'string' is not assignable to type 'number'. - -1 const err: number = "error"; -   ~~~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts" -] -Program options: { - "emitDeclarationOnly": true, - "declaration": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) - - -//// [/src/a.d.ts] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents diff --git a/tests/baselines/reference/tsc/noCheck/multiFile/dts-errors-with-incremental.js b/tests/baselines/reference/tsc/noCheck/multiFile/dts-errors-with-incremental.js new file mode 100644 index 0000000000000..f7b1b66345d5c --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/multiFile/dts-errors-with-incremental.js @@ -0,0 +1,1742 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = class { private p = 10; }; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "incremental": true + } +} + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (used version) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; +}()); + + +//// [/src/b.d.ts] +export declare const b = 10; + + +//// [/src/b.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.b = void 0; +exports.b = 10; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"-9502176711-export const a = class { private p = 10; };",{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-9502176711-export const a = class { private p = 10; };", + "signature": "-9502176711-export const a = class { private p = 10; };" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "emitDiagnosticsPerFile": [ + [ + "./a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 965 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 853 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion", + "size": 838 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 853 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; +}()); + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-9502176711-export const a = class { private p = 10; };","signature":"-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected."},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-9502176711-export const a = class { private p = 10; };", + "signature": "-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected." + }, + "version": "-9502176711-export const a = class { private p = 10; };", + "signature": "-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected." + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "emitDiagnosticsPerFile": [ + [ + "./a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1169 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-9502176711-export const a = class { private p = 10; };","signature":"-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected."},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-9502176711-export const a = class { private p = 10; };", + "signature": "-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected." + }, + "version": "-9502176711-export const a = class { private p = 10; };", + "signature": "-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected." + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "emitDiagnosticsPerFile": [ + [ + "./a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1154 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 853 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion", + "size": 838 +} + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/src/c.ts + +Shape signatures in builder refreshed for:: +/src/c.ts (computed .d.ts) + + +//// [/src/c.d.ts] +export declare const c: number; + + +//// [/src/c.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.c = void 0; +exports.c = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1122 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; +}()); + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-9502176711-export const a = class { private p = 10; };","signature":"-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected."},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-9502176711-export const a = class { private p = 10; };", + "signature": "-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected." + }, + "version": "-9502176711-export const a = class { private p = 10; };", + "signature": "-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected." + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "emitDiagnosticsPerFile": [ + [ + "./a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1301 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 985 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1122 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 985 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1122 +} + diff --git a/tests/baselines/reference/tsc/noCheck/multiFile/dts-errors.js b/tests/baselines/reference/tsc/noCheck/multiFile/dts-errors.js new file mode 100644 index 0000000000000..dedde28258462 --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/multiFile/dts-errors.js @@ -0,0 +1,739 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = class { private p = 10; }; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true + } +} + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; +}()); + + +//// [/src/b.d.ts] +export declare const b = 10; + + +//// [/src/b.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.b = void 0; +exports.b = 10; + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; +}()); + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] +export declare const c: number; + + +//// [/src/c.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.c = void 0; +exports.c = "hello"; + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; +}()); + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents diff --git a/tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors-with-incremental.js b/tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors-with-incremental.js new file mode 100644 index 0000000000000..916a849c4d468 --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors-with-incremental.js @@ -0,0 +1,1637 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a: number = "hello"; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "incremental": true + } +} + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] +export declare const a: number; + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] +export declare const b = 10; + + +//// [/src/b.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.b = void 0; +exports.b = 10; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 857 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 853 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion", + "size": 838 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 853 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] +export declare const a: number; + + +//// [/src/a.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 857 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/a.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const a: number = "hello"; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[2,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 994 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 853 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion", + "size": 838 +} + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/src/c.ts + +Shape signatures in builder refreshed for:: +/src/c.ts (computed .d.ts) + + +//// [/src/c.d.ts] +export declare const c: number; + + +//// [/src/c.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.c = void 0; +exports.c = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1122 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] +export declare const a: number; + + +//// [/src/a.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 989 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 985 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1122 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 985 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1122 +} + diff --git a/tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors.js b/tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors.js new file mode 100644 index 0000000000000..5ec62cd78dbe4 --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors.js @@ -0,0 +1,675 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a: number = "hello"; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true + } +} + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] +export declare const a: number; + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] +export declare const b = 10; + + +//// [/src/b.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.b = void 0; +exports.b = 10; + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] +export declare const a: number; + + +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/a.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const a: number = "hello"; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] +export declare const c: number; + + +//// [/src/c.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.c = void 0; +exports.c = "hello"; + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] +export declare const a: number; + + +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents diff --git a/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js new file mode 100644 index 0000000000000..7ac21f30830b1 --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js @@ -0,0 +1,248 @@ +6:: Introduce error with noCheck +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-14000546910-export const a = \"hello" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-14000546910-export const a = \"hello" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} +7:: no-change-run +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-14000546910-export const a = \"hello" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-14000546910-export const a = \"hello" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} +8:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-14000546910-export const a = \"hello" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-14000546910-export const a = \"hello" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental.js b/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental.js new file mode 100644 index 0000000000000..09d905290ae8a --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental.js @@ -0,0 +1,1656 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = "hello + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "incremental": true + } +} + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello; + + +//// [/src/b.d.ts] +export declare const b = 10; + + +//// [/src/b.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.b = void 0; +exports.b = 10; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"semanticDiagnosticsPerFile":[1,2,3],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 887 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 853 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion", + "size": 838 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 853 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"semanticDiagnosticsPerFile":[2],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 883 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 853 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion", + "size": 838 +} + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/src/c.ts + +Shape signatures in builder refreshed for:: +/src/c.ts (computed .d.ts) + + +//// [/src/c.d.ts] +export declare const c: number; + + +//// [/src/c.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.c = void 0; +exports.c = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1122 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No cached semantic diagnostics in the builder:: + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"semanticDiagnosticsPerFile":[1,2,3,4],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ], + [ + "./c.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 1021 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 985 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1122 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true, + "noCheck": true + }, + "version": "FakeTSVersion", + "size": 985 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1122 +} + diff --git a/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors.js b/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors.js new file mode 100644 index 0000000000000..dfd65dfb33fad --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors.js @@ -0,0 +1,730 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = "hello + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true + } +} + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] +export declare const a = "hello"; + + +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello; + + +//// [/src/b.d.ts] +export declare const b = 10; + + +//// [/src/b.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.b = void 0; +exports.b = 10; + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] +export declare const c: number; + + +//// [/src/c.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.c = void 0; +exports.c = "hello"; + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents diff --git a/tests/baselines/reference/tsc/noCheck/outFile/dts-errors-with-incremental.js b/tests/baselines/reference/tsc/noCheck/outFile/dts-errors-with-incremental.js new file mode 100644 index 0000000000000..a558520976301 --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/outFile/dts-errors-with-incremental.js @@ -0,0 +1,1539 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = class { private p = 10; }; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "incremental": true, + "module": "amd", + "outFile": "../outFile.js" + } +} + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; + }()); +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-9502176711-export const a = class { private p = 10; };", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "emitDiagnosticsPerFile": [ + [ + "./src/a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 901 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 713 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 698 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 713 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; + }()); +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-9502176711-export const a = class { private p = 10; };", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "emitDiagnosticsPerFile": [ + [ + "./src/a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 901 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-9502176711-export const a = class { private p = 10; };", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "emitDiagnosticsPerFile": [ + [ + "./src/a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 886 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 713 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 698 +} + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 915 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; + }()); +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-9502176711-export const a = class { private p = 10; };", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "emitDiagnosticsPerFile": [ + [ + "./src/a.ts", + [ + { + "start": 13, + "length": 1, + "messageText": "Property 'p' of exported class expression may not be private or protected.", + "category": 1, + "code": 4094 + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 966 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 778 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 915 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 778 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 915 +} + diff --git a/tests/baselines/reference/tsc/noCheck/outFile/dts-errors.js b/tests/baselines/reference/tsc/noCheck/outFile/dts-errors.js new file mode 100644 index 0000000000000..cb3011eb46f5b --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/outFile/dts-errors.js @@ -0,0 +1,807 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = class { private p = 10; }; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "module": "amd", + "outFile": "../outFile.js" + } +} + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; + }()); +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; + }()); +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = class { private p = 10; }; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. + +1 export const a = class { private p = 10; }; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = /** @class */ (function () { + function class_1() { + this.p = 10; + } + return class_1; + }()); +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents diff --git a/tests/baselines/reference/tsc/noCheck/outFile/semantic-errors-with-incremental.js b/tests/baselines/reference/tsc/noCheck/outFile/semantic-errors-with-incremental.js new file mode 100644 index 0000000000000..48f09b8dd4444 --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/outFile/semantic-errors-with-incremental.js @@ -0,0 +1,1409 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a: number = "hello"; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "incremental": true, + "module": "amd", + "outFile": "../outFile.js" + } +} + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a: number; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-11705693502-export const a: number = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 721 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 713 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 698 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 713 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a: number; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-11705693502-export const a: number = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 721 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/a.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const a: number = "hello"; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[2,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-11705693502-export const a: number = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/a.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 858 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 713 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 698 +} + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 915 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a: number; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-11705693502-export const a: number = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 786 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 778 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 915 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 778 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 915 +} + diff --git a/tests/baselines/reference/tsc/noCheck/outFile/semantic-errors.js b/tests/baselines/reference/tsc/noCheck/outFile/semantic-errors.js new file mode 100644 index 0000000000000..1fc5b8719b46d --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/outFile/semantic-errors.js @@ -0,0 +1,722 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a: number = "hello"; + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "module": "amd", + "outFile": "../outFile.js" + } +} + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] +declare module "a" { + export const a: number; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] +declare module "a" { + export const a: number; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/a.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const a: number = "hello"; +   ~ + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] +declare module "a" { + export const a: number; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents diff --git a/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js new file mode 100644 index 0000000000000..bbaca230758fa --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js @@ -0,0 +1,80 @@ +8:: No Change run with checking +*** Needs explanation +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-14000546910-export const a = \"hello", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-14000546910-export const a = \"hello", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental.js b/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental.js new file mode 100644 index 0000000000000..aac6335fd0c14 --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental.js @@ -0,0 +1,1470 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = "hello + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "incremental": true, + "module": "amd", + "outFile": "../outFile.js" + } +} + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-14000546910-export const a = \"hello", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 747 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 713 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 698 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 713 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-14000546910-export const a = \"hello", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 747 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 713 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 698 +} + + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 915 +} + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No cached semantic diagnostics in the builder:: + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-14000546910-export const a = \"hello", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ], + [ + "./src/c.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 814 +} + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 778 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 915 +} + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "noCheck": true, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 778 +} + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 915 +} + diff --git a/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors.js b/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors.js new file mode 100644 index 0000000000000..98244aae76ad5 --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors.js @@ -0,0 +1,798 @@ +currentDirectory:: / useCaseSensitiveFileNames: false +Input:: +//// [/lib/lib.d.ts] +/// +interface Boolean {} +interface Function {} +interface CallableFunction {} +interface NewableFunction {} +interface IArguments {} +interface Number { toExponential: any; } +interface Object {} +interface RegExp {} +interface String { charAt: any; } +interface Array { length: number; [n: number]: T; } +interface ReadonlyArray {} +declare const console: { log(msg: any): void; }; + +//// [/src/a.ts] +export const a = "hello + +//// [/src/b.ts] +export const b = 10; + +//// [/src/tsconfig.json] +{ + "compilerOptions": { + "declaration": true, + "module": "amd", + "outFile": "../outFile.js" + } +} + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: Add file with error +Input:: +//// [/src/c.ts] +export const c: number = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] +declare module "a" { + export const a = "hello"; +} +declare module "b" { + export const b = 10; +} +declare module "c" { + export const c: number; +} + + +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + + + +Change:: Introduce error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +src/a.ts:1:24 - error TS1002: Unterminated string literal. + +1 export const a = "hello +    + + +Found 1 error in src/a.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + + + +Change:: Fix `a` error with noCheck +Input:: +//// [/src/a.ts] +export const a = "hello"; + + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] +define("a", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.a = void 0; + exports.a = "hello"; +}); +define("b", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.b = void 0; + exports.b = 10; +}); +define("c", ["require", "exports"], function (require, exports) { + "use strict"; + Object.defineProperty(exports, "__esModule", { value: true }); + exports.c = void 0; + exports.c = "hello"; +}); + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: no-change-run +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json --noCheck +exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "noCheck": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -p /src/tsconfig.json +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error in src/c.ts:1 + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "project": "/src/tsconfig.json", + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents diff --git a/tests/baselines/reference/tsc/runWithoutArgs/does-not-add-color-when-NO_COLOR-is-set.js b/tests/baselines/reference/tsc/runWithoutArgs/does-not-add-color-when-NO_COLOR-is-set.js index d28cc6ec21030..bafc6105409ac 100644 --- a/tests/baselines/reference/tsc/runWithoutArgs/does-not-add-color-when-NO_COLOR-is-set.js +++ b/tests/baselines/reference/tsc/runWithoutArgs/does-not-add-color-when-NO_COLOR-is-set.js @@ -99,6 +99,11 @@ Create source map files for emitted JavaScript files. type: boolean default: false +--noEmit +Disable emitting files from a compilation. +type: boolean +default: false + --target, -t Set the JavaScript language version for emitted JavaScript and include compatible library declarations. one of: es5, es6/es2015, es2016, es2017, es2018, es2019, es2020, es2021, es2022, es2023, esnext @@ -140,11 +145,6 @@ Disable emitting comments. type: boolean default: false ---noEmit -Disable emitting files from a compilation. -type: boolean -default: false - --strict Enable all strict type-checking options. type: boolean diff --git a/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped-when-host-can't-provide-terminal-width.js b/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped-when-host-can't-provide-terminal-width.js index d52e6ac3d9037..5d298153e39e7 100644 --- a/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped-when-host-can't-provide-terminal-width.js +++ b/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped-when-host-can't-provide-terminal-width.js @@ -99,6 +99,11 @@ Create source map files for emitted JavaScript files. type: boolean default: false +--noEmit +Disable emitting files from a compilation. +type: boolean +default: false + --target, -t Set the JavaScript language version for emitted JavaScript and include compatible library declarations. one of: es5, es6/es2015, es2016, es2017, es2018, es2019, es2020, es2021, es2022, es2023, esnext @@ -140,11 +145,6 @@ Disable emitting comments. type: boolean default: false ---noEmit -Disable emitting files from a compilation. -type: boolean -default: false - --strict Enable all strict type-checking options. type: boolean diff --git a/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped.js b/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped.js index d52e6ac3d9037..5d298153e39e7 100644 --- a/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped.js +++ b/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped.js @@ -99,6 +99,11 @@ Create source map files for emitted JavaScript files. type: boolean default: false +--noEmit +Disable emitting files from a compilation. +type: boolean +default: false + --target, -t Set the JavaScript language version for emitted JavaScript and include compatible library declarations. one of: es5, es6/es2015, es2016, es2017, es2018, es2019, es2020, es2021, es2022, es2023, esnext @@ -140,11 +145,6 @@ Disable emitting comments. type: boolean default: false ---noEmit -Disable emitting files from a compilation. -type: boolean -default: false - --strict Enable all strict type-checking options. type: boolean From 5a84e2006bd6c5bfe144eedf7553c56575e36bae Mon Sep 17 00:00:00 2001 From: Sheetal Nandi Date: Thu, 13 Jun 2024 11:54:22 -0700 Subject: [PATCH 2/3] Add checkPending for deciding whether to rebuild or report errors --- src/compiler/builder.ts | 34 +- src/compiler/commandLineParser.ts | 3 +- src/compiler/tsbuildPublic.ts | 11 +- src/compiler/utilities.ts | 26 +- src/testRunner/unittests/helpers/noCheck.ts | 15 +- src/testRunner/unittests/helpers/tsc.ts | 94 ++- src/testRunner/unittests/tsc/incremental.ts | 4 - ...claration-and-incremental-discrepancies.js | 52 -- ...claration-and-incremental-discrepancies.js | 104 ---- ...claration-and-incremental-discrepancies.js | 44 -- ...claration-and-incremental-discrepancies.js | 88 --- .../multiFile/dts-errors-discrepancies.js | 21 +- ...s-errors-with-incremental-discrepancies.js | 240 +------ .../multiFile/dts-errors-with-incremental.js | 527 ++++++++++++---- .../tsbuild/noCheck/multiFile/dts-errors.js | 356 ++++++++--- .../semantic-errors-discrepancies.js | 35 +- ...c-errors-with-incremental-discrepancies.js | 316 +--------- .../semantic-errors-with-incremental.js | 551 ++++++++++++++-- .../noCheck/multiFile/semantic-errors.js | 335 ++++++++-- .../multiFile/syntax-errors-discrepancies.js | 21 +- ...x-errors-with-incremental-discrepancies.js | 488 +-------------- .../syntax-errors-with-incremental.js | 589 ++++++++++++++---- .../noCheck/multiFile/syntax-errors.js | 364 +++++++---- .../outFile/dts-errors-discrepancies.js | 21 +- ...s-errors-with-incremental-discrepancies.js | 206 +----- .../outFile/dts-errors-with-incremental.js | 495 +++++++++++---- .../tsbuild/noCheck/outFile/dts-errors.js | 335 +++++++--- .../outFile/semantic-errors-discrepancies.js | 35 +- ...c-errors-with-incremental-discrepancies.js | 272 +------- .../semantic-errors-with-incremental.js | 503 +++++++++++++-- .../noCheck/outFile/semantic-errors.js | 314 ++++++++-- .../outFile/syntax-errors-discrepancies.js | 21 +- ...x-errors-with-incremental-discrepancies.js | 286 +-------- .../outFile/syntax-errors-with-incremental.js | 481 ++++++++++---- .../tsbuild/noCheck/outFile/syntax-errors.js | 346 ++++++---- ...to-the-referenced-project-discrepancies.js | 100 --- ...s-errors-with-incremental-discrepancies.js | 138 ++++ .../multiFile/dts-errors-with-incremental.js | 362 ++++------- ...c-errors-with-incremental-discrepancies.js | 138 ++++ .../semantic-errors-with-incremental.js | 362 ++++------- ...x-errors-with-incremental-discrepancies.js | 186 ++---- .../syntax-errors-with-incremental.js | 398 ++++-------- ...s-errors-with-incremental-discrepancies.js | 114 ++++ .../outFile/dts-errors-with-incremental.js | 305 ++++----- ...c-errors-with-incremental-discrepancies.js | 114 ++++ .../semantic-errors-with-incremental.js | 305 ++++----- ...x-errors-with-incremental-discrepancies.js | 92 ++- .../outFile/syntax-errors-with-incremental.js | 287 ++++----- .../changes-composite-discrepancies.js | 564 ----------------- ...-initial-noEmit-composite-discrepancies.js | 30 - .../changes-composite-discrepancies.js | 564 ----------------- ...-initial-noEmit-composite-discrepancies.js | 30 - ...en-declarationMap-changes-discrepancies.js | 28 - ...en-declarationMap-changes-discrepancies.js | 28 - 54 files changed, 5673 insertions(+), 6105 deletions(-) create mode 100644 tests/baselines/reference/tsc/noCheck/multiFile/dts-errors-with-incremental-discrepancies.js create mode 100644 tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors-with-incremental-discrepancies.js create mode 100644 tests/baselines/reference/tsc/noCheck/outFile/dts-errors-with-incremental-discrepancies.js create mode 100644 tests/baselines/reference/tsc/noCheck/outFile/semantic-errors-with-incremental-discrepancies.js diff --git a/src/compiler/builder.ts b/src/compiler/builder.ts index 5cf77268837b6..4f606f94d8548 100644 --- a/src/compiler/builder.ts +++ b/src/compiler/builder.ts @@ -76,7 +76,7 @@ import { SemanticDiagnosticsBuilderProgram, SignatureInfo, skipAlias, - skipTypeChecking, + skipTypeCheckingIgnoringNoCheck, some, SourceFile, sourceFileMayBeEmitted, @@ -158,6 +158,8 @@ export interface ReusableBuilderProgramState extends BuilderState { * emitKind pending for a program with --out */ programEmitPending?: BuilderFileEmit; + /** If semantic diagnsotic check is pending */ + checkPending?: true; /* * true if semantic diagnostics are ReusableDiagnostic instead of Diagnostic */ @@ -329,6 +331,7 @@ function createBuilderProgramState( } state.changedFilesSet = new Set(); state.latestChangedDtsFile = compilerOptions.composite ? oldState?.latestChangedDtsFile : undefined; + state.checkPending = state.compilerOptions.noCheck ? true : undefined; const useOldState = BuilderState.canReuseOldState(state.referencedMap, oldState); const oldCompilerOptions = useOldState ? oldState!.compilerOptions : undefined; @@ -470,9 +473,15 @@ function createBuilderProgramState( state.programEmitPending | pendingEmitKind : pendingEmitKind; } + // if (!state.compilerOptions.noCheck) state.buildInfoEmitPending = true; } } + if ( + useOldState && + state.semanticDiagnosticsPerFile.size !== state.fileInfos.size && + oldState!.checkPending !== state.checkPending + ) state.buildInfoEmitPending = true; return state; function addFileToChangeSet(path: Path) { @@ -741,7 +750,7 @@ function removeDiagnosticsOfLibraryFiles(state: BuilderProgramStateWithDefinedPr const options = state.program.getCompilerOptions(); forEach(state.program.getSourceFiles(), f => state.program.isSourceFileDefaultLibrary(f) && - !skipTypeChecking(f, options, state.program) && + !skipTypeCheckingIgnoringNoCheck(f, options, state.program) && removeSemanticDiagnosticsOf(state, f.resolvedPath)); } } @@ -986,6 +995,7 @@ function getSemanticDiagnosticsOfFile( cancellationToken: CancellationToken | undefined, semanticDiagnosticsPerFile?: BuilderProgramState["semanticDiagnosticsPerFile"], ): readonly Diagnostic[] { + if (state.compilerOptions.noCheck) return emptyArray; return concatenate( getBinderAndCheckerDiagnosticsOfFile(state, sourceFile, cancellationToken, semanticDiagnosticsPerFile), state.program.getProgramDiagnostics(sourceFile), @@ -1084,6 +1094,7 @@ export interface IncrementalBuildInfoBase extends BuildInfo { // Because this is only output file in the program, we dont need fileId to deduplicate name latestChangedDtsFile?: string | undefined; errors: true | undefined; + checkPending: true | undefined; } /** @internal */ @@ -1131,6 +1142,7 @@ export function isIncrementalBuildInfo(info: BuildInfo): info is IncrementalBuil export interface NonIncrementalBuildInfo extends BuildInfo { root: readonly string[]; errors: true | undefined; + checkPending: true | undefined; } /** @internal */ @@ -1190,6 +1202,7 @@ function getBuildInfo(state: BuilderProgramStateWithDefinedProgram): BuildInfo { const buildInfo: NonIncrementalBuildInfo = { root: arrayFrom(rootFileNames, r => relativeToBuildInfo(r)), errors: state.hasErrors ? true : undefined, + checkPending: state.checkPending, version, }; return buildInfo; @@ -1223,6 +1236,7 @@ function getBuildInfo(state: BuilderProgramStateWithDefinedProgram): BuildInfo { false : // Pending emit is same as deteremined by compilerOptions state.programEmitPending, // Actual value errors: state.hasErrors ? true : undefined, + checkPending: state.checkPending, version, }; return buildInfo; @@ -1313,6 +1327,7 @@ function getBuildInfo(state: BuilderProgramStateWithDefinedProgram): BuildInfo { emitSignatures, latestChangedDtsFile, errors: state.hasErrors ? true : undefined, + checkPending: state.checkPending, version, }; return buildInfo; @@ -1952,7 +1967,13 @@ export function createBuilderProgram( while (true) { const affected = getNextAffectedFile(state, cancellationToken, host); let result; - if (!affected) return undefined; // Done + if (!affected) { + if (state.checkPending && !state.compilerOptions.noCheck) { + state.checkPending = undefined; + state.buildInfoEmitPending = true; + } + return undefined; // Done + } else if (affected !== state.program) { // Get diagnostics for the affected file if its not ignored const affectedSourceFile = affected as SourceFile; @@ -1984,6 +2005,7 @@ export function createBuilderProgram( result = diagnostics || emptyArray; state.changedFilesSet.clear(); state.programEmitPending = getBuilderFileEmit(state.compilerOptions); + if (!state.compilerOptions.noCheck) state.checkPending = undefined; state.buildInfoEmitPending = true; } return { result, affected }; @@ -2021,6 +2043,10 @@ export function createBuilderProgram( for (const sourceFile of state.program.getSourceFiles()) { diagnostics = addRange(diagnostics, getSemanticDiagnosticsOfFile(state, sourceFile, cancellationToken)); } + if (state.checkPending && !state.compilerOptions.noCheck) { + state.checkPending = undefined; + state.buildInfoEmitPending = true; + } return diagnostics || emptyArray; } } @@ -2089,6 +2115,7 @@ export function createBuilderProgramUsingIncrementalBuildInfo( outSignature: buildInfo.outSignature, programEmitPending: buildInfo.pendingEmit === undefined ? undefined : toProgramEmitPending(buildInfo.pendingEmit, buildInfo.options), hasErrors: buildInfo.errors, + checkPending: buildInfo.checkPending, }; } else { @@ -2125,6 +2152,7 @@ export function createBuilderProgramUsingIncrementalBuildInfo( latestChangedDtsFile, emitSignatures: emitSignatures?.size ? emitSignatures : undefined, hasErrors: buildInfo.errors, + checkPending: buildInfo.checkPending, }; } diff --git a/src/compiler/commandLineParser.ts b/src/compiler/commandLineParser.ts index cbba9ad42b838..ca34672ce0318 100644 --- a/src/compiler/commandLineParser.ts +++ b/src/compiler/commandLineParser.ts @@ -510,8 +510,7 @@ export const commonOptionsWithBuild: CommandLineOption[] = [ description: Diagnostics.Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported, transpileOptionValue: true, defaultValueDescription: false, - affectsSemanticDiagnostics: true, - affectsBuildInfo: true, + // Not setting affectsSemanticDiagnostics or affectsBuildInfo because we dont want all diagnostics to go away, its handled in builder }, { name: "noEmit", diff --git a/src/compiler/tsbuildPublic.ts b/src/compiler/tsbuildPublic.ts index 6213b9f63d0d2..041676f25412e 100644 --- a/src/compiler/tsbuildPublic.ts +++ b/src/compiler/tsbuildPublic.ts @@ -1535,7 +1535,11 @@ function getUpToDateStatusWorker(state: SolutionBuilde }; } - if ((buildInfo as IncrementalBuildInfo | NonIncrementalBuildInfo).errors) { + if ( + !project.options.noCheck && + ((buildInfo as IncrementalBuildInfo | NonIncrementalBuildInfo).errors || // TODO: syntax errors???? + (buildInfo as IncrementalBuildInfo | NonIncrementalBuildInfo).checkPending) + ) { return { type: UpToDateStatusType.OutOfDateBuildInfoWithErrors, buildInfoFile: buildInfoPath, @@ -1545,8 +1549,9 @@ function getUpToDateStatusWorker(state: SolutionBuilde if (incrementalBuildInfo) { // If there are errors, we need to build project again to report it if ( - incrementalBuildInfo.semanticDiagnosticsPerFile?.length || - (!project.options.noEmit && getEmitDeclarations(project.options) && incrementalBuildInfo.emitDiagnosticsPerFile?.length) + !project.options.noCheck && + (incrementalBuildInfo.semanticDiagnosticsPerFile?.length || + (!project.options.noEmit && getEmitDeclarations(project.options) && incrementalBuildInfo.emitDiagnosticsPerFile?.length)) ) { return { type: UpToDateStatusType.OutOfDateBuildInfoWithErrors, diff --git a/src/compiler/utilities.ts b/src/compiler/utilities.ts index b61399a687f6c..a09d84164d19d 100644 --- a/src/compiler/utilities.ts +++ b/src/compiler/utilities.ts @@ -10108,13 +10108,35 @@ export interface HostWithIsSourceOfProjectReferenceRedirect { isSourceOfProjectReferenceRedirect(fileName: string): boolean; } /** @internal */ -export function skipTypeChecking(sourceFile: SourceFile, options: CompilerOptions, host: HostWithIsSourceOfProjectReferenceRedirect) { +export function skipTypeChecking( + sourceFile: SourceFile, + options: CompilerOptions, + host: HostWithIsSourceOfProjectReferenceRedirect, +) { + return skipTypeCheckingWorker(sourceFile, options, host, /*ignoreNoCheck*/ false); +} + +/** @internal */ +export function skipTypeCheckingIgnoringNoCheck( + sourceFile: SourceFile, + options: CompilerOptions, + host: HostWithIsSourceOfProjectReferenceRedirect, +) { + return skipTypeCheckingWorker(sourceFile, options, host, /*ignoreNoCheck*/ true); +} + +function skipTypeCheckingWorker( + sourceFile: SourceFile, + options: CompilerOptions, + host: HostWithIsSourceOfProjectReferenceRedirect, + ignoreNoCheck: boolean, +) { // If skipLibCheck is enabled, skip reporting errors if file is a declaration file. // If skipDefaultLibCheck is enabled, skip reporting errors if file contains a // '/// ' directive. return (options.skipLibCheck && sourceFile.isDeclarationFile || options.skipDefaultLibCheck && sourceFile.hasNoDefaultLib) || - options.noCheck || + (!ignoreNoCheck && options.noCheck) || host.isSourceOfProjectReferenceRedirect(sourceFile.fileName) || !canIncludeBindAndCheckDiagnostics(sourceFile, options); } diff --git a/src/testRunner/unittests/helpers/noCheck.ts b/src/testRunner/unittests/helpers/noCheck.ts index d3f8e0c8edf79..edf9580c57b97 100644 --- a/src/testRunner/unittests/helpers/noCheck.ts +++ b/src/testRunner/unittests/helpers/noCheck.ts @@ -28,6 +28,13 @@ export function forEachTscScenarioWithNoCheck(buildType: "-b" | "-p") { caption: "Introduce error with noCheck", edit: fs => fs.writeFileSync("/src/a.ts", aText), }; + const noChangeRunWithCheckPendingDiscrepancy: TestTscEdit = { + ...noChangeRun, + discrepancyExplanation: () => [ + "Clean build will have check pending since it didnt type check", + "Incremental build has typechecked before this so wont have checkPending", + ], + }; [undefined, true].forEach(incremental => { [{}, { module: "amd", outFile: "../outFile.js" }].forEach(options => { @@ -53,7 +60,9 @@ export function forEachTscScenarioWithNoCheck(buildType: "-b" | "-p") { noChangeRun, // Should be no op checkNoChangeRun, // Check errors - should not report any errors - update buildInfo checkNoChangeRun, // Should be no op - noChangeRun, // Should be no op + incremental || buildType === "-b" ? + noChangeRunWithCheckPendingDiscrepancy : // Should be no op + noChangeRun, // Should be no op noCheckError, noChangeRun, // Should be no op checkNoChangeRun, // Should check errors and update buildInfo @@ -67,7 +76,9 @@ export function forEachTscScenarioWithNoCheck(buildType: "-b" | "-p") { noCheckError, noCheckFixError, checkNoChangeRun, - noChangeRun, // Should be no op + incremental || buildType === "-b" ? + noChangeRunWithCheckPendingDiscrepancy : // Should be no op + noChangeRun, // Should be no op checkNoChangeRun, // Should be no op ], baselinePrograms: true, diff --git a/src/testRunner/unittests/helpers/tsc.ts b/src/testRunner/unittests/helpers/tsc.ts index ffd54c7ac2f94..92ae893bb50db 100644 --- a/src/testRunner/unittests/helpers/tsc.ts +++ b/src/testRunner/unittests/helpers/tsc.ts @@ -352,31 +352,69 @@ function verifyTscEditDiscrepancies({ } } } - if ((incrementalReadableBuildInfo as ReadableIncrementalBuildInfo)?.emitDiagnosticsPerFile) { - (incrementalReadableBuildInfo as ReadableIncrementalBuildInfo).emitDiagnosticsPerFile!.forEach(([actualFileOrArray]) => { - const actualFile = ts.isString(actualFileOrArray) ? actualFileOrArray : actualFileOrArray[0]; - if ( - // Does not have emit diagnostics in clean buildInfo - !ts.find( - (cleanReadableBuildInfo as ReadableIncrementalBuildInfo).emitDiagnosticsPerFile, - ([expectedFileOrArray]) => actualFile === (ts.isString(expectedFileOrArray) ? expectedFileOrArray : expectedFileOrArray[0]), - ) && - // Is not marked as affectedFilesPendingEmit in clean buildInfo - (!ts.find( - (cleanReadableBuildInfo as ReadableIncrementalMultiFileEmitBuildInfo).affectedFilesPendingEmit, - ([expectedFileOrArray]) => actualFile === (ts.isString(expectedFileOrArray) ? expectedFileOrArray : expectedFileOrArray[0]), - )) && - // Program emit is not pending in clean buildInfo - !(cleanReadableBuildInfo as ReadableIncrementalBundleEmitBuildInfo).pendingEmit - ) { - addBaseline( - `Incremental build contains ${actualFile} file has errors, clean build does not have errors or does not mark is as pending emit: ${outputFile}::`, - `Incremental buildInfoText:: ${incrementalBuildText}`, - `Clean buildInfoText:: ${cleanBuildText}`, - ); - } - }); - } + const readableIncrementalBuildInfo = incrementalReadableBuildInfo as ReadableIncrementalBuildInfo | undefined; + const readableCleanBuildInfo = cleanReadableBuildInfo as ReadableIncrementalBuildInfo | undefined; + readableIncrementalBuildInfo?.semanticDiagnosticsPerFile?.forEach(( + [actualFile, notCachedORDiagnostics], + ) => { + const cleanFileDiagnostics = ts.find( + readableCleanBuildInfo?.semanticDiagnosticsPerFile, + ([expectedFile]) => actualFile === expectedFile, + ); + // Incremental build should have same diagnostics as clean build + if (cleanFileDiagnostics && JSON.stringify(notCachedORDiagnostics) === JSON.stringify(cleanFileDiagnostics[1])) return; + // Otherwise marked as "not Cached" in clean build with errors in incremental build is ok + if ( + ts.isString(cleanFileDiagnostics?.[1]) && + !ts.isString(notCachedORDiagnostics) + ) return; + addBaseline( + `Incremental build contains ${actualFile} file ${!ts.isString(notCachedORDiagnostics) ? "has" : "does not have"} semantic errors, it does not match with clean build: ${outputFile}::`, + `Incremental buildInfoText:: ${incrementalBuildText}`, + `Clean buildInfoText:: ${cleanBuildText}`, + ); + }); + readableCleanBuildInfo?.semanticDiagnosticsPerFile?.forEach(( + [expectedFile, cleanFileDiagnostics], + ) => { + if ( + // if there are errors in the file + !ts.isString(cleanFileDiagnostics?.[1]) && + // and its not already verified, its issue with the error caching + !ts.find( + readableIncrementalBuildInfo?.semanticDiagnosticsPerFile, + ([actualFile]) => actualFile === expectedFile, + ) + ) { + addBaseline( + `Incremental build does not contain ${expectedFile} file for semantic errors, clean build has semantic errors: ${outputFile}::`, + `Incremental buildInfoText:: ${incrementalBuildText}`, + `Clean buildInfoText:: ${cleanBuildText}`, + ); + } + }); + readableIncrementalBuildInfo?.emitDiagnosticsPerFile?.forEach(([actualFile]) => { + if ( + // Does not have emit diagnostics in clean buildInfo + !ts.find( + readableCleanBuildInfo!.emitDiagnosticsPerFile, + ([expectedFile]) => actualFile === expectedFile, + ) && + // Is not marked as affectedFilesPendingEmit in clean buildInfo + (!ts.find( + (readableCleanBuildInfo as ReadableIncrementalMultiFileEmitBuildInfo).affectedFilesPendingEmit, + ([expectedFileOrArray]) => actualFile === (ts.isString(expectedFileOrArray) ? expectedFileOrArray : expectedFileOrArray[0]), + )) && + // Program emit is not pending in clean buildInfo + !(readableCleanBuildInfo as ReadableIncrementalBundleEmitBuildInfo).pendingEmit + ) { + addBaseline( + `Incremental build contains ${actualFile} file has emit errors, clean build does not have errors or does not mark is as pending emit: ${outputFile}::`, + `Incremental buildInfoText:: ${incrementalBuildText}`, + `Clean buildInfoText:: ${cleanBuildText}`, + ); + } + }); } } if (!headerAdded && discrepancyExplanation) addBaseline("*** Supplied discrepancy explanation but didnt find any difference"); @@ -462,11 +500,15 @@ function getBuildInfoForIncrementalCorrectnessCheck(text: string | undefined): { fileIdsList: undefined, fileInfos: sanitizedFileInfos, // Ignore noEmit since that shouldnt be reason to emit the tsbuild info and presence of it in the buildinfo file does not matter - options: readableBuildInfo.options ? { ...readableBuildInfo.options, noEmit: undefined } : undefined, + options: readableBuildInfo.options && { + ...readableBuildInfo.options, + noEmit: undefined, + }, affectedFilesPendingEmit: undefined, pendingEmit: undefined, emitDiagnosticsPerFile: undefined, latestChangedDtsFile: readableBuildInfo.latestChangedDtsFile ? "FakeFileName" : undefined, + semanticDiagnosticsPerFile: undefined, } : undefined), size: undefined, // Size doesnt need to be equal }), diff --git a/src/testRunner/unittests/tsc/incremental.ts b/src/testRunner/unittests/tsc/incremental.ts index d1d8a270e7e9c..34c16d3197c25 100644 --- a/src/testRunner/unittests/tsc/incremental.ts +++ b/src/testRunner/unittests/tsc/incremental.ts @@ -261,10 +261,6 @@ declare global { { caption: "Delete output for class3", edit: fs => fs.unlinkSync("/src/projects/project1/class3.d.ts"), - discrepancyExplanation: () => [ - "Ts buildinfo will be updated but will retain lib file errors from previous build and not others because they are emitted because of change which results in clearing their semantic diagnostics cache", - "But in clean build because of global diagnostics, semantic diagnostics are not queried so not cached in tsbuildinfo", - ], }, { caption: "Create output for class3", diff --git a/tests/baselines/reference/tsbuild/commandLine/multiFile/emitDeclarationOnly-false-on-commandline-with-declaration-and-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/commandLine/multiFile/emitDeclarationOnly-false-on-commandline-with-declaration-and-incremental-discrepancies.js index 6b88d6ee7c768..7b9419fb86308 100644 --- a/tests/baselines/reference/tsbuild/commandLine/multiFile/emitDeclarationOnly-false-on-commandline-with-declaration-and-incremental-discrepancies.js +++ b/tests/baselines/reference/tsbuild/commandLine/multiFile/emitDeclarationOnly-false-on-commandline-with-declaration-and-incremental-discrepancies.js @@ -148,32 +148,6 @@ CleanBuild: "../../project1/src/b.d.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "../../../lib/lib.d.ts", - "not cached" - ], - [ - "./e.ts", - "not cached" - ], - [ - "../../project1/src/a.d.ts", - "not cached" - ], - [ - "./f.ts", - "not cached" - ], - [ - "../../project1/src/b.d.ts", - "not cached" - ], - [ - "./g.ts", - "not cached" - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -225,31 +199,5 @@ IncrementalBuild: "../../project1/src/b.d.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "../../../lib/lib.d.ts", - "not cached" - ], - [ - "./e.ts", - "not cached" - ], - [ - "../../project1/src/a.d.ts", - "not cached" - ], - [ - "./f.ts", - "not cached" - ], - [ - "../../project1/src/b.d.ts", - "not cached" - ], - [ - "./g.ts", - "not cached" - ] - ], "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/commandLine/multiFile/emitDeclarationOnly-on-commandline-with-declaration-and-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/commandLine/multiFile/emitDeclarationOnly-on-commandline-with-declaration-and-incremental-discrepancies.js index 457fa28d607a0..172f5b38b4fbd 100644 --- a/tests/baselines/reference/tsbuild/commandLine/multiFile/emitDeclarationOnly-on-commandline-with-declaration-and-incremental-discrepancies.js +++ b/tests/baselines/reference/tsbuild/commandLine/multiFile/emitDeclarationOnly-on-commandline-with-declaration-and-incremental-discrepancies.js @@ -147,32 +147,6 @@ CleanBuild: "../../project1/src/b.d.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "../../../lib/lib.d.ts", - "not cached" - ], - [ - "./e.ts", - "not cached" - ], - [ - "../../project1/src/a.d.ts", - "not cached" - ], - [ - "./f.ts", - "not cached" - ], - [ - "../../project1/src/b.d.ts", - "not cached" - ], - [ - "./g.ts", - "not cached" - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -223,32 +197,6 @@ IncrementalBuild: "../../project1/src/b.d.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "../../../lib/lib.d.ts", - "not cached" - ], - [ - "./e.ts", - "not cached" - ], - [ - "../../project1/src/a.d.ts", - "not cached" - ], - [ - "./f.ts", - "not cached" - ], - [ - "../../project1/src/b.d.ts", - "not cached" - ], - [ - "./g.ts", - "not cached" - ] - ], "version": "FakeTSVersion" } 6:: local change @@ -304,32 +252,6 @@ CleanBuild: "../../project1/src/b.d.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "../../../lib/lib.d.ts", - "not cached" - ], - [ - "./e.ts", - "not cached" - ], - [ - "../../project1/src/a.d.ts", - "not cached" - ], - [ - "./f.ts", - "not cached" - ], - [ - "../../project1/src/b.d.ts", - "not cached" - ], - [ - "./g.ts", - "not cached" - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -380,31 +302,5 @@ IncrementalBuild: "../../project1/src/b.d.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "../../../lib/lib.d.ts", - "not cached" - ], - [ - "./e.ts", - "not cached" - ], - [ - "../../project1/src/a.d.ts", - "not cached" - ], - [ - "./f.ts", - "not cached" - ], - [ - "../../project1/src/b.d.ts", - "not cached" - ], - [ - "./g.ts", - "not cached" - ] - ], "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/commandLine/outFile/emitDeclarationOnly-false-on-commandline-with-declaration-and-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/commandLine/outFile/emitDeclarationOnly-false-on-commandline-with-declaration-and-incremental-discrepancies.js index 68585019a6970..991c15d3b09f0 100644 --- a/tests/baselines/reference/tsbuild/commandLine/outFile/emitDeclarationOnly-false-on-commandline-with-declaration-and-incremental-discrepancies.js +++ b/tests/baselines/reference/tsbuild/commandLine/outFile/emitDeclarationOnly-false-on-commandline-with-declaration-and-incremental-discrepancies.js @@ -93,28 +93,6 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "../../lib/lib.d.ts", - "not cached" - ], - [ - "../project1/outfile.d.ts", - "not cached" - ], - [ - "./src/e.ts", - "not cached" - ], - [ - "./src/f.ts", - "not cached" - ], - [ - "./src/g.ts", - "not cached" - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -145,27 +123,5 @@ IncrementalBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "../../lib/lib.d.ts", - "not cached" - ], - [ - "../project1/outfile.d.ts", - "not cached" - ], - [ - "./src/e.ts", - "not cached" - ], - [ - "./src/f.ts", - "not cached" - ], - [ - "./src/g.ts", - "not cached" - ] - ], "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/commandLine/outFile/emitDeclarationOnly-on-commandline-with-declaration-and-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/commandLine/outFile/emitDeclarationOnly-on-commandline-with-declaration-and-incremental-discrepancies.js index 96de70c500116..b9e6f8072ae58 100644 --- a/tests/baselines/reference/tsbuild/commandLine/outFile/emitDeclarationOnly-on-commandline-with-declaration-and-incremental-discrepancies.js +++ b/tests/baselines/reference/tsbuild/commandLine/outFile/emitDeclarationOnly-on-commandline-with-declaration-and-incremental-discrepancies.js @@ -92,28 +92,6 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "../../lib/lib.d.ts", - "not cached" - ], - [ - "../project1/outfile.d.ts", - "not cached" - ], - [ - "./src/e.ts", - "not cached" - ], - [ - "./src/f.ts", - "not cached" - ], - [ - "./src/g.ts", - "not cached" - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -143,28 +121,6 @@ IncrementalBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "../../lib/lib.d.ts", - "not cached" - ], - [ - "../project1/outfile.d.ts", - "not cached" - ], - [ - "./src/e.ts", - "not cached" - ], - [ - "./src/f.ts", - "not cached" - ], - [ - "./src/g.ts", - "not cached" - ] - ], "version": "FakeTSVersion" } 6:: local change @@ -199,28 +155,6 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "../../lib/lib.d.ts", - "not cached" - ], - [ - "../project1/outfile.d.ts", - "not cached" - ], - [ - "./src/e.ts", - "not cached" - ], - [ - "./src/f.ts", - "not cached" - ], - [ - "./src/g.ts", - "not cached" - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -250,27 +184,5 @@ IncrementalBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "../../lib/lib.d.ts", - "not cached" - ], - [ - "../project1/outfile.d.ts", - "not cached" - ], - [ - "./src/e.ts", - "not cached" - ], - [ - "./src/f.ts", - "not cached" - ], - [ - "./src/g.ts", - "not cached" - ] - ], "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-discrepancies.js index f359d21bb7bb4..68bcc68eb7eda 100644 --- a/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-discrepancies.js +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-discrepancies.js @@ -1,27 +1,27 @@ -14:: No Change run with checking -*** Needs explanation +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: CleanBuild: { "root": [ "./a.ts", - "./b.ts", - "./c.ts" + "./b.ts" ], - "errors": true, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: { "root": [ "./a.ts", - "./b.ts", - "./c.ts" + "./b.ts" ], "version": "FakeTSVersion" } -16:: No Change run with checking -*** Needs explanation +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -30,7 +30,7 @@ CleanBuild: "./b.ts", "./c.ts" ], - "errors": true, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -40,5 +40,6 @@ IncrementalBuild: "./b.ts", "./c.ts" ], + "errors": true, "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental-discrepancies.js index bdb3abf8331ac..d0b98e51e30c9 100644 --- a/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental-discrepancies.js +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental-discrepancies.js @@ -1,5 +1,6 @@ -3:: No Change run with checking -*** Needs explanation +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -28,42 +29,10 @@ CleanBuild: "options": { "declaration": true }, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion" -} -4:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: { "fileInfos": { "../lib/lib.d.ts": { @@ -92,100 +61,9 @@ CleanBuild: }, "version": "FakeTSVersion" } -IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion" -} -10:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true - }, - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion" -} -14:: No Change run with checking -*** Needs explanation +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -220,62 +98,10 @@ CleanBuild: "options": { "declaration": true }, - "semanticDiagnosticsPerFile": [ - [ - "./c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - }, - "./c.ts": { - "version": "-9150421116-export const c: number = \"hello\";" - } - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./a.ts", - "./b.ts", - "./c.ts" - ] - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion" -} -16:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: { "fileInfos": { "../lib/lib.d.ts": { @@ -308,55 +134,5 @@ CleanBuild: "options": { "declaration": true }, - "semanticDiagnosticsPerFile": [ - [ - "./c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - }, - "./c.ts": { - "version": "-9150421116-export const c: number = \"hello\";" - } - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./a.ts", - "./b.ts", - "./c.ts" - ] - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental.js index c67d8513f4956..2f6f44ae81f6f 100644 --- a/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental.js +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors-with-incremental.js @@ -66,10 +66,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -101,7 +98,7 @@ exports.b = 10; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"-9502176711-export const a = class { private p = 10; };",{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"-9502176711-export const a = class { private p = 10; };",{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[1,2,3],"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -144,9 +141,22 @@ exports.b = 10; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], "emitDiagnosticsPerFile": [ [ "./a.ts", @@ -161,8 +171,9 @@ exports.b = 10; ] ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 965 + "size": 1007 } @@ -176,39 +187,9 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. - -1 export const a = class { private p = 10; }; -   ~ +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/b.ts' is older than output 'src/tsconfig.tsbuildinfo' - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts", - "/src/b.ts" -] -Program options: { - "declaration": true, - "incremental": true, - "noCheck": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts - -Semantic diagnostics in builder refreshed for:: - -No shapes updated in the builder:: +exitCode:: ExitStatus.Success @@ -225,7 +206,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -247,8 +228,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/src/a.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -266,7 +246,7 @@ exports.a = "hello"; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -313,11 +293,25 @@ exports.a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 853 + "size": 895 } @@ -347,11 +341,89 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion", + "size": 838 +} + Change:: No Change run with checking @@ -448,7 +520,7 @@ exports.a = /** @class */ (function () { //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-9502176711-export const a = class { private p = 10; };","signature":"-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected."},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-9502176711-export const a = class { private p = 10; };","signature":"-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected."},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2],"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -495,9 +567,14 @@ exports.a = /** @class */ (function () { ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], "emitDiagnosticsPerFile": [ [ "./a.ts", @@ -512,8 +589,9 @@ exports.a = /** @class */ (function () { ] ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 1169 + "size": 1207 } @@ -527,39 +605,9 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. - -1 export const a = class { private p = 10; }; -   ~ - - -Found 1 error. +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts", - "/src/b.ts" -] -Program options: { - "declaration": true, - "incremental": true, - "noCheck": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts - -Semantic diagnostics in builder refreshed for:: - -No shapes updated in the builder:: +exitCode:: ExitStatus.Success @@ -603,9 +651,7 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts No shapes updated in the builder:: @@ -692,7 +738,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -715,9 +761,7 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -732,7 +776,7 @@ exports.a = "hello"; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -779,11 +823,17 @@ exports.a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 853 + "size": 891 } @@ -797,11 +847,87 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +No shapes updated in the builder:: + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion", + "size": 838 +} + Change:: Add file with error @@ -848,9 +974,6 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts /src/c.ts Shape signatures in builder refreshed for:: @@ -962,7 +1085,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -995,10 +1118,7 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts -/src/c.ts Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -1017,7 +1137,7 @@ exports.a = /** @class */ (function () { //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-9502176711-export const a = class { private p = 10; };","signature":"-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected."},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-9502176711-export const a = class { private p = 10; };","signature":"-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected."},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2,[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1076,9 +1196,26 @@ exports.a = /** @class */ (function () { ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ], + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], "emitDiagnosticsPerFile": [ [ "./a.ts", @@ -1093,8 +1230,9 @@ exports.a = /** @class */ (function () { ] ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 1301 + "size": 1460 } @@ -1111,7 +1249,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -1151,7 +1289,7 @@ exports.a = "hello"; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2,[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1210,11 +1348,29 @@ exports.a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ], + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 985 + "size": 1144 } @@ -1228,11 +1384,123 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts +Semantic diagnostics in builder refreshed for:: +/src/a.ts +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1122 +} + Change:: no-change-run @@ -1260,8 +1528,39 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors.js index e217716768a51..950a2216c968b 100644 --- a/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors.js +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/dts-errors.js @@ -66,10 +66,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -101,7 +98,7 @@ exports.b = 10; //// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts","./b.ts"],"errors":true,"version":"FakeTSVersion"} +{"root":["./a.ts","./b.ts"],"errors":true,"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -110,8 +107,9 @@ exports.b = 10; "./b.ts" ], "errors": true, + "checkPending": true, "version": "FakeTSVersion", - "size": 68 + "size": 88 } @@ -125,7 +123,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'src/a.d.ts' does not exist [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -156,10 +154,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -186,7 +181,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -207,10 +202,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -232,7 +224,7 @@ exports.a = "hello"; //// [/src/b.d.ts] file written with same contents //// [/src/b.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts","./b.ts"],"version":"FakeTSVersion"} +{"root":["./a.ts","./b.ts"],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -240,8 +232,9 @@ exports.a = "hello"; "./a.ts", "./b.ts" ], + "checkPending": true, "version": "FakeTSVersion", - "size": 54 + "size": 74 } @@ -271,11 +264,54 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "version": "FakeTSVersion", + "size": 54 +} + Change:: No Change run with checking @@ -353,10 +389,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -380,7 +413,7 @@ exports.a = /** @class */ (function () { //// [/src/b.d.ts] file written with same contents //// [/src/b.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts","./b.ts"],"errors":true,"version":"FakeTSVersion"} +{"root":["./a.ts","./b.ts"],"errors":true,"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -389,8 +422,9 @@ exports.a = /** @class */ (function () { "./b.ts" ], "errors": true, + "checkPending": true, "version": "FakeTSVersion", - "size": 68 + "size": 88 } @@ -404,54 +438,11 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. - -1 export const a = class { private p = 10; }; -   ~ - -[HH:MM:SS AM] Updating unchanged output timestamps of project '/src/tsconfig.json'... - - -Found 1 error. +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts", - "/src/b.ts" -] -Program options: { - "declaration": true, - "noCheck": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (used version) -/src/b.ts (computed .d.ts during emit) +exitCode:: ExitStatus.Success -//// [/src/a.d.ts] file changed its modified time -//// [/src/a.js] file written with same contents -//// [/src/b.d.ts] file written with same contents -//// [/src/b.js] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents Change:: No Change run with checking @@ -508,8 +499,20 @@ Shape signatures in builder refreshed for:: //// [/src/a.js] file written with same contents //// [/src/b.d.ts] file written with same contents //// [/src/b.js] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 68 +} + Change:: Fix `a` error with noCheck @@ -524,7 +527,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -545,10 +548,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -567,7 +567,7 @@ exports.a = "hello"; //// [/src/b.d.ts] file written with same contents //// [/src/b.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts","./b.ts"],"version":"FakeTSVersion"} +{"root":["./a.ts","./b.ts"],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -575,8 +575,9 @@ exports.a = "hello"; "./a.ts", "./b.ts" ], + "checkPending": true, "version": "FakeTSVersion", - "size": 54 + "size": 74 } @@ -590,11 +591,54 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "version": "FakeTSVersion", + "size": 54 +} + Change:: Add file with error @@ -696,7 +740,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -729,11 +773,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -759,8 +799,22 @@ exports.a = /** @class */ (function () { //// [/src/b.js] file written with same contents //// [/src/c.d.ts] file written with same contents //// [/src/c.js] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts","./c.ts"],"errors":true,"checkPending":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "errors": true, + "checkPending": true, + "version": "FakeTSVersion", + "size": 97 +} + Change:: Fix `a` error with noCheck @@ -775,7 +829,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -798,11 +852,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -824,7 +874,7 @@ exports.a = "hello"; //// [/src/c.d.ts] file written with same contents //// [/src/c.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts","./b.ts","./c.ts"],"version":"FakeTSVersion"} +{"root":["./a.ts","./b.ts","./c.ts"],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -833,8 +883,9 @@ exports.a = "hello"; "./b.ts", "./c.ts" ], + "checkPending": true, "version": "FakeTSVersion", - "size": 63 + "size": 83 } @@ -848,11 +899,70 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +/src/c.ts (computed .d.ts during emit) +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts","./c.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 77 +} + Change:: no-change-run @@ -880,8 +990,54 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +/src/c.ts (computed .d.ts during emit) +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] file written with same contents +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-discrepancies.js index 8f08bc8ec294f..68bcc68eb7eda 100644 --- a/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-discrepancies.js +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-discrepancies.js @@ -1,5 +1,6 @@ -8:: No Change run with checking -*** Needs explanation +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -7,7 +8,7 @@ CleanBuild: "./a.ts", "./b.ts" ], - "errors": true, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -18,8 +19,9 @@ IncrementalBuild: ], "version": "FakeTSVersion" } -14:: No Change run with checking -*** Needs explanation +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -28,22 +30,10 @@ CleanBuild: "./b.ts", "./c.ts" ], - "errors": true, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: -{ - "root": [ - "./a.ts", - "./b.ts", - "./c.ts" - ], - "version": "FakeTSVersion" -} -16:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: { "root": [ "./a.ts", @@ -52,13 +42,4 @@ CleanBuild: ], "errors": true, "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "root": [ - "./a.ts", - "./b.ts", - "./c.ts" - ], - "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental-discrepancies.js index 51b9a9199ecfb..d0b98e51e30c9 100644 --- a/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental-discrepancies.js +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental-discrepancies.js @@ -1,5 +1,6 @@ -3:: No Change run with checking -*** Needs explanation +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -28,6 +29,7 @@ CleanBuild: "options": { "declaration": true }, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -54,214 +56,14 @@ IncrementalBuild: "./b.ts" ] ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion" -} -4:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true - }, - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion" -} -8:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-11705693502-export const a: number = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], "options": { "declaration": true }, - "semanticDiagnosticsPerFile": [ - [ - "./a.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-11705693502-export const a: number = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, "version": "FakeTSVersion" } -10:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true - }, - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion" -} -14:: No Change run with checking -*** Needs explanation +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -296,62 +98,10 @@ CleanBuild: "options": { "declaration": true }, - "semanticDiagnosticsPerFile": [ - [ - "./c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - }, - "./c.ts": { - "version": "-9150421116-export const c: number = \"hello\";" - } - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./a.ts", - "./b.ts", - "./c.ts" - ] - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion" -} -16:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: { "fileInfos": { "../lib/lib.d.ts": { @@ -384,55 +134,5 @@ CleanBuild: "options": { "declaration": true }, - "semanticDiagnosticsPerFile": [ - [ - "./c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - }, - "./c.ts": { - "version": "-9150421116-export const c: number = \"hello\";" - } - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./a.ts", - "./b.ts", - "./c.ts" - ] - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental.js index e9a1bb28b5ba4..000ede0aa7fb8 100644 --- a/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental.js +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors-with-incremental.js @@ -58,10 +58,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -92,7 +89,7 @@ exports.b = 10; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -139,11 +136,25 @@ exports.b = 10; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 857 + "size": 899 } @@ -198,8 +209,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/src/a.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -211,7 +221,7 @@ export declare const a = "hello"; //// [/src/a.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -258,11 +268,25 @@ export declare const a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 853 + "size": 895 } @@ -292,11 +316,89 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +No shapes updated in the builder:: + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion", + "size": 838 +} + Change:: No Change run with checking @@ -378,7 +480,7 @@ export declare const a: number; //// [/src/a.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -425,11 +527,17 @@ export declare const a: number; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 857 + "size": 895 } @@ -459,11 +567,109 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const a: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts +No shapes updated in the builder:: + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[2,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "version": "-11705693502-export const a: number = \"hello\";", + "signature": "-3045186137-export declare const a: number;\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 994 +} + Change:: Fix `a` error with noCheck @@ -513,7 +719,7 @@ export declare const a = "hello"; //// [/src/a.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -560,11 +766,17 @@ export declare const a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 853 + "size": 891 } @@ -578,11 +790,87 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts +No shapes updated in the builder:: + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion", + "size": 838 +} + Change:: Add file with error @@ -629,9 +917,6 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts /src/c.ts Shape signatures in builder refreshed for:: @@ -743,7 +1028,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -768,10 +1053,7 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts -/src/c.ts Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -783,7 +1065,7 @@ export declare const a: number; //// [/src/a.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2,[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -842,11 +1124,29 @@ export declare const a: number; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ], + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 989 + "size": 1148 } @@ -900,7 +1200,7 @@ export declare const a = "hello"; //// [/src/a.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2,[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -959,11 +1259,29 @@ export declare const a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ], + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 985 + "size": 1144 } @@ -977,11 +1295,123 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/src/a.ts +No shapes updated in the builder:: + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1122 +} + Change:: no-change-run @@ -1009,8 +1439,39 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors.js index f4793a798c488..cd34d3f2fb69d 100644 --- a/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors.js +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/semantic-errors.js @@ -56,10 +56,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -90,7 +87,7 @@ exports.b = 10; //// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts","./b.ts"],"version":"FakeTSVersion"} +{"root":["./a.ts","./b.ts"],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -98,8 +95,9 @@ exports.b = 10; "./a.ts", "./b.ts" ], + "checkPending": true, "version": "FakeTSVersion", - "size": 54 + "size": 74 } @@ -153,10 +151,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -200,11 +195,54 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "version": "FakeTSVersion", + "size": 54 +} + Change:: No Change run with checking @@ -272,10 +310,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -290,8 +325,20 @@ export declare const a: number; //// [/src/a.js] file written with same contents //// [/src/b.d.ts] file written with same contents //// [/src/b.js] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"checkPending":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "checkPending": true, + "version": "FakeTSVersion", + "size": 74 +} + Change:: no-change-run @@ -319,11 +366,63 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const a: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 68 +} + Change:: Fix `a` error with noCheck @@ -359,10 +458,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -377,8 +473,20 @@ export declare const a = "hello"; //// [/src/a.js] file written with same contents //// [/src/b.d.ts] file written with same contents //// [/src/b.js] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"checkPending":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "checkPending": true, + "version": "FakeTSVersion", + "size": 74 +} + Change:: No Change run with checking @@ -390,11 +498,54 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "version": "FakeTSVersion", + "size": 54 +} + Change:: Add file with error @@ -496,7 +647,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -519,11 +670,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -542,7 +689,7 @@ export declare const a: number; //// [/src/c.d.ts] file written with same contents //// [/src/c.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts","./b.ts","./c.ts"],"version":"FakeTSVersion"} +{"root":["./a.ts","./b.ts","./c.ts"],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -551,8 +698,9 @@ export declare const a: number; "./b.ts", "./c.ts" ], + "checkPending": true, "version": "FakeTSVersion", - "size": 63 + "size": 83 } @@ -592,11 +740,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -627,11 +771,70 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +/src/c.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts","./c.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 77 +} + Change:: no-change-run @@ -659,8 +862,54 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +/src/c.ts (computed .d.ts during emit) + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] file written with same contents +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-discrepancies.js index f359d21bb7bb4..68bcc68eb7eda 100644 --- a/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-discrepancies.js +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-discrepancies.js @@ -1,27 +1,27 @@ -14:: No Change run with checking -*** Needs explanation +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: CleanBuild: { "root": [ "./a.ts", - "./b.ts", - "./c.ts" + "./b.ts" ], - "errors": true, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: { "root": [ "./a.ts", - "./b.ts", - "./c.ts" + "./b.ts" ], "version": "FakeTSVersion" } -16:: No Change run with checking -*** Needs explanation +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -30,7 +30,7 @@ CleanBuild: "./b.ts", "./c.ts" ], - "errors": true, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -40,5 +40,6 @@ IncrementalBuild: "./b.ts", "./c.ts" ], + "errors": true, "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js index 1616d62fd615e..d0b98e51e30c9 100644 --- a/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js @@ -1,5 +1,6 @@ -3:: No Change run with checking -*** Needs explanation +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -28,6 +29,7 @@ CleanBuild: "options": { "declaration": true }, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -54,386 +56,14 @@ IncrementalBuild: "./b.ts" ] ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion" -} -4:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true - }, - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion" -} -6:: Introduce error with noCheck -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-14000546910-export const a = \"hello" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "semanticDiagnosticsPerFile": [ - [ - "../lib/lib.d.ts", - "not cached" - ], - [ - "./a.ts", - "not cached" - ], - [ - "./b.ts", - "not cached" - ] - ], - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-14000546910-export const a = \"hello" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "semanticDiagnosticsPerFile": [ - [ - "./a.ts", - "not cached" - ] - ], - "version": "FakeTSVersion" -} -7:: no-change-run -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-14000546910-export const a = \"hello" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "semanticDiagnosticsPerFile": [ - [ - "../lib/lib.d.ts", - "not cached" - ], - [ - "./a.ts", - "not cached" - ], - [ - "./b.ts", - "not cached" - ] - ], - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-14000546910-export const a = \"hello" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "semanticDiagnosticsPerFile": [ - [ - "./a.ts", - "not cached" - ] - ], - "version": "FakeTSVersion" -} -8:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-14000546910-export const a = \"hello" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], "options": { "declaration": true }, - "semanticDiagnosticsPerFile": [ - [ - "../lib/lib.d.ts", - "not cached" - ], - [ - "./a.ts", - "not cached" - ], - [ - "./b.ts", - "not cached" - ] - ], - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-14000546910-export const a = \"hello" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "semanticDiagnosticsPerFile": [ - [ - "./a.ts", - "not cached" - ] - ], "version": "FakeTSVersion" } -10:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true - }, - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion" -} -14:: No Change run with checking -*** Needs explanation +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -468,62 +98,10 @@ CleanBuild: "options": { "declaration": true }, - "semanticDiagnosticsPerFile": [ - [ - "./c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - }, - "./c.ts": { - "version": "-9150421116-export const c: number = \"hello\";" - } - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./a.ts", - "./b.ts", - "./c.ts" - ] - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion" -} -16:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: { "fileInfos": { "../lib/lib.d.ts": { @@ -556,55 +134,5 @@ CleanBuild: "options": { "declaration": true }, - "semanticDiagnosticsPerFile": [ - [ - "./c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-16641552193-export const a = \"hello\";" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - }, - "./c.ts": { - "version": "-9150421116-export const c: number = \"hello\";" - } - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./a.ts", - "./b.ts", - "./c.ts" - ] - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental.js index 0b776d47ade00..85f585dcf114a 100644 --- a/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental.js +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors-with-incremental.js @@ -97,7 +97,7 @@ exports.b = 10; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"semanticDiagnosticsPerFile":[1,2,3],"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -144,8 +144,7 @@ exports.b = 10; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, "semanticDiagnosticsPerFile": [ [ @@ -161,8 +160,9 @@ exports.b = 10; "not cached" ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 887 + "size": 892 } @@ -176,39 +176,9 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:24 - error TS1002: Unterminated string literal. - -1 export const a = "hello -    +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/b.ts' is older than output 'src/tsconfig.tsbuildinfo' - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts", - "/src/b.ts" -] -Program options: { - "declaration": true, - "incremental": true, - "noCheck": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts - -No cached semantic diagnostics in the builder:: - -No shapes updated in the builder:: +exitCode:: ExitStatus.Success @@ -225,7 +195,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -247,10 +217,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -265,7 +232,7 @@ exports.a = "hello"; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -312,11 +279,25 @@ exports.a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 853 + "size": 895 } @@ -346,11 +327,89 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion", + "size": 838 +} + Change:: No Change run with checking @@ -443,7 +502,7 @@ exports.a = "hello; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"semanticDiagnosticsPerFile":[2],"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -490,8 +549,7 @@ exports.a = "hello; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, "semanticDiagnosticsPerFile": [ [ @@ -499,8 +557,9 @@ exports.a = "hello; "not cached" ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 883 + "size": 888 } @@ -514,6 +573,22 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + [HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -534,7 +609,6 @@ Program root files: [ Program options: { "declaration": true, "incremental": true, - "noCheck": true, "tscBuild": true, "configFilePath": "/src/tsconfig.json" } @@ -550,30 +624,85 @@ Semantic diagnostics in builder refreshed for:: No shapes updated in the builder:: +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2],"version":"FakeTSVersion"} +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 868 +} -Change:: No Change run with checking + + +Change:: Fix `a` error with noCheck Input:: +//// [/src/a.ts] +export const a = "hello"; + Output:: -/lib/tsc -b /src/tsconfig.json -v +/lib/tsc -b /src/tsconfig.json -v --noCheck [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... -src/a.ts:1:24 - error TS1002: Unterminated string literal. - -1 export const a = "hello -    - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +exitCode:: ExitStatus.Success Program root files: [ "/src/a.ts", "/src/b.ts" @@ -581,6 +710,7 @@ Program root files: [ Program options: { "declaration": true, "incremental": true, + "noCheck": true, "tscBuild": true, "configFilePath": "/src/tsconfig.json" } @@ -590,22 +720,90 @@ Program files:: /src/a.ts /src/b.ts -No cached semantic diagnostics in the builder:: +Semantic diagnostics in builder refreshed for:: +/src/a.ts -No shapes updated in the builder:: +Shape signatures in builder refreshed for:: +/src/a.ts (computed .d.ts) +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2],"checkPending":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "checkPending": true, + "version": "FakeTSVersion", + "size": 891 +} -Change:: Fix `a` error with noCheck -Input:: -//// [/src/a.ts] -export const a = "hello"; +Change:: No Change run with checking +Input:: Output:: -/lib/tsc -b /src/tsconfig.json -v --noCheck +/lib/tsc -b /src/tsconfig.json -v [HH:MM:SS AM] Projects in this build: * src/tsconfig.json @@ -621,7 +819,6 @@ Program root files: [ Program options: { "declaration": true, "incremental": true, - "noCheck": true, "tscBuild": true, "configFilePath": "/src/tsconfig.json" } @@ -634,20 +831,11 @@ Program files:: Semantic diagnostics in builder refreshed for:: /src/a.ts -Shape signatures in builder refreshed for:: -/src/a.ts (computed .d.ts) +No shapes updated in the builder:: -//// [/src/a.d.ts] file written with same contents -//// [/src/a.js] -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.a = void 0; -exports.a = "hello"; - - //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -694,31 +882,14 @@ exports.a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, "version": "FakeTSVersion", - "size": 853 + "size": 838 } -Change:: No Change run with checking -Input:: - - -Output:: -/lib/tsc -b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' - -exitCode:: ExitStatus.Success - - - - Change:: Add file with error Input:: //// [/src/c.ts] @@ -763,9 +934,6 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts /src/c.ts Shape signatures in builder refreshed for:: @@ -877,7 +1045,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -909,7 +1077,8 @@ Program files:: /src/b.ts /src/c.ts -No cached semantic diagnostics in the builder:: +Semantic diagnostics in builder refreshed for:: +/src/a.ts Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -924,7 +1093,7 @@ exports.a = "hello; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"semanticDiagnosticsPerFile":[1,2,3,4],"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2,[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -983,29 +1152,29 @@ exports.a = "hello; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, "semanticDiagnosticsPerFile": [ - [ - "../lib/lib.d.ts", - "not cached" - ], [ "./a.ts", "not cached" ], - [ - "./b.ts", - "not cached" - ], [ "./c.ts", - "not cached" + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 1021 + "size": 1141 } @@ -1022,7 +1191,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -1047,10 +1216,7 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts -/src/c.ts Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -1065,7 +1231,7 @@ exports.a = "hello"; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2,[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1124,11 +1290,29 @@ exports.a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ], + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 985 + "size": 1144 } @@ -1142,11 +1326,123 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts +Semantic diagnostics in builder refreshed for:: +/src/a.ts + +No shapes updated in the builder:: + +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts", + "./c.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-16641552193-export const a = \"hello\";", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "./c.ts": { + "original": { + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + }, + "version": "-9150421116-export const c: number = \"hello\";", + "signature": "1429704745-export declare const c: number;\n" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 1122 +} + Change:: no-change-run @@ -1174,8 +1470,39 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/tsconfig.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: diff --git a/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors.js b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors.js index 33f08454575be..ffe291abc8afe 100644 --- a/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors.js +++ b/tests/baselines/reference/tsbuild/noCheck/multiFile/syntax-errors.js @@ -95,7 +95,7 @@ exports.b = 10; //// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts","./b.ts"],"errors":true,"version":"FakeTSVersion"} +{"root":["./a.ts","./b.ts"],"errors":true,"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -104,8 +104,9 @@ exports.b = 10; "./b.ts" ], "errors": true, + "checkPending": true, "version": "FakeTSVersion", - "size": 68 + "size": 88 } @@ -119,49 +120,11 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:24 - error TS1002: Unterminated string literal. - -1 export const a = "hello -    - +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/b.ts' is older than output 'src/a.js' -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts", - "/src/b.ts" -] -Program options: { - "declaration": true, - "noCheck": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts - -No cached semantic diagnostics in the builder:: - -Shape signatures in builder refreshed for:: -/lib/lib.d.ts (used version) -/src/a.ts (computed .d.ts during emit) -/src/b.ts (computed .d.ts during emit) +exitCode:: ExitStatus.Success -//// [/src/a.d.ts] file written with same contents -//// [/src/a.js] file written with same contents -//// [/src/b.d.ts] file written with same contents -//// [/src/b.js] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents Change:: Fix `a` error with noCheck @@ -176,7 +139,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -197,10 +160,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -219,7 +179,7 @@ exports.a = "hello"; //// [/src/b.d.ts] file written with same contents //// [/src/b.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts","./b.ts"],"version":"FakeTSVersion"} +{"root":["./a.ts","./b.ts"],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -227,8 +187,9 @@ exports.a = "hello"; "./a.ts", "./b.ts" ], + "checkPending": true, "version": "FakeTSVersion", - "size": 54 + "size": 74 } @@ -258,11 +219,54 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "version": "FakeTSVersion", + "size": 54 +} + Change:: No Change run with checking @@ -357,7 +361,7 @@ exports.a = "hello; //// [/src/b.d.ts] file written with same contents //// [/src/b.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts","./b.ts"],"errors":true,"version":"FakeTSVersion"} +{"root":["./a.ts","./b.ts"],"errors":true,"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -366,8 +370,9 @@ exports.a = "hello; "./b.ts" ], "errors": true, + "checkPending": true, "version": "FakeTSVersion", - "size": 68 + "size": 88 } @@ -381,6 +386,22 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' + +exitCode:: ExitStatus.Success + + + + +Change:: No Change run with checking +Input:: + + +Output:: +/lib/tsc -b /src/tsconfig.json -v +[HH:MM:SS AM] Projects in this build: + * src/tsconfig.json + [HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -400,7 +421,6 @@ Program root files: [ ] Program options: { "declaration": true, - "noCheck": true, "tscBuild": true, "configFilePath": "/src/tsconfig.json" } @@ -422,38 +442,46 @@ Shape signatures in builder refreshed for:: //// [/src/a.js] file written with same contents //// [/src/b.d.ts] file written with same contents //// [/src/b.js] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 68 +} -Change:: No Change run with checking + +Change:: Fix `a` error with noCheck Input:: +//// [/src/a.ts] +export const a = "hello"; + Output:: -/lib/tsc -b /src/tsconfig.json -v +/lib/tsc -b /src/tsconfig.json -v --noCheck [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... -src/a.ts:1:24 - error TS1002: Unterminated string literal. - -1 export const a = "hello -    - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +exitCode:: ExitStatus.Success Program root files: [ "/src/a.ts", "/src/b.ts" ] Program options: { "declaration": true, + "noCheck": true, "tscBuild": true, "configFilePath": "/src/tsconfig.json" } @@ -472,22 +500,37 @@ Shape signatures in builder refreshed for:: //// [/src/a.d.ts] file written with same contents -//// [/src/a.js] file written with same contents +//// [/src/a.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.a = void 0; +exports.a = "hello"; + + //// [/src/b.d.ts] file written with same contents //// [/src/b.js] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts"],"checkPending":true,"version":"FakeTSVersion"} +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts" + ], + "checkPending": true, + "version": "FakeTSVersion", + "size": 74 +} -Change:: Fix `a` error with noCheck -Input:: -//// [/src/a.ts] -export const a = "hello"; + +Change:: No Change run with checking +Input:: Output:: -/lib/tsc -b /src/tsconfig.json -v --noCheck +/lib/tsc -b /src/tsconfig.json -v [HH:MM:SS AM] Projects in this build: * src/tsconfig.json @@ -502,7 +545,6 @@ Program root files: [ ] Program options: { "declaration": true, - "noCheck": true, "tscBuild": true, "configFilePath": "/src/tsconfig.json" } @@ -524,13 +566,7 @@ Shape signatures in builder refreshed for:: //// [/src/a.d.ts] file written with same contents -//// [/src/a.js] -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.a = void 0; -exports.a = "hello"; - - +//// [/src/a.js] file written with same contents //// [/src/b.d.ts] file written with same contents //// [/src/b.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] @@ -548,22 +584,6 @@ exports.a = "hello"; -Change:: No Change run with checking -Input:: - - -Output:: -/lib/tsc -b /src/tsconfig.json -v -[HH:MM:SS AM] Projects in this build: - * src/tsconfig.json - -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' - -exitCode:: ExitStatus.Success - - - - Change:: Add file with error Input:: //// [/src/c.ts] @@ -663,7 +683,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -715,8 +735,22 @@ exports.a = "hello; //// [/src/b.js] file written with same contents //// [/src/c.d.ts] file written with same contents //// [/src/c.js] file written with same contents -//// [/src/tsconfig.tsbuildinfo] file written with same contents -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts","./c.ts"],"errors":true,"checkPending":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "errors": true, + "checkPending": true, + "version": "FakeTSVersion", + "size": 97 +} + Change:: Fix `a` error with noCheck @@ -731,7 +765,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'src/tsconfig.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -754,11 +788,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -780,7 +810,7 @@ exports.a = "hello"; //// [/src/c.d.ts] file written with same contents //// [/src/c.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"root":["./a.ts","./b.ts","./c.ts"],"version":"FakeTSVersion"} +{"root":["./a.ts","./b.ts","./c.ts"],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -789,8 +819,9 @@ exports.a = "hello"; "./b.ts", "./c.ts" ], + "checkPending": true, "version": "FakeTSVersion", - "size": 63 + "size": 83 } @@ -804,11 +835,70 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +/src/c.ts (computed .d.ts during emit) +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] +{"root":["./a.ts","./b.ts","./c.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./a.ts", + "./b.ts", + "./c.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 77 +} + Change:: no-change-run @@ -836,8 +926,54 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'src/a.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'src/tsconfig.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts +Shape signatures in builder refreshed for:: +/lib/lib.d.ts (used version) +/src/a.ts (computed .d.ts during emit) +/src/b.ts (computed .d.ts during emit) +/src/c.ts (computed .d.ts during emit) + + +//// [/src/a.d.ts] file written with same contents +//// [/src/a.js] file written with same contents +//// [/src/b.d.ts] file written with same contents +//// [/src/b.js] file written with same contents +//// [/src/c.d.ts] file written with same contents +//// [/src/c.js] file written with same contents +//// [/src/tsconfig.tsbuildinfo] file written with same contents +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] file written with same contents diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-discrepancies.js index 8d390f4cdd92b..07790cfdd8563 100644 --- a/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-discrepancies.js +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-discrepancies.js @@ -1,27 +1,27 @@ -14:: No Change run with checking -*** Needs explanation +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: CleanBuild: { "root": [ "./src/a.ts", - "./src/b.ts", - "./src/c.ts" + "./src/b.ts" ], - "errors": true, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: { "root": [ "./src/a.ts", - "./src/b.ts", - "./src/c.ts" + "./src/b.ts" ], "version": "FakeTSVersion" } -16:: No Change run with checking -*** Needs explanation +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -30,7 +30,7 @@ CleanBuild: "./src/b.ts", "./src/c.ts" ], - "errors": true, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -40,5 +40,6 @@ IncrementalBuild: "./src/b.ts", "./src/c.ts" ], + "errors": true, "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental-discrepancies.js index 1d27fb5b0d21d..444750d82fc39 100644 --- a/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental-discrepancies.js +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental-discrepancies.js @@ -1,5 +1,6 @@ -3:: No Change run with checking -*** Needs explanation +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -23,6 +24,7 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -45,161 +47,15 @@ IncrementalBuild: "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, "version": "FakeTSVersion" } -4:: No Change run with checking -*** Needs explanation +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: CleanBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion" -} -10:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion" -} -14:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;", - "./src/c.ts": "-9150421116-export const c: number = \"hello\";" - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ] - ] - ], - "options": { - "declaration": true, - "module": 2, - "outFile": "./outFile.js" - }, - "semanticDiagnosticsPerFile": [ - [ - "./src/c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion" -} -IncrementalBuild: { "fileInfos": { "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", @@ -223,54 +79,9 @@ IncrementalBuild: "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, - "version": "FakeTSVersion" -} -16:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;", - "./src/c.ts": "-9150421116-export const c: number = \"hello\";" - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ] - ] - ], - "options": { - "declaration": true, - "module": 2, - "outFile": "./outFile.js" - }, - "semanticDiagnosticsPerFile": [ - [ - "./src/c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -297,7 +108,6 @@ IncrementalBuild: "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, "version": "FakeTSVersion" diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental.js index db7f9464bab7d..182e55c469099 100644 --- a/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental.js +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors-with-incremental.js @@ -70,10 +70,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -99,7 +96,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -126,9 +123,22 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], "emitDiagnosticsPerFile": [ [ "./src/a.ts", @@ -143,8 +153,9 @@ define("b", ["require", "exports"], function (require, exports) { ] ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 901 + "size": 943 } @@ -158,41 +169,9 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/b.ts' is older than output 'outFile.tsbuildinfo' -src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. - -1 export const a = class { private p = 10; }; -   ~ - - -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts", - "/src/b.ts" -] -Program options: { - "declaration": true, - "incremental": true, - "module": 2, - "outFile": "/outFile.js", - "noCheck": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts - -Semantic diagnostics in builder refreshed for:: - -No shapes updated in the builder:: +exitCode:: ExitStatus.Success @@ -209,7 +188,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -233,10 +212,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -266,7 +242,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -293,11 +269,25 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 713 + "size": 755 } @@ -327,11 +317,71 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 698 +} + Change:: No Change run with checking @@ -410,10 +460,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -439,7 +486,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -466,9 +513,22 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], "emitDiagnosticsPerFile": [ [ "./src/a.ts", @@ -483,8 +543,9 @@ define("b", ["require", "exports"], function (require, exports) { ] ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 901 + "size": 943 } @@ -498,41 +559,9 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. - -1 export const a = class { private p = 10; }; -   ~ - - -Found 1 error. +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts", - "/src/b.ts" -] -Program options: { - "declaration": true, - "incremental": true, - "module": 2, - "outFile": "/outFile.js", - "noCheck": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts - -Semantic diagnostics in builder refreshed for:: - -No shapes updated in the builder:: +exitCode:: ExitStatus.Success @@ -647,7 +676,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -671,10 +700,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -696,7 +722,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -723,11 +749,25 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 713 + "size": 755 } @@ -741,11 +781,71 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 698 +} + Change:: Add file with error @@ -902,7 +1002,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -936,11 +1036,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -972,7 +1068,7 @@ define("c", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -1004,9 +1100,26 @@ define("c", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ], + [ + "./src/c.ts", + "not cached" + ] + ], "emitDiagnosticsPerFile": [ [ "./src/a.ts", @@ -1021,8 +1134,9 @@ define("c", ["require", "exports"], function (require, exports) { ] ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 966 + "size": 1010 } @@ -1039,7 +1153,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -1065,11 +1179,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -1097,7 +1207,7 @@ define("c", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -1129,11 +1239,29 @@ define("c", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ], + [ + "./src/c.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 778 + "size": 822 } @@ -1147,11 +1275,101 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 915 +} + Change:: no-change-run @@ -1179,8 +1397,41 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors.js b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors.js index 807f37b0eb67c..0943e3419535b 100644 --- a/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors.js +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/dts-errors.js @@ -70,10 +70,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -99,7 +96,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"root":["./src/a.ts","./src/b.ts"],"errors":true,"version":"FakeTSVersion"} +{"root":["./src/a.ts","./src/b.ts"],"errors":true,"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -108,8 +105,9 @@ define("b", ["require", "exports"], function (require, exports) { "./src/b.ts" ], "errors": true, + "checkPending": true, "version": "FakeTSVersion", - "size": 76 + "size": 96 } @@ -123,7 +121,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output file 'outFile.d.ts' does not exist [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -156,10 +154,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -181,7 +176,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -204,10 +199,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -237,7 +229,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} +{"root":["./src/a.ts","./src/b.ts"],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -245,8 +237,9 @@ define("b", ["require", "exports"], function (require, exports) { "./src/a.ts", "./src/b.ts" ], + "checkPending": true, "version": "FakeTSVersion", - "size": 62 + "size": 82 } @@ -276,11 +269,51 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "version": "FakeTSVersion", + "size": 62 +} + Change:: No Change run with checking @@ -360,10 +393,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -390,7 +420,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"root":["./src/a.ts","./src/b.ts"],"errors":true,"version":"FakeTSVersion"} +{"root":["./src/a.ts","./src/b.ts"],"errors":true,"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -399,8 +429,9 @@ define("b", ["require", "exports"], function (require, exports) { "./src/b.ts" ], "errors": true, + "checkPending": true, "version": "FakeTSVersion", - "size": 76 + "size": 96 } @@ -414,51 +445,11 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:14 - error TS4094: Property 'p' of exported class expression may not be private or protected. - -1 export const a = class { private p = 10; }; -   ~ - -[HH:MM:SS AM] Updating unchanged output timestamps of project '/src/tsconfig.json'... - - -Found 1 error. +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts", - "/src/b.ts" -] -Program options: { - "declaration": true, - "module": 2, - "outFile": "/outFile.js", - "noCheck": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts - -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts - -No shapes updated in the builder:: +exitCode:: ExitStatus.Success -//// [/outFile.d.ts] file changed its modified time -//// [/outFile.js] file written with same contents -//// [/outFile.tsbuildinfo] file written with same contents -//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents Change:: No Change run with checking @@ -512,8 +503,20 @@ No shapes updated in the builder:: //// [/outFile.d.ts] file changed its modified time //// [/outFile.js] file written with same contents -//// [/outFile.tsbuildinfo] file written with same contents -//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 76 +} + Change:: Fix `a` error with noCheck @@ -528,7 +531,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -551,10 +554,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -576,7 +576,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} +{"root":["./src/a.ts","./src/b.ts"],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -584,8 +584,9 @@ define("b", ["require", "exports"], function (require, exports) { "./src/a.ts", "./src/b.ts" ], + "checkPending": true, "version": "FakeTSVersion", - "size": 62 + "size": 82 } @@ -599,11 +600,51 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "version": "FakeTSVersion", + "size": 62 +} + Change:: Add file with error @@ -721,7 +762,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -756,11 +797,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -792,8 +829,22 @@ define("c", ["require", "exports"], function (require, exports) { }); -//// [/outFile.tsbuildinfo] file written with same contents -//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"errors":true,"checkPending":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "errors": true, + "checkPending": true, + "version": "FakeTSVersion", + "size": 109 +} + Change:: Fix `a` error with noCheck @@ -808,7 +859,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -833,11 +884,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -865,7 +912,7 @@ define("c", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"version":"FakeTSVersion"} +{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -874,8 +921,9 @@ define("c", ["require", "exports"], function (require, exports) { "./src/b.ts", "./src/c.ts" ], + "checkPending": true, "version": "FakeTSVersion", - "size": 75 + "size": 95 } @@ -889,11 +937,64 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 89 +} + Change:: no-change-run @@ -921,8 +1022,48 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] file written with same contents +//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-discrepancies.js index 34ea2b9343bef..07790cfdd8563 100644 --- a/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-discrepancies.js +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-discrepancies.js @@ -1,5 +1,6 @@ -8:: No Change run with checking -*** Needs explanation +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -7,7 +8,7 @@ CleanBuild: "./src/a.ts", "./src/b.ts" ], - "errors": true, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -18,8 +19,9 @@ IncrementalBuild: ], "version": "FakeTSVersion" } -14:: No Change run with checking -*** Needs explanation +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -28,22 +30,10 @@ CleanBuild: "./src/b.ts", "./src/c.ts" ], - "errors": true, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: -{ - "root": [ - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ], - "version": "FakeTSVersion" -} -16:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: -CleanBuild: { "root": [ "./src/a.ts", @@ -52,13 +42,4 @@ CleanBuild: ], "errors": true, "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "root": [ - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ], - "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental-discrepancies.js index fabe157609ae6..444750d82fc39 100644 --- a/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental-discrepancies.js +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental-discrepancies.js @@ -1,5 +1,6 @@ -3:: No Change run with checking -*** Needs explanation +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -23,6 +24,7 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -45,257 +47,13 @@ IncrementalBuild: "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, "version": "FakeTSVersion" } -4:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion" -} -8:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-11705693502-export const a: number = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "outFile": "./outFile.js" - }, - "semanticDiagnosticsPerFile": [ - [ - "./src/a.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-11705693502-export const a: number = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion" -} -10:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion" -} -14:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;", - "./src/c.ts": "-9150421116-export const c: number = \"hello\";" - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ] - ] - ], - "options": { - "declaration": true, - "module": 2, - "outFile": "./outFile.js" - }, - "semanticDiagnosticsPerFile": [ - [ - "./src/c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;", - "./src/c.ts": "-9150421116-export const c: number = \"hello\";" - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ] - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion" -} -16:: No Change run with checking -*** Needs explanation +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -323,20 +81,7 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./src/c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -363,7 +108,6 @@ IncrementalBuild: "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, "version": "FakeTSVersion" diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental.js index 67f271f26f1d5..d9bdf4d0876b1 100644 --- a/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental.js +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors-with-incremental.js @@ -62,10 +62,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -95,7 +92,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -122,11 +119,25 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 721 + "size": 763 } @@ -183,10 +194,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -202,7 +210,7 @@ declare module "b" { //// [/outFile.js] file written with same contents //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -229,11 +237,25 @@ declare module "b" { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 713 + "size": 755 } @@ -263,11 +285,71 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 698 +} + Change:: No Change run with checking @@ -338,10 +420,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -357,7 +436,7 @@ declare module "b" { //// [/outFile.js] file written with same contents //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -384,11 +463,25 @@ declare module "b" { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 721 + "size": 763 } @@ -418,11 +511,93 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const a: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[2,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-11705693502-export const a: number = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/a.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 858 +} + Change:: Fix `a` error with noCheck @@ -461,10 +636,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -480,7 +652,7 @@ declare module "b" { //// [/outFile.js] file written with same contents //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -507,11 +679,25 @@ declare module "b" { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 713 + "size": 755 } @@ -525,11 +711,71 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +No shapes updated in the builder:: + + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 698 +} + Change:: Add file with error @@ -686,7 +932,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -712,11 +958,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -735,7 +977,7 @@ declare module "c" { //// [/outFile.js] file written with same contents //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -767,11 +1009,29 @@ declare module "c" { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ], + [ + "./src/c.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 786 + "size": 830 } @@ -814,11 +1074,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -837,7 +1093,7 @@ declare module "c" { //// [/outFile.js] file written with same contents //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -869,11 +1125,29 @@ declare module "c" { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ], + [ + "./src/c.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 778 + "size": 822 } @@ -887,11 +1161,101 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 915 +} + Change:: no-change-run @@ -919,8 +1283,41 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors.js b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors.js index 80ff4ef0c8be8..0e39f17b242fa 100644 --- a/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors.js +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/semantic-errors.js @@ -60,10 +60,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -93,7 +90,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} +{"root":["./src/a.ts","./src/b.ts"],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -101,8 +98,9 @@ define("b", ["require", "exports"], function (require, exports) { "./src/a.ts", "./src/b.ts" ], + "checkPending": true, "version": "FakeTSVersion", - "size": 62 + "size": 82 } @@ -158,10 +156,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -205,11 +200,51 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "version": "FakeTSVersion", + "size": 62 +} + Change:: No Change run with checking @@ -279,10 +314,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -297,8 +329,20 @@ declare module "b" { //// [/outFile.js] file written with same contents -//// [/outFile.tsbuildinfo] file written with same contents -//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"checkPending":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "checkPending": true, + "version": "FakeTSVersion", + "size": 82 +} + Change:: no-change-run @@ -326,11 +370,60 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/a.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const a: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +No shapes updated in the builder:: + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 76 +} + Change:: Fix `a` error with noCheck @@ -368,10 +461,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -386,8 +476,20 @@ declare module "b" { //// [/outFile.js] file written with same contents -//// [/outFile.tsbuildinfo] file written with same contents -//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"checkPending":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "checkPending": true, + "version": "FakeTSVersion", + "size": 82 +} + Change:: No Change run with checking @@ -399,11 +501,51 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +No shapes updated in the builder:: + + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "version": "FakeTSVersion", + "size": 62 +} + Change:: Add file with error @@ -521,7 +663,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -546,11 +688,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -569,7 +707,7 @@ declare module "c" { //// [/outFile.js] file written with same contents //// [/outFile.tsbuildinfo] -{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"version":"FakeTSVersion"} +{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -578,8 +716,9 @@ declare module "c" { "./src/b.ts", "./src/c.ts" ], + "checkPending": true, "version": "FakeTSVersion", - "size": 75 + "size": 95 } @@ -621,11 +760,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -656,11 +791,64 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 89 +} + Change:: no-change-run @@ -688,8 +876,48 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] file written with same contents +//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-discrepancies.js index 8d390f4cdd92b..07790cfdd8563 100644 --- a/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-discrepancies.js +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-discrepancies.js @@ -1,27 +1,27 @@ -14:: No Change run with checking -*** Needs explanation +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: CleanBuild: { "root": [ "./src/a.ts", - "./src/b.ts", - "./src/c.ts" + "./src/b.ts" ], - "errors": true, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: { "root": [ "./src/a.ts", - "./src/b.ts", - "./src/c.ts" + "./src/b.ts" ], "version": "FakeTSVersion" } -16:: No Change run with checking -*** Needs explanation +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -30,7 +30,7 @@ CleanBuild: "./src/b.ts", "./src/c.ts" ], - "errors": true, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -40,5 +40,6 @@ IncrementalBuild: "./src/b.ts", "./src/c.ts" ], + "errors": true, "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js index e79a55193d21a..444750d82fc39 100644 --- a/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js @@ -1,5 +1,6 @@ -3:: No Change run with checking -*** Needs explanation +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -23,6 +24,7 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -45,197 +47,13 @@ IncrementalBuild: "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, "version": "FakeTSVersion" } -4:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion" -} -8:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-14000546910-export const a = \"hello", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "outFile": "./outFile.js" - }, - "semanticDiagnosticsPerFile": [ - [ - "./lib/lib.d.ts", - "not cached" - ], - [ - "./src/a.ts", - "not cached" - ], - [ - "./src/b.ts", - "not cached" - ] - ], - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-14000546910-export const a = \"hello", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "semanticDiagnosticsPerFile": [ - [ - "./lib/lib.d.ts", - "not cached" - ], - [ - "./src/a.ts", - "not cached" - ], - [ - "./src/b.ts", - "not cached" - ] - ], - "version": "FakeTSVersion" -} -10:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion" -} -14:: No Change run with checking -*** Needs explanation +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -263,94 +81,7 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./src/c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;", - "./src/c.ts": "-9150421116-export const c: number = \"hello\";" - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ] - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion" -} -16:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;", - "./src/c.ts": "-9150421116-export const c: number = \"hello\";" - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ] - ] - ], - "options": { - "declaration": true, - "module": 2, - "outFile": "./outFile.js" - }, - "semanticDiagnosticsPerFile": [ - [ - "./src/c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -377,7 +108,6 @@ IncrementalBuild: "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, "version": "FakeTSVersion" diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental.js b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental.js index e9cd63ac1c529..4e166f4382a2e 100644 --- a/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental.js +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors-with-incremental.js @@ -100,7 +100,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -127,7 +127,6 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, "semanticDiagnosticsPerFile": [ @@ -144,8 +143,9 @@ define("b", ["require", "exports"], function (require, exports) { "not cached" ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 747 + "size": 752 } @@ -159,41 +159,9 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:24 - error TS1002: Unterminated string literal. - -1 export const a = "hello -    - - -Found 1 error. +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/b.ts' is older than output 'outFile.tsbuildinfo' -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts", - "/src/b.ts" -] -Program options: { - "declaration": true, - "incremental": true, - "module": 2, - "outFile": "/outFile.js", - "noCheck": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts - -No cached semantic diagnostics in the builder:: - -No shapes updated in the builder:: +exitCode:: ExitStatus.Success @@ -210,7 +178,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -234,10 +202,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -259,7 +224,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -286,11 +251,25 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 713 + "size": 755 } @@ -320,11 +299,71 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 698 +} + Change:: No Change run with checking @@ -425,7 +464,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -452,7 +491,6 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, "semanticDiagnosticsPerFile": [ @@ -469,8 +507,9 @@ define("b", ["require", "exports"], function (require, exports) { "not cached" ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 747 + "size": 752 } @@ -484,41 +523,9 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:24 - error TS1002: Unterminated string literal. - -1 export const a = "hello -    - - -Found 1 error. +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts", - "/src/b.ts" -] -Program options: { - "declaration": true, - "incremental": true, - "module": 2, - "outFile": "/outFile.js", - "noCheck": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts - -No cached semantic diagnostics in the builder:: - -No shapes updated in the builder:: +exitCode:: ExitStatus.Success @@ -568,6 +575,54 @@ No cached semantic diagnostics in the builder:: No shapes updated in the builder:: +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-14000546910-export const a = \"hello", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 732 +} + Change:: Fix `a` error with noCheck @@ -582,7 +637,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -606,10 +661,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -631,7 +683,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -658,11 +710,25 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 713 + "size": 755 } @@ -676,11 +742,71 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion", + "size": 698 +} + Change:: Add file with error @@ -837,7 +963,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -899,7 +1025,7 @@ define("c", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -931,7 +1057,6 @@ define("c", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, "semanticDiagnosticsPerFile": [ @@ -952,8 +1077,9 @@ define("c", ["require", "exports"], function (require, exports) { "not cached" ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 814 + "size": 819 } @@ -970,7 +1096,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -996,11 +1122,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -1028,7 +1150,7 @@ define("c", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -1060,11 +1182,29 @@ define("c", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ], + [ + "./src/c.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 778 + "size": 822 } @@ -1078,11 +1218,101 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts +No shapes updated in the builder:: + +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./src/c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "version": "FakeTSVersion", + "size": 915 +} + Change:: no-change-run @@ -1110,8 +1340,41 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.tsbuildinfo' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "incremental": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: + +No shapes updated in the builder:: diff --git a/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors.js b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors.js index 5552de09c2893..c7f3dc7925e1e 100644 --- a/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors.js +++ b/tests/baselines/reference/tsbuild/noCheck/outFile/syntax-errors.js @@ -98,7 +98,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"root":["./src/a.ts","./src/b.ts"],"errors":true,"version":"FakeTSVersion"} +{"root":["./src/a.ts","./src/b.ts"],"errors":true,"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -107,8 +107,9 @@ define("b", ["require", "exports"], function (require, exports) { "./src/b.ts" ], "errors": true, + "checkPending": true, "version": "FakeTSVersion", - "size": 76 + "size": 96 } @@ -122,46 +123,11 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:24 - error TS1002: Unterminated string literal. - -1 export const a = "hello -    - +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/b.ts' is older than output 'outFile.js' -Found 1 error. - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts", - "/src/b.ts" -] -Program options: { - "declaration": true, - "module": 2, - "outFile": "/outFile.js", - "noCheck": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts - -No cached semantic diagnostics in the builder:: - -No shapes updated in the builder:: +exitCode:: ExitStatus.Success -//// [/outFile.d.ts] file written with same contents -//// [/outFile.js] file written with same contents -//// [/outFile.tsbuildinfo] file written with same contents -//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents Change:: Fix `a` error with noCheck @@ -176,7 +142,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -199,10 +165,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -224,7 +187,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} +{"root":["./src/a.ts","./src/b.ts"],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -232,8 +195,9 @@ define("b", ["require", "exports"], function (require, exports) { "./src/a.ts", "./src/b.ts" ], + "checkPending": true, "version": "FakeTSVersion", - "size": 62 + "size": 82 } @@ -263,11 +227,51 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +No shapes updated in the builder:: + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "version": "FakeTSVersion", + "size": 62 +} + Change:: No Change run with checking @@ -367,7 +371,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"root":["./src/a.ts","./src/b.ts"],"errors":true,"version":"FakeTSVersion"} +{"root":["./src/a.ts","./src/b.ts"],"errors":true,"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -376,8 +380,9 @@ define("b", ["require", "exports"], function (require, exports) { "./src/b.ts" ], "errors": true, + "checkPending": true, "version": "FakeTSVersion", - "size": 76 + "size": 96 } @@ -391,46 +396,11 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/src/tsconfig.json'... - -src/a.ts:1:24 - error TS1002: Unterminated string literal. - -1 export const a = "hello -    - - -Found 1 error. +[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped -Program root files: [ - "/src/a.ts", - "/src/b.ts" -] -Program options: { - "declaration": true, - "module": 2, - "outFile": "/outFile.js", - "noCheck": true, - "tscBuild": true, - "configFilePath": "/src/tsconfig.json" -} -Program structureReused: Not -Program files:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts - -No cached semantic diagnostics in the builder:: - -No shapes updated in the builder:: +exitCode:: ExitStatus.Success -//// [/outFile.d.ts] file written with same contents -//// [/outFile.js] file written with same contents -//// [/outFile.tsbuildinfo] file written with same contents -//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents Change:: No Change run with checking @@ -479,8 +449,20 @@ No shapes updated in the builder:: //// [/outFile.d.ts] file written with same contents //// [/outFile.js] file written with same contents -//// [/outFile.tsbuildinfo] file written with same contents -//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 76 +} + Change:: Fix `a` error with noCheck @@ -495,7 +477,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -518,10 +500,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -543,7 +522,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} +{"root":["./src/a.ts","./src/b.ts"],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -551,8 +530,9 @@ define("b", ["require", "exports"], function (require, exports) { "./src/a.ts", "./src/b.ts" ], + "checkPending": true, "version": "FakeTSVersion", - "size": 62 + "size": 82 } @@ -566,11 +546,51 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/src/tsconfig.json'... exitCode:: ExitStatus.Success +Program root files: [ + "/src/a.ts", + "/src/b.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts + +No shapes updated in the builder:: +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts"],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts" + ], + "version": "FakeTSVersion", + "size": 62 +} + Change:: Add file with error @@ -688,7 +708,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -748,8 +768,22 @@ define("c", ["require", "exports"], function (require, exports) { }); -//// [/outFile.tsbuildinfo] file written with same contents -//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"errors":true,"checkPending":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "errors": true, + "checkPending": true, + "version": "FakeTSVersion", + "size": 109 +} + Change:: Fix `a` error with noCheck @@ -764,7 +798,7 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because output 'outFile.tsbuildinfo' is older than input 'src/a.ts' [HH:MM:SS AM] Building project '/src/tsconfig.json'... @@ -789,11 +823,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -821,7 +851,7 @@ define("c", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"version":"FakeTSVersion"} +{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -830,8 +860,9 @@ define("c", ["require", "exports"], function (require, exports) { "./src/b.ts", "./src/c.ts" ], + "checkPending": true, "version": "FakeTSVersion", - "size": 75 + "size": 95 } @@ -845,11 +876,64 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts +No shapes updated in the builder:: + +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] +{"root":["./src/a.ts","./src/b.ts","./src/c.ts"],"errors":true,"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "root": [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ], + "errors": true, + "version": "FakeTSVersion", + "size": 89 +} + Change:: no-change-run @@ -877,8 +961,48 @@ Output:: [HH:MM:SS AM] Projects in this build: * src/tsconfig.json -[HH:MM:SS AM] Project 'src/tsconfig.json' is up to date because newest input 'src/a.ts' is older than output 'outFile.js' +[HH:MM:SS AM] Project 'src/tsconfig.json' is out of date because buildinfo file 'outFile.tsbuildinfo' indicates that program needs to report errors. -exitCode:: ExitStatus.Success +[HH:MM:SS AM] Building project '/src/tsconfig.json'... + +src/c.ts:1:14 - error TS2322: Type 'string' is not assignable to type 'number'. + +1 export const c: number = "hello"; +   ~ + + +Found 1 error. + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped +Program root files: [ + "/src/a.ts", + "/src/b.ts", + "/src/c.ts" +] +Program options: { + "declaration": true, + "module": 2, + "outFile": "/outFile.js", + "tscBuild": true, + "configFilePath": "/src/tsconfig.json" +} +Program structureReused: Not +Program files:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +Semantic diagnostics in builder refreshed for:: +/lib/lib.d.ts +/src/a.ts +/src/b.ts +/src/c.ts + +No shapes updated in the builder:: +//// [/outFile.d.ts] file written with same contents +//// [/outFile.js] file written with same contents +//// [/outFile.tsbuildinfo] file written with same contents +//// [/outFile.tsbuildinfo.readable.baseline.txt] file written with same contents diff --git a/tests/baselines/reference/tsc/incremental/when-new-file-is-added-to-the-referenced-project-discrepancies.js b/tests/baselines/reference/tsc/incremental/when-new-file-is-added-to-the-referenced-project-discrepancies.js index 81bf4cf9e0eee..fb6b1b945396a 100644 --- a/tests/baselines/reference/tsc/incremental/when-new-file-is-added-to-the-referenced-project-discrepancies.js +++ b/tests/baselines/reference/tsc/incremental/when-new-file-is-added-to-the-referenced-project-discrepancies.js @@ -28,20 +28,6 @@ CleanBuild: "composite": true, "module": 0 }, - "semanticDiagnosticsPerFile": [ - [ - "../../../lib/lib.d.ts", - "not cached" - ], - [ - "../project1/class1.d.ts", - "not cached" - ], - [ - "./class2.ts", - "not cached" - ] - ], "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" } @@ -74,90 +60,4 @@ IncrementalBuild: "latestChangedDtsFile": "FakeFileName", "errors": true, "version": "FakeTSVersion" -} -3:: Delete output for class3 -Ts buildinfo will be updated but will retain lib file errors from previous build and not others because they are emitted because of change which results in clearing their semantic diagnostics cache -But in clean build because of global diagnostics, semantic diagnostics are not queried so not cached in tsbuildinfo -TsBuild info text without affectedFilesPendingEmit:: /src/projects/project2/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "../../../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "../project1/class1.d.ts": { - "version": "-3469237238-declare class class1 {}", - "affectsGlobalScope": true - }, - "./class2.ts": { - "version": "777969115-class class2 {}", - "affectsGlobalScope": true - } - }, - "root": [ - [ - 3, - "./class2.ts" - ] - ], - "options": { - "composite": true, - "module": 0 - }, - "semanticDiagnosticsPerFile": [ - [ - "../../../lib/lib.d.ts", - "not cached" - ], - [ - "../project1/class1.d.ts", - "not cached" - ], - [ - "./class2.ts", - "not cached" - ] - ], - "latestChangedDtsFile": "FakeFileName", - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "../../../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "../project1/class1.d.ts": { - "version": "-3469237238-declare class class1 {}", - "affectsGlobalScope": true - }, - "./class2.ts": { - "version": "777969115-class class2 {}", - "affectsGlobalScope": true - } - }, - "root": [ - [ - 3, - "./class2.ts" - ] - ], - "options": { - "composite": true, - "module": 0 - }, - "semanticDiagnosticsPerFile": [ - [ - "../project1/class1.d.ts", - "not cached" - ], - [ - "./class2.ts", - "not cached" - ] - ], - "latestChangedDtsFile": "FakeFileName", - "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsc/noCheck/multiFile/dts-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsc/noCheck/multiFile/dts-errors-with-incremental-discrepancies.js new file mode 100644 index 0000000000000..d0b98e51e30c9 --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/multiFile/dts-errors-with-incremental-discrepancies.js @@ -0,0 +1,138 @@ +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "checkPending": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion" +} +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "checkPending": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsc/noCheck/multiFile/dts-errors-with-incremental.js b/tests/baselines/reference/tsc/noCheck/multiFile/dts-errors-with-incremental.js index f7b1b66345d5c..64b3ac7202b89 100644 --- a/tests/baselines/reference/tsc/noCheck/multiFile/dts-errors-with-incremental.js +++ b/tests/baselines/reference/tsc/noCheck/multiFile/dts-errors-with-incremental.js @@ -59,10 +59,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -94,7 +91,7 @@ exports.b = 10; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"-9502176711-export const a = class { private p = 10; };",{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"-9502176711-export const a = class { private p = 10; };",{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[1,2,3],"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -137,9 +134,22 @@ exports.b = 10; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], "emitDiagnosticsPerFile": [ [ "./a.ts", @@ -154,8 +164,9 @@ exports.b = 10; ] ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 965 + "size": 1007 } @@ -192,7 +203,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -226,8 +237,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/src/a.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -245,7 +255,7 @@ exports.a = "hello"; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -292,11 +302,25 @@ exports.a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 853 + "size": 895 } @@ -325,7 +349,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -474,68 +498,10 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts No shapes updated in the builder:: -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts", - "./b.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "./b.ts": { - "original": { - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - }, - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion", - "size": 853 -} - Change:: Introduce error with noCheck @@ -593,7 +559,7 @@ exports.a = /** @class */ (function () { //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-9502176711-export const a = class { private p = 10; };","signature":"-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected."},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-9502176711-export const a = class { private p = 10; };","signature":"-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected."},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2],"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -640,9 +606,14 @@ exports.a = /** @class */ (function () { ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], "emitDiagnosticsPerFile": [ [ "./a.ts", @@ -657,8 +628,9 @@ exports.a = /** @class */ (function () { ] ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 1169 + "size": 1207 } @@ -696,6 +668,7 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: +/src/a.ts No shapes updated in the builder:: @@ -734,9 +707,7 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts No shapes updated in the builder:: @@ -839,9 +810,7 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -856,7 +825,7 @@ exports.a = "hello"; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -903,11 +872,17 @@ exports.a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 853 + "size": 891 } @@ -936,9 +911,7 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts No shapes updated in the builder:: @@ -1173,10 +1146,7 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts -/src/c.ts Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -1195,7 +1165,7 @@ exports.a = /** @class */ (function () { //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-9502176711-export const a = class { private p = 10; };","signature":"-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected."},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-9502176711-export const a = class { private p = 10; };","signature":"-7147472585-export declare const a: {\n new (): {\n p: number;\n };\n};\n(13,1)Error4094: Property 'p' of exported class expression may not be private or protected."},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2,[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1254,9 +1224,26 @@ exports.a = /** @class */ (function () { ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ], + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], "emitDiagnosticsPerFile": [ [ "./a.ts", @@ -1271,8 +1258,9 @@ exports.a = /** @class */ (function () { ] ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 1301 + "size": 1460 } @@ -1322,7 +1310,7 @@ exports.a = "hello"; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2,[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1381,11 +1369,29 @@ exports.a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ], + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 985 + "size": 1144 } @@ -1424,10 +1430,7 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts -/src/c.ts No shapes updated in the builder:: @@ -1541,81 +1544,10 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts No shapes updated in the builder:: -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts", - "./b.ts", - "./c.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "./b.ts": { - "original": { - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - }, - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - }, - "./c.ts": { - "original": { - "version": "-9150421116-export const c: number = \"hello\";", - "signature": "1429704745-export declare const c: number;\n" - }, - "version": "-9150421116-export const c: number = \"hello\";", - "signature": "1429704745-export declare const c: number;\n" - } - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./a.ts", - "./b.ts", - "./c.ts" - ] - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion", - "size": 985 -} - Change:: No Change run with checking @@ -1652,91 +1584,7 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts No shapes updated in the builder:: -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts", - "./b.ts", - "./c.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "./b.ts": { - "original": { - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - }, - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - }, - "./c.ts": { - "original": { - "version": "-9150421116-export const c: number = \"hello\";", - "signature": "1429704745-export declare const c: number;\n" - }, - "version": "-9150421116-export const c: number = \"hello\";", - "signature": "1429704745-export declare const c: number;\n" - } - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./a.ts", - "./b.ts", - "./c.ts" - ] - ] - ], - "options": { - "declaration": true - }, - "semanticDiagnosticsPerFile": [ - [ - "./c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion", - "size": 1122 -} - diff --git a/tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors-with-incremental-discrepancies.js new file mode 100644 index 0000000000000..d0b98e51e30c9 --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors-with-incremental-discrepancies.js @@ -0,0 +1,138 @@ +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "checkPending": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion" +} +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending +TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "checkPending": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "../lib/lib.d.ts": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "version": "-16641552193-export const a = \"hello\";" + }, + "./b.ts": { + "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" + } + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] + ] + ], + "options": { + "declaration": true + }, + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors-with-incremental.js b/tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors-with-incremental.js index 916a849c4d468..cd489f67e805b 100644 --- a/tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors-with-incremental.js +++ b/tests/baselines/reference/tsc/noCheck/multiFile/semantic-errors-with-incremental.js @@ -51,10 +51,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /lib/lib.d.ts (used version) @@ -85,7 +82,7 @@ exports.b = 10; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -132,11 +129,25 @@ exports.b = 10; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 857 + "size": 899 } @@ -165,7 +176,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -199,8 +210,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/src/a.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -212,7 +222,7 @@ export declare const a = "hello"; //// [/src/a.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -259,11 +269,25 @@ export declare const a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 853 + "size": 895 } @@ -292,7 +316,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -441,68 +465,10 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts No shapes updated in the builder:: -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts", - "./b.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "./b.ts": { - "original": { - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - }, - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion", - "size": 853 -} - Change:: Introduce error with noCheck @@ -545,7 +511,7 @@ export declare const a: number; //// [/src/a.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -592,11 +558,17 @@ export declare const a: number; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 857 + "size": 895 } @@ -626,6 +598,7 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: +/src/a.ts No shapes updated in the builder:: @@ -664,9 +637,7 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts No shapes updated in the builder:: @@ -769,9 +740,7 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -783,7 +752,7 @@ export declare const a = "hello"; //// [/src/a.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -830,11 +799,17 @@ export declare const a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 853 + "size": 891 } @@ -863,9 +838,7 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts No shapes updated in the builder:: @@ -1092,10 +1065,7 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts -/src/c.ts Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -1107,7 +1077,7 @@ export declare const a: number; //// [/src/a.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-11705693502-export const a: number = \"hello\";","signature":"-3045186137-export declare const a: number;\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2,[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1166,11 +1136,29 @@ export declare const a: number; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ], + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 989 + "size": 1148 } @@ -1217,7 +1205,7 @@ export declare const a = "hello"; //// [/src/a.js] file written with same contents //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2,[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1276,11 +1264,29 @@ export declare const a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ], + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 985 + "size": 1144 } @@ -1319,10 +1325,7 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts -/src/c.ts No shapes updated in the builder:: @@ -1436,81 +1439,10 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts No shapes updated in the builder:: -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts", - "./b.ts", - "./c.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "./b.ts": { - "original": { - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - }, - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - }, - "./c.ts": { - "original": { - "version": "-9150421116-export const c: number = \"hello\";", - "signature": "1429704745-export declare const c: number;\n" - }, - "version": "-9150421116-export const c: number = \"hello\";", - "signature": "1429704745-export declare const c: number;\n" - } - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./a.ts", - "./b.ts", - "./c.ts" - ] - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion", - "size": 985 -} - Change:: No Change run with checking @@ -1547,91 +1479,7 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts No shapes updated in the builder:: -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts", - "./b.ts", - "./c.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "./b.ts": { - "original": { - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - }, - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - }, - "./c.ts": { - "original": { - "version": "-9150421116-export const c: number = \"hello\";", - "signature": "1429704745-export declare const c: number;\n" - }, - "version": "-9150421116-export const c: number = \"hello\";", - "signature": "1429704745-export declare const c: number;\n" - } - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./a.ts", - "./b.ts", - "./c.ts" - ] - ] - ], - "options": { - "declaration": true - }, - "semanticDiagnosticsPerFile": [ - [ - "./c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion", - "size": 1122 -} - diff --git a/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js index 7ac21f30830b1..d0b98e51e30c9 100644 --- a/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js +++ b/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental-discrepancies.js @@ -1,5 +1,6 @@ -6:: Introduce error with noCheck -*** Needs explanation +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -9,7 +10,7 @@ CleanBuild: "affectsGlobalScope": true }, "./a.ts": { - "version": "-14000546910-export const a = \"hello" + "version": "-16641552193-export const a = \"hello\";" }, "./b.ts": { "version": "-13368947479-export const b = 10;" @@ -26,23 +27,9 @@ CleanBuild: ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, - "semanticDiagnosticsPerFile": [ - [ - "../lib/lib.d.ts", - "not cached" - ], - [ - "./a.ts", - "not cached" - ], - [ - "./b.ts", - "not cached" - ] - ], + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -53,7 +40,7 @@ IncrementalBuild: "affectsGlobalScope": true }, "./a.ts": { - "version": "-14000546910-export const a = \"hello" + "version": "-16641552193-export const a = \"hello\";" }, "./b.ts": { "version": "-13368947479-export const b = 10;" @@ -70,19 +57,13 @@ IncrementalBuild: ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, - "semanticDiagnosticsPerFile": [ - [ - "./a.ts", - "not cached" - ] - ], "version": "FakeTSVersion" } -7:: no-change-run -*** Needs explanation +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: CleanBuild: { @@ -92,122 +73,32 @@ CleanBuild: "affectsGlobalScope": true }, "./a.ts": { - "version": "-14000546910-export const a = \"hello" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "semanticDiagnosticsPerFile": [ - [ - "../lib/lib.d.ts", - "not cached" - ], - [ - "./a.ts", - "not cached" - ], - [ - "./b.ts", - "not cached" - ] - ], - "version": "FakeTSVersion" -} -IncrementalBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "version": "-14000546910-export const a = \"hello" + "version": "-16641552193-export const a = \"hello\";" }, "./b.ts": { "version": "-13368947479-export const b = 10;" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "semanticDiagnosticsPerFile": [ - [ - "./a.ts", - "not cached" - ] - ], - "version": "FakeTSVersion" -} -8:: No Change run with checking -*** Needs explanation -TsBuild info text without affectedFilesPendingEmit:: /src/tsconfig.tsbuildinfo.readable.baseline.txt:: -CleanBuild: -{ - "fileInfos": { - "../lib/lib.d.ts": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true }, - "./a.ts": { - "version": "-14000546910-export const a = \"hello" - }, - "./b.ts": { - "version": "-13368947479-export const b = 10;" + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" } }, "root": [ [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] ] ], "options": { "declaration": true }, - "semanticDiagnosticsPerFile": [ - [ - "../lib/lib.d.ts", - "not cached" - ], - [ - "./a.ts", - "not cached" - ], - [ - "./b.ts", - "not cached" - ] - ], + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: @@ -218,31 +109,30 @@ IncrementalBuild: "affectsGlobalScope": true }, "./a.ts": { - "version": "-14000546910-export const a = \"hello" + "version": "-16641552193-export const a = \"hello\";" }, "./b.ts": { "version": "-13368947479-export const b = 10;" + }, + "./c.ts": { + "version": "-9150421116-export const c: number = \"hello\";" } }, "root": [ [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" + [ + 2, + 4 + ], + [ + "./a.ts", + "./b.ts", + "./c.ts" + ] ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, - "semanticDiagnosticsPerFile": [ - [ - "./a.ts", - "not cached" - ] - ], "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental.js b/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental.js index 09d905290ae8a..6ba0dc278841c 100644 --- a/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental.js +++ b/tests/baselines/reference/tsc/noCheck/multiFile/syntax-errors-with-incremental.js @@ -90,7 +90,7 @@ exports.b = 10; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"semanticDiagnosticsPerFile":[1,2,3],"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -137,8 +137,7 @@ exports.b = 10; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, "semanticDiagnosticsPerFile": [ [ @@ -154,8 +153,9 @@ exports.b = 10; "not cached" ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 887 + "size": 892 } @@ -226,10 +226,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -244,7 +241,7 @@ exports.a = "hello"; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -291,11 +288,25 @@ exports.a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "../lib/lib.d.ts", + "not cached" + ], + [ + "./a.ts", + "not cached" + ], + [ + "./b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 853 + "size": 895 } @@ -324,7 +335,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -473,68 +484,10 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts No shapes updated in the builder:: -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts", - "./b.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "./b.ts": { - "original": { - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - }, - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - } - }, - "root": [ - [ - 2, - "./a.ts" - ], - [ - 3, - "./b.ts" - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion", - "size": 853 -} - Change:: Introduce error with noCheck @@ -588,7 +541,7 @@ exports.a = "hello; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"semanticDiagnosticsPerFile":[2],"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -635,8 +588,7 @@ exports.a = "hello; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, "semanticDiagnosticsPerFile": [ [ @@ -644,8 +596,9 @@ exports.a = "hello; "not cached" ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 883 + "size": 888 } @@ -721,11 +674,72 @@ Program files:: /src/a.ts /src/b.ts -No cached semantic diagnostics in the builder:: +Semantic diagnostics in builder refreshed for:: +/src/a.ts No shapes updated in the builder:: +//// [/src/tsconfig.tsbuildinfo] +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2],"version":"FakeTSVersion"} + +//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../lib/lib.d.ts", + "./a.ts", + "./b.ts" + ], + "fileInfos": { + "../lib/lib.d.ts": { + "original": { + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "affectsGlobalScope": true + }, + "./a.ts": { + "original": { + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "version": "-14000546910-export const a = \"hello", + "signature": "-2692717255-export declare const a = \"hello\";\n" + }, + "./b.ts": { + "original": { + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + }, + "version": "-13368947479-export const b = 10;", + "signature": "-3829150557-export declare const b = 10;\n" + } + }, + "root": [ + [ + 2, + "./a.ts" + ], + [ + 3, + "./b.ts" + ] + ], + "options": { + "declaration": true + }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 868 +} + Change:: Fix `a` error with noCheck @@ -771,7 +785,7 @@ exports.a = "hello"; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"}],"root":[2,3],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -818,11 +832,17 @@ exports.a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 853 + "size": 891 } @@ -851,9 +871,7 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts No shapes updated in the builder:: @@ -1087,7 +1105,8 @@ Program files:: /src/b.ts /src/c.ts -No cached semantic diagnostics in the builder:: +Semantic diagnostics in builder refreshed for:: +/src/a.ts Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -1102,7 +1121,7 @@ exports.a = "hello; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"semanticDiagnosticsPerFile":[1,2,3,4],"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-14000546910-export const a = \"hello","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2,[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1161,29 +1180,29 @@ exports.a = "hello; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, "semanticDiagnosticsPerFile": [ - [ - "../lib/lib.d.ts", - "not cached" - ], [ "./a.ts", "not cached" ], - [ - "./b.ts", - "not cached" - ], [ "./c.ts", - "not cached" + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 1021 + "size": 1141 } @@ -1218,10 +1237,7 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts -/src/c.ts Shape signatures in builder refreshed for:: /src/a.ts (computed .d.ts) @@ -1236,7 +1252,7 @@ exports.a = "hello"; //// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} +{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[2,[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1295,11 +1311,29 @@ exports.a = "hello"; ] ], "options": { - "declaration": true, - "noCheck": true + "declaration": true }, + "semanticDiagnosticsPerFile": [ + [ + "./a.ts", + "not cached" + ], + [ + "./c.ts", + [ + { + "start": 13, + "length": 1, + "code": 2322, + "category": 1, + "messageText": "Type 'string' is not assignable to type 'number'." + } + ] + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 985 + "size": 1144 } @@ -1338,10 +1372,7 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts /src/a.ts -/src/b.ts -/src/c.ts No shapes updated in the builder:: @@ -1455,81 +1486,10 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts No shapes updated in the builder:: -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true,"noCheck":true},"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts", - "./b.ts", - "./c.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "./b.ts": { - "original": { - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - }, - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - }, - "./c.ts": { - "original": { - "version": "-9150421116-export const c: number = \"hello\";", - "signature": "1429704745-export declare const c: number;\n" - }, - "version": "-9150421116-export const c: number = \"hello\";", - "signature": "1429704745-export declare const c: number;\n" - } - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./a.ts", - "./b.ts", - "./c.ts" - ] - ] - ], - "options": { - "declaration": true, - "noCheck": true - }, - "version": "FakeTSVersion", - "size": 985 -} - Change:: No Change run with checking @@ -1566,91 +1526,7 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts No shapes updated in the builder:: -//// [/src/tsconfig.tsbuildinfo] -{"fileNames":["../lib/lib.d.ts","./a.ts","./b.ts","./c.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},{"version":"-16641552193-export const a = \"hello\";","signature":"-2692717255-export declare const a = \"hello\";\n"},{"version":"-13368947479-export const b = 10;","signature":"-3829150557-export declare const b = 10;\n"},{"version":"-9150421116-export const c: number = \"hello\";","signature":"1429704745-export declare const c: number;\n"}],"root":[[2,4]],"options":{"declaration":true},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} - -//// [/src/tsconfig.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "../lib/lib.d.ts", - "./a.ts", - "./b.ts", - "./c.ts" - ], - "fileInfos": { - "../lib/lib.d.ts": { - "original": { - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "version": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "signature": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "affectsGlobalScope": true - }, - "./a.ts": { - "original": { - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "version": "-16641552193-export const a = \"hello\";", - "signature": "-2692717255-export declare const a = \"hello\";\n" - }, - "./b.ts": { - "original": { - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - }, - "version": "-13368947479-export const b = 10;", - "signature": "-3829150557-export declare const b = 10;\n" - }, - "./c.ts": { - "original": { - "version": "-9150421116-export const c: number = \"hello\";", - "signature": "1429704745-export declare const c: number;\n" - }, - "version": "-9150421116-export const c: number = \"hello\";", - "signature": "1429704745-export declare const c: number;\n" - } - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./a.ts", - "./b.ts", - "./c.ts" - ] - ] - ], - "options": { - "declaration": true - }, - "semanticDiagnosticsPerFile": [ - [ - "./c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion", - "size": 1122 -} - diff --git a/tests/baselines/reference/tsc/noCheck/outFile/dts-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsc/noCheck/outFile/dts-errors-with-incremental-discrepancies.js new file mode 100644 index 0000000000000..444750d82fc39 --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/outFile/dts-errors-with-incremental-discrepancies.js @@ -0,0 +1,114 @@ +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "checkPending": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "checkPending": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsc/noCheck/outFile/dts-errors-with-incremental.js b/tests/baselines/reference/tsc/noCheck/outFile/dts-errors-with-incremental.js index a558520976301..847da3c02eef1 100644 --- a/tests/baselines/reference/tsc/noCheck/outFile/dts-errors-with-incremental.js +++ b/tests/baselines/reference/tsc/noCheck/outFile/dts-errors-with-incremental.js @@ -63,10 +63,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -92,7 +89,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -119,9 +116,22 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], "emitDiagnosticsPerFile": [ [ "./src/a.ts", @@ -136,8 +146,9 @@ define("b", ["require", "exports"], function (require, exports) { ] ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 901 + "size": 943 } @@ -176,7 +187,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -212,10 +223,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -245,7 +253,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -272,11 +280,25 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 713 + "size": 755 } @@ -307,7 +329,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -442,48 +464,10 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts No shapes updated in the builder:: -//// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} - -//// [/outFile.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "./lib/lib.d.ts", - "./src/a.ts", - "./src/b.ts" - ], - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion", - "size": 713 -} - Change:: Introduce error with noCheck @@ -523,10 +507,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -552,7 +533,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -579,9 +560,22 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], "emitDiagnosticsPerFile": [ [ "./src/a.ts", @@ -596,8 +590,9 @@ define("b", ["require", "exports"], function (require, exports) { ] ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 901 + "size": 943 } @@ -636,7 +631,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -763,10 +758,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -788,7 +780,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -815,11 +807,25 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 713 + "size": 755 } @@ -1067,11 +1073,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -1103,7 +1105,7 @@ define("c", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-9502176711-export const a = class { private p = 10; };","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"emitDiagnosticsPerFile":[[2,[{"start":13,"length":1,"messageText":"Property 'p' of exported class expression may not be private or protected.","category":1,"code":4094}]]],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -1135,9 +1137,26 @@ define("c", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ], + [ + "./src/c.ts", + "not cached" + ] + ], "emitDiagnosticsPerFile": [ [ "./src/a.ts", @@ -1152,8 +1171,9 @@ define("c", ["require", "exports"], function (require, exports) { ] ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 966 + "size": 1010 } @@ -1189,11 +1209,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -1221,7 +1237,7 @@ define("c", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -1253,11 +1269,29 @@ define("c", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ], + [ + "./src/c.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 778 + "size": 822 } @@ -1390,54 +1424,10 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts No shapes updated in the builder:: -//// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} - -//// [/outFile.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "./lib/lib.d.ts", - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ], - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;", - "./src/c.ts": "-9150421116-export const c: number = \"hello\";" - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ] - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion", - "size": 778 -} - Change:: No Change run with checking @@ -1476,64 +1466,7 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts No shapes updated in the builder:: -//// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} - -//// [/outFile.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "./lib/lib.d.ts", - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ], - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;", - "./src/c.ts": "-9150421116-export const c: number = \"hello\";" - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ] - ] - ], - "options": { - "declaration": true, - "module": 2, - "outFile": "./outFile.js" - }, - "semanticDiagnosticsPerFile": [ - [ - "./src/c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion", - "size": 915 -} - diff --git a/tests/baselines/reference/tsc/noCheck/outFile/semantic-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsc/noCheck/outFile/semantic-errors-with-incremental-discrepancies.js new file mode 100644 index 0000000000000..444750d82fc39 --- /dev/null +++ b/tests/baselines/reference/tsc/noCheck/outFile/semantic-errors-with-incremental-discrepancies.js @@ -0,0 +1,114 @@ +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "checkPending": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "checkPending": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ + [ + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "version": "FakeTSVersion" +} \ No newline at end of file diff --git a/tests/baselines/reference/tsc/noCheck/outFile/semantic-errors-with-incremental.js b/tests/baselines/reference/tsc/noCheck/outFile/semantic-errors-with-incremental.js index 48f09b8dd4444..6b6b8e7c6b040 100644 --- a/tests/baselines/reference/tsc/noCheck/outFile/semantic-errors-with-incremental.js +++ b/tests/baselines/reference/tsc/noCheck/outFile/semantic-errors-with-incremental.js @@ -55,10 +55,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -88,7 +85,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -115,11 +112,25 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 721 + "size": 763 } @@ -150,7 +161,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -186,10 +197,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -205,7 +213,7 @@ declare module "b" { //// [/outFile.js] file written with same contents //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -232,11 +240,25 @@ declare module "b" { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 713 + "size": 755 } @@ -267,7 +289,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -402,48 +424,10 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts No shapes updated in the builder:: -//// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} - -//// [/outFile.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "./lib/lib.d.ts", - "./src/a.ts", - "./src/b.ts" - ], - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion", - "size": 713 -} - Change:: Introduce error with noCheck @@ -475,10 +459,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -494,7 +475,7 @@ declare module "b" { //// [/outFile.js] file written with same contents //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -521,11 +502,25 @@ declare module "b" { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 721 + "size": 763 } @@ -556,7 +551,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -683,10 +678,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -702,7 +694,7 @@ declare module "b" { //// [/outFile.js] file written with same contents //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -729,11 +721,25 @@ declare module "b" { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 713 + "size": 755 } @@ -973,11 +979,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -996,7 +998,7 @@ declare module "c" { //// [/outFile.js] file written with same contents //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-11705693502-export const a: number = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -1028,11 +1030,29 @@ declare module "c" { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ], + [ + "./src/c.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 786 + "size": 830 } @@ -1068,11 +1088,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -1091,7 +1107,7 @@ declare module "c" { //// [/outFile.js] file written with same contents //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -1123,11 +1139,29 @@ declare module "c" { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ], + [ + "./src/c.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 778 + "size": 822 } @@ -1260,54 +1294,10 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts No shapes updated in the builder:: -//// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} - -//// [/outFile.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "./lib/lib.d.ts", - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ], - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;", - "./src/c.ts": "-9150421116-export const c: number = \"hello\";" - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ] - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion", - "size": 778 -} - Change:: No Change run with checking @@ -1346,64 +1336,7 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts No shapes updated in the builder:: -//// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} - -//// [/outFile.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "./lib/lib.d.ts", - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ], - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;", - "./src/c.ts": "-9150421116-export const c: number = \"hello\";" - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ] - ] - ], - "options": { - "declaration": true, - "module": 2, - "outFile": "./outFile.js" - }, - "semanticDiagnosticsPerFile": [ - [ - "./src/c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion", - "size": 915 -} - diff --git a/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js b/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js index bbaca230758fa..444750d82fc39 100644 --- a/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js +++ b/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental-discrepancies.js @@ -1,11 +1,12 @@ -8:: No Change run with checking -*** Needs explanation +5:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: CleanBuild: { "fileInfos": { "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-14000546910-export const a = \"hello", + "./src/a.ts": "-16641552193-export const a = \"hello\";", "./src/b.ts": "-13368947479-export const b = 10;" }, "root": [ @@ -23,27 +24,14 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./lib/lib.d.ts", - "not cached" - ], - [ - "./src/a.ts", - "not cached" - ], - [ - "./src/b.ts", - "not cached" - ] - ], + "checkPending": true, "version": "FakeTSVersion" } IncrementalBuild: { "fileInfos": { "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-14000546910-export const a = \"hello", + "./src/a.ts": "-16641552193-export const a = \"hello\";", "./src/b.ts": "-13368947479-export const b = 10;" }, "root": [ @@ -59,22 +47,68 @@ IncrementalBuild: "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./lib/lib.d.ts", - "not cached" - ], + "version": "FakeTSVersion" +} +15:: no-change-run +Clean build will have check pending since it didnt type check +Incremental build has typechecked before this so wont have checkPending +TsBuild info text without affectedFilesPendingEmit:: /outfile.tsbuildinfo.readable.baseline.txt:: +CleanBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ [ - "./src/a.ts", - "not cached" - ], + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "checkPending": true, + "version": "FakeTSVersion" +} +IncrementalBuild: +{ + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-16641552193-export const a = \"hello\";", + "./src/b.ts": "-13368947479-export const b = 10;", + "./src/c.ts": "-9150421116-export const c: number = \"hello\";" + }, + "root": [ [ - "./src/b.ts", - "not cached" + [ + 2, + 4 + ], + [ + "./src/a.ts", + "./src/b.ts", + "./src/c.ts" + ] ] ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental.js b/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental.js index aac6335fd0c14..28fe71ecec3bc 100644 --- a/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental.js +++ b/tests/baselines/reference/tsc/noCheck/outFile/syntax-errors-with-incremental.js @@ -93,7 +93,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -120,7 +120,6 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, "semanticDiagnosticsPerFile": [ @@ -137,8 +136,9 @@ define("b", ["require", "exports"], function (require, exports) { "not cached" ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 747 + "size": 752 } @@ -213,10 +213,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -238,7 +235,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -265,11 +262,25 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 713 + "size": 755 } @@ -300,7 +311,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -435,48 +446,10 @@ Program files:: /src/b.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts No shapes updated in the builder:: -//// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} - -//// [/outFile.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "./lib/lib.d.ts", - "./src/a.ts", - "./src/b.ts" - ], - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;" - }, - "root": [ - [ - 2, - "./src/a.ts" - ], - [ - 3, - "./src/b.ts" - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion", - "size": 713 -} - Change:: Introduce error with noCheck @@ -538,7 +511,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -565,7 +538,6 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, "semanticDiagnosticsPerFile": [ @@ -582,8 +554,9 @@ define("b", ["require", "exports"], function (require, exports) { "not cached" ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 747 + "size": 752 } @@ -667,6 +640,54 @@ No cached semantic diagnostics in the builder:: No shapes updated in the builder:: +//// [/outFile.tsbuildinfo] +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"version":"FakeTSVersion"} + +//// [/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "./lib/lib.d.ts", + "./src/a.ts", + "./src/b.ts" + ], + "fileInfos": { + "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./src/a.ts": "-14000546910-export const a = \"hello", + "./src/b.ts": "-13368947479-export const b = 10;" + }, + "root": [ + [ + 2, + "./src/a.ts" + ], + [ + 3, + "./src/b.ts" + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "version": "FakeTSVersion", + "size": 732 +} + Change:: Fix `a` error with noCheck @@ -698,10 +719,7 @@ Program files:: /src/a.ts /src/b.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -723,7 +741,7 @@ define("b", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;"],"root":[2,3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -750,11 +768,25 @@ define("b", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 713 + "size": 755 } @@ -1030,7 +1062,7 @@ define("c", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-14000546910-export const a = \"hello","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -1062,7 +1094,6 @@ define("c", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, "semanticDiagnosticsPerFile": [ @@ -1083,8 +1114,9 @@ define("c", ["require", "exports"], function (require, exports) { "not cached" ] ], + "checkPending": true, "version": "FakeTSVersion", - "size": 814 + "size": 819 } @@ -1120,11 +1152,7 @@ Program files:: /src/b.ts /src/c.ts -Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: @@ -1152,7 +1180,7 @@ define("c", ["require", "exports"], function (require, exports) { //// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} +{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4],"checkPending":true,"version":"FakeTSVersion"} //// [/outFile.tsbuildinfo.readable.baseline.txt] { @@ -1184,11 +1212,29 @@ define("c", ["require", "exports"], function (require, exports) { "options": { "declaration": true, "module": 2, - "noCheck": true, "outFile": "./outFile.js" }, + "semanticDiagnosticsPerFile": [ + [ + "./lib/lib.d.ts", + "not cached" + ], + [ + "./src/a.ts", + "not cached" + ], + [ + "./src/b.ts", + "not cached" + ], + [ + "./src/c.ts", + "not cached" + ] + ], + "checkPending": true, "version": "FakeTSVersion", - "size": 778 + "size": 822 } @@ -1321,54 +1367,10 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts No shapes updated in the builder:: -//// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"noCheck":true,"outFile":"./outFile.js"},"version":"FakeTSVersion"} - -//// [/outFile.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "./lib/lib.d.ts", - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ], - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;", - "./src/c.ts": "-9150421116-export const c: number = \"hello\";" - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ] - ] - ], - "options": { - "declaration": true, - "module": 2, - "noCheck": true, - "outFile": "./outFile.js" - }, - "version": "FakeTSVersion", - "size": 778 -} - Change:: No Change run with checking @@ -1407,64 +1409,7 @@ Program files:: /src/c.ts Semantic diagnostics in builder refreshed for:: -/lib/lib.d.ts -/src/a.ts -/src/b.ts -/src/c.ts No shapes updated in the builder:: -//// [/outFile.tsbuildinfo] -{"fileNames":["./lib/lib.d.ts","./src/a.ts","./src/b.ts","./src/c.ts"],"fileInfos":["3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","-16641552193-export const a = \"hello\";","-13368947479-export const b = 10;","-9150421116-export const c: number = \"hello\";"],"root":[[2,4]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"start":13,"length":1,"code":2322,"category":1,"messageText":"Type 'string' is not assignable to type 'number'."}]]],"version":"FakeTSVersion"} - -//// [/outFile.tsbuildinfo.readable.baseline.txt] -{ - "fileNames": [ - "./lib/lib.d.ts", - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ], - "fileInfos": { - "./lib/lib.d.ts": "3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", - "./src/a.ts": "-16641552193-export const a = \"hello\";", - "./src/b.ts": "-13368947479-export const b = 10;", - "./src/c.ts": "-9150421116-export const c: number = \"hello\";" - }, - "root": [ - [ - [ - 2, - 4 - ], - [ - "./src/a.ts", - "./src/b.ts", - "./src/c.ts" - ] - ] - ], - "options": { - "declaration": true, - "module": 2, - "outFile": "./outFile.js" - }, - "semanticDiagnosticsPerFile": [ - [ - "./src/c.ts", - [ - { - "start": 13, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type 'string' is not assignable to type 'number'." - } - ] - ] - ], - "version": "FakeTSVersion", - "size": 915 -} - diff --git a/tests/baselines/reference/tsc/noEmit/multiFile/changes-composite-discrepancies.js b/tests/baselines/reference/tsc/noEmit/multiFile/changes-composite-discrepancies.js index 087c9b33baf37..426adc8e2ccf9 100644 --- a/tests/baselines/reference/tsc/noEmit/multiFile/changes-composite-discrepancies.js +++ b/tests/baselines/reference/tsc/noEmit/multiFile/changes-composite-discrepancies.js @@ -59,21 +59,6 @@ CleanBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "emitSignatures": [ "./src/class.ts", "./src/indirectclass.ts", @@ -141,21 +126,6 @@ IncrementalBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" } @@ -220,21 +190,6 @@ CleanBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "emitSignatures": [ "./src/class.ts", "./src/indirectclass.ts", @@ -302,21 +257,6 @@ IncrementalBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" } @@ -381,65 +321,6 @@ CleanBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/directuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./src/indirectuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "emitSignatures": [ "./src/class.ts", "./src/indirectclass.ts", @@ -507,65 +388,6 @@ IncrementalBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/directuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./src/indirectuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "emitSignatures": [ [ "./src/class.ts", @@ -644,21 +466,6 @@ CleanBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "emitSignatures": [ "./src/class.ts", "./src/indirectclass.ts", @@ -726,21 +533,6 @@ IncrementalBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" } @@ -805,21 +597,6 @@ CleanBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "emitSignatures": [ "./src/class.ts", "./src/indirectclass.ts", @@ -887,21 +664,6 @@ IncrementalBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" } @@ -966,65 +728,6 @@ CleanBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/directuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./src/indirectuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "emitSignatures": [ "./src/class.ts", "./src/indirectclass.ts", @@ -1092,65 +795,6 @@ IncrementalBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/directuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./src/indirectuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" } @@ -1215,65 +859,6 @@ CleanBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/directuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./src/indirectuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "emitSignatures": [ "./src/class.ts", "./src/indirectclass.ts", @@ -1341,65 +926,6 @@ IncrementalBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/directuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./src/indirectuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" } @@ -1464,21 +990,6 @@ CleanBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "emitSignatures": [ "./src/class.ts", "./src/indirectclass.ts", @@ -1546,21 +1057,6 @@ IncrementalBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "emitSignatures": [ [ "./src/class.ts", @@ -1639,21 +1135,6 @@ CleanBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "emitSignatures": [ "./src/class.ts", "./src/indirectclass.ts", @@ -1721,21 +1202,6 @@ IncrementalBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" } @@ -1800,21 +1266,6 @@ CleanBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "emitSignatures": [ "./src/class.ts", "./src/indirectclass.ts", @@ -1882,21 +1333,6 @@ IncrementalBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" } \ No newline at end of file diff --git a/tests/baselines/reference/tsc/noEmit/multiFile/changes-with-initial-noEmit-composite-discrepancies.js b/tests/baselines/reference/tsc/noEmit/multiFile/changes-with-initial-noEmit-composite-discrepancies.js index 39494b851d50b..b7a1a680cd675 100644 --- a/tests/baselines/reference/tsc/noEmit/multiFile/changes-with-initial-noEmit-composite-discrepancies.js +++ b/tests/baselines/reference/tsc/noEmit/multiFile/changes-with-initial-noEmit-composite-discrepancies.js @@ -59,21 +59,6 @@ CleanBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "emitSignatures": [ "./src/class.ts", "./src/indirectclass.ts", @@ -141,21 +126,6 @@ IncrementalBuild: "./src/indirectclass.ts" ] }, - "semanticDiagnosticsPerFile": [ - [ - "./src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "emitSignatures": [ [ "./src/class.ts", diff --git a/tests/baselines/reference/tsc/noEmit/outFile/changes-composite-discrepancies.js b/tests/baselines/reference/tsc/noEmit/outFile/changes-composite-discrepancies.js index 32b7049b83f00..c9ab001058334 100644 --- a/tests/baselines/reference/tsc/noEmit/outFile/changes-composite-discrepancies.js +++ b/tests/baselines/reference/tsc/noEmit/outFile/changes-composite-discrepancies.js @@ -34,21 +34,6 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -83,21 +68,6 @@ IncrementalBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "outSignature": "8998999540-declare module \"src/class\" {\n export class classC {\n prop: number;\n }\n}\ndeclare module \"src/indirectClass\" {\n import { classC } from \"src/class\";\n export class indirectClass {\n classC: classC;\n }\n}\ndeclare module \"src/directUse\" { }\ndeclare module \"src/indirectUse\" { }\ndeclare module \"src/noChangeFile\" {\n export function writeLog(s: string): void;\n}\ndeclare function someFunc(arguments: boolean, ...rest: any[]): void;\n", "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" @@ -138,21 +108,6 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -187,21 +142,6 @@ IncrementalBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "outSignature": "8998999540-declare module \"src/class\" {\n export class classC {\n prop: number;\n }\n}\ndeclare module \"src/indirectClass\" {\n import { classC } from \"src/class\";\n export class indirectClass {\n classC: classC;\n }\n}\ndeclare module \"src/directUse\" { }\ndeclare module \"src/indirectUse\" { }\ndeclare module \"src/noChangeFile\" {\n export function writeLog(s: string): void;\n}\ndeclare function someFunc(arguments: boolean, ...rest: any[]): void;\n", "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" @@ -242,65 +182,6 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/directuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./project/src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./project/src/indirectuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./project/src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -335,65 +216,6 @@ IncrementalBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/directuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./project/src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./project/src/indirectuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./project/src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "outSignature": "8998999540-declare module \"src/class\" {\n export class classC {\n prop: number;\n }\n}\ndeclare module \"src/indirectClass\" {\n import { classC } from \"src/class\";\n export class indirectClass {\n classC: classC;\n }\n}\ndeclare module \"src/directUse\" { }\ndeclare module \"src/indirectUse\" { }\ndeclare module \"src/noChangeFile\" {\n export function writeLog(s: string): void;\n}\ndeclare function someFunc(arguments: boolean, ...rest: any[]): void;\n", "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" @@ -434,21 +256,6 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -483,21 +290,6 @@ IncrementalBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "outSignature": "8998999540-declare module \"src/class\" {\n export class classC {\n prop: number;\n }\n}\ndeclare module \"src/indirectClass\" {\n import { classC } from \"src/class\";\n export class indirectClass {\n classC: classC;\n }\n}\ndeclare module \"src/directUse\" { }\ndeclare module \"src/indirectUse\" { }\ndeclare module \"src/noChangeFile\" {\n export function writeLog(s: string): void;\n}\ndeclare function someFunc(arguments: boolean, ...rest: any[]): void;\n", "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" @@ -538,21 +330,6 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -587,21 +364,6 @@ IncrementalBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "outSignature": "8998999540-declare module \"src/class\" {\n export class classC {\n prop: number;\n }\n}\ndeclare module \"src/indirectClass\" {\n import { classC } from \"src/class\";\n export class indirectClass {\n classC: classC;\n }\n}\ndeclare module \"src/directUse\" { }\ndeclare module \"src/indirectUse\" { }\ndeclare module \"src/noChangeFile\" {\n export function writeLog(s: string): void;\n}\ndeclare function someFunc(arguments: boolean, ...rest: any[]): void;\n", "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" @@ -642,65 +404,6 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/directuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./project/src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./project/src/indirectuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./project/src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -735,65 +438,6 @@ IncrementalBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/directuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./project/src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./project/src/indirectuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./project/src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "outSignature": "-1966987419-declare module \"src/class\" {\n export class classC {\n prop1: number;\n }\n}\ndeclare module \"src/indirectClass\" {\n import { classC } from \"src/class\";\n export class indirectClass {\n classC: classC;\n }\n}\ndeclare module \"src/directUse\" { }\ndeclare module \"src/indirectUse\" { }\ndeclare module \"src/noChangeFile\" {\n export function writeLog(s: string): void;\n}\ndeclare function someFunc(arguments: boolean, ...rest: any[]): void;\n", "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" @@ -834,65 +478,6 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/directuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./project/src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./project/src/indirectuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./project/src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -927,65 +512,6 @@ IncrementalBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/directuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./project/src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./project/src/indirectuse.ts", - [ - { - "start": 76, - "length": 4, - "code": 2551, - "category": 1, - "messageText": "Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'?", - "relatedInformation": [ - { - "file": "./project/src/class.ts", - "start": 26, - "length": 5, - "messageText": "'prop1' is declared here.", - "category": 3, - "code": 2728 - } - ] - } - ] - ], - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "outSignature": "-1966987419-declare module \"src/class\" {\n export class classC {\n prop1: number;\n }\n}\ndeclare module \"src/indirectClass\" {\n import { classC } from \"src/class\";\n export class indirectClass {\n classC: classC;\n }\n}\ndeclare module \"src/directUse\" { }\ndeclare module \"src/indirectUse\" { }\ndeclare module \"src/noChangeFile\" {\n export function writeLog(s: string): void;\n}\ndeclare function someFunc(arguments: boolean, ...rest: any[]): void;\n", "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" @@ -1026,21 +552,6 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -1075,21 +586,6 @@ IncrementalBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "outSignature": "-1966987419-declare module \"src/class\" {\n export class classC {\n prop1: number;\n }\n}\ndeclare module \"src/indirectClass\" {\n import { classC } from \"src/class\";\n export class indirectClass {\n classC: classC;\n }\n}\ndeclare module \"src/directUse\" { }\ndeclare module \"src/indirectUse\" { }\ndeclare module \"src/noChangeFile\" {\n export function writeLog(s: string): void;\n}\ndeclare function someFunc(arguments: boolean, ...rest: any[]): void;\n", "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" @@ -1130,21 +626,6 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -1179,21 +660,6 @@ IncrementalBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "outSignature": "8998999540-declare module \"src/class\" {\n export class classC {\n prop: number;\n }\n}\ndeclare module \"src/indirectClass\" {\n import { classC } from \"src/class\";\n export class indirectClass {\n classC: classC;\n }\n}\ndeclare module \"src/directUse\" { }\ndeclare module \"src/indirectUse\" { }\ndeclare module \"src/noChangeFile\" {\n export function writeLog(s: string): void;\n}\ndeclare function someFunc(arguments: boolean, ...rest: any[]): void;\n", "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" @@ -1234,21 +700,6 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -1283,21 +734,6 @@ IncrementalBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "outSignature": "8998999540-declare module \"src/class\" {\n export class classC {\n prop: number;\n }\n}\ndeclare module \"src/indirectClass\" {\n import { classC } from \"src/class\";\n export class indirectClass {\n classC: classC;\n }\n}\ndeclare module \"src/directUse\" { }\ndeclare module \"src/indirectUse\" { }\ndeclare module \"src/noChangeFile\" {\n export function writeLog(s: string): void;\n}\ndeclare function someFunc(arguments: boolean, ...rest: any[]): void;\n", "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" diff --git a/tests/baselines/reference/tsc/noEmit/outFile/changes-with-initial-noEmit-composite-discrepancies.js b/tests/baselines/reference/tsc/noEmit/outFile/changes-with-initial-noEmit-composite-discrepancies.js index 0910dba6e257e..f85d03c164736 100644 --- a/tests/baselines/reference/tsc/noEmit/outFile/changes-with-initial-noEmit-composite-discrepancies.js +++ b/tests/baselines/reference/tsc/noEmit/outFile/changes-with-initial-noEmit-composite-discrepancies.js @@ -34,21 +34,6 @@ CleanBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -83,21 +68,6 @@ IncrementalBuild: "module": 2, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/src/nochangefilewithemitspecificerror.ts", - [ - { - "start": 18, - "length": 18, - "messageText": "Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.", - "category": 1, - "code": 2396, - "skippedOn": "noEmit" - } - ] - ] - ], "outSignature": "-1966987419-declare module \"src/class\" {\n export class classC {\n prop1: number;\n }\n}\ndeclare module \"src/indirectClass\" {\n import { classC } from \"src/class\";\n export class indirectClass {\n classC: classC;\n }\n}\ndeclare module \"src/directUse\" { }\ndeclare module \"src/indirectUse\" { }\ndeclare module \"src/noChangeFile\" {\n export function writeLog(s: string): void;\n}\ndeclare function someFunc(arguments: boolean, ...rest: any[]): void;\n", "latestChangedDtsFile": "FakeFileName", "version": "FakeTSVersion" diff --git a/tests/baselines/reference/tsc/noEmitOnError/multiFile/when-declarationMap-changes-discrepancies.js b/tests/baselines/reference/tsc/noEmitOnError/multiFile/when-declarationMap-changes-discrepancies.js index 80615be1ab89d..1bae2c118b130 100644 --- a/tests/baselines/reference/tsc/noEmitOnError/multiFile/when-declarationMap-changes-discrepancies.js +++ b/tests/baselines/reference/tsc/noEmitOnError/multiFile/when-declarationMap-changes-discrepancies.js @@ -35,20 +35,6 @@ CleanBuild: "declarationMap": true, "noEmitOnError": true }, - "semanticDiagnosticsPerFile": [ - [ - "./a.ts", - [ - { - "start": 6, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type '10' is not assignable to type '20'." - } - ] - ] - ], "emitSignatures": [ "./a.ts", "./b.ts" @@ -87,20 +73,6 @@ IncrementalBuild: "declarationMap": true, "noEmitOnError": true }, - "semanticDiagnosticsPerFile": [ - [ - "./a.ts", - [ - { - "start": 6, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type '10' is not assignable to type '20'." - } - ] - ] - ], "emitSignatures": [ [ "./a.ts", diff --git a/tests/baselines/reference/tsc/noEmitOnError/outFile/when-declarationMap-changes-discrepancies.js b/tests/baselines/reference/tsc/noEmitOnError/outFile/when-declarationMap-changes-discrepancies.js index a77ba033886e6..2a1bff0f270bb 100644 --- a/tests/baselines/reference/tsc/noEmitOnError/outFile/when-declarationMap-changes-discrepancies.js +++ b/tests/baselines/reference/tsc/noEmitOnError/outFile/when-declarationMap-changes-discrepancies.js @@ -26,20 +26,6 @@ CleanBuild: "noEmitOnError": true, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/a.ts", - [ - { - "start": 6, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type '10' is not assignable to type '20'." - } - ] - ] - ], "version": "FakeTSVersion" } IncrementalBuild: @@ -66,20 +52,6 @@ IncrementalBuild: "noEmitOnError": true, "outFile": "./outFile.js" }, - "semanticDiagnosticsPerFile": [ - [ - "./project/a.ts", - [ - { - "start": 6, - "length": 1, - "code": 2322, - "category": 1, - "messageText": "Type '10' is not assignable to type '20'." - } - ] - ] - ], "outSignature": [ "-2781996726-declare const x = 10;\ndeclare const y = 10;\n" ], From c99bbb7176fd98cfff9e6126f5bf2043976568ce Mon Sep 17 00:00:00 2001 From: Sheetal Nandi Date: Thu, 13 Jun 2024 14:12:04 -0700 Subject: [PATCH 3/3] Remove unnecessary comment --- src/compiler/builder.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/compiler/builder.ts b/src/compiler/builder.ts index 4f606f94d8548..de72333bc5738 100644 --- a/src/compiler/builder.ts +++ b/src/compiler/builder.ts @@ -473,7 +473,6 @@ function createBuilderProgramState( state.programEmitPending | pendingEmitKind : pendingEmitKind; } - // if (!state.compilerOptions.noCheck) state.buildInfoEmitPending = true; } }