Skip to content

Use numeric literals for BYTES_PER_ELEMENT#59567

Open
lionel-rowe wants to merge 4 commits intomicrosoft:mainfrom
lionel-rowe:bytes-per-element
Open

Use numeric literals for BYTES_PER_ELEMENT#59567
lionel-rowe wants to merge 4 commits intomicrosoft:mainfrom
lionel-rowe:bytes-per-element

Conversation

@lionel-rowe
Copy link
Contributor

Fixes #59557

@typescript-bot typescript-bot added the For Backlog Bug PRs that fix a backlog bug label Aug 9, 2024
@jakebailey
Copy link
Member

@typescript-bot test it

@typescript-bot
Copy link
Collaborator

typescript-bot commented Aug 9, 2024

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.

Everything looks the same!

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/59567/merge:

Everything looks good!

@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 30 30 ~ ~ ~ p=1.000 n=6
Symbols 62,153 62,153 ~ ~ ~ p=1.000 n=6
Types 50,242 50,242 ~ ~ ~ p=1.000 n=6
Memory used 193,532k (± 0.96%) 192,393k (± 0.08%) ~ 192,308k 192,678k p=0.810 n=6
Parse Time 1.30s (± 1.23%) 1.31s (± 0.62%) ~ 1.30s 1.32s p=0.498 n=6
Bind Time 0.71s 0.71s ~ ~ ~ p=1.000 n=6
Check Time 9.54s (± 0.47%) 9.53s (± 0.23%) ~ 9.50s 9.56s p=0.375 n=6
Emit Time 2.73s (± 1.28%) 2.73s (± 0.60%) ~ 2.71s 2.75s p=0.627 n=6
Total Time 14.29s (± 0.44%) 14.27s (± 0.19%) ~ 14.23s 14.30s p=0.809 n=6
angular-1 - node (v18.15.0, x64)
Errors 7 7 ~ ~ ~ p=1.000 n=6
Symbols 945,757 945,300 -457 (- 0.05%) ~ ~ p=0.001 n=6
Types 410,045 409,844 -201 (- 0.05%) ~ ~ p=0.001 n=6
Memory used 1,222,535k (± 0.00%) 1,222,029k (± 0.00%) -507k (- 0.04%) 1,221,994k 1,222,063k p=0.005 n=6
Parse Time 6.64s (± 0.30%) 6.62s (± 0.65%) ~ 6.56s 6.67s p=0.289 n=6
Bind Time 1.86s 1.86s (± 0.53%) ~ 1.85s 1.88s p=1.000 n=6
Check Time 31.04s (± 0.30%) 31.25s (± 0.37%) +0.21s (+ 0.69%) 31.12s 31.43s p=0.016 n=6
Emit Time 14.99s (± 0.34%) 14.92s (± 0.74%) ~ 14.70s 15.00s p=0.227 n=6
Total Time 54.53s (± 0.23%) 54.66s (± 0.33%) ~ 54.34s 54.83s p=0.127 n=6
mui-docs - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 2,487,631 2,487,631 ~ ~ ~ p=1.000 n=6
Types 1,012,953 1,012,953 ~ ~ ~ p=1.000 n=6
Memory used 2,493,513k (± 0.00%) 2,493,517k (± 0.00%) ~ 2,493,475k 2,493,574k p=0.748 n=6
Parse Time 9.26s (± 0.41%) 9.26s (± 0.39%) ~ 9.21s 9.30s p=0.746 n=6
Bind Time 2.18s (± 0.82%) 2.18s (± 0.55%) ~ 2.16s 2.19s p=0.559 n=6
Check Time 75.97s (± 0.60%) 76.03s (± 0.29%) ~ 75.73s 76.41s p=0.470 n=6
Emit Time 0.28s (± 3.53%) 0.28s (± 2.95%) ~ 0.27s 0.29s p=0.862 n=6
Total Time 87.69s (± 0.56%) 87.75s (± 0.28%) ~ 87.40s 88.14s p=0.575 n=6
self-build-src - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 1,229,498 1,229,498 ~ ~ ~ p=1.000 n=6
Types 264,061 263,938 -123 (- 0.05%) ~ ~ p=0.001 n=6
Memory used 2,349,119k (± 0.03%) 2,349,325k (± 0.03%) ~ 2,348,980k 2,350,554k p=0.128 n=6
Parse Time 5.97s (± 0.62%) 6.01s (± 0.77%) ~ 5.96s 6.08s p=0.127 n=6
Bind Time 2.23s (± 0.96%) 2.23s (± 0.46%) ~ 2.21s 2.24s p=0.872 n=6
Check Time 40.64s (± 0.38%) 40.61s (± 0.38%) ~ 40.37s 40.81s p=0.689 n=6
Emit Time 4.04s (± 3.82%) 3.93s (± 0.96%) ~ 3.89s 4.00s p=0.093 n=6
Total Time 52.88s (± 0.44%) 52.81s (± 0.26%) ~ 52.58s 52.96s p=0.630 n=6
self-build-src-public-api - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 1,229,498 1,229,498 ~ ~ ~ p=1.000 n=6
Types 264,061 263,938 -123 (- 0.05%) ~ ~ p=0.001 n=6
Memory used 2,423,198k (± 0.02%) 2,422,892k (± 0.02%) ~ 2,422,196k 2,423,459k p=0.378 n=6
Parse Time 5.13s (± 0.76%) 5.14s (± 0.31%) ~ 5.11s 5.15s p=0.687 n=6
Bind Time 1.68s (± 0.73%) 1.69s (± 0.53%) ~ 1.68s 1.70s p=0.445 n=6
Check Time 34.97s (± 0.22%) 35.06s (± 0.24%) ~ 34.98s 35.17s p=0.229 n=6
Emit Time 3.33s (± 0.65%) 3.35s (± 0.51%) ~ 3.33s 3.38s p=0.570 n=6
Total Time 45.13s (± 0.22%) 45.23s (± 0.20%) ~ 45.14s 45.35s p=0.173 n=6
self-compiler - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 256,739 256,739 ~ ~ ~ p=1.000 n=6
Types 105,560 105,515 -45 (- 0.04%) ~ ~ p=0.001 n=6
Memory used 428,989k (± 0.07%) 429,034k (± 0.05%) ~ 428,853k 429,323k p=0.423 n=6
Parse Time 3.37s (± 1.02%) 3.38s (± 0.52%) ~ 3.36s 3.41s p=0.568 n=6
Bind Time 1.31s (± 1.40%) 1.32s (± 0.93%) ~ 1.30s 1.33s p=0.931 n=6
Check Time 18.05s (± 0.13%) 18.12s (± 0.45%) ~ 18.00s 18.21s p=0.102 n=6
Emit Time 1.65s (± 0.92%) 1.64s (± 1.14%) ~ 1.63s 1.68s p=0.743 n=6
Total Time 24.38s (± 0.27%) 24.46s (± 0.39%) ~ 24.30s 24.56s p=0.172 n=6
ts-pre-modules - node (v18.15.0, x64)
Errors 35 35 ~ ~ ~ p=1.000 n=6
Symbols 225,018 225,018 ~ ~ ~ p=1.000 n=6
Types 94,245 94,245 ~ ~ ~ p=1.000 n=6
Memory used 370,139k (± 0.03%) 370,139k (± 0.03%) ~ 370,036k 370,359k p=0.810 n=6
Parse Time 2.75s (± 1.03%) 2.75s (± 0.76%) ~ 2.73s 2.78s p=1.000 n=6
Bind Time 1.57s (± 0.94%) 1.56s (± 0.75%) ~ 1.54s 1.57s p=0.142 n=6
Check Time 15.63s (± 0.33%) 15.64s (± 0.48%) ~ 15.55s 15.76s p=1.000 n=6
Emit Time 0.00s 0.00s ~ ~ ~ p=1.000 n=6
Total Time 19.96s (± 0.37%) 19.96s (± 0.37%) ~ 19.89s 20.09s p=0.809 n=6
vscode - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 2,995,060 2,994,993 -67 (- 0.00%) ~ ~ p=0.001 n=6
Types 1,032,052 1,031,981 -71 (- 0.01%) ~ ~ p=0.001 n=6
Memory used 3,120,580k (± 0.00%) 3,120,352k (± 0.00%) -228k (- 0.01%) 3,120,278k 3,120,418k p=0.005 n=6
Parse Time 13.84s (± 0.15%) 13.84s (± 0.38%) ~ 13.80s 13.94s p=0.468 n=6
Bind Time 4.29s (± 0.54%) 4.29s (± 0.28%) ~ 4.28s 4.31s p=0.934 n=6
Check Time 79.68s (± 0.57%) 79.47s (± 0.44%) ~ 79.05s 79.88s p=0.378 n=6
Emit Time 20.44s (± 0.47%) 20.41s (± 0.74%) ~ 20.23s 20.60s p=0.810 n=6
Total Time 118.25s (± 0.43%) 118.02s (± 0.41%) ~ 117.42s 118.57s p=0.470 n=6
webpack - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 273,789 273,720 -69 (- 0.03%) ~ ~ p=0.001 n=6
Types 111,669 111,617 -52 (- 0.05%) ~ ~ p=0.001 n=6
Memory used 419,907k (± 0.01%) 419,705k (± 0.01%) -202k (- 0.05%) 419,623k 419,785k p=0.005 n=6
Parse Time 3.97s (± 0.58%) 3.96s (± 0.37%) ~ 3.94s 3.98s p=0.330 n=6
Bind Time 1.73s (± 0.94%) 1.73s (± 0.89%) ~ 1.71s 1.75s p=0.743 n=6
Check Time 17.04s (± 0.22%) 17.04s (± 0.50%) ~ 16.93s 17.17s p=1.000 n=6
Emit Time 0.00s 0.00s ~ ~ ~ p=1.000 n=6
Total Time 22.73s (± 0.16%) 22.73s (± 0.39%) ~ 22.60s 22.83s p=0.872 n=6
xstate-main - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 538,614 538,614 ~ ~ ~ p=1.000 n=6
Types 176,536 176,536 ~ ~ ~ p=1.000 n=6
Memory used 481,533k (± 0.02%) 481,464k (± 0.00%) ~ 481,440k 481,482k p=0.065 n=6
Parse Time 4.26s (± 0.79%) 4.24s (± 0.42%) ~ 4.21s 4.26s p=0.571 n=6
Bind Time 1.55s (± 1.20%) 1.54s (± 0.68%) ~ 1.53s 1.56s p=1.000 n=6
Check Time 22.36s (± 0.30%) 22.34s (± 0.27%) ~ 22.27s 22.41s p=0.747 n=6
Emit Time 0.00s 0.00s ~ ~ ~ p=1.000 n=6
Total Time 28.17s (± 0.24%) 28.13s (± 0.19%) ~ 28.06s 28.20s p=0.335 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/59567/merge:

