Skip to content

Key deferred indexed access types by their persistent access flags - #65450

Open
Jake Bailey (jakebailey) wants to merge 2 commits into
microsoft:mainfrom
jakebailey:indexed-access-key-flags
Open

Jake Bailey (jakebailey) wants to merge 2 commits into
microsoft:mainfrom
jakebailey:indexed-access-key-flags

Conversation

@jakebailey

Copy link
Copy Markdown
Member

See #65064 (comment)

This is just a porting bug

Strada (src/compiler/checker.ts, in getIndexedAccessTypeOrUndefined):

// Defer the operation by creating an indexed access type.
const persistentAccessFlags = accessFlags & AccessFlags.Persistent;
const id = objectType.id + "," + indexType.id + "," + persistentAccessFlags + getAliasId(aliasSymbol, aliasTypeArguments);
let type = indexedAccessTypes.get(id);
if (!type) {
    indexedAccessTypes.set(id, type = createIndexedAccessType(objectType, indexType, persistentAccessFlags, aliasSymbol, aliasTypeArguments));
}
return type;

Go on main (tsc/internal/checker/checker.go:27786):

// Defer the operation by creating an indexed access type.
persistentAccessFlags := accessFlags & AccessFlagsPersistent
key := getIndexedAccessKey(objectType, indexType, accessFlags, alias)   // ← should be persistentAccessFlags
t := c.indexedAccessTypes[key]
if t == nil {
    t = c.newIndexedAccessType(objectType, indexType, persistentAccessFlags)
    t.alias = alias
    c.indexedAccessTypes[key] = t
}
return t

The fix changes that one argument back to persistentAccessFlags.

Reading obj[key] with a key of a union of type parameters gives a type
that should be identical to T[K1 | K2] written in a type annotation. It
is reported as not assignable to it, which TypeScript 6.0 accepts.
An indexed access type keeps only the persistent access flags, but the
cache of deferred indexed access types was keyed by all of them, so an
access made in an expression created a second type identical to the one
written in a type annotation. Relating the two then could not use their
identity, and simplified the source for reading and the target for
writing, which are not related when the index is a union. TypeScript 6.0
keys the cache by the persistent access flags.
@jakebailey

Copy link
Copy Markdown
Member Author

TypeScript Bot (@typescript-bot) test it

@typescript-automation

typescript-automation Bot commented Nov 12, 2026 •

Copy link
Copy Markdown
Contributor

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

Copilot AI 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.

🟢 Approval recommended

No active review issues are reported for the indexed-access cache-key fix and its regression coverage.

No open issues 🎉

What changed in this PR

Fixes a porting bug in the native TypeScript checker by using persistent access flags consistently when caching deferred indexed access types.

Changes:

  • Aligns the cache key with the flags stored on the indexed access type.
  • Adds regression cases for generic union-key accesses, with expected type and symbol baselines.
File Description
tsc/​testdata/​tests/​cases/​compiler/​indexedAccessUnionKeyIdentity.ts Adds regression coverage for indexed access type identity.
tsc/​testdata/​baselines/​reference/​compiler/​indexedAccessUnionKeyIdentity.types Records expected types for the regression cases.
tsc/​testdata/​baselines/​reference/​compiler/​indexedAccessUnionKeyIdentity.symbols Records expected symbol bindings for the regression cases.
tsc/​internal/​checker/​checker.go Uses persistent access flags in the deferred indexed access cache key.

Review effort: Balanced

@typescript-automation

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey) Here are the results of running the user tests with tsc comparing baseline and pr:

Everything looks good!

@typescript-automation

Copy link
Copy Markdown
Contributor

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

Everything looks the same!

You can check the log here.

