Skip to content

Commit 4df884c

Browse files
authored
Ensure harness doesn't force or eagerly computes target, stop using raw target elsewhere (microsoft#57526)
1 parent 455f06e commit 4df884c

167 files changed

Lines changed: 10547 additions & 2906 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/compiler/emitter.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,7 @@ import {
144144
getEmitFlags,
145145
getEmitHelpers,
146146
getEmitModuleKind,
147+
getEmitScriptTarget,
147148
getExternalHelpersModuleName,
148149
getExternalModuleName,
149150
getIdentifierTypeArguments,
@@ -856,8 +857,8 @@ export function emitFiles(resolver: EmitResolver, host: EmitHost, targetSourceFi
856857
removeComments: compilerOptions.removeComments,
857858
newLine: compilerOptions.newLine,
858859
noEmitHelpers: compilerOptions.noEmitHelpers,
859-
module: compilerOptions.module,
860-
target: compilerOptions.target,
860+
module: getEmitModuleKind(compilerOptions),
861+
target: getEmitScriptTarget(compilerOptions),
861862
sourceMap: compilerOptions.sourceMap,
862863
inlineSourceMap: compilerOptions.inlineSourceMap,
863864
inlineSources: compilerOptions.inlineSources,

src/harness/compilerImpl.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -257,7 +257,6 @@ export function compileFiles(host: fakes.CompilerHost, rootFiles: string[] | und
257257
}
258258

259259
// establish defaults (aligns with old harness)
260-
if (compilerOptions.target === undefined && compilerOptions.module !== ts.ModuleKind.Node16 && compilerOptions.module !== ts.ModuleKind.NodeNext) compilerOptions.target = ts.ScriptTarget.ES3;
261260
if (compilerOptions.newLine === undefined) compilerOptions.newLine = ts.NewLineKind.CarriageReturnLineFeed;
262261
if (compilerOptions.skipDefaultLibCheck === undefined) compilerOptions.skipDefaultLibCheck = true;
263262
if (compilerOptions.noErrorTruncation === undefined) compilerOptions.noErrorTruncation = true;

src/harness/harnessIO.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -380,7 +380,6 @@ export namespace Compiler {
380380
symlinks?: vfs.FileSet,
381381
): compiler.CompilationResult {
382382
const options: ts.CompilerOptions & HarnessOptions = compilerOptions ? ts.cloneCompilerOptions(compilerOptions) : { noResolve: false };
383-
options.target = ts.getEmitScriptTarget(options);
384383
options.newLine = options.newLine || ts.NewLineKind.CarriageReturnLineFeed;
385384
options.noErrorTruncation = true;
386385
options.skipDefaultLibCheck = typeof options.skipDefaultLibCheck === "undefined" ? true : options.skipDefaultLibCheck;

src/services/inlayHints.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import {
2222
GetAccessorDeclaration,
2323
getEffectiveReturnTypeNode,
2424
getEffectiveTypeAnnotationNode,
25+
getEmitScriptTarget,
2526
getLanguageVariant,
2627
getLeadingCommentRanges,
2728
getNameOfDeclaration,
@@ -350,7 +351,7 @@ export function provideInlayHints(context: InlayHintsContext): InlayHint[] {
350351
}
351352

352353
function leadingCommentsContainsParameterName(node: Node, name: string) {
353-
if (!isIdentifierText(name, compilerOptions.target, getLanguageVariant(file.scriptKind))) {
354+
if (!isIdentifierText(name, getEmitScriptTarget(compilerOptions), getLanguageVariant(file.scriptKind))) {
354355
return false;
355356
}
356357

tests/baselines/reference/bundlerDirectoryModule(moduleresolution=bundler).trace.json

Lines changed: 859 additions & 1 deletion
Large diffs are not rendered by default.

tests/baselines/reference/bundlerDirectoryModule(moduleresolution=nodenext).trace.json

Lines changed: 1007 additions & 17 deletions
Large diffs are not rendered by default.

tests/baselines/reference/declarationEmitReusesLambdaParameterNodes.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export function CustomSelect2<Option,>(x: Props<Option> & {}) {}
1515
"use strict";
1616
Object.defineProperty(exports, "__esModule", { value: true });
1717
exports.CustomSelect2 = exports.CustomSelect1 = void 0;
18-
var CustomSelect1 = function (x) { };
18+
const CustomSelect1 = (x) => { };
1919
exports.CustomSelect1 = CustomSelect1;
2020
function CustomSelect2(x) { }
2121
exports.CustomSelect2 = CustomSelect2;

tests/baselines/reference/declarationEmitUsingTypeAlias1.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,11 @@ export const bar = (thing: SomeType) => {
3131
"use strict";
3232
Object.defineProperty(exports, "__esModule", { value: true });
3333
exports.bar = exports.foo = void 0;
34-
var foo = function (thing) {
34+
const foo = (thing) => {
3535
return thing;
3636
};
3737
exports.foo = foo;
38-
var bar = function (thing) {
38+
const bar = (thing) => {
3939
return thing.arg;
4040
};
4141
exports.bar = bar;

tests/baselines/reference/jsxClassAttributeResolution.js

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,7 @@ import './';
2727
"use strict";
2828
Object.defineProperty(exports, "__esModule", { value: true });
2929
exports.a = void 0;
30-
var jsx_runtime_1 = require("react/jsx-runtime");
31-
var App = /** @class */ (function () {
32-
function App() {
33-
}
34-
return App;
35-
}());
30+
const jsx_runtime_1 = require("react/jsx-runtime");
31+
class App {
32+
}
3633
exports.a = (0, jsx_runtime_1.jsx)(App, {});

tests/baselines/reference/moduleResolutionWithModule(module=node16,moduleresolution=node16).js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,5 +38,5 @@ var __importStar = (this && this.__importStar) || function (mod) {
3838
return result;
3939
};
4040
Object.defineProperty(exports, "__esModule", { value: true });
41-
var p = __importStar(require("pkg"));
41+
const p = __importStar(require("pkg"));
4242
p.thing();

0 commit comments

Comments
 (0)