Everything looks good!

Copilot AI review requested due to automatic review settings February 6, 2026 06:04
Copy link
Contributor

Copilot AI left a comment

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 changes the BYTES_PER_ELEMENT property type from number to specific numeric literal types (1, 2, 4, 8) for all TypedArray types. This enables better type narrowing and allows developers to use BYTES_PER_ELEMENT values in contexts expecting specific numeric literal unions.

Changes:

  • Updated TypedArray interface definitions in library files to use numeric literal types instead of number for BYTES_PER_ELEMENT
  • Updated test baselines to reflect the new, more precise error messages that now reference BYTES_PER_ELEMENT incompatibility instead of Symbol.toStringTag incompatibility

Reviewed changes

Copilot reviewed 3 out of 7 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
src/lib/es5.d.ts Updated BYTES_PER_ELEMENT to numeric literals (1, 2, 4, 8) for Int8Array, Uint8Array, Uint8ClampedArray, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, and Float64Array
src/lib/es2020.bigint.d.ts Updated BYTES_PER_ELEMENT to literal 8 for BigInt64Array and BigUint64Array
src/lib/esnext.float16.d.ts Updated BYTES_PER_ELEMENT to literal 2 for Float16Array
tests/baselines/reference/typedArraysCrossAssignability01.errors.txt Updated error messages to reflect BYTES_PER_ELEMENT incompatibility instead of Symbol.toStringTag
tests/baselines/reference/sharedMemory.types Updated type annotations to show specific numeric literals for BYTES_PER_ELEMENT
tests/baselines/reference/es2024SharedMemory.types Updated type annotations to show specific numeric literals for BYTES_PER_ELEMENT