@typescript-automation

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
Metric baseline pr Delta Best Worst p-value
Compiler-Unions - native
Errors 41 41 ~ ~ ~ p=1.000 n=40
Symbols 88,466 88,466 ~ ~ ~ p=1.000 n=40
Types 79,607 79,606 -1 (- 0.00%) ~ ~ p=0.000 n=40
Memory Used 106,397k (± 0.02%) 106,403k (± 0.02%) ~ 106,285k 106,588k p=0.685 n=40
Memory Allocs 1,261,904 (± 0.00%) 1,261,906 (± 0.01%) ~ 1,261,452 1,262,314 p=0.847 n=40
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=40
Parse Time 0.022s (± 1.80%) 0.022s (± 1.90%) ~ 0.019s 0.024s p=0.325 n=40
Bind Time 0.008s (± 3.75%) 0.008s (± 3.51%) ~ 0.006s 0.010s p=0.306 n=40
Check Time 0.201s (± 0.58%) 0.202s (± 1.26%) ~ 0.193s 0.248s p=0.988 n=40
Emit Time 0.130s (± 1.79%) 0.129s (± 0.58%) ~ 0.125s 0.138s p=0.455 n=40
Total Time 0.364s (± 0.72%) 0.363s (± 0.79%) ~ 0.356s 0.415s p=0.557 n=40
angular-1 - native
Errors 63 63 ~ ~ ~ p=1.000 n=40
Symbols 756,637 756,637 ~ ~ ~ p=1.000 n=40
Types 549,451 549,423 -28 (- 0.01%) ~ ~ p=0.000 n=40
Memory Used 643,887k (± 0.01%) 643,885k (± 0.01%) ~ 643,298k 644,620k p=0.637 n=40
Memory Allocs 9,554,330 (± 0.02%) 9,556,650 (± 0.09%) ~ 9,548,789 9,717,958 p=0.695 n=40
Config Time 0.007s (± 2.02%) 0.007s (± 2.16%) ~ 0.006s 0.007s p=0.158 n=40
Parse Time 0.115s (± 2.45%) 0.118s (± 3.24%) ~ 0.105s 0.163s p=0.183 n=40
Bind Time 0.041s (± 6.62%) 0.041s (± 6.72%) ~ 0.034s 0.067s p=0.872 n=40
Check Time 0.618s (± 0.82%) 0.617s (± 0.99%) ~ 0.588s 0.685s p=0.637 n=40
Emit Time 0.390s (± 0.51%) 0.389s (± 0.39%) ~ 0.383s 0.402s p=0.694 n=40
Total Time 1.184s (± 0.41%) 1.186s (± 0.45%) ~ 1.157s 1.238s p=0.755 n=40
arktype - native
Errors 0 0 ~ ~ ~ p=1.000 n=40
Symbols 686,116 686,116 ~ ~ ~ p=1.000 n=40
Types 939,797 939,781 -16 (- 0.00%) ~ ~ p=0.000 n=40
Memory Used 475,955k (± 0.01%) 475,948k (± 0.01%) ~ 475,569k 476,164k p=0.646 n=40
Memory Allocs 12,063,922 (± 0.01%) 12,065,842 (± 0.02%) ~ 12,058,844 12,081,942 p=0.314 n=40
Config Time 0.001s 0.001s ~ ~ ~ p=1.000 n=40
Parse Time 0.039s (± 2.39%) 0.040s (± 2.61%) ~ 0.033s 0.048s p=0.164 n=40
Bind Time 0.013s (± 5.54%) 0.013s (± 5.62%) ~ 0.010s 0.020s p=1.000 n=40
Check Time 0.833s (± 0.38%) 0.831s (± 0.42%) ~ 0.804s 0.851s p=0.323 n=40
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=40
Total Time 0.912s (± 0.29%) 0.912s (± 0.34%) ~ 0.886s 0.933s p=0.795 n=40
class-transformer - native
Errors 0 0 ~ ~ ~ p=1.000 n=40
Symbols 45,376 45,376 ~ ~ ~ p=1.000 n=40
Types 7,573 7,573 ~ ~ ~ p=1.000 n=40
Memory Used 27,746k (± 0.02%) 27,744k (± 0.02%) ~ 27,703k 27,775k p=0.443 n=40
Memory Allocs 248,577 (± 0.04%) 248,479 (± 0.04%) ~ 247,953 249,454 p=0.192 n=40
Config Time 0.001s (±17.67%) 0.001s (±19.97%) ~ 0.000s 0.001s p=0.543 n=40
Parse Time 0.011s (± 2.87%) 0.011s (± 2.59%) ~ 0.008s 0.012s p=0.855 n=40
Bind Time 0.003s (± 8.57%) 0.003s (± 7.17%) 🟩-0.000s (-13.40%) 0.002s 0.005s p=0.021 n=40
Check Time 0.008s (± 4.30%) 0.008s (± 3.36%) ~ 0.006s 0.009s p=0.399 n=40
Emit Time 0.007s (± 4.20%) 0.007s (± 3.84%) ~ 0.006s 0.009s p=0.418 n=40
Total Time 0.031s (± 1.82%) 0.030s (± 1.32%) ~ 0.026s 0.032s p=0.095 n=40
effect - native
Errors 12 12 ~ ~ ~ p=1.000 n=40
Symbols 1,235,134 1,235,134 ~ ~ ~ p=1.000 n=40
Types 893,436 893,420 -16 (- 0.00%) ~ ~ p=0.000 n=40
Memory Used 941,319k (± 0.02%) 941,327k (± 0.02%) ~ 940,267k 942,470k p=0.826 n=40
Memory Allocs 12,629,628 (± 0.04%) 12,629,770 (± 0.04%) ~ 12,611,673 12,684,964 p=0.868 n=40
Config Time 0.002s (± 7.23%) 0.002s (± 5.87%) ~ 0.002s 0.004s p=0.184 n=40
Parse Time 0.154s (± 1.32%) 0.153s (± 1.18%) ~ 0.140s 0.164s p=0.350 n=40
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=40
Check Time 0.907s (± 0.67%) 0.910s (± 1.12%) ~ 0.851s 1.045s p=1.000 n=40
Emit Time 0.504s (± 1.46%) 0.497s (± 1.20%) ~ 0.435s 0.541s p=0.183 n=40
Total Time 1.664s (± 0.67%) 1.658s (± 0.81%) ~ 1.553s 1.833s p=0.248 n=40
mui-docs - native
Errors 11,405 11,405 ~ ~ ~ p=1.000 n=40
Symbols 3,782,394 3,782,394 ~ ~ ~ p=1.000 n=40
Types 1,355,778 1,355,774 -4 (- 0.00%) ~ ~ p=0.000 n=40
Memory Used 1,679,300k (± 0.05%) 1,678,800k (± 0.05%) ~ 1,671,550k 1,684,194k p=0.599 n=40
Memory Allocs 25,608,428 (± 0.04%) 25,605,989 (± 0.06%) ~ 25,531,551 25,767,365 p=0.510 n=40
Config Time 0.006s (± 0.80%) 0.006s (± 0.07%) ~ 0.006s 0.006s p=1.000 n=40
Parse Time 0.268s (± 2.12%) 0.268s (± 1.82%) ~ 0.237s 0.314s p=0.917 n=40
Bind Time 0.001s (± 1.13%) 0.001s (±13.09%) ~ 0.001s 0.004s p=1.000 n=40
Check Time 2.788s (± 0.43%) 2.785s (± 0.61%) ~ 2.720s 3.033s p=0.563 n=40
Emit Time 0.237s (± 0.84%) 0.239s (± 0.96%) ~ 0.223s 0.266s p=0.451 n=40
Total Time 3.769s (± 0.37%) 3.767s (± 0.64%) ~ 3.690s 4.161s p=0.295 n=40
sentry - native
Errors 2 2 ~ ~ ~ p=1.000 n=40
Symbols 4,793,266 4,793,266 ~ ~ ~ p=1.000 n=40
Types 2,607,066 2,607,044 -22 (- 0.00%) ~ ~ p=0.000 n=40
Memory Used 2,797,956k (± 0.03%) 2,798,407k (± 0.03%) ~ 2,795,204k 2,807,027k p=0.283 n=40
Memory Allocs 74,652,663 (± 0.05%) 74,674,545 (± 0.06%) ~ 74,321,442 75,172,325 p=0.501 n=40
Config Time 0.018s (± 0.82%) 0.018s (± 1.16%) ~ 0.017s 0.020s p=0.977 n=40
Parse Time 0.454s (± 3.24%) 0.455s (± 2.80%) ~ 0.401s 0.625s p=0.867 n=40
Bind Time 0.135s (± 4.81%) 0.140s (± 6.32%) ~ 0.122s 0.219s p=0.856 n=40
Check Time 6.425s (± 0.44%) 6.417s (± 0.47%) ~ 6.226s 6.684s p=0.545 n=40
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=40
Total Time 7.081s (± 0.41%) 7.079s (± 0.48%) ~ 6.899s 7.505s p=0.572 n=40
social-app - native
Errors 0 0 ~ ~ ~ p=1.000 n=40
Symbols 1,883,060 1,883,060 ~ ~ ~ p=1.000 n=40
Types 1,158,093 1,158,079 -14 (- 0.00%) ~ ~ p=0.000 n=40
Memory Used 952,511k (± 0.01%) 952,326k (± 0.01%) -130k (- 0.01%) 951,271k 952,999k p=0.022 n=40
Memory Allocs 13,439,811 (± 0.09%) 13,447,447 (± 0.09%) ~ 13,387,097 13,536,169 p=0.444 n=40
Config Time 0.005s (± 2.57%) 0.005s (± 2.51%) ~ 0.005s 0.006s p=0.375 n=40
Parse Time 0.150s (± 1.86%) 0.150s (± 1.71%) ~ 0.138s 0.172s p=0.507 n=40
Bind Time 0.039s (± 6.01%) 0.041s (± 5.18%) ~ 0.033s 0.059s p=0.054 n=40
Check Time 1.353s (± 0.51%) 1.349s (± 0.55%) ~ 1.309s 1.400s p=0.247 n=40
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=40
Total Time 1.564s (± 0.38%) 1.565s (± 0.43%) ~ 1.528s 1.620s p=0.874 n=40
strada-build-src - native
Errors 0 0 ~ ~ ~ p=1.000 n=40
Symbols 1,184,972 1,184,972 ~ ~ ~ p=1.000 n=40
Types 438,823 438,812 -11 (- 0.00%) ~ ~ p=0.000 n=40
Memory Used 1,154,800k (± 0.12%) 1,157,759k (± 0.20%) ~ 1,146,667k 1,178,595k p=0.060 n=40
Memory Allocs 47,847,317 (± 0.07%) 47,866,110 (± 0.06%) ~ 47,686,278 48,062,943 p=0.460 n=40
Config Time 0.002s (±12.33%) 0.002s (± 9.72%) ~ 0.000s 0.003s p=0.980 n=40
Parse Time 0.135s (± 1.22%) 0.134s (± 1.19%) ~ 0.122s 0.144s p=0.525 n=40
Bind Time 0.000s 0.000s (±196.00%) ~ 0.000s 0.001s p=0.330 n=40
Check Time 0.784s (± 0.26%) 0.784s (± 0.54%) ~ 0.767s 0.832s p=0.872 n=40
Emit Time 0.135s (± 1.10%) 0.137s (± 1.24%) ~ 0.129s 0.154s p=0.229 n=40
Total Time 9.116s (± 0.23%) 9.154s (± 0.47%) ~ 9.009s 9.571s p=0.428 n=40
strada-compiler - native
Errors 0 0 ~ ~ ~ p=1.000 n=40
Symbols 263,481 263,481 ~ ~ ~ p=1.000 n=40
Types 196,103 196,095 -8 (- 0.00%) ~ ~ p=0.000 n=40
Memory Used 221,546k (± 0.02%) 221,495k (± 0.01%) -50k (- 0.02%) 221,220k 221,652k p=0.048 n=40
Memory Allocs 2,412,351 (± 0.01%) 2,412,400 (± 0.01%) ~ 2,409,660 2,414,520 p=0.627 n=40
Config Time 0.000s (±196.00%) 0.000s (±110.22%) ~ 0.000s 0.001s p=0.314 n=40
Parse Time 0.049s (± 2.12%) 0.051s (± 7.24%) ~ 0.041s 0.100s p=0.862 n=40
Bind Time 0.000s 0.000s ~ ~ ~ p=1.000 n=40
Check Time 0.371s (± 0.72%) 0.370s (± 0.46%) ~ 0.357s 0.387s p=0.763 n=40
Emit Time 0.050s (± 3.81%) 0.049s (± 3.78%) ~ 0.040s 0.062s p=0.469 n=40
Total Time 0.496s (± 0.73%) 0.498s (± 0.94%) ~ 0.476s 0.553s p=0.624 n=40
t3code-server - native
Errors 0 0 ~ ~ ~ p=1.000 n=40
Symbols 4,349,937 4,349,937 ~ ~ ~ p=1.000 n=40
Types 3,042,465 3,042,462 -3 (- 0.00%) ~ ~ p=0.000 n=40
Memory Used 2,394,841k (± 0.02%) 2,395,634k (± 0.03%) ~ 2,392,799k 2,402,525k p=0.211 n=40
Memory Allocs 37,065,577 (± 0.03%) 37,067,783 (± 0.02%) ~ 37,001,505 37,122,583 p=0.889 n=40
Config Time 0.002s (± 5.89%) 0.002s (± 6.38%) ~ 0.002s 0.003s p=0.663 n=40
Parse Time 0.248s (± 1.62%) 0.244s (± 1.45%) ~ 0.216s 0.266s p=0.127 n=40
Bind Time 0.088s (± 7.26%) 0.090s (± 7.26%) ~ 0.072s 0.142s p=0.610 n=40
Check Time 5.864s (± 0.51%) 5.883s (± 0.94%) ~ 5.559s 6.776s p=0.874 n=40
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=40
Total Time 6.216s (± 0.50%) 6.233s (± 0.89%) ~ 5.898s 7.114s p=0.868 n=40
tanstack-router - native
Errors 1 1 ~ ~ ~ p=1.000 n=40
Symbols 570,149 570,149 ~ ~ ~ p=1.000 n=40
Types 396,551 396,548 -3 (- 0.00%) ~ ~ p=0.000 n=40
Memory Used 315,267k (± 0.01%) 315,234k (± 0.01%) ~ 315,015k 315,427k p=0.295 n=40
Memory Allocs 4,332,328 (± 0.09%) 4,335,314 (± 0.12%) ~ 4,320,785 4,400,055 p=0.253 n=40
Config Time 0.001s 0.001s ~ ~ ~ p=1.000 n=40
Parse Time 0.040s (± 2.45%) 0.039s (± 2.86%) ~ 0.033s 0.048s p=0.143 n=40
Bind Time 0.013s (± 7.17%) 0.013s (± 7.79%) ~ 0.010s 0.023s p=0.538 n=40
Check Time 0.460s (± 0.74%) 0.459s (± 0.91%) ~ 0.444s 0.521s p=0.480 n=40
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=40
Total Time 0.532s (± 0.72%) 0.528s (± 0.80%) ~ 0.511s 0.587s p=0.149 n=40
ts-pre-modules - native
Errors 87 87 ~ ~ ~ p=1.000 n=40
Symbols 231,607 231,607 ~ ~ ~ p=1.000 n=40
Types 181,163 181,149 -14 (- 0.01%) ~ ~ p=0.000 n=40
Memory Used 190,838k (± 0.01%) 190,842k (± 0.01%) ~ 190,682k 190,981k p=0.868 n=40
Memory Allocs 1,310,135 (± 0.01%) 1,310,212 (± 0.01%) ~ 1,309,255 1,311,414 p=0.554 n=40
Config Time 0.000s 0.000s ~ ~ ~ p=1.000 n=40
Parse Time 0.046s (± 6.23%) 0.045s (± 2.20%) ~ 0.040s 0.052s p=0.600 n=40
Bind Time 0.021s (± 3.91%) 0.020s (± 3.09%) ~ 0.017s 0.025s p=0.118 n=40
Check Time 0.306s (± 1.22%) 0.303s (± 0.58%) ~ 0.289s 0.314s p=0.264 n=40
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=40
Total Time 0.380s (± 1.77%) 0.375s (± 0.48%) ~ 0.361s 0.390s p=0.151 n=40
vscode - native
Errors 0 0 ~ ~ ~ p=1.000 n=40
Symbols 8,172,850 8,172,850 ~ ~ ~ p=1.000 n=40
Types 4,755,502 4,755,363 -139 (- 0.00%) ~ ~ p=0.000 n=40
Memory Used 5,461,043k (± 0.01%) 5,460,605k (± 0.01%) ~ 5,457,103k 5,465,200k p=0.242 n=40
Memory Allocs 61,073,362 (± 0.02%) 61,069,826 (± 0.01%) ~ 61,045,586 61,160,885 p=0.618 n=40
Config Time 0.023s (± 0.64%) 0.023s (± 0.58%) ~ 0.022s 0.024s p=0.146 n=40
Parse Time 0.901s (± 1.42%) 0.898s (± 1.18%) ~ 0.802s 0.984s p=0.837 n=40
Bind Time 0.323s (± 4.62%) 0.324s (± 6.02%) ~ 0.285s 0.527s p=0.634 n=40
Check Time 7.346s (± 0.51%) 7.370s (± 0.48%) ~ 7.133s 7.675s p=0.590 n=40
Emit Time 2.351s (± 5.33%) 2.258s (± 4.94%) ~ 1.919s 3.034s p=0.452 n=40
Total Time 11.011s (± 0.87%) 10.931s (± 0.85%) ~ 10.611s 11.586s p=0.301 n=40
webpack - native
Errors 618 618 ~ ~ ~ p=1.000 n=40
Symbols 910,313 910,313 ~ ~ ~ p=1.000 n=40
Types 636,663 636,598 -65 (- 0.01%) ~ ~ p=0.000 n=40
Memory Used 666,707k (± 0.01%) 666,715k (± 0.01%) ~ 666,133k 667,254k p=0.725 n=40
Memory Allocs 6,228,354 (± 0.08%) 6,227,147 (± 0.10%) ~ 6,210,324 6,309,748 p=0.666 n=40
Config Time 0.003s 0.003s ~ ~ ~ p=1.000 n=40
Parse Time 0.124s (± 1.48%) 0.124s (± 2.11%) ~ 0.111s 0.149s p=0.763 n=40
Bind Time 0.039s (± 4.89%) 0.042s (± 6.62%) ~ 0.033s 0.061s p=0.068 n=40
Check Time 1.097s (± 0.53%) 1.093s (± 0.53%) ~ 1.062s 1.144s p=0.287 n=40
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=40
Total Time 1.287s (± 0.38%) 1.286s (± 0.41%) ~ 1.252s 1.324s p=0.633 n=40
xstate-main - native
Errors 1 1 ~ ~ ~ p=1.000 n=40
Symbols 3,931,440 3,931,440 ~ ~ ~ p=1.000 n=40
Types 3,960,073 3,960,045 -28 (- 0.00%) ~ ~ p=0.000 n=40
Memory Used 2,137,563k (± 0.01%) 2,137,601k (± 0.01%) ~ 2,136,921k 2,138,748k p=0.627 n=40
Memory Allocs 42,225,911 (± 0.01%) 42,221,814 (± 0.01%) ~ 42,195,653 42,237,732 p=0.097 n=40
Config Time 0.002s 0.002s ~ ~ ~ p=1.000 n=40
Parse Time 0.108s (± 1.61%) 0.105s (± 1.68%) -0.003s (- 2.41%) 0.093s 0.115s p=0.036 n=40
Bind Time 0.039s (± 5.72%) 0.040s (± 7.34%) ~ 0.032s 0.060s p=0.948 n=40
Check Time 4.154s (± 0.52%) 4.187s (± 0.62%) +0.031s (+ 0.74%) 4.031s 4.479s p=0.030 n=40
Emit Time 0.000s 0.000s ~ ~ ~ p=1.000 n=40
Total Time 4.311s (± 0.48%) 4.341s (± 0.59%) +0.028s (+ 0.65%) 4.192s 4.641s p=0.045 n=40
System info unknown
Hosts
  • native
Scenarios
  • Compiler-Unions - native
  • angular-1 - native
  • arktype - native
  • class-transformer - native
  • effect - native
  • mui-docs - native
  • sentry - native
  • social-app - native
  • strada-build-src - native
  • strada-compiler - native
  • t3code-server - native
  • tanstack-router - native
  • ts-pre-modules - native
  • vscode - native
  • webpack - native
  • xstate-main - native
Benchmark Name Iterations
Current pr 20
Baseline baseline 20

Developer Information:

Download Benchmarks

@typescript-automation

Copy link
Copy Markdown
Contributor

Jake Bailey (@jakebailey) Here are the results of running the top 400 repos with tsc comparing baseline and pr:

Everything looks good!

This branch has not been deployed

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

Labels

Author: Team For Uncommitted Bug PR for untriaged, rejected, closed or missing bug

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants