Deprecate prepend option on project reference (#52312)

This commit is contained in:
Sheetal Nandi 2023-01-20 12:10:18 -08:00 коммит произвёл GitHub
Родитель 81d04341e8
Коммит 181cf21b68
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
62 изменённых файлов: 938 добавлений и 28 удалений

Просмотреть файл

@ -4307,17 +4307,23 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
}
}
function verifyDeprecatedCompilerOptions() {
function getVersionForDeprecationDiagnostics(reportInvalidIgnoreDeprecations: boolean) {
const version = typeScriptVersion || versionMajorMinor;
const ignoreDeprecations = options.ignoreDeprecations;
if (ignoreDeprecations) {
if (ignoreDeprecations === DeprecationVersion.v5_0 && (version === DeprecationVersion.v5_0 || version === DeprecationVersion.v5_5)) {
return;
}
else {
else if (reportInvalidIgnoreDeprecations) {
createOptionValueDiagnostic("ignoreDeprecations", Diagnostics.Invalid_value_for_ignoreDeprecations);
}
}
return version;
}
function verifyDeprecatedCompilerOptions() {
const version = getVersionForDeprecationDiagnostics(/*reportInvalidIgnoreDeprecations*/ true);
if (!version) return;
if (options.target === ScriptTarget.ES3) {
createDeprecatedDiagnosticForOption(version, "target", "ES3");
}
@ -4350,27 +4356,47 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
}
}
function createDeprecatedDiagnosticForOption(version: string, name: string, value?: string, useInstead?: string) {
if (version === DeprecationVersion.v6_0) {
if (useInstead) {
const details = chainDiagnosticMessages(/*details*/ undefined, Diagnostics.Use_0_instead, useInstead);
const chain = chainDiagnosticMessages(details, Diagnostics.Flag_0_is_deprecated_Please_remove_it_from_your_configuration, value || name);
createDiagnosticForOption(/*onKey*/ !value, name, /*option2*/ undefined, chain);
}
else {
createDiagnosticForOption(/*onKey*/ !value, name, /*option2*/ undefined, Diagnostics.Flag_0_is_deprecated_Please_remove_it_from_your_configuration, value || name);
function verifyDeprecatedProjectReference(ref: ProjectReference, parentFile: JsonSourceFile | undefined, index: number) {
if (ref.prepend) {
const version = getVersionForDeprecationDiagnostics(/*reportInvalidIgnoreDeprecations*/ false);
if (version) {
createDeprecatedOptionForVersionDiagnostic(
version,
(message, arg0, arg1, arg2) => createDiagnosticForReference(parentFile, index, message, arg0, arg1, arg2),
"prepend",
);
}
}
}
function createDeprecatedDiagnosticForOption(version: string, name: string, value?: string, useInstead?: string) {
return createDeprecatedOptionForVersionDiagnostic(
version,
(message, arg0, arg1, arg2) => {
if (useInstead) {
const details = chainDiagnosticMessages(/*details*/ undefined, Diagnostics.Use_0_instead, useInstead);
const chain = chainDiagnosticMessages(details, message, arg0, arg1, arg2);
createDiagnosticForOption(/*onKey*/ !value, name, /*option2*/ undefined, chain);
}
else {
createDiagnosticForOption(/*onKey*/ !value, name, /*option2*/ undefined, message, arg0, arg1, arg2);
}
},
name,
value,
);
}
function createDeprecatedOptionForVersionDiagnostic(
version: string,
createDiagnostic: (message: DiagnosticMessage, arg0: string, arg1?: string, arg2?: string) => void,
name: string,
value?: string) {
if (version === DeprecationVersion.v6_0) {
createDiagnostic(Diagnostics.Flag_0_is_deprecated_Please_remove_it_from_your_configuration, value || name);
}
else {
if (useInstead) {
const details = chainDiagnosticMessages(/*details*/ undefined, Diagnostics.Use_0_instead, useInstead);
const chain = chainDiagnosticMessages(details, Diagnostics.Flag_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_ignoreDeprecations_Colon_2_to_silence_this_error, value || name, DeprecationVersion.v5_5, DeprecationVersion.v5_0);
createDiagnosticForOption(/*onKey*/ !value, name, /*option2*/ undefined, chain);
}
else {
createDiagnosticForOption(/*onKey*/ !value, name, /*option2*/ undefined,
Diagnostics.Flag_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_ignoreDeprecations_Colon_2_to_silence_this_error, value || name, DeprecationVersion.v5_5, DeprecationVersion.v5_0);
}
createDiagnostic(Diagnostics.Flag_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_ignoreDeprecations_Colon_2_to_silence_this_error, value || name, DeprecationVersion.v5_5, DeprecationVersion.v5_0);
}
}
@ -4514,6 +4540,7 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
forEachProjectReference(projectReferences, resolvedProjectReferences, (resolvedRef, parent, index) => {
const ref = (parent ? parent.commandLine.projectReferences : projectReferences)![index];
const parentFile = parent && parent.sourceFile as JsonSourceFile;
verifyDeprecatedProjectReference(ref, parentFile, index);
if (!resolvedRef) {
createDiagnosticForReference(parentFile, index, Diagnostics.File_0_not_found, ref.path);
return;
@ -4608,14 +4635,14 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
createDiagnosticForOption(/*onKey*/ false, option1, /*option2*/ undefined, message, arg0, arg1);
}
function createDiagnosticForReference(sourceFile: JsonSourceFile | undefined, index: number, message: DiagnosticMessage, arg0?: string | number, arg1?: string | number) {
function createDiagnosticForReference(sourceFile: JsonSourceFile | undefined, index: number, message: DiagnosticMessage, arg0?: string | number, arg1?: string | number, arg2?: string | number) {
const referencesSyntax = firstDefined(getTsConfigPropArray(sourceFile || options.configFile, "references"),
property => isArrayLiteralExpression(property.initializer) ? property.initializer : undefined);
if (referencesSyntax && referencesSyntax.elements.length > index) {
programDiagnostics.add(createDiagnosticForNodeInSourceFile(sourceFile || options.configFile!, referencesSyntax.elements[index], message, arg0, arg1));
programDiagnostics.add(createDiagnosticForNodeInSourceFile(sourceFile || options.configFile!, referencesSyntax.elements[index], message, arg0, arg1, arg2));
}
else {
programDiagnostics.add(createCompilerDiagnostic(message, arg0, arg1));
programDiagnostics.add(createCompilerDiagnostic(message, arg0, arg1, arg2));
}
}

Просмотреть файл

@ -59,6 +59,11 @@ describe("unittests:: tsbuild:: outFile:: on amd modules with --out", () => {
subScenario: "modules and globals mixed in amd",
});
verifyOutFileScenario({
subScenario: "prepend reports deprecation error",
modifyFs: fs => replaceText(fs, "/src/app/tsconfig.json", `"ignoreDeprecations": "5.0",`, ""),
});
// Prologues
describe("Prologues", () => {
verifyOutFileScenario({

Просмотреть файл

@ -125,6 +125,7 @@ describe("unittests:: tsbuild:: javascriptProjectEmit::", () => {
{
"extends": "../tsconfig.base.json",
"compilerOptions": {
"ignoreDeprecations":"5.0",
"composite": true,
"outFile": "sub-project.js",
@ -150,6 +151,7 @@ describe("unittests:: tsbuild:: javascriptProjectEmit::", () => {
{
"extends": "../tsconfig.base.json",
"compilerOptions": {
"ignoreDeprecations":"5.0",
"composite": true,
"outFile": "sub-project-2.js",
@ -162,6 +164,7 @@ describe("unittests:: tsbuild:: javascriptProjectEmit::", () => {
"/src/tsconfig.json": Utils.dedent`
{
"compilerOptions": {
"ignoreDeprecations":"5.0",
"composite": true,
"outFile": "src.js"
},

Просмотреть файл

@ -611,6 +611,7 @@ ${internal} enum internalEnum { a, b, c }`);
}));
fs.writeFileSync("/src/third/tsconfig.json", JSON.stringify({
compilerOptions: {
ignoreDeprecations: "5.0",
composite: true,
declaration: true,
declarationMap: false,

Просмотреть файл

@ -274,7 +274,7 @@ export class someClass2 { }`),
const logicTsConfig: File = {
path: logic[0].path,
content: JSON.stringify({
compilerOptions: { composite: true, declaration: true, outFile: "index.js" },
compilerOptions: { ignoreDeprecations: "5.0", composite: true, declaration: true, outFile: "index.js" },
references: [{ path: "../core", prepend: true }]
})
};

Просмотреть файл

@ -24,6 +24,7 @@ const myVar = 30;
//// [/src/app/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"module": "amd",
"composite": true,

Просмотреть файл

@ -29,6 +29,7 @@ appfile4Spread(10, ...appfile4_ar);
//// [/src/app/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"module": "amd",
"composite": true,

Просмотреть файл

@ -26,6 +26,7 @@ const myVar = 30;
//// [/src/app/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"module": "amd",
"composite": true,

Просмотреть файл

@ -0,0 +1,770 @@
Input::
//// [/lib/lib.d.ts]
/// <reference no-default-lib="true"/>
interface Boolean {}
interface Function {}
interface CallableFunction {}
interface NewableFunction {}
interface IArguments {}
interface Number { toExponential: any; }
interface Object {}
interface RegExp {}
interface String { charAt: any; }
interface Array<T> { length: number; [n: number]: T; }
interface ReadonlyArray<T> {}
declare const console: { log(msg: any): void; };
//// [/src/app/file3.ts]
export const z = 30;
import { x } from "file1";
//// [/src/app/file4.ts]
const myVar = 30;
//// [/src/app/tsconfig.json]
{
"compilerOptions": {
"target": "es5",
"module": "amd",
"composite": true,
"strict": false,
"sourceMap": true,
"declarationMap": true,
"outFile": "module.js"
},
"exclude": ["module.d.ts"],
"references": [
{ "path": "../lib", "prepend": true }
]
}
//// [/src/lib/file0.ts]
const myGlob = 20;
//// [/src/lib/file1.ts]
export const x = 10;
//// [/src/lib/file2.ts]
export const y = 20;
//// [/src/lib/global.ts]
const globalConst = 10;
//// [/src/lib/tsconfig.json]
{
"compilerOptions": {
"target": "es5",
"module": "amd",
"composite": true,
"sourceMap": true,
"declarationMap": true,
"strict": false,
"outFile": "module.js"
},
"exclude": ["module.d.ts"]
}
Output::
/lib/tsc --b /src/app --verbose
[12:00:07 AM] Projects in this build:
* src/lib/tsconfig.json
* src/app/tsconfig.json
[12:00:08 AM] Project 'src/lib/tsconfig.json' is out of date because output file 'src/lib/module.tsbuildinfo' does not exist
[12:00:09 AM] Building project '/src/lib/tsconfig.json'...
[12:00:18 AM] Project 'src/app/tsconfig.json' is out of date because output file 'src/app/module.tsbuildinfo' does not exist
[12:00:19 AM] Building project '/src/app/tsconfig.json'...
src/app/tsconfig.json:14:9 - error TS5101: Flag 'prepend' is deprecated and will stop functioning in TypeScript 5.5. Specify 'ignoreDeprecations: "5.0"' to silence this error.
14 { "path": "../lib", "prepend": true }
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Found 1 error.
exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated
//// [/src/lib/module.d.ts]
declare const myGlob = 20;
declare module "file1" {
export const x = 10;
}
declare module "file2" {
export const y = 20;
}
declare const globalConst = 10;
//# sourceMappingURL=module.d.ts.map
//// [/src/lib/module.d.ts.map]
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["file0.ts","file1.ts","file2.ts","global.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,MAAM,KAAK,CAAC;;ICAlB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;;;ICApB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;;ACApB,QAAA,MAAM,WAAW,KAAK,CAAC"}
//// [/src/lib/module.d.ts.map.baseline.txt]
===================================================================
JsFile: module.d.ts
mapUrl: module.d.ts.map
sourceRoot:
sources: file0.ts,file1.ts,file2.ts,global.ts
===================================================================
-------------------------------------------------------------------
emittedFile:/src/lib/module.d.ts
sourceFile:file0.ts
-------------------------------------------------------------------
>>>declare const myGlob = 20;
1 >
2 >^^^^^^^^
3 > ^^^^^^
4 > ^^^^^^
5 > ^^^^^
6 > ^
1 >
2 >
3 > const
4 > myGlob
5 > = 20
6 > ;
1 >Emitted(1, 1) Source(1, 1) + SourceIndex(0)
2 >Emitted(1, 9) Source(1, 1) + SourceIndex(0)
3 >Emitted(1, 15) Source(1, 7) + SourceIndex(0)
4 >Emitted(1, 21) Source(1, 13) + SourceIndex(0)
5 >Emitted(1, 26) Source(1, 18) + SourceIndex(0)
6 >Emitted(1, 27) Source(1, 19) + SourceIndex(0)
---
-------------------------------------------------------------------
emittedFile:/src/lib/module.d.ts
sourceFile:file1.ts
-------------------------------------------------------------------
>>>declare module "file1" {
>>> export const x = 10;
1 >^^^^
2 > ^^^^^^
3 > ^
4 > ^^^^^^
5 > ^
6 > ^^^^^
7 > ^
1 >
2 > export
3 >
4 > const
5 > x
6 > = 10
7 > ;
1 >Emitted(3, 5) Source(1, 1) + SourceIndex(1)
2 >Emitted(3, 11) Source(1, 7) + SourceIndex(1)
3 >Emitted(3, 12) Source(1, 8) + SourceIndex(1)
4 >Emitted(3, 18) Source(1, 14) + SourceIndex(1)
5 >Emitted(3, 19) Source(1, 15) + SourceIndex(1)
6 >Emitted(3, 24) Source(1, 20) + SourceIndex(1)
7 >Emitted(3, 25) Source(1, 21) + SourceIndex(1)
---
-------------------------------------------------------------------
emittedFile:/src/lib/module.d.ts
sourceFile:file2.ts
-------------------------------------------------------------------
>>>}
>>>declare module "file2" {
>>> export const y = 20;
1 >^^^^
2 > ^^^^^^
3 > ^
4 > ^^^^^^
5 > ^
6 > ^^^^^
7 > ^
1 >
2 > export
3 >
4 > const
5 > y
6 > = 20
7 > ;
1 >Emitted(6, 5) Source(1, 1) + SourceIndex(2)
2 >Emitted(6, 11) Source(1, 7) + SourceIndex(2)
3 >Emitted(6, 12) Source(1, 8) + SourceIndex(2)
4 >Emitted(6, 18) Source(1, 14) + SourceIndex(2)
5 >Emitted(6, 19) Source(1, 15) + SourceIndex(2)
6 >Emitted(6, 24) Source(1, 20) + SourceIndex(2)
7 >Emitted(6, 25) Source(1, 21) + SourceIndex(2)
---
-------------------------------------------------------------------
emittedFile:/src/lib/module.d.ts
sourceFile:global.ts
-------------------------------------------------------------------
>>>}
>>>declare const globalConst = 10;
1 >
2 >^^^^^^^^
3 > ^^^^^^
4 > ^^^^^^^^^^^
5 > ^^^^^
6 > ^
7 > ^^^^->
1 >
2 >
3 > const
4 > globalConst
5 > = 10
6 > ;
1 >Emitted(8, 1) Source(1, 1) + SourceIndex(3)
2 >Emitted(8, 9) Source(1, 1) + SourceIndex(3)
3 >Emitted(8, 15) Source(1, 7) + SourceIndex(3)
4 >Emitted(8, 26) Source(1, 18) + SourceIndex(3)
5 >Emitted(8, 31) Source(1, 23) + SourceIndex(3)
6 >Emitted(8, 32) Source(1, 24) + SourceIndex(3)
---
>>>//# sourceMappingURL=module.d.ts.map
//// [/src/lib/module.js]
var myGlob = 20;
define("file1", ["require", "exports"], function (require, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.x = void 0;
exports.x = 10;
});
define("file2", ["require", "exports"], function (require, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.y = void 0;
exports.y = 20;
});
var globalConst = 10;
//# sourceMappingURL=module.js.map
//// [/src/lib/module.js.map]
{"version":3,"file":"module.js","sourceRoot":"","sources":["file0.ts","file1.ts","file2.ts","global.ts"],"names":[],"mappings":"AAAA,IAAM,MAAM,GAAG,EAAE,CAAC;;;;;ICAL,QAAA,CAAC,GAAG,EAAE,CAAC;;;;;;ICAP,QAAA,CAAC,GAAG,EAAE,CAAC;;ACApB,IAAM,WAAW,GAAG,EAAE,CAAC"}
//// [/src/lib/module.js.map.baseline.txt]
===================================================================
JsFile: module.js
mapUrl: module.js.map
sourceRoot:
sources: file0.ts,file1.ts,file2.ts,global.ts
===================================================================
-------------------------------------------------------------------
emittedFile:/src/lib/module.js
sourceFile:file0.ts
-------------------------------------------------------------------
>>>var myGlob = 20;
1 >
2 >^^^^
3 > ^^^^^^
4 > ^^^
5 > ^^
6 > ^
7 > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^->
1 >
2 >const
3 > myGlob
4 > =
5 > 20
6 > ;
1 >Emitted(1, 1) Source(1, 1) + SourceIndex(0)
2 >Emitted(1, 5) Source(1, 7) + SourceIndex(0)
3 >Emitted(1, 11) Source(1, 13) + SourceIndex(0)
4 >Emitted(1, 14) Source(1, 16) + SourceIndex(0)
5 >Emitted(1, 16) Source(1, 18) + SourceIndex(0)
6 >Emitted(1, 17) Source(1, 19) + SourceIndex(0)
---
-------------------------------------------------------------------
emittedFile:/src/lib/module.js
sourceFile:file1.ts
-------------------------------------------------------------------
>>>define("file1", ["require", "exports"], function (require, exports) {
>>> "use strict";
>>> Object.defineProperty(exports, "__esModule", { value: true });
>>> exports.x = void 0;
>>> exports.x = 10;
1->^^^^
2 > ^^^^^^^^
3 > ^
4 > ^^^
5 > ^^
6 > ^
1->export const
2 >
3 > x
4 > =
5 > 10
6 > ;
1->Emitted(6, 5) Source(1, 14) + SourceIndex(1)
2 >Emitted(6, 13) Source(1, 14) + SourceIndex(1)
3 >Emitted(6, 14) Source(1, 15) + SourceIndex(1)
4 >Emitted(6, 17) Source(1, 18) + SourceIndex(1)
5 >Emitted(6, 19) Source(1, 20) + SourceIndex(1)
6 >Emitted(6, 20) Source(1, 21) + SourceIndex(1)
---
-------------------------------------------------------------------
emittedFile:/src/lib/module.js
sourceFile:file2.ts
-------------------------------------------------------------------
>>>});
>>>define("file2", ["require", "exports"], function (require, exports) {
>>> "use strict";
>>> Object.defineProperty(exports, "__esModule", { value: true });
>>> exports.y = void 0;
>>> exports.y = 20;
1 >^^^^
2 > ^^^^^^^^
3 > ^
4 > ^^^
5 > ^^
6 > ^
1 >export const
2 >
3 > y
4 > =
5 > 20
6 > ;
1 >Emitted(12, 5) Source(1, 14) + SourceIndex(2)
2 >Emitted(12, 13) Source(1, 14) + SourceIndex(2)
3 >Emitted(12, 14) Source(1, 15) + SourceIndex(2)
4 >Emitted(12, 17) Source(1, 18) + SourceIndex(2)
5 >Emitted(12, 19) Source(1, 20) + SourceIndex(2)
6 >Emitted(12, 20) Source(1, 21) + SourceIndex(2)
---
-------------------------------------------------------------------
emittedFile:/src/lib/module.js
sourceFile:global.ts
-------------------------------------------------------------------
>>>});
>>>var globalConst = 10;
1 >
2 >^^^^
3 > ^^^^^^^^^^^
4 > ^^^
5 > ^^
6 > ^
7 > ^^^^^^^^^^^^->
1 >
2 >const
3 > globalConst
4 > =
5 > 10
6 > ;
1 >Emitted(14, 1) Source(1, 1) + SourceIndex(3)
2 >Emitted(14, 5) Source(1, 7) + SourceIndex(3)
3 >Emitted(14, 16) Source(1, 18) + SourceIndex(3)
4 >Emitted(14, 19) Source(1, 21) + SourceIndex(3)
5 >Emitted(14, 21) Source(1, 23) + SourceIndex(3)
6 >Emitted(14, 22) Source(1, 24) + SourceIndex(3)
---
>>>//# sourceMappingURL=module.js.map
//// [/src/lib/module.tsbuildinfo]
{"bundle":{"commonSourceDirectory":"./","sourceFiles":["./file0.ts","./file1.ts","./file2.ts","./global.ts"],"js":{"sections":[{"pos":0,"end":459,"kind":"text"}],"mapHash":"15919942799-{\"version\":3,\"file\":\"module.js\",\"sourceRoot\":\"\",\"sources\":[\"file0.ts\",\"file1.ts\",\"file2.ts\",\"global.ts\"],\"names\":[],\"mappings\":\"AAAA,IAAM,MAAM,GAAG,EAAE,CAAC;;;;;ICAL,QAAA,CAAC,GAAG,EAAE,CAAC;;;;;;ICAP,QAAA,CAAC,GAAG,EAAE,CAAC;;ACApB,IAAM,WAAW,GAAG,EAAE,CAAC\"}","hash":"10339383505-var myGlob = 20;\r\ndefine(\"file1\", [\"require\", \"exports\"], function (require, exports) {\r\n \"use strict\";\r\n Object.defineProperty(exports, \"__esModule\", { value: true });\r\n exports.x = void 0;\r\n exports.x = 10;\r\n});\r\ndefine(\"file2\", [\"require\", \"exports\"], function (require, exports) {\r\n \"use strict\";\r\n Object.defineProperty(exports, \"__esModule\", { value: true });\r\n exports.y = void 0;\r\n exports.y = 20;\r\n});\r\nvar globalConst = 10;\r\n//# sourceMappingURL=module.js.map"},"dts":{"sections":[{"pos":0,"end":171,"kind":"text"}],"mapHash":"-14214505027-{\"version\":3,\"file\":\"module.d.ts\",\"sourceRoot\":\"\",\"sources\":[\"file0.ts\",\"file1.ts\",\"file2.ts\",\"global.ts\"],\"names\":[],\"mappings\":\"AAAA,QAAA,MAAM,MAAM,KAAK,CAAC;;ICAlB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;;;ICApB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;;ACApB,QAAA,MAAM,WAAW,KAAK,CAAC\"}","hash":"10884851940-declare const myGlob = 20;\r\ndeclare module \"file1\" {\r\n export const x = 10;\r\n}\r\ndeclare module \"file2\" {\r\n export const y = 20;\r\n}\r\ndeclare const globalConst = 10;\r\n//# sourceMappingURL=module.d.ts.map"}},"program":{"fileNames":["../../lib/lib.d.ts","./file0.ts","./file1.ts","./file2.ts","./global.ts"],"fileInfos":["3858781397-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };","3587416848-const myGlob = 20;","-10726455937-export const x = 10;","-13729954175-export const y = 20;","1028229885-const globalConst = 10;"],"options":{"composite":true,"declarationMap":true,"module":2,"outFile":"./module.js","sourceMap":true,"strict":false,"target":1},"outSignature":"15835278973-declare const myGlob = 20;\r\ndeclare module \"file1\" {\r\n export const x = 10;\r\n}\r\ndeclare module \"file2\" {\r\n export const y = 20;\r\n}\r\ndeclare const globalConst = 10;\r\n","latestChangedDtsFile":"./module.d.ts"},"version":"FakeTSVersion"}
//// [/src/lib/module.tsbuildinfo.baseline.txt]
======================================================================
File:: /src/lib/module.js
----------------------------------------------------------------------
text: (0-459)
var myGlob = 20;
define("file1", ["require", "exports"], function (require, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.x = void 0;
exports.x = 10;
});
define("file2", ["require", "exports"], function (require, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.y = void 0;
exports.y = 20;
});
var globalConst = 10;
======================================================================
======================================================================
File:: /src/lib/module.d.ts
----------------------------------------------------------------------
text: (0-171)
declare const myGlob = 20;
declare module "file1" {
export const x = 10;
}
declare module "file2" {
export const y = 20;
}
declare const globalConst = 10;
======================================================================
//// [/src/lib/module.tsbuildinfo.readable.baseline.txt]
{
"bundle": {
"commonSourceDirectory": "./",
"sourceFiles": [
"./file0.ts",
"./file1.ts",
"./file2.ts",
"./global.ts"
],
"js": {
"sections": [
{
"pos": 0,
"end": 459,
"kind": "text"
}
],
"hash": "10339383505-var myGlob = 20;\r\ndefine(\"file1\", [\"require\", \"exports\"], function (require, exports) {\r\n \"use strict\";\r\n Object.defineProperty(exports, \"__esModule\", { value: true });\r\n exports.x = void 0;\r\n exports.x = 10;\r\n});\r\ndefine(\"file2\", [\"require\", \"exports\"], function (require, exports) {\r\n \"use strict\";\r\n Object.defineProperty(exports, \"__esModule\", { value: true });\r\n exports.y = void 0;\r\n exports.y = 20;\r\n});\r\nvar globalConst = 10;\r\n//# sourceMappingURL=module.js.map",
"mapHash": "15919942799-{\"version\":3,\"file\":\"module.js\",\"sourceRoot\":\"\",\"sources\":[\"file0.ts\",\"file1.ts\",\"file2.ts\",\"global.ts\"],\"names\":[],\"mappings\":\"AAAA,IAAM,MAAM,GAAG,EAAE,CAAC;;;;;ICAL,QAAA,CAAC,GAAG,EAAE,CAAC;;;;;;ICAP,QAAA,CAAC,GAAG,EAAE,CAAC;;ACApB,IAAM,WAAW,GAAG,EAAE,CAAC\"}"
},
"dts": {
"sections": [
{
"pos": 0,
"end": 171,
"kind": "text"
}
],
"hash": "10884851940-declare const myGlob = 20;\r\ndeclare module \"file1\" {\r\n export const x = 10;\r\n}\r\ndeclare module \"file2\" {\r\n export const y = 20;\r\n}\r\ndeclare const globalConst = 10;\r\n//# sourceMappingURL=module.d.ts.map",
"mapHash": "-14214505027-{\"version\":3,\"file\":\"module.d.ts\",\"sourceRoot\":\"\",\"sources\":[\"file0.ts\",\"file1.ts\",\"file2.ts\",\"global.ts\"],\"names\":[],\"mappings\":\"AAAA,QAAA,MAAM,MAAM,KAAK,CAAC;;ICAlB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;;;ICApB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;;ACApB,QAAA,MAAM,WAAW,KAAK,CAAC\"}"
}
},
"program": {
"fileNames": [
"../../lib/lib.d.ts",
"./file0.ts",
"./file1.ts",
"./file2.ts",
"./global.ts"
],
"fileInfos": {
"../../lib/lib.d.ts": "3858781397-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };",
"./file0.ts": "3587416848-const myGlob = 20;",
"./file1.ts": "-10726455937-export const x = 10;",
"./file2.ts": "-13729954175-export const y = 20;",
"./global.ts": "1028229885-const globalConst = 10;"
},
"options": {
"composite": true,
"declarationMap": true,
"module": 2,
"outFile": "./module.js",
"sourceMap": true,
"strict": false,
"target": 1
},
"outSignature": "15835278973-declare const myGlob = 20;\r\ndeclare module \"file1\" {\r\n export const x = 10;\r\n}\r\ndeclare module \"file2\" {\r\n export const y = 20;\r\n}\r\ndeclare const globalConst = 10;\r\n",
"latestChangedDtsFile": "./module.d.ts"
},
"version": "FakeTSVersion",
"size": 2773
}
Change:: incremental-declaration-doesnt-change
Input::
//// [/src/lib/file1.ts]
export const x = 10;console.log(x);
Output::
/lib/tsc --b /src/app --verbose
[12:00:23 AM] Projects in this build:
* src/lib/tsconfig.json
* src/app/tsconfig.json
[12:00:24 AM] Project 'src/lib/tsconfig.json' is out of date because output 'src/lib/module.tsbuildinfo' is older than input 'src/lib/file1.ts'
[12:00:25 AM] Building project '/src/lib/tsconfig.json'...
[12:00:33 AM] Project 'src/app/tsconfig.json' is out of date because output file 'src/app/module.tsbuildinfo' does not exist
[12:00:34 AM] Building project '/src/app/tsconfig.json'...
src/app/tsconfig.json:14:9 - error TS5101: Flag 'prepend' is deprecated and will stop functioning in TypeScript 5.5. Specify 'ignoreDeprecations: "5.0"' to silence this error.
14 { "path": "../lib", "prepend": true }
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Found 1 error.
exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated
//// [/src/lib/module.d.ts.map] file written with same contents
//// [/src/lib/module.d.ts.map.baseline.txt] file written with same contents
//// [/src/lib/module.js]
var myGlob = 20;
define("file1", ["require", "exports"], function (require, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.x = void 0;
exports.x = 10;
console.log(exports.x);
});
define("file2", ["require", "exports"], function (require, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.y = void 0;
exports.y = 20;
});
var globalConst = 10;
//# sourceMappingURL=module.js.map
//// [/src/lib/module.js.map]
{"version":3,"file":"module.js","sourceRoot":"","sources":["file0.ts","file1.ts","file2.ts","global.ts"],"names":[],"mappings":"AAAA,IAAM,MAAM,GAAG,EAAE,CAAC;;;;;ICAL,QAAA,CAAC,GAAG,EAAE,CAAC;IAAA,OAAO,CAAC,GAAG,CAAC,SAAC,CAAC,CAAC;;;;;;ICAtB,QAAA,CAAC,GAAG,EAAE,CAAC;;ACApB,IAAM,WAAW,GAAG,EAAE,CAAC"}
//// [/src/lib/module.js.map.baseline.txt]
===================================================================
JsFile: module.js
mapUrl: module.js.map
sourceRoot:
sources: file0.ts,file1.ts,file2.ts,global.ts
===================================================================
-------------------------------------------------------------------
emittedFile:/src/lib/module.js
sourceFile:file0.ts
-------------------------------------------------------------------
>>>var myGlob = 20;
1 >
2 >^^^^
3 > ^^^^^^
4 > ^^^
5 > ^^
6 > ^
7 > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^->
1 >
2 >const
3 > myGlob
4 > =
5 > 20
6 > ;
1 >Emitted(1, 1) Source(1, 1) + SourceIndex(0)
2 >Emitted(1, 5) Source(1, 7) + SourceIndex(0)
3 >Emitted(1, 11) Source(1, 13) + SourceIndex(0)
4 >Emitted(1, 14) Source(1, 16) + SourceIndex(0)
5 >Emitted(1, 16) Source(1, 18) + SourceIndex(0)
6 >Emitted(1, 17) Source(1, 19) + SourceIndex(0)
---
-------------------------------------------------------------------
emittedFile:/src/lib/module.js
sourceFile:file1.ts
-------------------------------------------------------------------
>>>define("file1", ["require", "exports"], function (require, exports) {
>>> "use strict";
>>> Object.defineProperty(exports, "__esModule", { value: true });
>>> exports.x = void 0;
>>> exports.x = 10;
1->^^^^
2 > ^^^^^^^^
3 > ^
4 > ^^^
5 > ^^
6 > ^
7 > ^^^^^^^^^->
1->export const
2 >
3 > x
4 > =
5 > 10
6 > ;
1->Emitted(6, 5) Source(1, 14) + SourceIndex(1)
2 >Emitted(6, 13) Source(1, 14) + SourceIndex(1)
3 >Emitted(6, 14) Source(1, 15) + SourceIndex(1)
4 >Emitted(6, 17) Source(1, 18) + SourceIndex(1)
5 >Emitted(6, 19) Source(1, 20) + SourceIndex(1)
6 >Emitted(6, 20) Source(1, 21) + SourceIndex(1)
---
>>> console.log(exports.x);
1->^^^^
2 > ^^^^^^^
3 > ^
4 > ^^^
5 > ^
6 > ^^^^^^^^^
7 > ^
8 > ^
1->
2 > console
3 > .
4 > log
5 > (
6 > x
7 > )
8 > ;
1->Emitted(7, 5) Source(1, 21) + SourceIndex(1)
2 >Emitted(7, 12) Source(1, 28) + SourceIndex(1)
3 >Emitted(7, 13) Source(1, 29) + SourceIndex(1)
4 >Emitted(7, 16) Source(1, 32) + SourceIndex(1)
5 >Emitted(7, 17) Source(1, 33) + SourceIndex(1)
6 >Emitted(7, 26) Source(1, 34) + SourceIndex(1)
7 >Emitted(7, 27) Source(1, 35) + SourceIndex(1)
8 >Emitted(7, 28) Source(1, 36) + SourceIndex(1)
---
-------------------------------------------------------------------
emittedFile:/src/lib/module.js
sourceFile:file2.ts
-------------------------------------------------------------------
>>>});
>>>define("file2", ["require", "exports"], function (require, exports) {
>>> "use strict";
>>> Object.defineProperty(exports, "__esModule", { value: true });
>>> exports.y = void 0;
>>> exports.y = 20;
1 >^^^^
2 > ^^^^^^^^
3 > ^
4 > ^^^
5 > ^^
6 > ^
1 >export const
2 >
3 > y
4 > =
5 > 20
6 > ;
1 >Emitted(13, 5) Source(1, 14) + SourceIndex(2)
2 >Emitted(13, 13) Source(1, 14) + SourceIndex(2)
3 >Emitted(13, 14) Source(1, 15) + SourceIndex(2)
4 >Emitted(13, 17) Source(1, 18) + SourceIndex(2)
5 >Emitted(13, 19) Source(1, 20) + SourceIndex(2)
6 >Emitted(13, 20) Source(1, 21) + SourceIndex(2)
---
-------------------------------------------------------------------
emittedFile:/src/lib/module.js
sourceFile:global.ts
-------------------------------------------------------------------
>>>});
>>>var globalConst = 10;
1 >
2 >^^^^
3 > ^^^^^^^^^^^
4 > ^^^
5 > ^^
6 > ^
7 > ^^^^^^^^^^^^->
1 >
2 >const
3 > globalConst
4 > =
5 > 10
6 > ;
1 >Emitted(15, 1) Source(1, 1) + SourceIndex(3)
2 >Emitted(15, 5) Source(1, 7) + SourceIndex(3)
3 >Emitted(15, 16) Source(1, 18) + SourceIndex(3)
4 >Emitted(15, 19) Source(1, 21) + SourceIndex(3)
5 >Emitted(15, 21) Source(1, 23) + SourceIndex(3)
6 >Emitted(15, 22) Source(1, 24) + SourceIndex(3)
---
>>>//# sourceMappingURL=module.js.map
//// [/src/lib/module.tsbuildinfo]
{"bundle":{"commonSourceDirectory":"./","sourceFiles":["./file0.ts","./file1.ts","./file2.ts","./global.ts"],"js":{"sections":[{"pos":0,"end":488,"kind":"text"}],"mapHash":"32224580248-{\"version\":3,\"file\":\"module.js\",\"sourceRoot\":\"\",\"sources\":[\"file0.ts\",\"file1.ts\",\"file2.ts\",\"global.ts\"],\"names\":[],\"mappings\":\"AAAA,IAAM,MAAM,GAAG,EAAE,CAAC;;;;;ICAL,QAAA,CAAC,GAAG,EAAE,CAAC;IAAA,OAAO,CAAC,GAAG,CAAC,SAAC,CAAC,CAAC;;;;;;ICAtB,QAAA,CAAC,GAAG,EAAE,CAAC;;ACApB,IAAM,WAAW,GAAG,EAAE,CAAC\"}","hash":"-12742173550-var myGlob = 20;\r\ndefine(\"file1\", [\"require\", \"exports\"], function (require, exports) {\r\n \"use strict\";\r\n Object.defineProperty(exports, \"__esModule\", { value: true });\r\n exports.x = void 0;\r\n exports.x = 10;\r\n console.log(exports.x);\r\n});\r\ndefine(\"file2\", [\"require\", \"exports\"], function (require, exports) {\r\n \"use strict\";\r\n Object.defineProperty(exports, \"__esModule\", { value: true });\r\n exports.y = void 0;\r\n exports.y = 20;\r\n});\r\nvar globalConst = 10;\r\n//# sourceMappingURL=module.js.map"},"dts":{"sections":[{"pos":0,"end":171,"kind":"text"}],"mapHash":"-14214505027-{\"version\":3,\"file\":\"module.d.ts\",\"sourceRoot\":\"\",\"sources\":[\"file0.ts\",\"file1.ts\",\"file2.ts\",\"global.ts\"],\"names\":[],\"mappings\":\"AAAA,QAAA,MAAM,MAAM,KAAK,CAAC;;ICAlB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;;;ICApB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;;ACApB,QAAA,MAAM,WAAW,KAAK,CAAC\"}","hash":"10884851940-declare const myGlob = 20;\r\ndeclare module \"file1\" {\r\n export const x = 10;\r\n}\r\ndeclare module \"file2\" {\r\n export const y = 20;\r\n}\r\ndeclare const globalConst = 10;\r\n//# sourceMappingURL=module.d.ts.map"}},"program":{"fileNames":["../../lib/lib.d.ts","./file0.ts","./file1.ts","./file2.ts","./global.ts"],"fileInfos":["3858781397-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };","3587416848-const myGlob = 20;","-4405159098-export const x = 10;console.log(x);","-13729954175-export const y = 20;","1028229885-const globalConst = 10;"],"options":{"composite":true,"declarationMap":true,"module":2,"outFile":"./module.js","sourceMap":true,"strict":false,"target":1},"outSignature":"15835278973-declare const myGlob = 20;\r\ndeclare module \"file1\" {\r\n export const x = 10;\r\n}\r\ndeclare module \"file2\" {\r\n export const y = 20;\r\n}\r\ndeclare const globalConst = 10;\r\n","latestChangedDtsFile":"./module.d.ts"},"version":"FakeTSVersion"}
//// [/src/lib/module.tsbuildinfo.baseline.txt]
======================================================================
File:: /src/lib/module.js
----------------------------------------------------------------------
text: (0-488)
var myGlob = 20;
define("file1", ["require", "exports"], function (require, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.x = void 0;
exports.x = 10;
console.log(exports.x);
});
define("file2", ["require", "exports"], function (require, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.y = void 0;
exports.y = 20;
});
var globalConst = 10;
======================================================================
======================================================================
File:: /src/lib/module.d.ts
----------------------------------------------------------------------
text: (0-171)
declare const myGlob = 20;
declare module "file1" {
export const x = 10;
}
declare module "file2" {
export const y = 20;
}
declare const globalConst = 10;
======================================================================
//// [/src/lib/module.tsbuildinfo.readable.baseline.txt]
{
"bundle": {
"commonSourceDirectory": "./",
"sourceFiles": [
"./file0.ts",
"./file1.ts",
"./file2.ts",
"./global.ts"
],
"js": {
"sections": [
{
"pos": 0,
"end": 488,
"kind": "text"
}
],
"hash": "-12742173550-var myGlob = 20;\r\ndefine(\"file1\", [\"require\", \"exports\"], function (require, exports) {\r\n \"use strict\";\r\n Object.defineProperty(exports, \"__esModule\", { value: true });\r\n exports.x = void 0;\r\n exports.x = 10;\r\n console.log(exports.x);\r\n});\r\ndefine(\"file2\", [\"require\", \"exports\"], function (require, exports) {\r\n \"use strict\";\r\n Object.defineProperty(exports, \"__esModule\", { value: true });\r\n exports.y = void 0;\r\n exports.y = 20;\r\n});\r\nvar globalConst = 10;\r\n//# sourceMappingURL=module.js.map",
"mapHash": "32224580248-{\"version\":3,\"file\":\"module.js\",\"sourceRoot\":\"\",\"sources\":[\"file0.ts\",\"file1.ts\",\"file2.ts\",\"global.ts\"],\"names\":[],\"mappings\":\"AAAA,IAAM,MAAM,GAAG,EAAE,CAAC;;;;;ICAL,QAAA,CAAC,GAAG,EAAE,CAAC;IAAA,OAAO,CAAC,GAAG,CAAC,SAAC,CAAC,CAAC;;;;;;ICAtB,QAAA,CAAC,GAAG,EAAE,CAAC;;ACApB,IAAM,WAAW,GAAG,EAAE,CAAC\"}"
},
"dts": {
"sections": [
{
"pos": 0,
"end": 171,
"kind": "text"
}
],
"hash": "10884851940-declare const myGlob = 20;\r\ndeclare module \"file1\" {\r\n export const x = 10;\r\n}\r\ndeclare module \"file2\" {\r\n export const y = 20;\r\n}\r\ndeclare const globalConst = 10;\r\n//# sourceMappingURL=module.d.ts.map",
"mapHash": "-14214505027-{\"version\":3,\"file\":\"module.d.ts\",\"sourceRoot\":\"\",\"sources\":[\"file0.ts\",\"file1.ts\",\"file2.ts\",\"global.ts\"],\"names\":[],\"mappings\":\"AAAA,QAAA,MAAM,MAAM,KAAK,CAAC;;ICAlB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;;;ICApB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;;ACApB,QAAA,MAAM,WAAW,KAAK,CAAC\"}"
}
},
"program": {
"fileNames": [
"../../lib/lib.d.ts",
"./file0.ts",
"./file1.ts",
"./file2.ts",
"./global.ts"
],
"fileInfos": {
"../../lib/lib.d.ts": "3858781397-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };",
"./file0.ts": "3587416848-const myGlob = 20;",
"./file1.ts": "-4405159098-export const x = 10;console.log(x);",
"./file2.ts": "-13729954175-export const y = 20;",
"./global.ts": "1028229885-const globalConst = 10;"
},
"options": {
"composite": true,
"declarationMap": true,
"module": 2,
"outFile": "./module.js",
"sourceMap": true,
"strict": false,
"target": 1
},
"outSignature": "15835278973-declare const myGlob = 20;\r\ndeclare module \"file1\" {\r\n export const x = 10;\r\n}\r\ndeclare module \"file2\" {\r\n export const y = 20;\r\n}\r\ndeclare const globalConst = 10;\r\n",
"latestChangedDtsFile": "./module.d.ts"
},
"version": "FakeTSVersion",
"size": 2860
}

Просмотреть файл

@ -25,6 +25,7 @@ const myVar = 30;
//// [/src/app/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"module": "amd",
"composite": true,

Просмотреть файл

@ -24,6 +24,7 @@ const myVar = 30;
//// [/src/app/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"module": "amd",
"composite": true,

Просмотреть файл

@ -29,6 +29,7 @@ declare class appfile4 { }
//// [/src/app/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"module": "amd",
"composite": true,

Просмотреть файл

@ -24,6 +24,7 @@ const myVar = 30;
//// [/src/app/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"module": "amd",
"composite": true,

Просмотреть файл

@ -52,6 +52,7 @@ const c = /** @type {*} */(null);
{
"extends": "../tsconfig.base.json",
"compilerOptions": {
"ignoreDeprecations":"5.0",
"composite": true,
"outFile": "sub-project.js",
@ -79,6 +80,7 @@ function getVar() {
{
"extends": "../tsconfig.base.json",
"compilerOptions": {
"ignoreDeprecations":"5.0",
"composite": true,
"outFile": "sub-project-2.js",
@ -103,6 +105,7 @@ function getVar() {
//// [/src/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations":"5.0",
"composite": true,
"outFile": "src.js"
},

Просмотреть файл

@ -84,6 +84,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -107,6 +108,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -336,6 +336,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -599,6 +600,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -336,6 +336,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -599,6 +600,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -84,6 +84,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true, "module": "none",
"removeComments": true,
@ -107,6 +108,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true, "module": "none",
"removeComments": true,

Просмотреть файл

@ -84,6 +84,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -107,6 +108,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"removeComments": true,

Просмотреть файл

@ -336,6 +336,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -599,6 +600,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -84,6 +84,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -107,6 +108,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"removeComments": true,

Просмотреть файл

@ -333,6 +333,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -596,6 +597,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -84,6 +84,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -107,6 +108,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -84,6 +84,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -107,6 +108,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -84,6 +84,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -105,6 +106,7 @@ class C {
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"removeComments": true,

Просмотреть файл

@ -88,6 +88,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -113,6 +114,7 @@ const { b, ...rest } = { a: 10, b: 30, yy: 30 };
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -86,6 +86,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -109,6 +110,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -84,6 +84,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -107,6 +108,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -95,6 +95,7 @@ secondsecond_part2Spread(10, ...secondsecond_part2_ar);
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -124,6 +125,7 @@ thirdthird_part1Spread(10, ...thirdthird_part1_ar);
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -89,6 +89,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -115,6 +116,7 @@ const { b, ...rest } = { a: 10, b: 30, yy: 30 };
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -87,6 +87,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -112,6 +113,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -86,6 +86,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -109,6 +110,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -87,6 +87,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -111,6 +112,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -85,6 +85,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -108,6 +109,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -84,6 +84,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -107,6 +108,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -84,6 +84,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -107,6 +108,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -111,6 +111,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -134,6 +135,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -109,6 +109,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -133,6 +134,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -109,6 +109,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -132,6 +133,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -109,6 +109,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": false,
@ -133,6 +134,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": false,

Просмотреть файл

@ -109,6 +109,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": false,
@ -132,6 +133,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": false,

Просмотреть файл

@ -106,6 +106,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -129,6 +130,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -109,6 +109,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -133,6 +134,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -54,6 +54,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -73,7 +74,7 @@ class C {
const B = 2;
//// [/src/third/tsconfig.json]
{"compilerOptions":{"composite":true,"declaration":true,"declarationMap":false,"stripInternal":true,"sourceMap":true,"outFile":"./thirdjs/output/third-output.js"},"references":[{"path":"../first","prepend":true}],"files":["/src/third/third_part1.ts"]}
{"compilerOptions":{"ignoreDeprecations":"5.0","composite":true,"declaration":true,"declarationMap":false,"stripInternal":true,"sourceMap":true,"outFile":"./thirdjs/output/third-output.js"},"references":[{"path":"../first","prepend":true}],"files":["/src/third/third_part1.ts"]}

Просмотреть файл

@ -109,6 +109,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": false,
@ -133,6 +134,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": false,

Просмотреть файл

@ -109,6 +109,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": false,
@ -132,6 +133,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": false,

Просмотреть файл

@ -109,6 +109,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -132,6 +133,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -94,6 +94,7 @@ declare class secondsecond_part1 { }
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -122,6 +123,7 @@ declare class thirdthird_part1 { }
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -89,6 +89,7 @@ declare class secondsecond_part1 { }
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -112,6 +113,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -84,6 +84,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -107,6 +108,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"incremental": true,
"removeComments": true,

Просмотреть файл

@ -84,6 +84,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -107,6 +108,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"removeComments": true,

Просмотреть файл

@ -84,6 +84,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -107,6 +108,7 @@ c.doSomething();
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"tsBuildInfoFile": "./thirdjs/output/third.tsbuildinfo",

Просмотреть файл

@ -84,6 +84,7 @@ class C {
//// [/src/second/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,
@ -105,6 +106,7 @@ class C {
//// [/src/third/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -19,7 +19,7 @@ interface Array<T> { length: number; [n: number]: T; }
function foo() { return 10; }
//// [/user/username/projects/sample1/logic/tsconfig.json]
{"compilerOptions":{"composite":true,"declaration":true,"outFile":"index.js"},"references":[{"path":"../core","prepend":true}]}
{"compilerOptions":{"ignoreDeprecations":"5.0","composite":true,"declaration":true,"outFile":"index.js"},"references":[{"path":"../core","prepend":true}]}
//// [/user/username/projects/sample1/logic/index.ts]
function bar() { return foo() + 1 };
@ -46,7 +46,7 @@ No cached semantic diagnostics in the builder::
No shapes updated in the builder::
Program root files: ["/user/username/projects/sample1/logic/index.ts"]
Program options: {"composite":true,"declaration":true,"outFile":"/user/username/projects/sample1/logic/index.js","watch":true,"configFilePath":"/user/username/projects/sample1/logic/tsconfig.json"}
Program options: {"ignoreDeprecations":"5.0","composite":true,"declaration":true,"outFile":"/user/username/projects/sample1/logic/index.js","watch":true,"configFilePath":"/user/username/projects/sample1/logic/tsconfig.json"}
Program structureReused: Not
Program files::
/a/lib/lib.d.ts
@ -410,7 +410,7 @@ Output::
Program root files: ["/user/username/projects/sample1/logic/index.ts"]
Program options: {"composite":true,"declaration":true,"outFile":"/user/username/projects/sample1/logic/index.js","watch":true,"configFilePath":"/user/username/projects/sample1/logic/tsconfig.json"}
Program options: {"ignoreDeprecations":"5.0","composite":true,"declaration":true,"outFile":"/user/username/projects/sample1/logic/index.js","watch":true,"configFilePath":"/user/username/projects/sample1/logic/tsconfig.json"}
Program structureReused: Not
Program files::
/a/lib/lib.d.ts

Просмотреть файл

@ -44,6 +44,7 @@ namespace container {
//// [/user/username/projects/container/exec/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"outFile": "../built/local/exec.js",
},
"files": [
@ -65,6 +66,7 @@ namespace container {
//// [/user/username/projects/container/compositeExec/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"outFile": "../built/local/compositeExec.js",
"composite": true,
"declarationMap": true,
@ -366,6 +368,7 @@ Info 6 [00:01:20.000] Config: /user/username/projects/container/compositeExec
"/user/username/projects/container/compositeExec/index.ts"
],
"options": {
"ignoreDeprecations": "5.0",
"outFile": "/user/username/projects/container/built/local/compositeExec.js",
"composite": true,
"declarationMap": true,
@ -640,6 +643,7 @@ Info 56 [00:02:33.000] Config: /user/username/projects/container/exec/tsconfig
"/user/username/projects/container/exec/index.ts"
],
"options": {
"ignoreDeprecations": "5.0",
"outFile": "/user/username/projects/container/built/local/exec.js",
"configFilePath": "/user/username/projects/container/exec/tsconfig.json"
},

Просмотреть файл

@ -44,6 +44,7 @@ namespace container {
//// [/user/username/projects/container/exec/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"outFile": "../built/local/exec.js",
},
"files": [
@ -65,6 +66,7 @@ namespace container {
//// [/user/username/projects/container/compositeExec/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"outFile": "../built/local/compositeExec.js",
"composite": true,
"declarationMap": true,
@ -363,6 +365,7 @@ Info 6 [00:01:16.000] Config: /user/username/projects/container/compositeExec
"/user/username/projects/container/compositeExec/index.ts"
],
"options": {
"ignoreDeprecations": "5.0",
"outFile": "/user/username/projects/container/built/local/compositeExec.js",
"composite": true,
"declarationMap": true,
@ -531,6 +534,7 @@ Info 43 [00:02:02.000] Config: /user/username/projects/container/exec/tsconfig
"/user/username/projects/container/exec/index.ts"
],
"options": {
"ignoreDeprecations": "5.0",
"outFile": "/user/username/projects/container/built/local/exec.js",
"configFilePath": "/user/username/projects/container/exec/tsconfig.json"
},

Просмотреть файл

@ -6,6 +6,7 @@ Info 3 [00:01:13.000] Config: /user/username/projects/container/compositeExec
"/user/username/projects/container/compositeExec/index.ts"
],
"options": {
"ignoreDeprecations": "5.0",
"outFile": "/user/username/projects/container/built/local/compositeExec.js",
"composite": true,
"declarationMap": true,
@ -62,6 +63,7 @@ Info 20 [00:01:30.000] Config: /user/username/projects/container/exec/tsconfig
"/user/username/projects/container/exec/index.ts"
],
"options": {
"ignoreDeprecations": "5.0",
"outFile": "/user/username/projects/container/built/local/exec.js",
"configFilePath": "/user/username/projects/container/exec/tsconfig.json"
},
@ -182,6 +184,7 @@ namespace container {
//// [/user/username/projects/container/exec/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"outFile": "../built/local/exec.js",
},
"files": [
@ -203,6 +206,7 @@ namespace container {
//// [/user/username/projects/container/compositeExec/tsconfig.json]
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"outFile": "../built/local/compositeExec.js",
"composite": true,
"declarationMap": true,

Просмотреть файл

@ -1,5 +1,6 @@
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"module": "amd",
"composite": true,

Просмотреть файл

@ -1,5 +1,6 @@
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"outFile": "../built/local/compositeExec.js",
"composite": true,
"declarationMap": true,

Просмотреть файл

@ -1,5 +1,6 @@
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"outFile": "../built/local/exec.js",
},
"files": [

Просмотреть файл

@ -1,5 +1,6 @@
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,

Просмотреть файл

@ -1,5 +1,6 @@
{
"compilerOptions": {
"ignoreDeprecations": "5.0",
"target": "es5",
"composite": true,
"removeComments": true,