@jakebailey
Copy link
Member

@typescript-bot test it

@typescript-bot
Copy link
Collaborator

typescript-bot commented Feb 6, 2026

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.

Everything looks the same!

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/59567/merge:

There were infrastructure failures potentially unrelated to your change:

  • 1 instance of "Git clone failed"

Otherwise...

Everything looks good!

@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 3 3 ~ ~ ~ p=1.000 n=6
Symbols 82,521 82,521 ~ ~ ~ p=1.000 n=6
Types 125,280 125,280 ~ ~ ~ p=1.000 n=6
Memory used 275,528k (± 0.66%) 275,553k (± 0.65%) ~ 274,324k 277,888k p=0.689 n=6
Parse Time 1.29s (± 0.65%) 1.30s (± 0.75%) ~ 1.29s 1.31s p=0.256 n=6
Bind Time 0.75s (± 0.54%) 0.76s (± 0.72%) ~ 0.75s 0.76s p=0.282 n=6
Check Time 14.10s (± 0.40%) 14.09s (± 0.59%) ~ 14.03s 14.25s p=0.573 n=6
Emit Time 2.62s (± 0.37%) 2.65s (± 0.85%) ~ 2.61s 2.67s p=0.072 n=6
Total Time 18.77s (± 0.30%) 18.80s (± 0.55%) ~ 18.70s 18.99s p=1.000 n=6
angular-1 - node (v18.15.0, x64)
Errors 3 3 ~ ~ ~ p=1.000 n=6
Symbols 955,823 955,928 +105 (+ 0.01%) ~ ~ p=0.001 n=6
Types 415,853 415,912 +59 (+ 0.01%) ~ ~ p=0.001 n=6
Memory used 1,254,753k (± 0.00%) 1,254,899k (± 0.01%) +146k (+ 0.01%) 1,254,802k 1,255,051k p=0.020 n=6
Parse Time 6.58s (± 0.49%) 6.58s (± 0.76%) ~ 6.50s 6.64s p=0.810 n=6
Bind Time 1.97s (± 0.38%) 1.97s (± 0.21%) ~ 1.96s 1.97s p=0.389 n=6
Check Time 32.46s (± 0.23%) 32.51s (± 0.28%) ~ 32.37s 32.63s p=0.173 n=6
Emit Time 15.02s (± 0.38%) 14.93s (± 0.32%) -0.09s (- 0.57%) 14.86s 14.99s p=0.030 n=6
Total Time 56.03s (± 0.25%) 56.00s (± 0.11%) ~ 55.92s 56.10s p=0.335 n=6
mui-docs - node (v18.15.0, x64)
Errors 11,439 11,439 ~ ~ ~ p=1.000 n=6
Symbols 2,703,113 2,703,113 ~ ~ ~ p=1.000 n=6
Types 931,060 931,060 ~ ~ ~ p=1.000 n=6
Memory used 3,039,018k (± 0.00%) 3,039,088k (± 0.00%) +71k (+ 0.00%) 3,039,020k 3,039,164k p=0.045 n=6
Parse Time 8.51s (± 0.14%) 8.52s (± 0.19%) ~ 8.51s 8.55s p=0.458 n=6
Bind Time 2.30s (± 0.71%) 2.31s (± 0.36%) ~ 2.29s 2.31s p=0.753 n=6
Check Time 92.96s (± 0.43%) 92.93s (± 0.33%) ~ 92.49s 93.32s p=0.689 n=6
Emit Time 0.32s (± 1.28%) 0.32s (± 2.65%) ~ 0.30s 0.32s p=0.527 n=6
Total Time 104.09s (± 0.38%) 104.07s (± 0.29%) ~ 103.65s 104.44s p=0.689 n=6
self-build-src - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 1,252,789 1,252,827 +38 (+ 0.00%) ~ ~ p=0.001 n=6
Types 259,991 259,878 -113 (- 0.04%) ~ ~ p=0.001 n=6
Memory used 2,455,040k (± 6.06%) 2,455,088k (± 6.06%) ~ 2,393,166k 2,759,216k p=0.810 n=6
Parse Time 5.13s (± 0.69%) 5.15s (± 1.64%) ~ 5.05s 5.26s p=0.809 n=6
Bind Time 1.83s (± 1.41%) 1.83s (± 1.31%) ~ 1.82s 1.88s p=0.932 n=6
Check Time 35.54s (± 0.60%) 35.48s (± 0.60%) ~ 35.07s 35.66s p=0.873 n=6
Emit Time 2.97s (± 0.85%) 3.01s (± 2.50%) ~ 2.89s 3.11s p=0.173 n=6
Total Time 45.49s (± 0.51%) 45.49s (± 0.59%) ~ 45.12s 45.82s p=0.936 n=6
self-build-src-public-api - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 1,252,789 1,252,827 +38 (+ 0.00%) ~ ~ p=0.001 n=6
Types 259,991 259,878 -113 (- 0.04%) ~ ~ p=0.001 n=6
Memory used 3,190,542k (± 0.02%) 3,190,208k (± 0.03%) ~ 3,188,651k 3,191,369k p=0.378 n=6
Parse Time 8.44s (± 0.87%) 8.43s (± 1.33%) ~ 8.27s 8.57s p=0.810 n=6
Bind Time 2.73s (± 1.12%) 2.74s (± 1.21%) ~ 2.71s 2.80s p=0.872 n=6
Check Time 53.40s (± 0.45%) 53.35s (± 0.28%) ~ 53.15s 53.53s p=0.810 n=6
Emit Time 4.31s (± 1.78%) 4.42s (± 1.86%) ~ 4.29s 4.54s p=0.054 n=6
Total Time 68.89s (± 0.32%) 68.94s (± 0.26%) ~ 68.80s 69.23s p=0.810 n=6
self-compiler - node (v18.15.0, x64)
Errors 0 0 ~ ~ ~ p=1.000 n=6
Symbols 264,703 264,723 +20 (+ 0.01%) ~ ~ p=0.001 n=6
Types 104,091 104,055 -36 (- 0.03%) ~ ~ p=0.001 n=6
Memory used 443,710k (± 0.01%) 443,660k (± 0.02%) ~ 443,580k 443,743k p=0.336 n=6
Parse Time 3.52s (± 0.80%) 3.52s (± 0.89%) ~ 3.47s 3.55s p=0.687 n=6
Bind Time 1.37s (± 0.85%) 1.37s (± 1.26%) ~ 1.35s 1.40s p=0.561 n=6
Check Time 19.17s (± 0.50%) 19.18s (± 0.20%) ~ 19.12s 19.22s p=0.628 n=6
Emit Time 1.55s (± 0.82%) 1.55s (± 0.82%) ~ 1.53s 1.56s p=1.000 n=6
Total Time 25.60s (± 0.39%) 25.61s (± 0.13%) ~ 25.58s 25.67s p=0.514 n=6
ts-pre-modules - node (v18.15.0, x64)
Errors 271 271 ~ ~ ~ p=1.000 n=6
Symbols 225,118 225,135 +17 (+ 0.01%) ~ ~ p=0.001 n=6
Types 93,554 93,521 -33 (- 0.04%) ~ ~ p=0.001 n=6
Memory used 370,521k (± 0.01%) 370,514k (± 0.01%) ~ 370,475k 370,545k p=1.000 n=6
Parse Time 2.83s (± 1.72%) 2.86s (± 0.85%) ~ 2.82s 2.89s p=0.147 n=6
Bind Time 1.63s (± 1.05%) 1.65s (± 0.97%) ~ 1.63s 1.67s p=0.120 n=6
Check Time 17.39s (± 0.23%) 17.48s (± 0.75%) ~ 17.36s 17.67s p=0.575 n=6
Emit Time 0.00s 0.00s ~ ~ ~ p=1.000 n=6
Total Time 21.85s (± 0.20%) 21.99s (± 0.68%) ~ 21.82s 22.18s p=0.078 n=6
vscode - node (v18.15.0, x64)
Errors 11 11 ~ ~ ~ p=1.000 n=6
Symbols 4,221,097 4,220,890 -207 (- 0.00%) ~ ~ p=0.001 n=6
Types 1,340,206 1,339,938 -268 (- 0.02%) ~ ~ p=0.001 n=6
Memory used 4,015,333k (± 0.00%) 4,015,014k (± 0.01%) -319k (- 0.01%) 4,014,825k 4,015,451k p=0.045 n=6
Parse Time 16.29s (± 0.77%) 16.19s (± 0.69%) ~ 16.03s 16.36s p=0.128 n=6
Bind Time 5.49s (± 0.27%) 5.84s (±14.49%) ~ 5.46s 7.57s p=0.568 n=6
Check Time 121.16s (± 2.66%) 123.02s (± 3.67%) ~ 115.21s 129.26s p=0.575 n=6
Emit Time 47.71s (± 5.98%) 52.11s (±17.28%) ~ 44.91s 67.87s p=0.810 n=6
Total Time 190.64s (± 1.63%) 197.16s (± 5.98%) ~ 189.99s 220.72s p=0.230 n=6
webpack - node (v18.15.0, x64)
Errors 41 41 ~ ~ ~ p=1.000 n=6
Symbols 402,249 402,141 -108 (- 0.03%) ~ ~ p=0.001 n=6
Types 178,120 177,920 -200 (- 0.11%) ~ ~ p=0.001 n=6
Memory used 559,063k (± 0.01%) 558,808k (± 0.03%) -254k (- 0.05%) 558,671k 559,117k p=0.045 n=6
Parse Time 4.74s (± 0.52%) 4.76s (± 0.81%) ~ 4.70s 4.81s p=0.295 n=6
Bind Time 2.04s (± 1.26%) 2.03s (± 1.10%) ~ 1.99s 2.06s p=0.277 n=6
Check Time 24.41s (± 0.82%) 24.40s (± 1.24%) ~ 23.80s 24.59s p=0.521 n=6
Emit Time 0.01s (±109.43%) 0.00s (±244.70%) ~ 0.00s 0.01s p=0.282 n=6
Total Time 31.20s (± 0.67%) 31.19s (± 1.01%) ~ 30.57s 31.41s p=0.810 n=6
xstate-main - node (v18.15.0, x64)
Errors 30 30 ~ ~ ~ p=1.000 n=6
Symbols 731,941 731,941 ~ ~ ~ p=1.000 n=6
Types 219,279 219,279 ~ ~ ~ p=1.000 n=6
Memory used 635,992k (± 0.01%) 635,927k (± 0.01%) ~ 635,827k 636,016k p=0.173 n=6
Parse Time 4.58s (± 0.39%) 4.60s (± 0.79%) ~ 4.55s 4.64s p=0.418 n=6
Bind Time 1.50s (± 0.27%) 1.49s (± 0.69%) ~ 1.48s 1.51s p=0.257 n=6
Check Time 22.10s (± 0.23%) 22.09s (± 0.33%) ~ 22.02s 22.23s p=0.573 n=6
Emit Time 0.00s (±244.70%) 0.00s ~ ~ ~ p=0.405 n=6
Total Time 28.18s (± 0.18%) 28.19s (± 0.28%) ~ 28.07s 28.30s 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/59567/merge:

Everything looks good!

@RyanCavanaugh RyanCavanaugh added this to the Post-7.0 lib candidates milestone Mar 24, 2026
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: Needs merge

Development

Successfully merging this pull request may close these issues.

Suggestion: use numeric literals for BYTES_PER_ELEMENT

5 participants