Skip to content

Update DOM types - #62496

Merged
Jake Bailey (jakebailey) merged 6 commits into
microsoft:mainfrom
jakebailey:dom-update-2025-09-26
Oct 2, 2025
Merged

Update DOM types#62496
Jake Bailey (jakebailey) merged 6 commits into
microsoft:mainfrom
jakebailey:dom-update-2025-09-26

Conversation

@jakebailey

@jakebaileyJake Bailey (jakebailey) commented Sep 26, 2025

Copy link
Copy Markdown
Member

Want to do this before#62111 and microsoft/TypeScript-DOM-lib-generator#2168.

Now is probably not the best time, quite yet, as IIRC the dom lib is getting some more changes.

Concerning perf impact, though... Kagami Sascha Rosylight (@saschanaz)

@jakebailey

Copy link
Copy Markdown
MemberAuthor

TypeScript Bot (@typescript-bot) test it

@typescript-bot

TypeScript Bot (typescript-bot) commented Sep 26, 2025

Copy link
Copy Markdown
Contributor

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

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

@typescript-bot

Copy link
Copy Markdown
Contributor

Hey Jake Bailey (@jakebailey), the results of running the DT tests are ready.

There were interesting changes:

Branch only errors:

Package: deno
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/deno/index.d.ts
6881:15 error TypeScript@local compile error: Duplicate identifier 'GPUPipelineError' @definitelytyped/expect
6893:6 error TypeScript@local compile error: Duplicate identifier 'GPUPipelineErrorReason' @definitelytyped/expect
7703:15 error TypeScript@local compile error: Duplicate identifier 'GPUError' @definitelytyped/expect
✖ 3 problems (3 errors, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: layui-layer
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/layui-layer/layui-layer-tests.ts
235:5 error TypeScript@local compile error: Object literal may only specify known properties, and 'width' does not exist in type 'Partial<CSSStyleDeclaration>' @definitelytyped/expect
✖ 1 problem (1 error, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: react-sidebar
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/react-sidebar/react-sidebar-tests.tsx
12:16 error TypeScript@local compile error: Object literal may only specify known properties, and 'width' does not exist in type 'Partial<CSSStyleDeclaration>' @definitelytyped/expect
✖ 1 problem (1 error, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: cytoscape-cxtmenu
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/cytoscape-cxtmenu/cytoscape-cxtmenu-tests.ts
25:29 error TypeScript@local compile error: Object literal may only specify known properties, and 'borderRadius' does not exist in type 'Partial<CSSStyleDeclaration>' @definitelytyped/expect
33:17 error TypeScript@local compile error: Object literal may only specify known properties, and 'borderRadius' does not exist in type 'Partial<CSSStyleDeclaration>' @definitelytyped/expect
✖ 2 problems (2 errors, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: alpinejs
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/alpinejs/alpinejs-tests.ts
311:23 error TypeScript@local compile error: Object literal may only specify known properties, and 'overflow' does not exist in type 'Partial<CSSStyleDeclaration>' @definitelytyped/expect
312:22 error TypeScript@local compile error: Object literal may only specify known properties, and 'height' does not exist in type 'Partial<CSSStyleDeclaration>' @definitelytyped/expect
313:20 error TypeScript@local compile error: Object literal may only specify known properties, and 'height' does not exist in type 'Partial<CSSStyleDeclaration>' @definitelytyped/expect
328:28 error TypeScript@local compile error: Object literal may only specify known properties, and 'visibility' does not exist in type 'Partial<CSSStyleDeclaration>' @definitelytyped/expect
✖ 4 problems (4 errors, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: webrtc
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/webrtc/MediaStream.d.ts
52:5 error TypeScript@local compile error: Subsequent property declarations must have the same type. Property 'echoCancellation' must be of type 'ConstrainBooleanOrDOMString | undefined', but here has type 'ConstrainBoolean | undefined' @definitelytyped/expect
✖ 1 problem (1 error, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: node
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/node/test/url.ts
221:11 error TypeScript@local tsconfig.dom.json, local tsconfig.webworker.json compile error: Type 'URLPattern' is not assignable to type 'import("url").URLPattern'.
The types returned by 'exec(...)' are incompatible between these types.
Type 'URLPatternResult | null' is not assignable to type 'import("url").URLPatternResult | null'.
Type 'URLPatternResult' is not assignable to type 'import("url").URLPatternResult'.
Types of property 'inputs' are incompatible.
Type 'URLPatternInput[] | undefined' is not assignable to type '(string | URLPatternInit)[]'.
Type 'undefined' is not assignable to type '(string | URLPatternInit)[]' @definitelytyped/expect
/mnt/vss/_work/1/DefinitelyTyped/types/node/url.d.ts
1023:13 error TypeScript@local tsconfig.dom.json, local tsconfig.webworker.json compile error: Subsequent variable declarations must have the same type. Variable 'URLPattern' must be of type '{ new (input: URLPatternInput, baseURL: string | URL, options?: URLPatternOptions | undefined): URLPattern; new (input?: URLPatternInput | undefined, options?: URLPatternOptions | undefined): URLPattern; prototype: URLPattern; }', but here has type 'typeof URLPattern' @definitelytyped/expect
✖ 2 problems (2 errors, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: amap-js-api
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/amap-js-api/amap-js-api-tests.ts
309:58 error TypeScript@local compile error: Object literal may only specify known properties, and 'textAlign' does not exist in type 'Partial<CSSStyleDeclaration>' @definitelytyped/expect
✖ 1 problem (1 error, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: dhtmlxscheduler
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/dhtmlxscheduler/dhtmlxscheduler-tests.ts
2:29 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
3:28 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
6:11 error TypeScript@local compile error: Property 'keys' does not exist on type 'Scheduler' @definitelytyped/expect
9:11 error TypeScript@local compile error: Property 'config' does not exist on type 'Scheduler' @definitelytyped/expect
10:11 error TypeScript@local compile error: Property 'config' does not exist on type 'Scheduler' @definitelytyped/expect
11:11 error TypeScript@local compile error: Property 'xy' does not exist on type 'Scheduler' @definitelytyped/expect
14:11 error TypeScript@local compile error: Property 'templates' does not exist on type 'Scheduler' @definitelytyped/expect
23:11 error TypeScript@local compile error: Property 'locale' does not exist on type 'Scheduler' @definitelytyped/expect
26:11 error TypeScript@local compile error: Property 'init' does not exist on type 'Scheduler' @definitelytyped/expect
27:11 error TypeScript@local compile error: Property 'load' does not exist on type 'Scheduler' @definitelytyped/expect
30:11 error TypeScript@local compile error: Property 'attachEvent' does not exist on type 'Scheduler' @definitelytyped/expect
31:32 error TypeScript@local compile error: Property 'getActionData' does not exist on type 'Scheduler' @definitelytyped/expect
34:11 error TypeScript@local compile error: Property 'filter_week' does not exist on type 'Scheduler' @definitelytyped/expect
37:28 error TypeScript@local compile error: Property 'getSchedulerInstance' does not exist on type '{ new (): Scheduler; prototype: Scheduler; }' @definitelytyped/expect
41:11 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
42:22 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
/mnt/vss/_work/1/DefinitelyTyped/types/dhtmlxscheduler/index.d.ts
1869:13 error TypeScript@local compile error: Subsequent variable declarations must have the same type. Variable 'scheduler' must be of type 'Scheduler', but here has type 'SchedulerStatic' @definitelytyped/expect
1870:13 error TypeScript@local compile error: Subsequent variable declarations must have the same type. Variable 'Scheduler' must be of type '{ new (): Scheduler; prototype: Scheduler; }', but here has type 'SchedulerEnterprise' @definitelytyped/expect
✖ 18 problems (18 errors, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: dom-speech-recognition
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/dom-speech-recognition/index.d.ts
79:6 error TypeScript@local compile error: Duplicate identifier 'SpeechRecognitionErrorCode' @definitelytyped/expect
✖ 1 problem (1 error, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: stylenames
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/stylenames/stylenames-tests.ts
16:5 error TypeScript@local compile error: Object literal may only specify known properties, and 'height' does not exist in type 'Partial<Record<keyof CSSStyleDeclaration, StyleValue>>' @definitelytyped/expect
23:5 error TypeScript@local compile error: Object literal may only specify known properties, and 'height' does not exist in type 'Partial<Record<keyof CSSStyleDeclaration, StyleValue>>' @definitelytyped/expect
✖ 2 problems (2 errors, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250926/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

You can check the log here.

@typescript-bot

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey) Here are the results of running the user tests with tsc comparing main and refs/pull/62496/merge:

There were infrastructure failures potentially unrelated to your change:

  • 1 instance of "Git clone failed"

Otherwise...

Something interesting changed - please have a look.

Details

debug

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

  • [NEW] error TS2551: Property 'WebkitAppearance' does not exist on type 'CSSStyleProperties'. Did you mean 'webkitAppearance'?
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/browser.js(45,138)
  • [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)

xterm.js

src/tsconfig-library-base.json

@typescript-bot

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey)
The results of the perf run you requested are in!

Here they are:

tsc

Comparison Report - baseline..pr
MetricbaselineprDeltaBestWorstp-value
Compiler-Unions - node (v18.15.0, x64)
Errors3434~~~p=1.000 n=6
Symbols62,37062,370~~~p=1.000 n=6
Types50,38650,386~~~p=1.000 n=6
Memory used192,800k (± 0.01%)194,006k (± 0.97%)~192,785k196,442kp=0.689 n=6
Parse Time1.30s (± 0.40%)1.30s (± 0.84%)~1.28s1.31sp=0.324 n=6
Bind Time0.72s (± 0.75%)0.72s (± 0.71%)~0.72s0.73sp=0.640 n=6
Check Time9.76s (± 0.39%)9.74s (± 0.18%)~9.71s9.76sp=0.142 n=6
Emit Time2.74s (± 0.72%)2.74s (± 0.78%)~2.72s2.77sp=0.684 n=6
Total Time14.52s (± 0.41%)14.50s (± 0.14%)~14.47s14.52sp=0.571 n=6
angular-1 - node (v18.15.0, x64)
Errors11~~~p=1.000 n=6
Symbols948,914955,015+6,101 (+ 0.64%)~~p=0.001 n=6
Types410,884415,585+4,701 (+ 1.14%)~~p=0.001 n=6
Memory used1,245,560k (± 0.00%)1,254,074k (± 0.00%)+8,514k (+ 0.68%)1,254,019k1,254,188kp=0.005 n=6
Parse Time6.53s (± 0.82%)6.50s (± 0.68%)~6.45s6.58sp=0.335 n=6
Bind Time1.87s (± 0.22%)1.87s (± 0.28%)~1.87s1.88sp=0.595 n=6
Check Time32.21s (± 0.18%)32.23s (± 0.46%)~32.04s32.39sp=0.936 n=6
Emit Time14.80s (± 0.19%)14.86s (± 0.22%)+0.05s (+ 0.36%)14.81s14.91sp=0.020 n=6
Total Time55.43s (± 0.12%)55.46s (± 0.28%)~55.27s55.61sp=0.810 n=6
mui-docs - node (v18.15.0, x64)
Errors014🔻+14 (+ ∞%)~~p=0.001 n=6
Symbols2,544,6182,544,629+11 (+ 0.00%)~~p=0.001 n=6
Types903,213904,144+931 (+ 0.10%)~~p=0.001 n=6
Memory used2,830,034k (± 0.00%)2,830,999k (± 0.00%)+965k (+ 0.03%)2,830,818k2,831,176kp=0.005 n=6
Parse Time8.73s (± 0.17%)8.71s (± 0.52%)~8.66s8.77sp=0.748 n=6
Bind Time2.19s (± 0.47%)2.19s (± 0.47%)~2.18s2.21sp=1.000 n=6
Check Time86.58s (± 1.67%)86.44s (± 0.79%)~85.55s87.64sp=0.689 n=6
Emit Time0.30s (± 1.79%)0.59s (±119.33%)~0.30s2.04sp=0.859 n=6
Total Time97.81s (± 1.46%)97.94s (± 0.96%)~96.81s99.34sp=0.575 n=6
self-build-src - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols1,237,0641,237,064~~~p=1.000 n=6
Types259,743259,743~~~p=1.000 n=6
Memory used2,546,224k (±11.93%)2,485,660k (±11.93%)~2,364,051k3,091,491kp=0.689 n=6
Parse Time5.16s (± 0.67%)5.21s (± 1.25%)~5.15s5.33sp=0.128 n=6
Bind Time1.76s (± 0.59%)1.77s (± 0.43%)~1.76s1.78sp=0.611 n=6
Check Time35.13s (± 0.66%)35.14s (± 0.55%)~34.92s35.46sp=0.936 n=6
Emit Time2.98s (± 1.09%)3.04s (± 0.97%)+0.05s (+ 1.73%)2.99s3.08sp=0.030 n=6
Total Time45.04s (± 0.45%)45.16s (± 0.57%)~44.91s45.61sp=0.575 n=6
self-build-src-public-api - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols1,237,0641,237,064~~~p=1.000 n=6
Types259,743259,743~~~p=1.000 n=6
Memory used3,158,218k (± 0.01%)3,158,459k (± 0.02%)~3,157,110k3,159,420kp=0.298 n=6
Parse Time6.89s (± 0.49%)6.86s (± 0.65%)~6.80s6.93sp=0.228 n=6
Bind Time2.16s (± 1.13%)2.15s (± 1.82%)~2.11s2.21sp=0.747 n=6
Check Time42.62s (± 0.40%)42.60s (± 0.35%)~42.43s42.84sp=1.000 n=6
Emit Time3.52s (± 2.23%)3.48s (± 2.26%)~3.37s3.56sp=0.422 n=6
Total Time55.19s (± 0.37%)55.11s (± 0.43%)~54.82s55.42sp=0.471 n=6
self-compiler - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols262,412262,412~~~p=1.000 n=6
Types103,924103,924~~~p=1.000 n=6
Memory used440,449k (± 0.01%)440,457k (± 0.01%)~440,414k440,490kp=0.810 n=6
Parse Time3.52s (± 0.83%)3.52s (± 0.76%)~3.50s3.57sp=0.808 n=6
Bind Time1.33s (± 0.67%)1.33s (± 0.79%)~1.31s1.34sp=0.452 n=6
Check Time18.96s (± 0.36%)18.97s (± 0.20%)~18.93s19.03sp=0.809 n=6
Emit Time1.52s (± 1.41%)1.53s (± 0.76%)~1.51s1.54sp=0.315 n=6
Total Time25.33s (± 0.25%)25.35s (± 0.29%)~25.29s25.49sp=0.936 n=6
ts-pre-modules - node (v18.15.0, x64)
Errors7272~~~p=1.000 n=6
Symbols225,367225,367~~~p=1.000 n=6
Types94,29094,290~~~p=1.000 n=6
Memory used370,060k (± 0.04%)369,974k (± 0.02%)~369,850k370,054kp=0.521 n=6
Parse Time2.82s (± 1.01%)2.83s (± 0.57%)~2.81s2.85sp=0.413 n=6
Bind Time1.60s (± 1.18%)1.60s (± 1.12%)~1.57s1.62sp=1.000 n=6
Check Time16.47s (± 0.37%)16.40s (± 0.34%)~16.33s16.50sp=0.109 n=6
Emit Time0.00s0.00s~~~p=1.000 n=6
Total Time20.89s (± 0.25%)20.84s (± 0.27%)~20.73s20.90sp=0.106 n=6
vscode - node (v18.15.0, x64)
Errors19🔻+8 (+800.00%)~~p=0.001 n=6
Symbols3,885,2383,887,534+2,296 (+ 0.06%)~~p=0.001 n=6
Types1,222,9461,224,260+1,314 (+ 0.11%)~~p=0.001 n=6
Memory used3,701,465k (± 0.00%)3,704,046k (± 0.01%)+2,581k (+ 0.07%)3,703,687k3,704,261kp=0.005 n=6
Parse Time15.19s (± 0.57%)15.22s (± 0.42%)~15.13s15.32sp=0.574 n=6
Bind Time4.96s (± 0.24%)5.27s (±14.26%)~4.95s6.81sp=0.222 n=6
Check Time101.82s (± 1.84%)100.56s (± 2.27%)~97.47s104.56sp=0.093 n=6
Emit Time34.12s (±13.92%)34.25s (±14.93%)~30.87s42.55sp=0.575 n=6
Total Time156.09s (± 4.26%)155.30s (± 2.93%)~151.62s162.80sp=0.810 n=6
webpack - node (v18.15.0, x64)
Errors3841🔻+3 (+ 7.89%)~~p=0.001 n=6
Symbols361,753363,689+1,936 (+ 0.54%)~~p=0.001 n=6
Types158,862160,134+1,272 (+ 0.80%)~~p=0.001 n=6
Memory used516,469k (± 0.02%)520,487k (± 0.01%)+4,018k (+ 0.78%)520,429k520,534kp=0.005 n=6
Parse Time4.44s (± 0.74%)4.45s (± 0.82%)~4.40s4.49sp=0.744 n=6
Bind Time1.90s (± 0.90%)1.91s (± 1.23%)~1.88s1.94sp=0.871 n=6
Check Time21.75s (± 0.25%)21.92s (± 0.59%)+0.17s (+ 0.79%)21.76s22.10sp=0.013 n=6
Emit Time0.00s0.00s~~~p=1.000 n=6
Total Time28.09s (± 0.21%)28.28s (± 0.55%)+0.19s (+ 0.67%)28.13s28.51sp=0.016 n=6
xstate-main - node (v18.15.0, x64)
Errors3030~~~p=1.000 n=6
Symbols672,791673,239+448 (+ 0.07%)~~p=0.001 n=6
Types201,962202,028+66 (+ 0.03%)~~p=0.001 n=6
Memory used574,948k (± 0.02%)575,565k (± 0.02%)+617k (+ 0.11%)575,365k575,693kp=0.005 n=6
Parse Time4.19s (± 0.54%)4.21s (± 0.94%)~4.17s4.28sp=0.871 n=6
Bind Time1.33s (± 1.24%)1.33s (± 0.48%)~1.32s1.34sp=0.410 n=6
Check Time20.40s (± 1.18%)20.47s (± 1.90%)~20.14s21.01sp=0.936 n=6
Emit Time0.00s0.00s~~~p=1.000 n=6
Total Time25.92s (± 0.94%)26.00s (± 1.57%)~25.64s26.52sp=0.936 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)
BenchmarkNameIterations
Currentpr6
Baselinebaseline6

Developer Information:

Download Benchmarks

@typescript-bot

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey) Here are the results of running the top 400 repos with tsc comparing main and refs/pull/62496/merge:

Something interesting changed - please have a look.

Details

facebook/lexical

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

tsconfig.json

tsconfig.build.json

microsoft/playwright

8 of 13 projects failed to build with the old tsc and were ignored

packages/trace-viewer/tsconfig.json

microsoft/vscode

8 of 63 projects failed to build with the old tsc and were ignored

src/tsconfig.tsec.json

src/tsconfig.monaco.json

build/checker/tsconfig.electron-browser.json

niklasvh/html2canvas

1 of 2 projects failed to build with the old tsc and were ignored

tsconfig.json

radix-ui/primitives

packages/react/tooltip/tsconfig.json

packages/react/toast/tsconfig.json

packages/react/tabs/tsconfig.json

packages/react/scroll-area/tsconfig.json

packages/react/radix-ui/tsconfig.json

packages/react/radio-group/tsconfig.json

packages/react/presence/tsconfig.json

packages/react/popover/tsconfig.json

packages/react/navigation-menu/tsconfig.json

packages/react/menubar/tsconfig.json

packages/react/menu/tsconfig.json

packages/react/hover-card/tsconfig.json

packages/react/dropdown-menu/tsconfig.json

packages/react/dialog/tsconfig.json

packages/react/context-menu/tsconfig.json

packages/react/collapsible/tsconfig.json

packages/react/checkbox/tsconfig.json

packages/react/alert-dialog/tsconfig.json

packages/react/accordion/tsconfig.json

apps/storybook/tsconfig.json

apps/ssr-testing/tsconfig.json

react-bootstrap/react-bootstrap

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

tsconfig.json

test/tsconfig.json

recharts/recharts

1 of 4 projects failed to build with the old tsc and were ignored

test/tsconfig.json

  • error TS2352: Conversion of type '{ fontSize: string; letterSpacing: string; }' to type 'CSSStyleDeclaration' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first.
  • error TS2345: Argument of type 'CSSStyleDeclaration' is not assignable to parameter of type 'CSSStyleProperties'.

RSSNext/Folo

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

packages/internal/components/tsconfig.json

vuejs/core

4 of 6 projects failed to build with the old tsc and were ignored

tsconfig.json

tsconfig.build.json

winfunc/opcode

tsconfig.json

@jakebailey

Copy link
Copy Markdown
MemberAuthor

Something seems wrong with CSS...

@Bashamega

Copy link
Copy Markdown

Hello Jake Bailey (@jakebailey),
After looking at the code, I found the culprit that’s causing the failing build: [microsoft/TypeScript-DOM-lib-generator#2052](microsoft/TypeScript-DOM-lib-generator#2052).
This change moved them to the CSSStyleProperties interface, which seems to be the source of the issue.
It might need to be reverted, or merge both, then just extend it to CSSStyleProperties.
I’d be happy to draft a PR for this if that sounds good.

@jakebailey

Copy link
Copy Markdown
MemberAuthor

I'm not sure what the right solution is here; Kagami Sascha Rosylight (@saschanaz) any ideas? Seems super breaky as-is

@saschanaz

Copy link
Copy Markdown
Contributor

Yeah, this is tricky...

Revert would effectively be a merge, because we can't revert the addition of CSSStyleProperties. But then the whole point of the spec change is to split CSSStyleProperties from CSSStyleDeclaration so that the latter can be the superclass of others. Merging would revert the whole point of the spec change, and also break things - CSSPageDescriptors.prototype.float doesn't exist in browsers, but merging would make it appear incorrectly.

@saschanaz

Copy link
Copy Markdown
Contributor

One could add something like interface CSSStyleDeclarationBase, move all CSSStyleDeclaration things into that one, and make CSSStyleDeclaration and all CSSStyleDeclaration subclasses to inherit that one (but skip CSSStyleDeclaration).

But in that case instanceof will break for the subclasses 🤔

@jakebailey

Copy link
Copy Markdown
MemberAuthor

Well, interfaces don't affect instanceof at all, no?

I'd be happy with basically anything, since this unfortunately really does need to go in...

@saschanaz

Copy link
Copy Markdown
Contributor

Ah, I mean extends. T extends CSSStyleDeclaration ? ... would break.

@saschanaz

Copy link
Copy Markdown
Contributor

@jakebailey

Copy link
Copy Markdown
MemberAuthor

Thanks; I'm going to pull that PR into this one and see how it fares.

@jakebailey

Copy link
Copy Markdown
MemberAuthor

TypeScript Bot (@typescript-bot) test it

@typescript-bot

TypeScript Bot (typescript-bot) commented Sep 30, 2025

Copy link
Copy Markdown
Contributor

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

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

@typescript-bot

Copy link
Copy Markdown
Contributor

Hey Jake Bailey (@jakebailey), the results of running the DT tests are ready.

There were interesting changes:

Branch only errors:

Package: dhtmlxscheduler
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/dhtmlxscheduler/dhtmlxscheduler-tests.ts
2:29 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
3:28 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
6:11 error TypeScript@local compile error: Property 'keys' does not exist on type 'Scheduler' @definitelytyped/expect
9:11 error TypeScript@local compile error: Property 'config' does not exist on type 'Scheduler' @definitelytyped/expect
10:11 error TypeScript@local compile error: Property 'config' does not exist on type 'Scheduler' @definitelytyped/expect
11:11 error TypeScript@local compile error: Property 'xy' does not exist on type 'Scheduler' @definitelytyped/expect
14:11 error TypeScript@local compile error: Property 'templates' does not exist on type 'Scheduler' @definitelytyped/expect
23:11 error TypeScript@local compile error: Property 'locale' does not exist on type 'Scheduler' @definitelytyped/expect
26:11 error TypeScript@local compile error: Property 'init' does not exist on type 'Scheduler' @definitelytyped/expect
27:11 error TypeScript@local compile error: Property 'load' does not exist on type 'Scheduler' @definitelytyped/expect
30:11 error TypeScript@local compile error: Property 'attachEvent' does not exist on type 'Scheduler' @definitelytyped/expect
31:32 error TypeScript@local compile error: Property 'getActionData' does not exist on type 'Scheduler' @definitelytyped/expect
34:11 error TypeScript@local compile error: Property 'filter_week' does not exist on type 'Scheduler' @definitelytyped/expect
37:28 error TypeScript@local compile error: Property 'getSchedulerInstance' does not exist on type '{ new (): Scheduler; prototype: Scheduler; }' @definitelytyped/expect
41:11 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
42:22 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
/mnt/vss/_work/1/DefinitelyTyped/types/dhtmlxscheduler/index.d.ts
1869:13 error TypeScript@local compile error: Subsequent variable declarations must have the same type. Variable 'scheduler' must be of type 'Scheduler', but here has type 'SchedulerStatic' @definitelytyped/expect
1870:13 error TypeScript@local compile error: Subsequent variable declarations must have the same type. Variable 'Scheduler' must be of type '{ new (): Scheduler; prototype: Scheduler; }', but here has type 'SchedulerEnterprise' @definitelytyped/expect
✖ 18 problems (18 errors, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250930/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250930/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: dom-speech-recognition
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/dom-speech-recognition/index.d.ts
79:6 error TypeScript@local compile error: Duplicate identifier 'SpeechRecognitionErrorCode' @definitelytyped/expect
✖ 1 problem (1 error, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250930/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250930/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: webrtc
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/webrtc/MediaStream.d.ts
52:5 error TypeScript@local compile error: Subsequent property declarations must have the same type. Property 'echoCancellation' must be of type 'ConstrainBooleanOrDOMString | undefined', but here has type 'ConstrainBoolean | undefined' @definitelytyped/expect
✖ 1 problem (1 error, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250930/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250930/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: node
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/node/test/url.ts
221:11 error TypeScript@local tsconfig.dom.json, local tsconfig.webworker.json compile error: Type 'URLPattern' is not assignable to type 'import("url").URLPattern'.
The types returned by 'exec(...)' are incompatible between these types.
Type 'URLPatternResult | null' is not assignable to type 'import("url").URLPatternResult | null'.
Type 'URLPatternResult' is not assignable to type 'import("url").URLPatternResult'.
Types of property 'inputs' are incompatible.
Type 'URLPatternInput[] | undefined' is not assignable to type '(string | URLPatternInit)[]'.
Type 'undefined' is not assignable to type '(string | URLPatternInit)[]' @definitelytyped/expect
/mnt/vss/_work/1/DefinitelyTyped/types/node/url.d.ts
1023:13 error TypeScript@local tsconfig.dom.json, local tsconfig.webworker.json compile error: Subsequent variable declarations must have the same type. Variable 'URLPattern' must be of type '{ new (input: URLPatternInput, baseURL: string | URL, options?: URLPatternOptions | undefined): URLPattern; new (input?: URLPatternInput | undefined, options?: URLPatternOptions | undefined): URLPattern; prototype: URLPattern; }', but here has type 'typeof URLPattern' @definitelytyped/expect
✖ 2 problems (2 errors, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250930/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250930/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: deno
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/deno/index.d.ts
6881:15 error TypeScript@local compile error: Duplicate identifier 'GPUPipelineError' @definitelytyped/expect
6893:6 error TypeScript@local compile error: Duplicate identifier 'GPUPipelineErrorReason' @definitelytyped/expect
7703:15 error TypeScript@local compile error: Duplicate identifier 'GPUError' @definitelytyped/expect
✖ 3 problems (3 errors, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250930/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20250930/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

You can check the log here.

@typescript-bot

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey) Here are the results of running the user tests with tsc comparing main and refs/pull/62496/merge:

There were infrastructure failures potentially unrelated to your change:

  • 1 instance of "Git clone failed"

Otherwise...

Something interesting changed - please have a look.

Details

debug

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

  • [NEW] error TS2551: Property 'WebkitAppearance' does not exist on type 'CSSStyleProperties'. Did you mean 'webkitAppearance'?
    • /mnt/ts_downloads/_/m/debug/node_modules/debug/src/browser.js(45,138)
  • [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)

@typescript-bot

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey)
The results of the perf run you requested are in!

Here they are:

tsc

Comparison Report - baseline..pr
MetricbaselineprDeltaBestWorstp-value
Compiler-Unions - node (v18.15.0, x64)
Errors3434~~~p=1.000 n=6
Symbols62,37062,370~~~p=1.000 n=6
Types50,38650,386~~~p=1.000 n=6
Memory used193,955k (± 0.97%)193,344k (± 0.77%)~192,713k196,391kp=0.575 n=6
Parse Time1.30s (± 0.58%)1.30s (± 0.40%)~1.30s1.31sp=0.784 n=6
Bind Time0.73s (± 0.71%)0.72s-0.01s (- 0.92%)~~p=0.025 n=6
Check Time9.77s (± 0.26%)9.74s (± 0.33%)~9.69s9.78sp=0.226 n=6
Emit Time2.75s (± 0.55%)2.73s (± 0.79%)~2.71s2.77sp=0.142 n=6
Total Time14.55s (± 0.15%)14.50s (± 0.28%)~14.45s14.57sp=0.052 n=6
angular-1 - node (v18.15.0, x64)
Errors11~~~p=1.000 n=6
Symbols948,812954,913+6,101 (+ 0.64%)~~p=0.001 n=6
Types410,869415,569+4,700 (+ 1.14%)~~p=0.001 n=6
Memory used1,245,492k (± 0.00%)1,253,999k (± 0.00%)+8,507k (+ 0.68%)1,253,966k1,254,049kp=0.005 n=6
Parse Time6.52s (± 0.85%)6.52s (± 0.90%)~6.45s6.58sp=1.000 n=6
Bind Time1.87s (± 0.40%)1.88s (± 0.29%)~1.87s1.88sp=0.476 n=6
Check Time32.18s (± 0.40%)32.20s (± 0.34%)~32.09s32.39sp=0.810 n=6
Emit Time14.81s (± 0.42%)14.86s (± 0.55%)~14.74s14.96sp=0.297 n=6
Total Time55.38s (± 0.30%)55.46s (± 0.26%)~55.27s55.63sp=0.471 n=6
mui-docs - node (v18.15.0, x64)
Errors03🔻+3 (+ ∞%)~~p=0.001 n=6
Symbols2,545,3012,546,696+1,395 (+ 0.05%)~~p=0.001 n=6
Types903,489904,475+986 (+ 0.11%)~~p=0.001 n=6
Memory used2,830,186k (± 0.01%)2,831,668k (± 0.00%)+1,482k (+ 0.05%)2,831,598k2,831,875kp=0.005 n=6
Parse Time8.72s (± 0.58%)8.72s (± 0.25%)~8.70s8.76sp=0.628 n=6
Bind Time2.22s (± 0.23%)2.22s (± 0.44%)~2.21s2.24sp=0.504 n=6
Check Time86.48s (± 0.81%)86.07s (± 0.30%)~85.64s86.37sp=0.298 n=6
Emit Time0.66s (±131.08%)1.10s (±81.74%)~0.30s2.45sp=0.191 n=6
Total Time98.09s (± 0.75%)98.11s (± 0.85%)~97.35s99.30sp=0.936 n=6
self-build-src - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols1,237,0631,237,063~~~p=1.000 n=6
Types259,743259,743~~~p=1.000 n=6
Memory used2,485,670k (±11.92%)2,606,777k (±14.39%)~2,364,271k3,091,574kp=0.689 n=6
Parse Time5.15s (± 1.20%)5.20s (± 1.27%)~5.12s5.31sp=0.230 n=6
Bind Time1.76s (± 0.29%)1.77s (± 0.66%)~1.75s1.78sp=0.112 n=6
Check Time35.14s (± 0.45%)35.25s (± 0.60%)~35.02s35.56sp=0.575 n=6
Emit Time2.98s (± 1.70%)3.02s (± 1.11%)~2.97s3.07sp=0.109 n=6
Total Time45.03s (± 0.43%)45.25s (± 0.49%)~45.00s45.56sp=0.054 n=6
self-build-src-public-api - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols1,237,0631,237,063~~~p=1.000 n=6
Types259,743259,743~~~p=1.000 n=6
Memory used3,157,485k (± 0.02%)3,158,154k (± 0.02%)~3,157,492k3,159,112kp=0.230 n=6
Parse Time6.84s (± 0.81%)6.84s (± 0.70%)~6.79s6.92sp=1.000 n=6
Bind Time2.14s (± 1.62%)2.14s (± 1.25%)~2.11s2.18sp=0.936 n=6
Check Time42.51s (± 0.37%)42.44s (± 0.37%)~42.19s42.64sp=0.630 n=6
Emit Time3.52s (± 2.30%)3.48s (± 2.78%)~3.35s3.57sp=1.000 n=6
Total Time55.00s (± 0.53%)54.90s (± 0.42%)~54.56s55.18sp=0.575 n=6
self-compiler - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols262,411262,411~~~p=1.000 n=6
Types103,924103,924~~~p=1.000 n=6
Memory used440,442k (± 0.01%)440,512k (± 0.01%)+69k (+ 0.02%)440,457k440,557kp=0.045 n=6
Parse Time3.51s (± 0.85%)3.52s (± 0.89%)~3.48s3.57sp=0.572 n=6
Bind Time1.32s (± 0.39%)1.32s (± 0.63%)~1.32s1.34sp=0.923 n=6
Check Time19.00s (± 0.47%)19.00s (± 0.21%)~18.94s19.06sp=1.000 n=6
Emit Time1.53s (± 0.98%)1.54s (± 0.90%)~1.52s1.55sp=0.865 n=6
Total Time25.37s (± 0.32%)25.39s (± 0.20%)~25.32s25.46sp=0.688 n=6
ts-pre-modules - node (v18.15.0, x64)
Errors7272~~~p=1.000 n=6
Symbols225,367225,367~~~p=1.000 n=6
Types94,29094,290~~~p=1.000 n=6
Memory used370,074k (± 0.03%)370,098k (± 0.05%)~369,909k370,427kp=0.936 n=6
Parse Time2.84s (± 0.57%)2.85s (± 0.69%)~2.84s2.89sp=0.441 n=6
Bind Time1.61s (± 0.72%)1.61s (± 1.44%)~1.58s1.64sp=0.745 n=6
Check Time16.48s (± 0.34%)16.46s (± 0.13%)~16.43s16.49sp=0.572 n=6
Emit Time0.00s0.00s~~~p=1.000 n=6
Total Time20.94s (± 0.30%)20.92s (± 0.21%)~20.86s20.98sp=0.574 n=6
vscode - node (v18.15.0, x64)
Errors112🔻+11 (+1,100.00%)~~p=0.001 n=6
Symbols3,897,3473,899,636+2,289 (+ 0.06%)~~p=0.001 n=6
Types1,226,0931,227,408+1,315 (+ 0.11%)~~p=0.001 n=6
Memory used3,709,830k (± 0.00%)3,712,240k (± 0.01%)+2,410k (+ 0.06%)3,711,658k3,712,681kp=0.005 n=6
Parse Time15.39s (± 0.52%)15.43s (± 0.54%)~15.36s15.54sp=0.467 n=6
Bind Time5.01s (± 2.28%)4.98s (± 2.03%)~4.91s5.18sp=0.107 n=6
Check Time102.70s (± 2.31%)101.27s (± 1.41%)~100.35s104.07sp=0.230 n=6
Emit Time30.85s (± 0.64%)40.38s (±21.92%)🔻+9.53s (+30.90%)30.77s51.28sp=0.031 n=6
Total Time153.94s (± 1.55%)162.06s (± 5.28%)~151.61s173.19sp=0.128 n=6
webpack - node (v18.15.0, x64)
Errors3841🔻+3 (+ 7.89%)~~p=0.001 n=6
Symbols363,098365,035+1,937 (+ 0.53%)~~p=0.001 n=6
Types159,255160,528+1,273 (+ 0.80%)~~p=0.001 n=6
Memory used517,905k (± 0.02%)522,009k (± 0.02%)+4,104k (+ 0.79%)521,859k522,161kp=0.005 n=6
Parse Time4.46s (± 0.80%)4.44s (± 0.34%)~4.43s4.47sp=0.571 n=6
Bind Time1.94s (± 0.84%)1.92s (± 1.49%)~1.89s1.97sp=0.294 n=6
Check Time21.87s (± 1.13%)21.91s (± 0.46%)~21.75s22.02sp=0.172 n=6
Emit Time0.00s0.00s~~~p=1.000 n=6
Total Time28.27s (± 0.93%)28.27s (± 0.39%)~28.13s28.42sp=0.336 n=6
xstate-main - node (v18.15.0, x64)
Errors3030~~~p=1.000 n=6
Symbols672,790673,239+449 (+ 0.07%)~~p=0.001 n=6
Types201,962202,028+66 (+ 0.03%)~~p=0.001 n=6
Memory used574,835k (± 0.03%)575,524k (± 0.03%)+689k (+ 0.12%)575,292k575,741kp=0.005 n=6
Parse Time4.15s (± 0.35%)4.18s (± 0.81%)~4.14s4.24sp=0.075 n=6
Bind Time1.34s (± 1.20%)1.33s (± 0.48%)~1.32s1.34sp=0.108 n=6
Check Time20.62s (± 1.84%)20.45s (± 1.69%)~20.21s20.92sp=0.107 n=6
Emit Time0.00s0.00s~~~p=1.000 n=6
Total Time26.11s (± 1.48%)25.96s (± 1.24%)~25.72s26.39sp=0.378 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)
BenchmarkNameIterations
Currentpr6
Baselinebaseline6

Developer Information:

Download Benchmarks

@typescript-bot

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey) Here are the results of running the top 400 repos with tsc comparing main and refs/pull/62496/merge:

Something interesting changed - please have a look.

Details

facebook/lexical

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

tsconfig.json

tsconfig.build.json

examples/node-state-style/tsconfig.json

microsoft/playwright

8 of 13 projects failed to build with the old tsc and were ignored

packages/trace-viewer/tsconfig.json

microsoft/vscode

8 of 63 projects failed to build with the old tsc and were ignored

src/tsconfig.tsec.json

src/tsconfig.monaco.json

build/checker/tsconfig.electron-browser.json

radix-ui/primitives

packages/react/tooltip/tsconfig.json

packages/react/toast/tsconfig.json

packages/react/tabs/tsconfig.json

packages/react/scroll-area/tsconfig.json

packages/react/radix-ui/tsconfig.json

packages/react/radio-group/tsconfig.json

packages/react/presence/tsconfig.json

packages/react/popover/tsconfig.json

packages/react/navigation-menu/tsconfig.json

packages/react/menubar/tsconfig.json

packages/react/menu/tsconfig.json

packages/react/hover-card/tsconfig.json

packages/react/dropdown-menu/tsconfig.json

packages/react/dialog/tsconfig.json

packages/react/context-menu/tsconfig.json

packages/react/collapsible/tsconfig.json

packages/react/checkbox/tsconfig.json

packages/react/alert-dialog/tsconfig.json

packages/react/accordion/tsconfig.json

apps/storybook/tsconfig.json

apps/ssr-testing/tsconfig.json

@jakebailey

Copy link
Copy Markdown
MemberAuthor

Hmmm, not super great either....

@saschanaz

Copy link
Copy Markdown
Contributor

Argument of type 'CSSStyleProperties' is not assignable to parameter of type 'CSSStyleDeclaration'

🫠

@saschanaz

Copy link
Copy Markdown
Contributor

Things that return CSSStyleProperties should return CSSStyleDeclaration instead, otherwise augmenting the latter wouldn't work...

@typescript-bot

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey) Here are the results of running the user tests with tsc comparing main and refs/pull/62496/merge:

There were infrastructure failures potentially unrelated to your change:

  • 1 instance of "Git clone failed"

Otherwise...

Everything looks good!

@typescript-bot

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey) Here are the results of running the top 400 repos with tsc comparing main and refs/pull/62496/merge:

Everything looks good!

@jakebailey

Jake Bailey (jakebailey) commented Oct 1, 2025

Copy link
Copy Markdown
MemberAuthor

These results are better.

  • dhtmlxscheduler
    • Declares Scheduler which DOM now includes. No, entirely different declaration. Yikes.
  • dom-speech-recognition
    • Declares SpeechRecognitionErrorCode, which DOM now includes.
  • webrtc
    • Also declares a type but differently than DOM.
  • node
    • Declares URLPattern differently.
  • deno
    • Declares some GPU stuff.

Most of these are quite normal; always the case that we have to fix up packages which used to provide types that DOM now does.

Node might get awkward to fix. Need to try.

Deno, not super sure about; the error is actually that things are double declared, not just different, which I'm not sure we can fix?

@saschanaz

Copy link
Copy Markdown
Contributor

Deno uses class declarations, it's sad that ambient class declarations can't merge with ambient variable declarations...

@jakebailey

Copy link
Copy Markdown
MemberAuthor

Deno is fixing it (thank you David Sherret (@dsherret)), I am trying to fix the others preemtively.

@jakebailey

Copy link
Copy Markdown
MemberAuthor

TypeScript Bot (@typescript-bot) run dt

@typescript-bot

TypeScript Bot (typescript-bot) commented Oct 1, 2025

Copy link
Copy Markdown
Contributor

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

CommandStatusResults
run dt✅ Started👀 Results

@typescript-bot

Copy link
Copy Markdown
Contributor

Hey Jake Bailey (@jakebailey), the results of running the DT tests are ready.

There were interesting changes:

Branch only errors:

Package: dhtmlxscheduler
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/dhtmlxscheduler/dhtmlxscheduler-tests.ts
2:29 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
3:28 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
6:11 error TypeScript@local compile error: Property 'keys' does not exist on type 'Scheduler' @definitelytyped/expect
9:11 error TypeScript@local compile error: Property 'config' does not exist on type 'Scheduler' @definitelytyped/expect
10:11 error TypeScript@local compile error: Property 'config' does not exist on type 'Scheduler' @definitelytyped/expect
11:11 error TypeScript@local compile error: Property 'xy' does not exist on type 'Scheduler' @definitelytyped/expect
14:11 error TypeScript@local compile error: Property 'templates' does not exist on type 'Scheduler' @definitelytyped/expect
23:11 error TypeScript@local compile error: Property 'locale' does not exist on type 'Scheduler' @definitelytyped/expect
26:11 error TypeScript@local compile error: Property 'init' does not exist on type 'Scheduler' @definitelytyped/expect
27:11 error TypeScript@local compile error: Property 'load' does not exist on type 'Scheduler' @definitelytyped/expect
30:11 error TypeScript@local compile error: Property 'attachEvent' does not exist on type 'Scheduler' @definitelytyped/expect
31:32 error TypeScript@local compile error: Property 'getActionData' does not exist on type 'Scheduler' @definitelytyped/expect
34:11 error TypeScript@local compile error: Property 'filter_week' does not exist on type 'Scheduler' @definitelytyped/expect
37:28 error TypeScript@local compile error: Property 'getSchedulerInstance' does not exist on type '{ new (): Scheduler; prototype: Scheduler; }' @definitelytyped/expect
41:11 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
42:22 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
/mnt/vss/_work/1/DefinitelyTyped/types/dhtmlxscheduler/index.d.ts
1869:13 error TypeScript@local compile error: Subsequent variable declarations must have the same type. Variable 'scheduler' must be of type 'Scheduler', but here has type 'SchedulerStatic' @definitelytyped/expect
1870:13 error TypeScript@local compile error: Subsequent variable declarations must have the same type. Variable 'Scheduler' must be of type '{ new (): Scheduler; prototype: Scheduler; }', but here has type 'SchedulerEnterprise' @definitelytyped/expect
✖ 18 problems (18 errors, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20251001/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20251001/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: dom-speech-recognition
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/dom-speech-recognition/index.d.ts
79:6 error TypeScript@local compile error: Duplicate identifier 'SpeechRecognitionErrorCode' @definitelytyped/expect
✖ 1 problem (1 error, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20251001/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20251001/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: webrtc
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/webrtc/MediaStream.d.ts
52:5 error TypeScript@local compile error: Subsequent property declarations must have the same type. Property 'echoCancellation' must be of type 'ConstrainBooleanOrDOMString | undefined', but here has type 'ConstrainBoolean | undefined' @definitelytyped/expect
✖ 1 problem (1 error, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20251001/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20251001/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: node
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/node/test/url.ts
221:11 error TypeScript@local tsconfig.dom.json, local tsconfig.webworker.json compile error: Type 'URLPattern' is not assignable to type 'import("url").URLPattern'.
The types returned by 'exec(...)' are incompatible between these types.
Type 'URLPatternResult | null' is not assignable to type 'import("url").URLPatternResult | null'.
Type 'URLPatternResult' is not assignable to type 'import("url").URLPatternResult'.
Types of property 'inputs' are incompatible.
Type 'URLPatternInput[] | undefined' is not assignable to type '(string | URLPatternInit)[]'.
Type 'undefined' is not assignable to type '(string | URLPatternInit)[]' @definitelytyped/expect
/mnt/vss/_work/1/DefinitelyTyped/types/node/url.d.ts
1023:13 error TypeScript@local tsconfig.dom.json, local tsconfig.webworker.json compile error: Subsequent variable declarations must have the same type. Variable 'URLPattern' must be of type '{ new (input: URLPatternInput, baseURL: string | URL, options?: URLPatternOptions | undefined): URLPattern; new (input?: URLPatternInput | undefined, options?: URLPatternOptions | undefined): URLPattern; prototype: URLPattern; }', but here has type 'typeof URLPattern' @definitelytyped/expect
✖ 2 problems (2 errors, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20251001/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20251001/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

You can check the log here.

Comment threadsrc/lib/dom.generated.d.ts
Comment threadsrc/lib/dom.generated.d.ts
@jakebailey

Copy link
Copy Markdown
MemberAuthor

Node will be fixed by DefinitelyTyped/DefinitelyTyped#73799 (pending discussion about the optional props).

dhtmlxscheduler is problematic because it was not actually shim types for these new globals, but instead some weird DHTMLX lib that defines a global with the same name. In a way, I'm surprised that such a thing was able to be declared in the web?

dom-speech-recognition and webrtc are shims; after this PR is merged and on npm as a nightly, then those can be fixed in DT.

@saschanaz

Copy link
Copy Markdown
Contributor

In a way, I'm surprised that such a thing was able to be declared in the web?

Probably their JS definition shadows the browser one. As long as the page doesn't try to use both the lib and the web API, it won't break the page.

@jakebailey

Copy link
Copy Markdown
MemberAuthor

Well, they seem to predate the web types changing, so I mainly meant it in terms of "I thought the JS spec people never declared things that conflicted with any existing pages", but maybe I'm off base.

@jakebailey

Copy link
Copy Markdown
MemberAuthor

But, I still don't know what to do with them, other than quite literally just deleting them off of DT.

@jakebailey
Jake Bailey (jakebailey) marked this pull request as ready for review October 2, 2025 00:31
CopilotAI review requested due to automatic review settings October 2, 2025 00:31

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull Request Overview

This PR updates TypeScript's DOM type definitions and adjusts test baselines to reflect the performance impact of these changes. The DOM library update brings in newer web APIs and type definitions.

Key changes:

  • Updated DOM type definitions which affect TypeScript's compilation performance metrics
  • Adjusted performance baseline thresholds across numerous test files to accommodate the increased type checking overhead
  • Updated one specific symbol reference from CSSStyleDeclaration to CSSStyleProperties

Reviewed Changes

Copilot reviewed 86 out of 92 changed files in this pull request and generated no comments.

Show a summary per file
FileDescription
tests/baselines/reference/verifyDefaultLib_dom.typesUpdated performance stats showing significant increases in cache, type count, instantiation count, and symbol count
tests/baselines/reference/variableDeclarationInStrictMode1.typesSimilar performance metric increases reflecting DOM lib impact
tests/baselines/reference/*.types (60+ files)Performance baseline adjustments across JSX, React, and other test files
tests/baselines/reference/divergentAccessorsTypes6.symbolsUpdated symbol reference from CSSStyleDeclaration to CSSStyleProperties
tests/baselines/reference/globalThisBlockscopedProperties.typesUpdated keyof typeof globalThis to include new DOM types

@jakebailey

Copy link
Copy Markdown
MemberAuthor

TypeScript Bot (@typescript-bot) run dt

@typescript-bot

TypeScript Bot (typescript-bot) commented Oct 2, 2025

Copy link
Copy Markdown
Contributor

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

CommandStatusResults
run dt✅ Started👀 Results

@typescript-bot

Copy link
Copy Markdown
Contributor

Hey Jake Bailey (@jakebailey), the results of running the DT tests are ready.

There were interesting changes:

Branch only errors:

Package: dhtmlxscheduler
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/dhtmlxscheduler/dhtmlxscheduler-tests.ts
2:29 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
3:28 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
6:11 error TypeScript@local compile error: Property 'keys' does not exist on type 'Scheduler' @definitelytyped/expect
9:11 error TypeScript@local compile error: Property 'config' does not exist on type 'Scheduler' @definitelytyped/expect
10:11 error TypeScript@local compile error: Property 'config' does not exist on type 'Scheduler' @definitelytyped/expect
11:11 error TypeScript@local compile error: Property 'xy' does not exist on type 'Scheduler' @definitelytyped/expect
14:11 error TypeScript@local compile error: Property 'templates' does not exist on type 'Scheduler' @definitelytyped/expect
23:11 error TypeScript@local compile error: Property 'locale' does not exist on type 'Scheduler' @definitelytyped/expect
26:11 error TypeScript@local compile error: Property 'init' does not exist on type 'Scheduler' @definitelytyped/expect
27:11 error TypeScript@local compile error: Property 'load' does not exist on type 'Scheduler' @definitelytyped/expect
30:11 error TypeScript@local compile error: Property 'attachEvent' does not exist on type 'Scheduler' @definitelytyped/expect
31:32 error TypeScript@local compile error: Property 'getActionData' does not exist on type 'Scheduler' @definitelytyped/expect
34:11 error TypeScript@local compile error: Property 'filter_week' does not exist on type 'Scheduler' @definitelytyped/expect
37:28 error TypeScript@local compile error: Property 'getSchedulerInstance' does not exist on type '{ new (): Scheduler; prototype: Scheduler; }' @definitelytyped/expect
41:11 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
42:22 error TypeScript@local compile error: Property 'date' does not exist on type 'Scheduler' @definitelytyped/expect
/mnt/vss/_work/1/DefinitelyTyped/types/dhtmlxscheduler/index.d.ts
1869:13 error TypeScript@local compile error: Subsequent variable declarations must have the same type. Variable 'scheduler' must be of type 'Scheduler', but here has type 'SchedulerStatic' @definitelytyped/expect
1870:13 error TypeScript@local compile error: Subsequent variable declarations must have the same type. Variable 'Scheduler' must be of type '{ new (): Scheduler; prototype: Scheduler; }', but here has type 'SchedulerEnterprise' @definitelytyped/expect
✖ 18 problems (18 errors, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20251001/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20251001/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: dom-speech-recognition
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/dom-speech-recognition/index.d.ts
79:6 error TypeScript@local compile error: Duplicate identifier 'SpeechRecognitionErrorCode' @definitelytyped/expect
✖ 1 problem (1 error, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20251001/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20251001/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

Package: webrtc
Error:

Error: /mnt/vss/_work/1/DefinitelyTyped/types/webrtc/MediaStream.d.ts
52:5 error TypeScript@local compile error: Subsequent property declarations must have the same type. Property 'echoCancellation' must be of type 'ConstrainBooleanOrDOMString | undefined', but here has type 'ConstrainBoolean | undefined' @definitelytyped/expect
✖ 1 problem (1 error, 0 warnings)
at combineErrorsAndWarnings (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20251001/node_modules/@definitelytyped/dtslint/dist/index.js:199:28)
at runTests (/mnt/vss/_work/1/DefinitelyTyped/node_modules/.pnpm/@definitelytyped+dtslint@0.2.34_typescript@6.0.0-dev.20251001/node_modules/@definitelytyped/dtslint/dist/index.js:191:20)

You can check the log here.

@jakebailey
Jake Bailey (jakebailey) merged commit 9c4c377 into microsoft:mainOct 2, 2025
33 checks passed
@jakebailey
Jake Bailey (jakebailey) deleted the dom-update-2025-09-26 branch October 2, 2025 17:42
@microsoftMicrosoft (microsoft) locked as resolved and limited conversation to collaborators Apr 2, 2026
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Author: TeamFor Uncommitted BugPR for untriaged, rejected, closed or missing bug

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants

@jakebailey@typescript-bot@Bashamega@saschanaz@RyanCavanaugh@andrewbranch