Skip to content

Conversation

@Andarist
Copy link
Contributor

@Andarist Andarist commented Mar 6, 2025

fixes #43031

@github-project-automation github-project-automation bot moved this to Not started in PR Backlog Mar 6, 2025
@typescript-bot typescript-bot added the For Backlog Bug PRs that fix a backlog bug label Mar 6, 2025

function getUnionOfLeftAndRightTypes(leftType: Type, rightType: Type, adjustLeft: (type: Type) => Type, unionReduction?: UnionReduction) {
const rightTypes = rightType.flags & TypeFlags.Union ? (rightType as UnionType).types : [rightType];
const includes = addTypesToUnion(/*typeSet*/ undefined, 0 as TypeFlags, rightTypes) & (TypeFlags.BaseOfLiteral | TypeFlags.Nullable);
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's not like all 3 cases require both BaseOfLiteral and Nullable preservation but there is no harm in treating them the same way here

@jakebailey
Copy link
Member

@typescript-bot test it

@typescript-bot
Copy link
Collaborator

typescript-bot commented Jun 30, 2025

Starting jobs; this comment will be updated as builds start and complete.

Command Status Results
test top400 ✅ Started 👀 Results
user test this ✅ Started 👀 Results
run dt ✅ Started 👀 Results
perf test this faster ✅ Started 👀 Results

@typescript-bot
Copy link
Collaborator

Hey @jakebailey, the results of running the DT tests are ready.

There were interesting changes:

Branch only errors:

Package: oauth-shim
Error:

TypeError: Cannot read properties of undefined (reading 'id')
Occurred while linting /mnt/vss/_work/1/DefinitelyTyped/types/oauth-shim/oauth-shim-tests.ts:1
Rule: "@definitelytyped/expect"
    at getTypeId (/mnt/vss/_work/1/s/built/local/typescript.js:65803:17)
    at binarySearch (/mnt/vss/_work/1/s/built/local/typescript.js:2972:33)
    at containsType (/mnt/vss/_work/1/s/built/local/typescript.js:65806:12)
    at /mnt/vss/_work/1/s/built/local/typescript.js:84896:67
    at mapType (/mnt/vss/_work/1/s/built/local/typescript.js:74490:89)
    at getUnionOfLeftAndRightTypes (/mnt/vss/_work/1/s/built/local/typescript.js:84892:9)
    at checkBinaryLikeExpressionWorker (/mnt/vss/_work/1/s/built/local/typescript.js:84669:76)
    at BinaryExpressionStateMachine.onExit (/mnt/vss/_work/1/s/built/local/typescript.js:84330:18)
    at Array.exit (/mnt/vss/_work/1/s/built/local/typescript.js:32144:28)
    at trampoline (/mnt/vss/_work/1/s/built/local/typescript.js:32220:42)

You can check the log here.

@typescript-bot
Copy link
Collaborator

@jakebailey Here are the results of running the user tests with tsc comparing main and refs/pull/61362/merge:

Something interesting changed - please have a look.

Details

arktype

/mnt/ts_downloads/_/m/arktype/build.sh

  • [MISSING] error TS2345: Argument of type 'SyntaxKind.Identifier' is not assignable to parameter of type 'SyntaxKind'.
    • /mnt/ts_downloads/_/m/arktype/ark/repo/jsdocGen.ts(343,25)
  • [MISSING] error TS2339: Property 'getDefinitions' does not exist on type 'JSDoc | JSDocText | JSDocLink | JSDocLinkCode | JSDocLinkPlain | SourceFile | Node<Node> | ... 194 more ... | CommaListExpression'.
    • /mnt/ts_downloads/_/m/arktype/ark/repo/jsdocGen.ts(345,5)

debug

/mnt/ts_downloads/_/m/debug/tsconfig.json

  • [MISSING] error TS2630: Cannot assign to '_typeof' because it is a function.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/browser.js(3,100)
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/browser.js(3,165)
  • [MISSING] error TS2339: Property 'type' does not exist on type 'Process'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/browser.js(34,74)
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/index.js(7,47)
  • [MISSING] error TS2339: Property '__nwjs' does not exist on type 'Process'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/browser.js(34,112)
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/index.js(7,106)
  • [MISSING] error TS2551: Property 'WebkitAppearance' does not exist on type 'CSSStyleDeclaration'. Did you mean 'webkitAppearance'?
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/browser.js(45,138)
  • [MISSING] error TS2339: Property 'firebug' does not exist on type 'Console'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/browser.js(46,70)
  • [MISSING] error TS2339: Property 'exception' does not exist on type 'Console'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/browser.js(46,96)
  • [MISSING] error TS2367: This comparison appears to be unintentional because the types '"undefined"' and '"object"' have no overlap.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/browser.js(100,10)
  • [MISSING] error TS2345: Argument of type 'IArguments' is not assignable to parameter of type '[message?: any, ...optionalParams: any[]]'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/browser.js(100,148)
  • [MISSING] error TS2552: Cannot find name 'LocalStorage'. Did you mean 'localstorage'?
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/browser.js(152,13)
  • [MISSING] error TS18046: 'error' is of type 'unknown'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/browser.js(177,45)
  • [MISSING] error TS2339: Property 'colors' does not exist on type '{ (namespace: string): Function; debug: ...; default: ...; coerce: (val: Mixed) => Mixed; disable: () => void; enable: (namespaces: string) => void; enabled: (name: string) => boolean; humanize: any; ... 4 more ...; selectColor: (namespace: string) => string | number; }'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/common.js(51,24)
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/common.js(51,60)
  • [MISSING] error TS2339: Property 'diff' does not exist on type '{ (...args: any[]): void; namespace: string; enabled: boolean; useColors: any; color: string | number; destroy: () => boolean; extend: (namespace: any, delimiter: any) => Function; }'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/common.js(80,12)
  • [MISSING] error TS2339: Property 'prev' does not exist on type '{ (...args: any[]): void; namespace: string; enabled: boolean; useColors: any; color: string | number; destroy: () => boolean; extend: (namespace: any, delimiter: any) => Function; }'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/common.js(81,12)
  • [MISSING] error TS2339: Property 'curr' does not exist on type '{ (...args: any[]): void; namespace: string; enabled: boolean; useColors: any; color: string | number; destroy: () => boolean; extend: (namespace: any, delimiter: any) => Function; }'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/common.js(82,12)
  • [MISSING] error TS2551: Property 'formatArgs' does not exist on type '{ (namespace: string): Function; debug: ...; default: ...; coerce: (val: Mixed) => Mixed; disable: () => void; enable: (namespaces: string) => void; enabled: (name: string) => boolean; humanize: any; ... 4 more ...; selectColor: (namespace: string) => string | number; }'. Did you mean 'formatters'?
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/common.js(113,19)
  • [MISSING] error TS2339: Property 'log' does not exist on type '{ (...args: any[]): void; namespace: string; enabled: boolean; useColors: any; color: string | number; destroy: () => boolean; extend: (namespace: any, delimiter: any) => Function; }'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/common.js(114,24)
  • [MISSING] error TS2339: Property 'log' does not exist on type '{ (namespace: string): Function; debug: ...; default: ...; coerce: (val: Mixed) => Mixed; disable: () => void; enable: (namespaces: string) => void; enabled: (name: string) => boolean; humanize: any; ... 4 more ...; selectColor: (namespace: string) => string | number; }'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/common.js(114,43)
  • [MISSING] error TS2339: Property 'useColors' does not exist on type '{ (namespace: string): Function; debug: ...; default: ...; coerce: (val: Mixed) => Mixed; disable: () => void; enable: (namespaces: string) => void; enabled: (name: string) => boolean; humanize: any; ... 4 more ...; selectColor: (namespace: string) => string | number; }'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/common.js(120,35)
  • [MISSING] error TS2339: Property 'init' does not exist on type '{ (namespace: string): Function; debug: ...; default: ...; coerce: (val: Mixed) => Mixed; disable: () => void; enable: (namespaces: string) => void; enabled: (name: string) => boolean; humanize: any; ... 4 more ...; selectColor: (namespace: string) => string | number; }'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/common.js(127,28)
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/common.js(128,19)
  • [MISSING] error TS2339: Property 'save' does not exist on type '{ (namespace: string): Function; debug: ...; default: ...; coerce: (val: Mixed) => Mixed; disable: () => void; enable: (namespaces: string) => void; enabled: (name: string) => boolean; humanize: any; ... 4 more ...; selectColor: (namespace: string) => string | number; }'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/common.js(159,17)
  • [MISSING] error TS2304: Cannot find name 'Mixed'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/common.js(230,13)
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/common.js(231,14)
  • [MISSING] error TS2339: Property 'load' does not exist on type '{ (namespace: string): Function; debug: ...; default: ...; coerce: (val: Mixed) => Mixed; disable: () => void; enable: (namespaces: string) => void; enabled: (name: string) => boolean; humanize: any; ... 4 more ...; selectColor: (namespace: string) => string | number; }'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/common.js(244,34)
  • [MISSING] error TS2339: Property 'browser' does not exist on type 'Process'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/index.js(7,78)
  • [MISSING] error TS2307: Cannot find module 'supports-color' or its corresponding type declarations.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/node.js(29,31)
  • [MISSING] error TS2345: Argument of type 'string | undefined' is not assignable to parameter of type 'string'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/node.js(53,39)
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/node.js(55,48)
  • [MISSING] error TS2322: Type 'boolean' is not assignable to type 'string'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/node.js(54,5)
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/node.js(56,5)
  • [MISSING] error TS2322: Type 'null' is not assignable to type 'string | undefined'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/node.js(58,5)
  • [MISSING] error TS2322: Type 'number' is not assignable to type 'string'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/node.js(60,5)
  • [MISSING] error TS2345: Argument of type 'IArguments' is not assignable to parameter of type '[format?: any, ...param: any[]]'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/node.js(108,55)
  • [MISSING] error TS2322: Type 'string | undefined' is not assignable to type 'string'.
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/node.js(136,3)

puppeteer

packages/browsers/test/src/tsconfig.json

webpack

tsconfig.types.test.json

tsconfig.types.json

tsconfig.json

@typescript-bot
Copy link
Collaborator

@jakebailey
The results of the perf run you requested are in!

Here they are:

tsc

Comparison Report - baseline..pr
Metric baseline pr Delta Best Worst p-value
Compiler-Unions - node (v18.15.0, x64)
Errors 34 34 ~ ~ ~ p=1.000 n=6
Symbols 62,370 62,370 ~ ~ ~ p=1.000 n=6
Types 50,386 50,376 -10 (- 0.02%) ~ ~ p=0.001 n=6
Memory used 195,973k (± 0.79%) 195,995k (± 0.73%) ~ 193,079k 196,662k p=0.575 n=6
Parse Time 1.60s (± 1.28%) 1.60s (± 1.09%) ~ 1.58s 1.63s p=0.684 n=6
Bind Time 0.88s (± 0.92%) 0.89s (± 0.92%) ~ 0.88s 0.90s p=0.666 n=6
Check Time 11.81s (± 0.63%) 11.95s (± 0.65%) +0.14s (+ 1.16%) 11.84s 12.06s p=0.012 n=6
Emit Time 3.35s (± 3.76%) 3.31s (± 0.59%) ~ 3.30s 3.35s p=0.871 n=6
Total Time 17.65s (± 0.62%) 17.75s (± 0.51%) ~ 17.65s 17.87s p=0.172 n=6
angular-1 - node (v18.15.0, x64)
Errors 56 56 ~ ~ ~ p=1.000 n=6
Symbols 948,753 948,753 ~ ~ ~ p=1.000 n=6
Types 410,846 410,842 -4 (- 0.00%) ~ ~ p=0.001 n=6
Memory used 1,225,245k (± 0.01%) 1,225,264k (± 0.01%) ~ 1,225,159k 1,225,361k p=0.471 n=6
Parse Time 7.90s (± 0.79%) 7.87s (± 0.66%) ~ 7.82s 7.96s p=0.630 n=6
Bind Time 2.29s (± 0.64%) 2.28s (± 0.45%) ~ 2.26s 2.29s p=0.101 n=6
Check Time 38.12s (± 0.22%) 38.07s (± 0.39%) ~ 37.88s 38.32s p=0.521 n=6
Emit Time 17.86s (± 0.72%) 17.84s (± 0.62%) ~ 17.73s 18.02s p=1.000 n=6
Total Time 66.17s (± 0.25%) 66.05s (± 0.37%) ~ 65.81s 66.42s p=0.471 n=6
mui-docs - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6+0
Symbols 2,509,183 0 ~ ~ ~ p=1.000 n=6+0
Types 892,716 0 ~ ~ ~ p=1.000 n=6+0
Memory used 2,804,489k (± 0.00%) 0k ~ ~ ~ p=1.000 n=6+0
Parse Time 10.49s (± 0.35%) 0s ~ ~ ~ p=1.000 n=6+0
Bind Time 2.72s (± 0.82%) 0s ~ ~ ~ p=1.000 n=6+0
Check Time 100.56s (± 1.05%) 0s ~ ~ ~ p=1.000 n=6+0
Emit Time 0.37s (± 1.41%) 0s ~ ~ ~ p=1.000 n=6+0
Total Time 114.14s (± 0.90%) 0s ~ ~ ~ p=1.000 n=6+0
self-build-src - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 1,227,081 1,227,107 +26 (+ 0.00%) ~ ~ p=0.001 n=6
Types 267,474 267,548 +74 (+ 0.03%) ~ ~ p=0.001 n=6
Memory used 2,879,022k (±11.88%) 2,975,592k (±10.05%) ~ 2,364,627k 3,099,003k p=1.000 n=6
Parse Time 6.64s (± 1.33%) 6.73s (± 0.68%) ~ 6.65s 6.79s p=0.093 n=6
Bind Time 2.17s (± 2.53%) 2.18s (± 1.17%) ~ 2.15s 2.21s p=0.467 n=6
Check Time 42.82s (± 0.83%) 43.02s (± 0.31%) ~ 42.79s 43.16s p=0.128 n=6
Emit Time 3.47s (± 1.76%) 3.49s (± 2.93%) ~ 3.36s 3.66s p=0.688 n=6
Total Time 55.09s (± 0.68%) 55.41s (± 0.23%) +0.32s (+ 0.58%) 55.28s 55.64s p=0.045 n=6
self-build-src-public-api - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 1,227,081 1,227,107 +26 (+ 0.00%) ~ ~ p=0.001 n=6
Types 267,474 267,548 +74 (+ 0.03%) ~ ~ p=0.001 n=6
Memory used 3,040,090k (± 9.77%) 2,944,989k (±11.52%) ~ 2,432,224k 3,162,158k p=0.689 n=6
Parse Time 6.90s (± 0.91%) 6.84s (± 0.62%) ~ 6.78s 6.90s p=0.128 n=6
Bind Time 2.16s (± 2.43%) 2.20s (± 1.67%) ~ 2.14s 2.25s p=0.147 n=6
Check Time 42.93s (± 0.59%) 42.96s (± 0.88%) ~ 42.19s 43.15s p=0.298 n=6
Emit Time 3.56s (± 2.64%) 3.55s (± 2.02%) ~ 3.45s 3.66s p=0.872 n=6
Total Time 55.56s (± 0.48%) 55.54s (± 0.74%) ~ 54.71s 55.77s p=0.423 n=6
self-compiler - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 262,548 262,563 +15 (+ 0.01%) ~ ~ p=0.001 n=6
Types 107,156 107,234 +78 (+ 0.07%) ~ ~ p=0.001 n=6
Memory used 441,716k (± 0.01%) 441,862k (± 0.01%) +146k (+ 0.03%) 441,824k 441,896k p=0.005 n=6
Parse Time 2.89s (± 0.36%) 2.89s (± 0.28%) ~ 2.88s 2.90s p=0.932 n=6
Bind Time 1.11s 1.11s (± 0.46%) ~ 1.11s 1.12s p=0.174 n=6
Check Time 15.76s (± 0.52%) 15.87s (± 0.38%) +0.11s (+ 0.68%) 15.80s 15.97s p=0.045 n=6
Emit Time 1.29s (± 1.65%) 1.31s (± 1.40%) ~ 1.28s 1.33s p=0.120 n=6
Total Time 21.05s (± 0.37%) 21.18s (± 0.31%) +0.13s (+ 0.61%) 21.11s 21.29s p=0.024 n=6
ts-pre-modules - node (v18.15.0, x64)
Errors 71 71 ~ ~ ~ p=1.000 n=6
Symbols 225,367 225,367 ~ ~ ~ p=1.000 n=6
Types 94,290 94,367 +77 (+ 0.08%) ~ ~ p=0.001 n=6
Memory used 371,277k (± 0.05%) 371,295k (± 0.06%) ~ 371,095k 371,567k p=0.936 n=6
Parse Time 2.91s (± 0.59%) 2.89s (± 1.60%) ~ 2.81s 2.94s p=0.466 n=6
Bind Time 1.61s (± 0.82%) 1.61s (± 1.22%) ~ 1.59s 1.63s p=0.566 n=6
Check Time 16.38s (± 0.32%) 16.45s (± 0.59%) ~ 16.30s 16.55s p=0.126 n=6
Emit Time 0.00s 0.00s ~ ~ ~ p=1.000 n=6
Total Time 20.91s (± 0.24%) 20.95s (± 0.39%) ~ 20.82s 21.07s p=0.298 n=6
vscode - node (v18.15.0, x64)
Errors 33 0 ~ ~ ~ p=1.000 n=6+0
Symbols 3,499,298 0 ~ ~ ~ p=1.000 n=6+0
Types 1,177,218 0 ~ ~ ~ p=1.000 n=6+0
Memory used 3,549,697k (± 0.01%) 0k ~ ~ ~ p=1.000 n=6+0
Parse Time 18.50s (± 0.68%) 0s ~ ~ ~ p=1.000 n=6+0
Bind Time 6.38s (±13.53%) 0s ~ ~ ~ p=1.000 n=6+0
Check Time 117.25s (± 2.57%) 0s ~ ~ ~ p=1.000 n=6+0
Emit Time 39.71s (± 6.96%) 0s ~ ~ ~ p=1.000 n=6+0
Total Time 181.84s (± 2.35%) 0s ~ ~ ~ p=1.000 n=6+0
webpack - node (v18.15.0, x64)
Errors 2 0 ~ ~ ~ p=1.000 n=6+0
Symbols 318,019 0 ~ ~ ~ p=1.000 n=6+0
Types 137,705 0 ~ ~ ~ p=1.000 n=6+0
Memory used 472,222k (± 0.02%) 0k ~ ~ ~ p=1.000 n=6+0
Parse Time 4.35s (± 0.86%) 0s ~ ~ ~ p=1.000 n=6+0
Bind Time 1.77s (± 0.99%) 0s ~ ~ ~ p=1.000 n=6+0
Check Time 20.69s (± 0.40%) 0s ~ ~ ~ p=1.000 n=6+0
Emit Time 0.00s 0s ~ ~ ~ p=1.000 n=6+0
Total Time 26.82s (± 0.40%) 0s ~ ~ ~ p=1.000 n=6+0
xstate-main - node (v18.15.0, x64)
Errors 30 30 ~ ~ ~ p=1.000 n=6
Symbols 665,978 665,978 ~ ~ ~ p=1.000 n=6
Types 199,345 199,344 -1 (- 0.00%) ~ ~ p=0.001 n=6
Memory used 570,390k (± 0.01%) 570,355k (± 0.03%) ~ 569,977k 570,477k p=0.378 n=6
Parse Time 4.27s (± 0.32%) 4.27s (± 0.59%) ~ 4.24s 4.30s p=0.625 n=6
Bind Time 1.34s (± 0.73%) 1.33s (± 0.63%) -0.02s (- 1.24%) 1.32s 1.34s p=0.018 n=6
Check Time 19.91s (± 0.31%) 19.91s (± 0.47%) ~ 19.78s 20.06s p=0.936 n=6
Emit Time 0.00s 0.00s ~ ~ ~ p=1.000 n=6
Total Time 25.51s (± 0.25%) 25.51s (± 0.41%) ~ 25.37s 25.68s p=1.000 n=6
System info unknown
Hosts
  • node (v18.15.0, x64)
Scenarios
  • Compiler-Unions - node (v18.15.0, x64)
  • angular-1 - node (v18.15.0, x64)
  • mui-docs - node (v18.15.0, x64)
  • self-build-src - node (v18.15.0, x64)
  • self-build-src-public-api - node (v18.15.0, x64)
  • self-compiler - node (v18.15.0, x64)
  • ts-pre-modules - node (v18.15.0, x64)
  • vscode - node (v18.15.0, x64)
  • webpack - node (v18.15.0, x64)
  • xstate-main - node (v18.15.0, x64)
Benchmark Name Iterations
Current pr 6
Baseline baseline 6

Developer Information:

Download Benchmarks

@typescript-bot
Copy link
Collaborator

@jakebailey Here are the results of running the top 400 repos with tsc comparing main and refs/pull/61362/merge:

Something interesting changed - please have a look.

Details

ComposioHQ/composio

17 of 35 projects failed to build with the old tsc and were ignored

ts/examples/cloudflare-wrangler/tsconfig.json

ts/examples/cloudflare-wrangler/test/tsconfig.json

reduxjs/redux-devtools

25 of 58 projects failed to build with the old tsc and were ignored

extension/tsconfig.json

vuetifyjs/vuetify

3 of 7 projects failed to build with the old tsc and were ignored

packages/docs/tsconfig.json

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

For Backlog Bug PRs that fix a backlog bug

Projects

Status: Not started

Development

Successfully merging this pull request may close these issues.

Type alias printing regressed in TypeScript 4.2.2

3 participants