diff --git a/src/compiler/program.ts b/src/compiler/program.ts index 33c26f8999f..d8dd274bb40 100644 --- a/src/compiler/program.ts +++ b/src/compiler/program.ts @@ -4262,7 +4262,8 @@ export function createProgram(_rootNamesOrOptions: readonly string[] | CreatePro !options.rootDir && options.configFilePath && (options.outDir || // there is --outDir specified - (getEmitDeclarations(options) && options.declarationDir)) // there is --declarationDir specified + (getEmitDeclarations(options) && options.declarationDir) || // there is --declarationDir specified + options.outFile) ) { // Check if rootDir inferred changed and issue diagnostic const dir = getCommonSourceDirectory(); @@ -4272,8 +4273,8 @@ export function createProgram(_rootNamesOrOptions: readonly string[] | CreatePro // change in layout createDiagnosticForOption( /*onKey*/ true, - options.outDir ? "outDir" : "declarationDir", - options.outDir ? "declarationDir" : undefined, + options.outFile ? "outFile" : options.outDir ? "outDir" : "declarationDir", + !options.outFile && options.outDir ? "declarationDir" : undefined, chainDiagnosticMessages( chainDiagnosticMessages(/*details*/ undefined, Diagnostics.Visit_https_Colon_Slash_Slashaka_ms_Slashts6_for_migration_information), Diagnostics.The_common_source_directory_of_0_is_1_The_rootDir_setting_must_be_explicitly_set_to_this_or_another_path_to_adjust_your_output_s_file_layout, diff --git a/tests/baselines/reference/tsbuild/declarationEmit/outFile/reports-dts-generation-errors-with-incremental.js b/tests/baselines/reference/tsbuild/declarationEmit/outFile/reports-dts-generation-errors-with-incremental.js index 3f0d802f20f..bc0a9227bcb 100644 --- a/tests/baselines/reference/tsbuild/declarationEmit/outFile/reports-dts-generation-errors-with-incremental.js +++ b/tests/baselines/reference/tsbuild/declarationEmit/outFile/reports-dts-generation-errors-with-incremental.js @@ -57,6 +57,12 @@ Output:: 2 export const api = ky.extend({});    ~~~ +tsconfig.json:8:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +8 "outFile": "./outFile.js" +   ~~~~~~~~~ + TSFILE: /home/src/workspaces/project/outFile.js TSFILE: /home/src/workspaces/project/outFile.tsbuildinfo ../../tslibs/TS/Lib/lib.d.ts @@ -66,7 +72,7 @@ ky.d.ts src/index.ts Matched by include pattern 'src' in 'tsconfig.json' -Found 1 error. +Found 2 errors. @@ -80,7 +86,7 @@ define("src/index", ["require", "exports", "ky"], function (require, exports, ky //// [/home/src/workspaces/project/outFile.tsbuildinfo] -{"fileNames":["../../tslibs/ts/lib/lib.d.ts","./ky.d.ts","./src/index.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","10101889135-type KyInstance = {\n extend(options: Record): KyInstance;\n}\ndeclare const ky: KyInstance;\nexport default ky;\n","-383421929-import ky from 'ky';\nexport const api = ky.extend({});\n"],"root":[3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js","skipDefaultLibCheck":true,"skipLibCheck":true},"emitDiagnosticsPerFile":[[3,[{"start":34,"length":3,"messageText":"Exported variable 'api' has or is using name 'KyInstance' from external module \"/home/src/workspaces/project/ky\" but cannot be named.","category":1,"code":4023}]]],"version":"FakeTSVersion"} +{"fileNames":["../../tslibs/ts/lib/lib.d.ts","./ky.d.ts","./src/index.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","10101889135-type KyInstance = {\n extend(options: Record): KyInstance;\n}\ndeclare const ky: KyInstance;\nexport default ky;\n","-383421929-import ky from 'ky';\nexport const api = ky.extend({});\n"],"root":[3],"options":{"declaration":true,"module":2,"outFile":"./outFile.js","skipDefaultLibCheck":true,"skipLibCheck":true},"semanticDiagnosticsPerFile":[1,2,3],"emitDiagnosticsPerFile":[[3,[{"start":34,"length":3,"messageText":"Exported variable 'api' has or is using name 'KyInstance' from external module \"/home/src/workspaces/project/ky\" but cannot be named.","category":1,"code":4023}]]],"version":"FakeTSVersion"} //// [/home/src/workspaces/project/outFile.tsbuildinfo.readable.baseline.txt] { @@ -107,6 +113,20 @@ define("src/index", ["require", "exports", "ky"], function (require, exports, ky "skipDefaultLibCheck": true, "skipLibCheck": true }, + "semanticDiagnosticsPerFile": [ + [ + "../../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./ky.d.ts", + "not cached or not changed" + ], + [ + "./src/index.ts", + "not cached or not changed" + ] + ], "emitDiagnosticsPerFile": [ [ "./src/index.ts", @@ -122,7 +142,7 @@ define("src/index", ["require", "exports", "ky"], function (require, exports, ky ] ], "version": "FakeTSVersion", - "size": 1094 + "size": 1131 } @@ -146,6 +166,12 @@ Output:: 2 export const api = ky.extend({});    ~~~ +tsconfig.json:8:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +8 "outFile": "./outFile.js" +   ~~~~~~~~~ + ../../tslibs/TS/Lib/lib.d.ts Default library for target 'es5' ky.d.ts @@ -153,7 +179,7 @@ ky.d.ts src/index.ts Matched by include pattern 'src' in 'tsconfig.json' -Found 1 error. +Found 2 errors. diff --git a/tests/baselines/reference/tsbuild/declarationEmit/outFile/reports-dts-generation-errors.js b/tests/baselines/reference/tsbuild/declarationEmit/outFile/reports-dts-generation-errors.js index 0ecfd18bb5d..4fa5f2870f4 100644 --- a/tests/baselines/reference/tsbuild/declarationEmit/outFile/reports-dts-generation-errors.js +++ b/tests/baselines/reference/tsbuild/declarationEmit/outFile/reports-dts-generation-errors.js @@ -56,6 +56,12 @@ Output:: 2 export const api = ky.extend({});    ~~~ +tsconfig.json:7:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +7 "outFile": "./outFile.js" +   ~~~~~~~~~ + TSFILE: /home/src/workspaces/project/outFile.js TSFILE: /home/src/workspaces/project/outFile.tsbuildinfo ../../tslibs/TS/Lib/lib.d.ts @@ -67,7 +73,7 @@ src/index.ts [HH:MM:SS AM] Updating unchanged output timestamps of project '/home/src/workspaces/project/tsconfig.json'... -Found 1 error. +Found 2 errors. @@ -114,6 +120,12 @@ Output:: 2 export const api = ky.extend({});    ~~~ +tsconfig.json:7:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +7 "outFile": "./outFile.js" +   ~~~~~~~~~ + TSFILE: /home/src/workspaces/project/outFile.js TSFILE: /home/src/workspaces/project/outFile.tsbuildinfo ../../tslibs/TS/Lib/lib.d.ts @@ -125,7 +137,7 @@ src/index.ts [HH:MM:SS AM] Updating unchanged output timestamps of project '/home/src/workspaces/project/tsconfig.json'... -Found 1 error. +Found 2 errors. diff --git a/tests/baselines/reference/tsbuild/noEmit/outFile/changes-incremental-declaration.js b/tests/baselines/reference/tsbuild/noEmit/outFile/changes-incremental-declaration.js index 30ae4ceb8d6..b182f45bc02 100644 --- a/tests/baselines/reference/tsbuild/noEmit/outFile/changes-incremental-declaration.js +++ b/tests/baselines/reference/tsbuild/noEmit/outFile/changes-incremental-declaration.js @@ -61,10 +61,11 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ Found 1 error. @@ -141,6 +142,102 @@ declare module "src/noChangeFile" { declare function someFunc(arguments: boolean, ...rest: any[]): void; +//// [/home/src/workspaces/outFile.tsbuildinfo] +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} + +//// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../tslibs/ts/lib/lib.d.ts", + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ], + "fileInfos": { + "../tslibs/ts/lib/lib.d.ts": "-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./project/src/class.ts": "545032748-export class classC {\n prop = 1;\n}", + "./project/src/indirectclass.ts": "6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}", + "./project/src/directuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/indirectuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/nochangefile.ts": "6714567633-export function writeLog(s: string) {\n}", + "./project/src/nochangefilewithemitspecificerror.ts": "-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}" + }, + "root": [ + [ + [ + 2, + 7 + ], + [ + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], + [ + "./project/src/directuse.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectuse.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefilewithemitspecificerror.ts", + "not cached or not changed" + ] + ], + "version": "FakeTSVersion", + "size": 1296 +} + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped + +Change:: No Change run with noEmit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js -b -v . --noEmit +Output:: +[HH:MM:SS AM] Projects in this build: + * tsconfig.json + +[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... + + + //// [/home/src/workspaces/outFile.tsbuildinfo] {"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} @@ -205,24 +302,6 @@ declare function someFunc(arguments: boolean, ...rest: any[]): void; } -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped - -Change:: No Change run with noEmit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js -b -v . --noEmit -Output:: -[HH:MM:SS AM] Projects in this build: - * tsconfig.json - -[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... - - - - exitCode:: ExitStatus.Success Change:: No Change run with noEmit @@ -418,10 +497,11 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ Found 1 error. @@ -430,6 +510,129 @@ Found 1 error. //// [/home/src/workspaces/outFile.js] file written with same contents //// [/home/src/workspaces/outFile.d.ts] file written with same contents +//// [/home/src/workspaces/outFile.tsbuildinfo] +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} + +//// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../tslibs/ts/lib/lib.d.ts", + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ], + "fileInfos": { + "../tslibs/ts/lib/lib.d.ts": "-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./project/src/class.ts": "545032748-export class classC {\n prop = 1;\n}", + "./project/src/indirectclass.ts": "6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}", + "./project/src/directuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/indirectuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/nochangefile.ts": "6714567633-export function writeLog(s: string) {\n}", + "./project/src/nochangefilewithemitspecificerror.ts": "-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}" + }, + "root": [ + [ + [ + 2, + 7 + ], + [ + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], + [ + "./project/src/directuse.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectuse.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefilewithemitspecificerror.ts", + "not cached or not changed" + ] + ], + "version": "FakeTSVersion", + "size": 1296 +} + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped + +Change:: No Change run with emit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js -b -v . +Output:: +[HH:MM:SS AM] Projects in this build: + * tsconfig.json + +[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... + +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +5 "outFile": "../outFile.js", +   ~~~~~~~~~ + + +Found 1 error. + + + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped + +Change:: No Change run with noEmit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js -b -v . --noEmit +Output:: +[HH:MM:SS AM] Projects in this build: + * tsconfig.json + +[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... + + + //// [/home/src/workspaces/outFile.tsbuildinfo] {"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} @@ -494,50 +697,6 @@ Found 1 error. } -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped - -Change:: No Change run with emit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js -b -v . -Output:: -[HH:MM:SS AM] Projects in this build: - * tsconfig.json - -[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ - - -Found 1 error. - - - - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped - -Change:: No Change run with noEmit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js -b -v . --noEmit -Output:: -[HH:MM:SS AM] Projects in this build: - * tsconfig.json - -[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... - - - - exitCode:: ExitStatus.Success Change:: No Change run with noEmit @@ -571,10 +730,11 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ Found 1 error. @@ -602,33 +762,14 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 3 errors. +Found 1 error. @@ -702,6 +843,152 @@ declare module "src/noChangeFile" { declare function someFunc(arguments: boolean, ...rest: any[]): void; +//// [/home/src/workspaces/outFile.tsbuildinfo] +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} + +//// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../tslibs/ts/lib/lib.d.ts", + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ], + "fileInfos": { + "../tslibs/ts/lib/lib.d.ts": "-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./project/src/class.ts": "1786859709-export class classC {\n prop1 = 1;\n}", + "./project/src/indirectclass.ts": "6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}", + "./project/src/directuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/indirectuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/nochangefile.ts": "6714567633-export function writeLog(s: string) {\n}", + "./project/src/nochangefilewithemitspecificerror.ts": "-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}" + }, + "root": [ + [ + [ + 2, + 7 + ], + [ + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], + [ + "./project/src/directuse.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectuse.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefilewithemitspecificerror.ts", + "not cached or not changed" + ] + ], + "version": "FakeTSVersion", + "size": 1298 +} + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped + +Change:: No Change run with emit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js -b -v . +Output:: +[HH:MM:SS AM] Projects in this build: + * tsconfig.json + +[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... + +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +5 "outFile": "../outFile.js", +   ~~~~~~~~~ + + +Found 1 error. + + + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped + +Change:: No Change run with noEmit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js -b -v . --noEmit +Output:: +[HH:MM:SS AM] Projects in this build: + * tsconfig.json + +[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... + +src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? + +2 new indirectClass().classC.prop; +   ~~~~ + + src/class.ts:2:5 + 2 prop1 = 1; +    ~~~~~ + 'prop1' is declared here. + +src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? + +2 new indirectClass().classC.prop; +   ~~~~ + + src/class.ts:2:5 + 2 prop1 = 1; +    ~~~~~ + 'prop1' is declared here. + + +Found 2 errors. + + + //// [/home/src/workspaces/outFile.tsbuildinfo] {"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"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}]}]],[5,[{"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}]}]],[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} @@ -810,93 +1097,6 @@ declare function someFunc(arguments: boolean, ...rest: any[]): void; } -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped - -Change:: No Change run with emit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js -b -v . -Output:: -[HH:MM:SS AM] Projects in this build: - * tsconfig.json - -[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... - -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ - - -Found 3 errors. - - - - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped - -Change:: No Change run with noEmit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js -b -v . --noEmit -Output:: -[HH:MM:SS AM] Projects in this build: - * tsconfig.json - -[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... - -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - - -Found 2 errors. - - - - exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped Change:: No Change run with noEmit @@ -953,33 +1153,14 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 3 errors. +Found 1 error. @@ -1089,10 +1270,11 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ Found 1 error. @@ -1284,10 +1466,11 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ Found 1 error. diff --git a/tests/baselines/reference/tsbuild/noEmit/outFile/changes-incremental.js b/tests/baselines/reference/tsbuild/noEmit/outFile/changes-incremental.js index 8971a499f40..e217232118f 100644 --- a/tests/baselines/reference/tsbuild/noEmit/outFile/changes-incremental.js +++ b/tests/baselines/reference/tsbuild/noEmit/outFile/changes-incremental.js @@ -60,10 +60,11 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ Found 1 error. @@ -120,6 +121,101 @@ function someFunc(arguments) { } +//// [/home/src/workspaces/outFile.tsbuildinfo] +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} + +//// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../tslibs/ts/lib/lib.d.ts", + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ], + "fileInfos": { + "../tslibs/ts/lib/lib.d.ts": "-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./project/src/class.ts": "545032748-export class classC {\n prop = 1;\n}", + "./project/src/indirectclass.ts": "6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}", + "./project/src/directuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/indirectuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/nochangefile.ts": "6714567633-export function writeLog(s: string) {\n}", + "./project/src/nochangefilewithemitspecificerror.ts": "-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}" + }, + "root": [ + [ + [ + 2, + 7 + ], + [ + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ] + ] + ], + "options": { + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], + [ + "./project/src/directuse.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectuse.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefilewithemitspecificerror.ts", + "not cached or not changed" + ] + ], + "version": "FakeTSVersion", + "size": 1277 +} + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped + +Change:: No Change run with noEmit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js -b -v . --noEmit +Output:: +[HH:MM:SS AM] Projects in this build: + * tsconfig.json + +[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... + + + //// [/home/src/workspaces/outFile.tsbuildinfo] {"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} @@ -183,24 +279,6 @@ function someFunc(arguments) { } -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped - -Change:: No Change run with noEmit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js -b -v . --noEmit -Output:: -[HH:MM:SS AM] Projects in this build: - * tsconfig.json - -[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... - - - - exitCode:: ExitStatus.Success Change:: No Change run with noEmit @@ -395,10 +473,11 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ Found 1 error. @@ -406,6 +485,128 @@ Found 1 error. //// [/home/src/workspaces/outFile.js] file written with same contents +//// [/home/src/workspaces/outFile.tsbuildinfo] +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} + +//// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../tslibs/ts/lib/lib.d.ts", + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ], + "fileInfos": { + "../tslibs/ts/lib/lib.d.ts": "-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./project/src/class.ts": "545032748-export class classC {\n prop = 1;\n}", + "./project/src/indirectclass.ts": "6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}", + "./project/src/directuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/indirectuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/nochangefile.ts": "6714567633-export function writeLog(s: string) {\n}", + "./project/src/nochangefilewithemitspecificerror.ts": "-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}" + }, + "root": [ + [ + [ + 2, + 7 + ], + [ + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ] + ] + ], + "options": { + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], + [ + "./project/src/directuse.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectuse.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefilewithemitspecificerror.ts", + "not cached or not changed" + ] + ], + "version": "FakeTSVersion", + "size": 1277 +} + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped + +Change:: No Change run with emit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js -b -v . +Output:: +[HH:MM:SS AM] Projects in this build: + * tsconfig.json + +[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... + +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +4 "outFile": "../outFile.js", +   ~~~~~~~~~ + + +Found 1 error. + + + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped + +Change:: No Change run with noEmit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js -b -v . --noEmit +Output:: +[HH:MM:SS AM] Projects in this build: + * tsconfig.json + +[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... + + + //// [/home/src/workspaces/outFile.tsbuildinfo] {"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} @@ -469,50 +670,6 @@ Found 1 error. } -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped - -Change:: No Change run with emit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js -b -v . -Output:: -[HH:MM:SS AM] Projects in this build: - * tsconfig.json - -[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ - - -Found 1 error. - - - - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped - -Change:: No Change run with noEmit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js -b -v . --noEmit -Output:: -[HH:MM:SS AM] Projects in this build: - * tsconfig.json - -[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... - - - - exitCode:: ExitStatus.Success Change:: No Change run with noEmit @@ -546,10 +703,11 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ Found 1 error. @@ -577,33 +735,14 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 3 errors. +Found 1 error. @@ -657,6 +796,151 @@ function someFunc(arguments) { } +//// [/home/src/workspaces/outFile.tsbuildinfo] +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} + +//// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../tslibs/ts/lib/lib.d.ts", + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ], + "fileInfos": { + "../tslibs/ts/lib/lib.d.ts": "-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./project/src/class.ts": "1786859709-export class classC {\n prop1 = 1;\n}", + "./project/src/indirectclass.ts": "6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}", + "./project/src/directuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/indirectuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/nochangefile.ts": "6714567633-export function writeLog(s: string) {\n}", + "./project/src/nochangefilewithemitspecificerror.ts": "-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}" + }, + "root": [ + [ + [ + 2, + 7 + ], + [ + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ] + ] + ], + "options": { + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], + [ + "./project/src/directuse.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectuse.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefilewithemitspecificerror.ts", + "not cached or not changed" + ] + ], + "version": "FakeTSVersion", + "size": 1279 +} + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped + +Change:: No Change run with emit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js -b -v . +Output:: +[HH:MM:SS AM] Projects in this build: + * tsconfig.json + +[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... + +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +4 "outFile": "../outFile.js", +   ~~~~~~~~~ + + +Found 1 error. + + + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped + +Change:: No Change run with noEmit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js -b -v . --noEmit +Output:: +[HH:MM:SS AM] Projects in this build: + * tsconfig.json + +[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. + +[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... + +src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? + +2 new indirectClass().classC.prop; +   ~~~~ + + src/class.ts:2:5 + 2 prop1 = 1; +    ~~~~~ + 'prop1' is declared here. + +src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? + +2 new indirectClass().classC.prop; +   ~~~~ + + src/class.ts:2:5 + 2 prop1 = 1; +    ~~~~~ + 'prop1' is declared here. + + +Found 2 errors. + + + //// [/home/src/workspaces/outFile.tsbuildinfo] {"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"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}]}]],[5,[{"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}]}]],[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} @@ -764,93 +1048,6 @@ function someFunc(arguments) { } -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped - -Change:: No Change run with emit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js -b -v . -Output:: -[HH:MM:SS AM] Projects in this build: - * tsconfig.json - -[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... - -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ - - -Found 3 errors. - - - - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped - -Change:: No Change run with noEmit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js -b -v . --noEmit -Output:: -[HH:MM:SS AM] Projects in this build: - * tsconfig.json - -[HH:MM:SS AM] Project 'tsconfig.json' is out of date because buildinfo file '../outFile.tsbuildinfo' indicates that program needs to report errors. - -[HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... - -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - - -Found 2 errors. - - - - exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped Change:: No Change run with noEmit @@ -907,33 +1104,14 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 3 errors. +Found 1 error. @@ -1042,10 +1220,11 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ Found 1 error. @@ -1216,10 +1395,11 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ Found 1 error. diff --git a/tests/baselines/reference/tsbuild/noEmit/outFile/changes-with-initial-noEmit-incremental-declaration.js b/tests/baselines/reference/tsbuild/noEmit/outFile/changes-with-initial-noEmit-incremental-declaration.js index 68ad7bb5290..db520fdb751 100644 --- a/tests/baselines/reference/tsbuild/noEmit/outFile/changes-with-initial-noEmit-incremental-declaration.js +++ b/tests/baselines/reference/tsbuild/noEmit/outFile/changes-with-initial-noEmit-incremental-declaration.js @@ -146,10 +146,11 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ Found 1 error. @@ -310,38 +311,19 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 3 errors. +Found 1 error. //// [/home/src/workspaces/outFile.tsbuildinfo] -{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"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}]}]],[5,[{"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}]}]],[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} //// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] { @@ -385,66 +367,37 @@ Found 3 errors. "outFile": "./outFile.js" }, "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], [ "./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 - } - ] - } - ] + "not cached or not changed" ], [ "./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 - } - ] - } - ] + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" ], [ "./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" - } - ] + "not cached or not changed" ] ], "version": "FakeTSVersion", - "size": 2044 + "size": 1298 } //// [/home/src/workspaces/outFile.js] @@ -623,10 +576,11 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ Found 1 error. diff --git a/tests/baselines/reference/tsbuild/noEmit/outFile/changes-with-initial-noEmit-incremental.js b/tests/baselines/reference/tsbuild/noEmit/outFile/changes-with-initial-noEmit-incremental.js index 35d525999bb..a41678d8416 100644 --- a/tests/baselines/reference/tsbuild/noEmit/outFile/changes-with-initial-noEmit-incremental.js +++ b/tests/baselines/reference/tsbuild/noEmit/outFile/changes-with-initial-noEmit-incremental.js @@ -144,10 +144,11 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ Found 1 error. @@ -287,38 +288,19 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 3 errors. +Found 1 error. //// [/home/src/workspaces/outFile.tsbuildinfo] -{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"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}]}]],[5,[{"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}]}]],[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} //// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] { @@ -361,66 +343,37 @@ Found 3 errors. "outFile": "./outFile.js" }, "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], [ "./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 - } - ] - } - ] + "not cached or not changed" ], [ "./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 - } - ] - } - ] + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" ], [ "./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" - } - ] + "not cached or not changed" ] ], "version": "FakeTSVersion", - "size": 2025 + "size": 1279 } //// [/home/src/workspaces/outFile.js] @@ -578,10 +531,11 @@ Output:: [HH:MM:SS AM] Building project '/home/src/workspaces/project/tsconfig.json'... -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ Found 1 error. diff --git a/tests/baselines/reference/tsc/declarationEmit/outFile/reports-dts-generation-errors.js b/tests/baselines/reference/tsc/declarationEmit/outFile/reports-dts-generation-errors.js index 5e9311d2f11..95bad815e98 100644 --- a/tests/baselines/reference/tsc/declarationEmit/outFile/reports-dts-generation-errors.js +++ b/tests/baselines/reference/tsc/declarationEmit/outFile/reports-dts-generation-errors.js @@ -49,6 +49,12 @@ Output:: 2 export const api = ky.extend({});    ~~~ +tsconfig.json:7:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +7 "outFile": "./outFile.js" +   ~~~~~~~~~ + TSFILE: /home/src/workspaces/project/outFile.js ../../tslibs/TS/Lib/lib.d.ts Default library for target 'es5' @@ -57,8 +63,11 @@ ky.d.ts src/index.ts Matched by include pattern 'src' in 'tsconfig.json' -Found 1 error in src/index.ts:2 +Found 2 errors in 2 files. +Errors Files + 1 src/index.ts:2 + 1 tsconfig.json:7 //// [/home/src/workspaces/project/outFile.js] @@ -84,6 +93,12 @@ Output:: 2 export const api = ky.extend({});    ~~~ +tsconfig.json:7:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +7 "outFile": "./outFile.js" +   ~~~~~~~~~ + TSFILE: /home/src/workspaces/project/outFile.js ../../tslibs/TS/Lib/lib.d.ts Default library for target 'es5' @@ -92,8 +107,11 @@ ky.d.ts src/index.ts Matched by include pattern 'src' in 'tsconfig.json' -Found 1 error in src/index.ts:2 +Found 2 errors in 2 files. +Errors Files + 1 src/index.ts:2 + 1 tsconfig.json:7 //// [/home/src/workspaces/project/outFile.js] file written with same contents @@ -118,6 +136,12 @@ Output:: 2 export const api = ky.extend({});    ~~~ +tsconfig.json:7:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +7 "outFile": "./outFile.js" +   ~~~~~~~~~ + TSFILE: /home/src/workspaces/project/outFile.js TSFILE: /home/src/workspaces/project/outFile.tsbuildinfo ../../tslibs/TS/Lib/lib.d.ts @@ -129,7 +153,7 @@ src/index.ts [HH:MM:SS AM] Updating unchanged output timestamps of project '/home/src/workspaces/project/tsconfig.json'... -Found 1 error. +Found 2 errors. diff --git a/tests/baselines/reference/tsc/noEmit/outFile/changes-incremental-declaration.js b/tests/baselines/reference/tsc/noEmit/outFile/changes-incremental-declaration.js index c70832bae91..cd4eeb91b5f 100644 --- a/tests/baselines/reference/tsc/noEmit/outFile/changes-incremental-declaration.js +++ b/tests/baselines/reference/tsc/noEmit/outFile/changes-incremental-declaration.js @@ -54,13 +54,14 @@ declare const console: { log(msg: any): void; }; /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 +Found 1 error in tsconfig.json:5 @@ -134,6 +135,95 @@ declare module "src/noChangeFile" { declare function someFunc(arguments: boolean, ...rest: any[]): void; +//// [/home/src/workspaces/outFile.tsbuildinfo] +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} + +//// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../tslibs/ts/lib/lib.d.ts", + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ], + "fileInfos": { + "../tslibs/ts/lib/lib.d.ts": "-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./project/src/class.ts": "545032748-export class classC {\n prop = 1;\n}", + "./project/src/indirectclass.ts": "6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}", + "./project/src/directuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/indirectuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/nochangefile.ts": "6714567633-export function writeLog(s: string) {\n}", + "./project/src/nochangefilewithemitspecificerror.ts": "-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}" + }, + "root": [ + [ + [ + 2, + 7 + ], + [ + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], + [ + "./project/src/directuse.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectuse.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefilewithemitspecificerror.ts", + "not cached or not changed" + ] + ], + "version": "FakeTSVersion", + "size": 1296 +} + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated + +Change:: No Change run with noEmit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js --p . --noEmit +Output:: + + //// [/home/src/workspaces/outFile.tsbuildinfo] {"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} @@ -198,17 +288,6 @@ declare function someFunc(arguments: boolean, ...rest: any[]): void; } -exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated - -Change:: No Change run with noEmit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js --p . --noEmit -Output:: - - - exitCode:: ExitStatus.Success Change:: No Change run with noEmit @@ -386,18 +465,128 @@ export class classC { /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 +Found 1 error in tsconfig.json:5 //// [/home/src/workspaces/outFile.js] file written with same contents //// [/home/src/workspaces/outFile.d.ts] file written with same contents +//// [/home/src/workspaces/outFile.tsbuildinfo] +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} + +//// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../tslibs/ts/lib/lib.d.ts", + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ], + "fileInfos": { + "../tslibs/ts/lib/lib.d.ts": "-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./project/src/class.ts": "545032748-export class classC {\n prop = 1;\n}", + "./project/src/indirectclass.ts": "6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}", + "./project/src/directuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/indirectuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/nochangefile.ts": "6714567633-export function writeLog(s: string) {\n}", + "./project/src/nochangefilewithemitspecificerror.ts": "-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}" + }, + "root": [ + [ + [ + 2, + 7 + ], + [ + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], + [ + "./project/src/directuse.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectuse.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefilewithemitspecificerror.ts", + "not cached or not changed" + ] + ], + "version": "FakeTSVersion", + "size": 1296 +} + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated + +Change:: No Change run with emit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js --p . +Output:: +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +5 "outFile": "../outFile.js", +   ~~~~~~~~~ + + +Found 1 error in tsconfig.json:5 + + + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated + +Change:: No Change run with noEmit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js --p . --noEmit +Output:: + + //// [/home/src/workspaces/outFile.tsbuildinfo] {"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} @@ -462,36 +651,6 @@ Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 } -exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated - -Change:: No Change run with emit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js --p . -Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ - - -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 - - - - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated - -Change:: No Change run with noEmit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js --p . --noEmit -Output:: - - - exitCode:: ExitStatus.Success Change:: No Change run with noEmit @@ -511,13 +670,14 @@ Input:: /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 +Found 1 error in tsconfig.json:5 @@ -535,38 +695,15 @@ export class classC { /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 3 errors in 3 files. +Found 1 error in tsconfig.json:5 -Errors Files - 1 src/directUse.ts:2 - 1 src/indirectUse.ts:2 - 1 src/noChangeFileWithEmitSpecificError.ts:1 //// [/home/src/workspaces/outFile.js] @@ -639,6 +776,141 @@ declare module "src/noChangeFile" { declare function someFunc(arguments: boolean, ...rest: any[]): void; +//// [/home/src/workspaces/outFile.tsbuildinfo] +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} + +//// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../tslibs/ts/lib/lib.d.ts", + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ], + "fileInfos": { + "../tslibs/ts/lib/lib.d.ts": "-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./project/src/class.ts": "1786859709-export class classC {\n prop1 = 1;\n}", + "./project/src/indirectclass.ts": "6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}", + "./project/src/directuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/indirectuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/nochangefile.ts": "6714567633-export function writeLog(s: string) {\n}", + "./project/src/nochangefilewithemitspecificerror.ts": "-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}" + }, + "root": [ + [ + [ + 2, + 7 + ], + [ + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ] + ] + ], + "options": { + "declaration": true, + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], + [ + "./project/src/directuse.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectuse.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefilewithemitspecificerror.ts", + "not cached or not changed" + ] + ], + "version": "FakeTSVersion", + "size": 1298 +} + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated + +Change:: No Change run with emit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js --p . +Output:: +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +5 "outFile": "../outFile.js", +   ~~~~~~~~~ + + +Found 1 error in tsconfig.json:5 + + + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated + +Change:: No Change run with noEmit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js --p . --noEmit +Output:: +src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? + +2 new indirectClass().classC.prop; +   ~~~~ + + src/class.ts:2:5 + 2 prop1 = 1; +    ~~~~~ + 'prop1' is declared here. + +src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? + +2 new indirectClass().classC.prop; +   ~~~~ + + src/class.ts:2:5 + 2 prop1 = 1; +    ~~~~~ + 'prop1' is declared here. + + +Found 2 errors in 2 files. + +Errors Files + 1 src/directUse.ts:2 + 1 src/indirectUse.ts:2 + + //// [/home/src/workspaces/outFile.tsbuildinfo] {"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"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}]}]],[5,[{"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}]}]],[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} @@ -749,86 +1021,6 @@ declare function someFunc(arguments: boolean, ...rest: any[]): void; exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated -Change:: No Change run with emit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js --p . -Output:: -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ - - -Found 3 errors in 3 files. - -Errors Files - 1 src/directUse.ts:2 - 1 src/indirectUse.ts:2 - 1 src/noChangeFileWithEmitSpecificError.ts:1 - - - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated - -Change:: No Change run with noEmit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js --p . --noEmit -Output:: -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - - -Found 2 errors in 2 files. - -Errors Files - 1 src/directUse.ts:2 - 1 src/indirectUse.ts:2 - - - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped - Change:: No Change run with noEmit Input:: @@ -872,38 +1064,15 @@ Input:: /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 3 errors in 3 files. +Found 1 error in tsconfig.json:5 -Errors Files - 1 src/directUse.ts:2 - 1 src/indirectUse.ts:2 - 1 src/noChangeFileWithEmitSpecificError.ts:1 @@ -998,13 +1167,14 @@ Input:: /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 +Found 1 error in tsconfig.json:5 @@ -1172,13 +1342,14 @@ Input:: /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 +Found 1 error in tsconfig.json:5 diff --git a/tests/baselines/reference/tsc/noEmit/outFile/changes-incremental.js b/tests/baselines/reference/tsc/noEmit/outFile/changes-incremental.js index f16b9647d15..242bf88eb8b 100644 --- a/tests/baselines/reference/tsc/noEmit/outFile/changes-incremental.js +++ b/tests/baselines/reference/tsc/noEmit/outFile/changes-incremental.js @@ -53,13 +53,14 @@ declare const console: { log(msg: any): void; }; /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 +Found 1 error in tsconfig.json:4 @@ -113,6 +114,94 @@ function someFunc(arguments) { } +//// [/home/src/workspaces/outFile.tsbuildinfo] +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} + +//// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../tslibs/ts/lib/lib.d.ts", + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ], + "fileInfos": { + "../tslibs/ts/lib/lib.d.ts": "-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./project/src/class.ts": "545032748-export class classC {\n prop = 1;\n}", + "./project/src/indirectclass.ts": "6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}", + "./project/src/directuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/indirectuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/nochangefile.ts": "6714567633-export function writeLog(s: string) {\n}", + "./project/src/nochangefilewithemitspecificerror.ts": "-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}" + }, + "root": [ + [ + [ + 2, + 7 + ], + [ + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ] + ] + ], + "options": { + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], + [ + "./project/src/directuse.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectuse.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefilewithemitspecificerror.ts", + "not cached or not changed" + ] + ], + "version": "FakeTSVersion", + "size": 1277 +} + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated + +Change:: No Change run with noEmit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js --p . --noEmit +Output:: + + //// [/home/src/workspaces/outFile.tsbuildinfo] {"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} @@ -176,17 +265,6 @@ function someFunc(arguments) { } -exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated - -Change:: No Change run with noEmit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js --p . --noEmit -Output:: - - - exitCode:: ExitStatus.Success Change:: No Change run with noEmit @@ -363,17 +441,126 @@ export class classC { /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 +Found 1 error in tsconfig.json:4 //// [/home/src/workspaces/outFile.js] file written with same contents +//// [/home/src/workspaces/outFile.tsbuildinfo] +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} + +//// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../tslibs/ts/lib/lib.d.ts", + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ], + "fileInfos": { + "../tslibs/ts/lib/lib.d.ts": "-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./project/src/class.ts": "545032748-export class classC {\n prop = 1;\n}", + "./project/src/indirectclass.ts": "6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}", + "./project/src/directuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/indirectuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/nochangefile.ts": "6714567633-export function writeLog(s: string) {\n}", + "./project/src/nochangefilewithemitspecificerror.ts": "-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}" + }, + "root": [ + [ + [ + 2, + 7 + ], + [ + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ] + ] + ], + "options": { + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], + [ + "./project/src/directuse.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectuse.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefilewithemitspecificerror.ts", + "not cached or not changed" + ] + ], + "version": "FakeTSVersion", + "size": 1277 +} + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated + +Change:: No Change run with emit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js --p . +Output:: +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +4 "outFile": "../outFile.js", +   ~~~~~~~~~ + + +Found 1 error in tsconfig.json:4 + + + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated + +Change:: No Change run with noEmit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js --p . --noEmit +Output:: + + //// [/home/src/workspaces/outFile.tsbuildinfo] {"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","545032748-export class classC {\n prop = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} @@ -437,36 +624,6 @@ Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 } -exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated - -Change:: No Change run with emit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js --p . -Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ - - -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 - - - - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated - -Change:: No Change run with noEmit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js --p . --noEmit -Output:: - - - exitCode:: ExitStatus.Success Change:: No Change run with noEmit @@ -486,13 +643,14 @@ Input:: /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 +Found 1 error in tsconfig.json:4 @@ -510,38 +668,15 @@ export class classC { /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 3 errors in 3 files. +Found 1 error in tsconfig.json:4 -Errors Files - 1 src/directUse.ts:2 - 1 src/indirectUse.ts:2 - 1 src/noChangeFileWithEmitSpecificError.ts:1 //// [/home/src/workspaces/outFile.js] @@ -594,6 +729,140 @@ function someFunc(arguments) { } +//// [/home/src/workspaces/outFile.tsbuildinfo] +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} + +//// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] +{ + "fileNames": [ + "../tslibs/ts/lib/lib.d.ts", + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ], + "fileInfos": { + "../tslibs/ts/lib/lib.d.ts": "-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };", + "./project/src/class.ts": "1786859709-export class classC {\n prop1 = 1;\n}", + "./project/src/indirectclass.ts": "6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}", + "./project/src/directuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/indirectuse.ts": "-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;", + "./project/src/nochangefile.ts": "6714567633-export function writeLog(s: string) {\n}", + "./project/src/nochangefilewithemitspecificerror.ts": "-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}" + }, + "root": [ + [ + [ + 2, + 7 + ], + [ + "./project/src/class.ts", + "./project/src/indirectclass.ts", + "./project/src/directuse.ts", + "./project/src/indirectuse.ts", + "./project/src/nochangefile.ts", + "./project/src/nochangefilewithemitspecificerror.ts" + ] + ] + ], + "options": { + "module": 2, + "outFile": "./outFile.js" + }, + "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], + [ + "./project/src/directuse.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectuse.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" + ], + [ + "./project/src/nochangefilewithemitspecificerror.ts", + "not cached or not changed" + ] + ], + "version": "FakeTSVersion", + "size": 1279 +} + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated + +Change:: No Change run with emit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js --p . +Output:: +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +4 "outFile": "../outFile.js", +   ~~~~~~~~~ + + +Found 1 error in tsconfig.json:4 + + + + +exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated + +Change:: No Change run with noEmit + +Input:: + +/home/src/tslibs/TS/Lib/tsc.js --p . --noEmit +Output:: +src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? + +2 new indirectClass().classC.prop; +   ~~~~ + + src/class.ts:2:5 + 2 prop1 = 1; +    ~~~~~ + 'prop1' is declared here. + +src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? + +2 new indirectClass().classC.prop; +   ~~~~ + + src/class.ts:2:5 + 2 prop1 = 1; +    ~~~~~ + 'prop1' is declared here. + + +Found 2 errors in 2 files. + +Errors Files + 1 src/directUse.ts:2 + 1 src/indirectUse.ts:2 + + //// [/home/src/workspaces/outFile.tsbuildinfo] {"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"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}]}]],[5,[{"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}]}]],[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} @@ -703,86 +972,6 @@ function someFunc(arguments) { exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated -Change:: No Change run with emit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js --p . -Output:: -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ - - -Found 3 errors in 3 files. - -Errors Files - 1 src/directUse.ts:2 - 1 src/indirectUse.ts:2 - 1 src/noChangeFileWithEmitSpecificError.ts:1 - - - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated - -Change:: No Change run with noEmit - -Input:: - -/home/src/tslibs/TS/Lib/tsc.js --p . --noEmit -Output:: -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - - -Found 2 errors in 2 files. - -Errors Files - 1 src/directUse.ts:2 - 1 src/indirectUse.ts:2 - - - -exitCode:: ExitStatus.DiagnosticsPresent_OutputsSkipped - Change:: No Change run with noEmit Input:: @@ -826,38 +1015,15 @@ Input:: /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 3 errors in 3 files. +Found 1 error in tsconfig.json:4 -Errors Files - 1 src/directUse.ts:2 - 1 src/indirectUse.ts:2 - 1 src/noChangeFileWithEmitSpecificError.ts:1 @@ -951,13 +1117,14 @@ Input:: /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 +Found 1 error in tsconfig.json:4 @@ -1104,13 +1271,14 @@ Input:: /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 +Found 1 error in tsconfig.json:4 diff --git a/tests/baselines/reference/tsc/noEmit/outFile/changes-with-initial-noEmit-incremental-declaration.js b/tests/baselines/reference/tsc/noEmit/outFile/changes-with-initial-noEmit-incremental-declaration.js index 81f6b376efe..716683e8ade 100644 --- a/tests/baselines/reference/tsc/noEmit/outFile/changes-with-initial-noEmit-incremental-declaration.js +++ b/tests/baselines/reference/tsc/noEmit/outFile/changes-with-initial-noEmit-incremental-declaration.js @@ -132,13 +132,14 @@ Input:: /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 +Found 1 error in tsconfig.json:5 @@ -289,42 +290,19 @@ export class classC { /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 3 errors in 3 files. +Found 1 error in tsconfig.json:5 -Errors Files - 1 src/directUse.ts:2 - 1 src/indirectUse.ts:2 - 1 src/noChangeFileWithEmitSpecificError.ts:1 //// [/home/src/workspaces/outFile.tsbuildinfo] -{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"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}]}]],[5,[{"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}]}]],[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"declaration":true,"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} //// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] { @@ -368,66 +346,37 @@ Errors Files "outFile": "./outFile.js" }, "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], [ "./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 - } - ] - } - ] + "not cached or not changed" ], [ "./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 - } - ] - } - ] + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" ], [ "./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" - } - ] + "not cached or not changed" ] ], "version": "FakeTSVersion", - "size": 2044 + "size": 1298 } //// [/home/src/workspaces/outFile.js] @@ -592,13 +541,14 @@ Input:: /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:5:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +5 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 +Found 1 error in tsconfig.json:5 diff --git a/tests/baselines/reference/tsc/noEmit/outFile/changes-with-initial-noEmit-incremental.js b/tests/baselines/reference/tsc/noEmit/outFile/changes-with-initial-noEmit-incremental.js index d0a57637512..f0a8bb20119 100644 --- a/tests/baselines/reference/tsc/noEmit/outFile/changes-with-initial-noEmit-incremental.js +++ b/tests/baselines/reference/tsc/noEmit/outFile/changes-with-initial-noEmit-incremental.js @@ -130,13 +130,14 @@ Input:: /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 +Found 1 error in tsconfig.json:4 @@ -266,42 +267,19 @@ export class classC { /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/directUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/indirectUse.ts:2:28 - error TS2551: Property 'prop' does not exist on type 'classC'. Did you mean 'prop1'? - -2 new indirectClass().classC.prop; -   ~~~~ - - src/class.ts:2:5 - 2 prop1 = 1; -    ~~~~~ - 'prop1' is declared here. - -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. - -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 3 errors in 3 files. +Found 1 error in tsconfig.json:4 -Errors Files - 1 src/directUse.ts:2 - 1 src/indirectUse.ts:2 - 1 src/noChangeFileWithEmitSpecificError.ts:1 //// [/home/src/workspaces/outFile.tsbuildinfo] -{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[[4,[{"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}]}]],[5,[{"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}]}]],[7,[{"start":18,"length":18,"messageText":"Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters.","category":1,"code":2396,"skippedOn":"noEmit"}]]],"version":"FakeTSVersion"} +{"fileNames":["../tslibs/ts/lib/lib.d.ts","./project/src/class.ts","./project/src/indirectclass.ts","./project/src/directuse.ts","./project/src/indirectuse.ts","./project/src/nochangefile.ts","./project/src/nochangefilewithemitspecificerror.ts"],"fileInfos":["-25093698414-interface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","1786859709-export class classC {\n prop1 = 1;\n}","6324910780-import { classC } from './class';\nexport class indirectClass {\n classC = new classC();\n}","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","-8953710208-import { indirectClass } from './indirectClass';\nnew indirectClass().classC.prop;","6714567633-export function writeLog(s: string) {\n}","-19339541508-function someFunc(arguments: boolean, ...rest: any[]) {\n}"],"root":[[2,7]],"options":{"module":2,"outFile":"./outFile.js"},"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"version":"FakeTSVersion"} //// [/home/src/workspaces/outFile.tsbuildinfo.readable.baseline.txt] { @@ -344,66 +322,37 @@ Errors Files "outFile": "./outFile.js" }, "semanticDiagnosticsPerFile": [ + [ + "../tslibs/ts/lib/lib.d.ts", + "not cached or not changed" + ], + [ + "./project/src/class.ts", + "not cached or not changed" + ], + [ + "./project/src/indirectclass.ts", + "not cached or not changed" + ], [ "./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 - } - ] - } - ] + "not cached or not changed" ], [ "./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 - } - ] - } - ] + "not cached or not changed" + ], + [ + "./project/src/nochangefile.ts", + "not cached or not changed" ], [ "./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" - } - ] + "not cached or not changed" ] ], "version": "FakeTSVersion", - "size": 2025 + "size": 1279 } //// [/home/src/workspaces/outFile.js] @@ -547,13 +496,14 @@ Input:: /home/src/tslibs/TS/Lib/tsc.js --p . Output:: -src/noChangeFileWithEmitSpecificError.ts:1:19 - error TS2396: Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters. +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 function someFunc(arguments: boolean, ...rest: any[]) { -   ~~~~~~~~~~~~~~~~~~ +4 "outFile": "../outFile.js", +   ~~~~~~~~~ -Found 1 error in src/noChangeFileWithEmitSpecificError.ts:1 +Found 1 error in tsconfig.json:4 diff --git a/tests/baselines/reference/tsc/projectReferences/when-project-contains-invalid-project-reference.js b/tests/baselines/reference/tsc/projectReferences/when-project-contains-invalid-project-reference.js index 192e87a30e7..e0c90deb768 100644 --- a/tests/baselines/reference/tsc/projectReferences/when-project-contains-invalid-project-reference.js +++ b/tests/baselines/reference/tsc/projectReferences/when-project-contains-invalid-project-reference.js @@ -33,6 +33,12 @@ declare const console: { log(msg: any): void; }; /home/src/tslibs/TS/Lib/tsc.js Output:: +tsconfig.json:4:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. + +4 "outFile": "theApp.js" +   ~~~~~~~~~ + tsconfig.json:7:5 - error TS6053: File '/home/src/workspaces/Util/Dates' not found. 7 { @@ -43,7 +49,7 @@ Output::   ~~~~~ -Found 1 error in tsconfig.json:7 +Found 2 errors in the same file, starting at: tsconfig.json:4 diff --git a/tests/baselines/reference/tscWatch/emit/emit-with-outFile-or-out-setting/with---outFile-and-multiple-declaration-files-in-the-program.js b/tests/baselines/reference/tscWatch/emit/emit-with-outFile-or-out-setting/with---outFile-and-multiple-declaration-files-in-the-program.js index 27af6451353..d6532845e8d 100644 --- a/tests/baselines/reference/tscWatch/emit/emit-with-outFile-or-out-setting/with---outFile-and-multiple-declaration-files-in-the-program.js +++ b/tests/baselines/reference/tscWatch/emit/emit-with-outFile-or-out-setting/with---outFile-and-multiple-declaration-files-in-the-program.js @@ -46,10 +46,11 @@ Output:: >> Screen clear [HH:MM:SS AM] Starting compilation in watch mode... -src/main2.ts:1:114 - error TS2724: 'Common.SomeComponent.DynamicMenu' has no exported member named 'z'. Did you mean 'Z'? +tsconfig.json:3:5 - error TS5011: The common source directory of 'tsconfig.json' is './src'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout. + Visit https://aka.ms/ts6 for migration information. -1 namespace main.file4 { import DynamicMenu = Common.SomeComponent.DynamicMenu; export function foo(a: DynamicMenu.z) { } } -   ~ +3 "outFile": "../output/common.js", +   ~~~~~~~~~ [HH:MM:SS AM] Found 1 error. Watching for file changes. @@ -116,12 +117,7 @@ Program files:: /home/src/projects/a/b/project/src/main.ts /home/src/projects/a/b/project/src/main2.ts -Semantic diagnostics in builder refreshed for:: -/home/src/tslibs/TS/Lib/lib.d.ts -/home/src/projects/a/b/output/AnotherDependency/file1.d.ts -/home/src/projects/a/b/dependencies/file2.d.ts -/home/src/projects/a/b/project/src/main.ts -/home/src/projects/a/b/project/src/main2.ts +No cached semantic diagnostics in the builder:: No shapes updated in the builder:: diff --git a/tests/baselines/reference/tsserver/compileOnSave/CompileOnSaveAffectedFileListRequest-when-projectFile-is-not-specified.js b/tests/baselines/reference/tsserver/compileOnSave/CompileOnSaveAffectedFileListRequest-when-projectFile-is-not-specified.js index 8562406544b..fc649c80dea 100644 --- a/tests/baselines/reference/tsserver/compileOnSave/CompileOnSaveAffectedFileListRequest-when-projectFile-is-not-specified.js +++ b/tests/baselines/reference/tsserver/compileOnSave/CompileOnSaveAffectedFileListRequest-when-projectFile-is-not-specified.js @@ -168,7 +168,45 @@ Info seq [hh:mm:ss:mss] event: "body": { "triggerFile": "/user/username/projects/myproject/app1/app.ts", "configFile": "/user/username/projects/myproject/app1/tsconfig.json", - "diagnostics": [] + "diagnostics": [ + { + "text": "File '/user/username/projects/myproject/core/core.ts' is not under 'rootDir' '/user/username/projects/myproject/app1'. 'rootDir' is expected to contain all source files.\n The file is in the program because:\n Part of 'files' list in tsconfig.json", + "code": 6059, + "category": "error", + "relatedInformation": [ + { + "span": { + "start": { + "line": 4, + "offset": 5 + }, + "end": { + "line": 4, + "offset": 22 + }, + "file": "/user/username/projects/myproject/app1/tsconfig.json" + }, + "message": "File is matched by 'files' list specified here.", + "category": "message", + "code": 1410 + } + ] + }, + { + "start": { + "line": 7, + "offset": 5 + }, + "end": { + "line": 7, + "offset": 14 + }, + "text": "The common source directory of 'tsconfig.json' is '..'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout.\n Visit https://aka.ms/ts6 for migration information.", + "code": 5011, + "category": "error", + "fileName": "/user/username/projects/myproject/app1/tsconfig.json" + } + ] } } Info seq [hh:mm:ss:mss] Project '/user/username/projects/myproject/app1/tsconfig.json' (Configured) @@ -344,7 +382,45 @@ Info seq [hh:mm:ss:mss] event: "body": { "triggerFile": "/user/username/projects/myproject/app2/app.ts", "configFile": "/user/username/projects/myproject/app2/tsconfig.json", - "diagnostics": [] + "diagnostics": [ + { + "text": "File '/user/username/projects/myproject/core/core.ts' is not under 'rootDir' '/user/username/projects/myproject/app2'. 'rootDir' is expected to contain all source files.\n The file is in the program because:\n Part of 'files' list in tsconfig.json", + "code": 6059, + "category": "error", + "relatedInformation": [ + { + "span": { + "start": { + "line": 4, + "offset": 5 + }, + "end": { + "line": 4, + "offset": 22 + }, + "file": "/user/username/projects/myproject/app2/tsconfig.json" + }, + "message": "File is matched by 'files' list specified here.", + "category": "message", + "code": 1410 + } + ] + }, + { + "start": { + "line": 7, + "offset": 5 + }, + "end": { + "line": 7, + "offset": 14 + }, + "text": "The common source directory of 'tsconfig.json' is '..'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout.\n Visit https://aka.ms/ts6 for migration information.", + "code": 5011, + "category": "error", + "fileName": "/user/username/projects/myproject/app2/tsconfig.json" + } + ] } } Info seq [hh:mm:ss:mss] Project '/user/username/projects/myproject/app1/tsconfig.json' (Configured) diff --git a/tests/baselines/reference/tsserver/compileOnSave/CompileOnSaveAffectedFileListRequest-when-projectFile-is-specified.js b/tests/baselines/reference/tsserver/compileOnSave/CompileOnSaveAffectedFileListRequest-when-projectFile-is-specified.js index b34f833cabc..8ae9aeb0078 100644 --- a/tests/baselines/reference/tsserver/compileOnSave/CompileOnSaveAffectedFileListRequest-when-projectFile-is-specified.js +++ b/tests/baselines/reference/tsserver/compileOnSave/CompileOnSaveAffectedFileListRequest-when-projectFile-is-specified.js @@ -168,7 +168,45 @@ Info seq [hh:mm:ss:mss] event: "body": { "triggerFile": "/user/username/projects/myproject/app1/app.ts", "configFile": "/user/username/projects/myproject/app1/tsconfig.json", - "diagnostics": [] + "diagnostics": [ + { + "text": "File '/user/username/projects/myproject/core/core.ts' is not under 'rootDir' '/user/username/projects/myproject/app1'. 'rootDir' is expected to contain all source files.\n The file is in the program because:\n Part of 'files' list in tsconfig.json", + "code": 6059, + "category": "error", + "relatedInformation": [ + { + "span": { + "start": { + "line": 4, + "offset": 5 + }, + "end": { + "line": 4, + "offset": 22 + }, + "file": "/user/username/projects/myproject/app1/tsconfig.json" + }, + "message": "File is matched by 'files' list specified here.", + "category": "message", + "code": 1410 + } + ] + }, + { + "start": { + "line": 7, + "offset": 5 + }, + "end": { + "line": 7, + "offset": 14 + }, + "text": "The common source directory of 'tsconfig.json' is '..'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout.\n Visit https://aka.ms/ts6 for migration information.", + "code": 5011, + "category": "error", + "fileName": "/user/username/projects/myproject/app1/tsconfig.json" + } + ] } } Info seq [hh:mm:ss:mss] Project '/user/username/projects/myproject/app1/tsconfig.json' (Configured) @@ -344,7 +382,45 @@ Info seq [hh:mm:ss:mss] event: "body": { "triggerFile": "/user/username/projects/myproject/app2/app.ts", "configFile": "/user/username/projects/myproject/app2/tsconfig.json", - "diagnostics": [] + "diagnostics": [ + { + "text": "File '/user/username/projects/myproject/core/core.ts' is not under 'rootDir' '/user/username/projects/myproject/app2'. 'rootDir' is expected to contain all source files.\n The file is in the program because:\n Part of 'files' list in tsconfig.json", + "code": 6059, + "category": "error", + "relatedInformation": [ + { + "span": { + "start": { + "line": 4, + "offset": 5 + }, + "end": { + "line": 4, + "offset": 22 + }, + "file": "/user/username/projects/myproject/app2/tsconfig.json" + }, + "message": "File is matched by 'files' list specified here.", + "category": "message", + "code": 1410 + } + ] + }, + { + "start": { + "line": 7, + "offset": 5 + }, + "end": { + "line": 7, + "offset": 14 + }, + "text": "The common source directory of 'tsconfig.json' is '..'. The 'rootDir' setting must be explicitly set to this or another path to adjust your output's file layout.\n Visit https://aka.ms/ts6 for migration information.", + "code": 5011, + "category": "error", + "fileName": "/user/username/projects/myproject/app2/tsconfig.json" + } + ] } } Info seq [hh:mm:ss:mss] Project '/user/username/projects/myproject/app1/tsconfig.json' (Configured)