Skip to content

Cache discriminated contextual types - #58372

Merged
Anders Hejlsberg (ahejlsberg) merged 6 commits into
mainfrom
cacheDiscriminatedContextualTypes
Apr 30, 2024
Merged

Cache discriminated contextual types#58372
Anders Hejlsberg (ahejlsberg) merged 6 commits into
mainfrom
cacheDiscriminatedContextualTypes

Conversation

@ahejlsberg

Copy link
Copy Markdown
Member

While researching another issue, Jake Bailey (@jakebailey) noticed this statement takes an exceedingly long time to type check. With the caching added in this PR, the check time for the statement drops from 250ms to about zero on my machine.

@ahejlsberg

Copy link
Copy Markdown
MemberAuthor

@jakebailey

Copy link
Copy Markdown
Member

TypeScript Bot (@typescript-bot) test it

Sorry, the new function app we had to deploy has some scaling issues being worked out.

@typescript-bot

TypeScript Bot (typescript-bot) commented Apr 30, 2024

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.

Everything looks the same!

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 comparing main and refs/pull/58372/merge:

Everything looks good!

@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)
Errors3030~~~p=1.000 n=6
Symbols62,15462,154~~~p=1.000 n=6
Types50,27350,273~~~p=1.000 n=6
Memory used192,256k (± 0.07%)193,409k (± 0.96%)~192,208k195,802kp=0.378 n=6
Parse Time1.29s (± 1.82%)1.29s (± 1.80%)~1.25s1.31sp=0.935 n=6
Bind Time0.72s0.72s~~~p=1.000 n=6
Check Time9.57s (± 0.40%)9.53s (± 0.32%)~9.49s9.58sp=0.126 n=6
Emit Time2.62s (± 0.68%)2.63s (± 0.31%)~2.62s2.64sp=0.677 n=6
Total Time14.20s (± 0.28%)14.16s (± 0.25%)~14.13s14.22sp=0.171 n=6
angular-1 - node (v18.15.0, x64)
Errors55~~~p=1.000 n=6
Symbols945,322945,322~~~p=1.000 n=6
Types408,088408,088~~~p=1.000 n=6
Memory used1,222,131k (± 0.00%)1,222,776k (± 0.00%)+645k (+ 0.05%)1,222,725k1,222,846kp=0.005 n=6
Parse Time6.78s (± 0.30%)6.77s (± 0.22%)~6.75s6.79sp=0.289 n=6
Bind Time1.88s (± 0.62%)1.88s (± 0.29%)~1.87s1.88sp=0.498 n=6
Check Time31.34s (± 0.47%)31.34s (± 0.62%)~31.11s31.65sp=0.873 n=6
Emit Time14.74s (± 0.34%)14.73s (± 1.11%)~14.56s15.01sp=0.521 n=6
Total Time54.75s (± 0.30%)54.72s (± 0.39%)~54.45s54.96sp=0.936 n=6
mui-docs - node (v18.15.0, x64)
Errors55~~~p=1.000 n=6
Symbols1,955,9561,955,956~~~p=1.000 n=6
Types676,324676,324~~~p=1.000 n=6
Memory used1,754,529k (± 0.00%)1,757,311k (± 0.00%)+2,782k (+ 0.16%)1,757,287k1,757,337kp=0.005 n=6
Parse Time6.72s (± 0.33%)6.73s (± 0.11%)~6.72s6.74sp=1.000 n=6
Bind Time2.30s (± 0.51%)2.29s (± 0.24%)~2.29s2.30sp=0.859 n=6
Check Time56.80s (± 0.34%)55.92s (± 0.21%)-0.87s (- 1.54%)55.71s56.02sp=0.005 n=6
Emit Time0.14s (± 5.44%)0.13s (± 3.87%)~0.13s0.14sp=0.247 n=6
Total Time65.96s (± 0.32%)65.08s (± 0.18%)-0.87s (- 1.32%)64.87s65.18sp=0.005 n=6
self-build-src - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols1,215,7311,215,734+3 (+ 0.00%)~~p=0.001 n=6
Types257,647257,647~~~p=1.000 n=6
Memory used2,324,027k (± 0.03%)2,323,756k (± 0.02%)~2,323,216k2,324,229kp=0.298 n=6
Parse Time4.96s (± 1.09%)4.96s (± 1.00%)~4.91s5.05sp=0.936 n=6
Bind Time1.88s (± 1.10%)1.88s (± 0.22%)~1.88s1.89sp=0.246 n=6
Check Time34.01s (± 0.36%)33.33s (± 0.29%)-0.68s (- 2.00%)33.19s33.43sp=0.005 n=6
Emit Time2.59s (± 0.63%)2.61s (± 1.33%)~2.58s2.67sp=0.627 n=6
Total Time43.44s (± 0.25%)42.79s (± 0.26%)-0.64s (- 1.48%)42.58s42.87sp=0.005 n=6
self-build-src-public-api - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols1,215,7311,215,734+3 (+ 0.00%)~~p=0.001 n=6
Types257,647257,647~~~p=1.000 n=6
Memory used2,399,215k (± 0.03%)2,398,341k (± 0.00%)-874k (- 0.04%)2,398,239k2,398,435kp=0.005 n=6
Parse Time6.21s (± 0.57%)6.17s (± 0.69%)~6.11s6.23sp=0.169 n=6
Bind Time2.01s (± 0.91%)2.01s (± 1.62%)~1.97s2.06sp=0.935 n=6
Check Time40.51s (± 0.27%)39.87s (± 0.26%)-0.64s (- 1.57%)39.70s39.99sp=0.005 n=6
Emit Time3.12s (± 2.47%)3.14s (± 1.65%)~3.05s3.19sp=0.689 n=6
Total Time51.87s (± 0.26%)51.23s (± 0.16%)-0.63s (- 1.22%)51.11s51.33sp=0.005 n=6
self-compiler - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols256,206256,209+3 (+ 0.00%)~~p=0.001 n=6
Types103,653103,653~~~p=1.000 n=6
Memory used424,265k (± 0.01%)424,235k (± 0.01%)~424,201k424,297kp=0.230 n=6
Parse Time3.34s (± 1.17%)3.40s (± 3.34%)~3.33s3.63sp=0.418 n=6
Bind Time1.31s (± 0.75%)1.30s (± 0.90%)~1.28s1.31sp=0.177 n=6
Check Time18.32s (± 0.44%)17.74s (± 0.29%)🟩-0.58s (- 3.18%)17.68s17.81sp=0.005 n=6
Emit Time1.36s (± 1.77%)1.36s (± 2.37%)~1.33s1.41sp=0.936 n=6
Total Time24.34s (± 0.38%)23.80s (± 0.64%)-0.54s (- 2.20%)23.70s24.11sp=0.005 n=6
ts-pre-modules - node (v18.15.0, x64)
Errors3535~~~p=1.000 n=6
Symbols224,824224,824~~~p=1.000 n=6
Types93,39093,390~~~p=1.000 n=6
Memory used369,318k (± 0.01%)369,313k (± 0.02%)~369,248k369,422kp=0.521 n=6
Parse Time2.83s (± 1.53%)2.85s (± 0.69%)~2.81s2.86sp=0.195 n=6
Bind Time1.59s (± 0.69%)1.59s (± 1.17%)~1.57s1.62sp=0.510 n=6
Check Time15.72s (± 0.40%)15.61s (± 0.40%)-0.11s (- 0.71%)15.51s15.68sp=0.010 n=6
Emit Time0.00s0.00s~~~p=1.000 n=6
Total Time20.14s (± 0.41%)20.04s (± 0.40%)-0.10s (- 0.51%)19.92s20.16sp=0.044 n=6
vscode - node (v18.15.0, x64)
Errors44~~~p=1.000 n=6
Symbols2,799,5442,799,544~~~p=1.000 n=6
Types950,964950,964~~~p=1.000 n=6
Memory used2,927,257k (± 0.01%)2,928,489k (± 0.00%)+1,232k (+ 0.04%)2,928,315k2,928,557kp=0.005 n=6
Parse Time13.35s (± 0.42%)13.30s (± 0.23%)~13.27s13.35sp=0.126 n=6
Bind Time4.26s (± 1.92%)4.13s (± 1.96%)~4.08s4.29sp=0.050 n=6
Check Time73.00s (± 0.39%)73.22s (± 0.64%)~72.52s73.75sp=0.298 n=6
Emit Time20.08s (± 4.72%)20.93s (± 9.49%)~19.59s23.58sp=0.810 n=6
Total Time110.69s (± 1.03%)111.58s (± 1.77%)~110.01s114.72sp=0.471 n=6
webpack - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols265,858265,858~~~p=1.000 n=6
Types108,442108,442~~~p=1.000 n=6
Memory used410,472k (± 0.01%)410,410k (± 0.02%)~410,323k410,490kp=0.230 n=6
Parse Time4.76s (± 0.25%)4.76s (± 0.68%)~4.72s4.80sp=0.936 n=6
Bind Time2.06s (± 1.24%)2.06s (± 0.73%)~2.05s2.08sp=0.935 n=6
Check Time21.10s (± 0.53%)20.92s (± 0.26%)-0.17s (- 0.83%)20.85s21.01sp=0.013 n=6
Emit Time0.00s0.00s~~~p=1.000 n=6
Total Time27.92s (± 0.38%)27.74s (± 0.27%)-0.18s (- 0.64%)27.65s27.87sp=0.016 n=6
xstate-main - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols524,146524,146~~~p=1.000 n=6
Types178,732178,732~~~p=1.000 n=6
Memory used461,405k (± 0.02%)462,183k (± 0.01%)+779k (+ 0.17%)462,144k462,293kp=0.005 n=6
Parse Time3.90s (± 0.75%)3.90s (± 0.68%)~3.86s3.93sp=1.000 n=6
Bind Time1.47s (± 0.55%)1.47s (± 0.82%)~1.45s1.48sp=0.354 n=6
Check Time22.55s (± 0.97%)22.44s (± 0.65%)~22.21s22.59sp=0.229 n=6
Emit Time0.00s0.00s~~~p=1.000 n=6
Total Time27.92s (± 0.71%)27.81s (± 0.45%)~27.61s27.91sp=0.199 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

@jakebailey

Copy link
Copy Markdown
Member

Wow, that's actually significant., 3% on our self test (expected), but also 1.5% in mui-docs.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Honestly surprised we call this with the same arguments so many times - but I guess at least twice with the same args is basically guaranteed, since signature inference is 2-pass.

@ahejlsberg

Copy link
Copy Markdown
MemberAuthor

@typescript-bot

TypeScript Bot (typescript-bot) commented Apr 30, 2024

Copy link
Copy Markdown
Contributor

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

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

@typescript-bot

Copy link
Copy Markdown
Contributor

Anders Hejlsberg (@ahejlsberg)
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)
Errors3030~~~p=1.000 n=6
Symbols62,15462,154~~~p=1.000 n=6
Types50,27350,273~~~p=1.000 n=6
Memory used193,518k (± 0.92%)194,037k (± 1.02%)~192,208k196,008kp=1.000 n=6
Parse Time1.31s (± 0.96%)1.31s (± 0.64%)~1.29s1.31sp=0.735 n=6
Bind Time0.72s0.72s~~~p=1.000 n=6
Check Time9.55s (± 0.39%)9.55s (± 0.28%)~9.51s9.59sp=1.000 n=6
Emit Time2.62s (± 0.62%)2.63s (± 0.54%)~2.61s2.65sp=0.194 n=6
Total Time14.19s (± 0.39%)14.20s (± 0.18%)~14.16s14.23sp=1.000 n=6
angular-1 - node (v18.15.0, x64)
Errors55~~~p=1.000 n=6
Symbols945,322945,923+601 (+ 0.06%)~~p=0.001 n=6
Types408,088408,398+310 (+ 0.08%)~~p=0.001 n=6
Memory used1,222,099k (± 0.00%)1,222,740k (± 0.00%)+641k (+ 0.05%)1,222,660k1,222,828kp=0.005 n=6
Parse Time6.77s (± 0.76%)6.77s (± 0.46%)~6.75s6.83sp=0.807 n=6
Bind Time1.87s (± 0.44%)1.87s (± 0.52%)~1.86s1.88sp=0.862 n=6
Check Time31.45s (± 0.56%)31.26s (± 0.30%)~31.13s31.38sp=0.109 n=6
Emit Time14.63s (± 1.19%)14.74s (± 0.52%)~14.64s14.82sp=0.199 n=6
Total Time54.72s (± 0.49%)54.65s (± 0.30%)~54.46s54.86sp=0.809 n=6
mui-docs - node (v18.15.0, x64)
Errors55~~~p=1.000 n=6
Symbols1,955,9561,999,695+43,739 (+ 2.24%)~~p=0.001 n=6
Types676,324681,527+5,203 (+ 0.77%)~~p=0.001 n=6
Memory used1,754,535k (± 0.00%)1,781,555k (± 0.00%)+27,020k (+ 1.54%)1,781,507k1,781,587kp=0.005 n=6
Parse Time6.71s (± 0.36%)6.71s (± 0.37%)~6.68s6.74sp=0.936 n=6
Bind Time2.31s (± 0.52%)2.30s (± 0.27%)~2.29s2.31sp=0.340 n=6
Check Time56.86s (± 0.38%)56.58s (± 0.31%)-0.28s (- 0.50%)56.27s56.77sp=0.037 n=6
Emit Time0.14s (± 2.95%)0.14s (± 2.88%)~0.14s0.15sp=0.218 n=6
Total Time66.01s (± 0.34%)65.72s (± 0.27%)~65.44s65.92sp=0.054 n=6
self-build-src - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols1,215,7311,216,274+543 (+ 0.04%)~~p=0.001 n=6
Types257,647257,948+301 (+ 0.12%)~~p=0.001 n=6
Memory used2,324,685k (± 0.03%)2,322,980k (± 0.02%)-1,705k (- 0.07%)2,322,555k2,323,639kp=0.005 n=6
Parse Time4.96s (± 0.16%)4.97s (± 0.77%)~4.92s5.03sp=0.258 n=6
Bind Time1.88s (± 0.62%)1.87s (± 1.37%)~1.85s1.91sp=0.328 n=6
Check Time34.04s (± 0.35%)33.49s (± 0.46%)-0.54s (- 1.59%)33.24s33.64sp=0.005 n=6
Emit Time2.59s (± 2.50%)2.62s (± 2.53%)~2.51s2.69sp=0.378 n=6
Total Time43.47s (± 0.39%)42.97s (± 0.42%)-0.50s (- 1.15%)42.71s43.18sp=0.005 n=6
self-build-src-public-api - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols1,215,7311,216,274+543 (+ 0.04%)~~p=0.001 n=6
Types257,647257,948+301 (+ 0.12%)~~p=0.001 n=6
Memory used2,398,813k (± 0.02%)2,398,153k (± 0.02%)~2,397,364k2,398,623kp=0.066 n=6
Parse Time6.21s (± 1.04%)6.24s (± 1.17%)~6.14s6.33sp=0.688 n=6
Bind Time2.03s (± 1.60%)2.02s (± 0.68%)~2.01s2.05sp=0.332 n=6
Check Time40.63s (± 0.32%)39.85s (± 0.28%)-0.78s (- 1.93%)39.75s40.05sp=0.005 n=6
Emit Time3.13s (± 2.12%)3.11s (± 1.68%)~3.02s3.17sp=0.575 n=6
Total Time52.02s (± 0.14%)51.24s (± 0.24%)-0.78s (- 1.51%)51.08s51.43sp=0.005 n=6
self-compiler - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols256,206256,432+226 (+ 0.09%)~~p=0.001 n=6
Types103,653103,607-46 (- 0.04%)~~p=0.001 n=6
Memory used424,264k (± 0.00%)424,324k (± 0.01%)+61k (+ 0.01%)424,278k424,372kp=0.008 n=6
Parse Time3.32s (± 1.62%)3.34s (± 0.99%)~3.29s3.38sp=0.629 n=6
Bind Time1.30s (± 0.58%)1.30s (± 0.80%)~1.28s1.31sp=0.437 n=6
Check Time18.27s (± 0.35%)17.73s (± 0.20%)-0.53s (- 2.92%)17.70s17.80sp=0.005 n=6
Emit Time1.35s (± 1.09%)1.37s (± 1.22%)~1.35s1.39sp=0.087 n=6
Total Time24.24s (± 0.38%)23.74s (± 0.26%)-0.50s (- 2.06%)23.67s23.84sp=0.005 n=6
ts-pre-modules - node (v18.15.0, x64)
Errors3535~~~p=1.000 n=6
Symbols224,824225,034+210 (+ 0.09%)~~p=0.001 n=6
Types93,39093,347-43 (- 0.05%)~~p=0.001 n=6
Memory used369,288k (± 0.01%)369,416k (± 0.02%)+128k (+ 0.03%)369,344k369,598kp=0.005 n=6
Parse Time3.49s (± 0.97%)3.51s (± 0.42%)~3.49s3.53sp=0.167 n=6
Bind Time1.92s (± 0.64%)1.94s (± 1.64%)~1.91s1.98sp=0.675 n=6
Check Time19.43s (± 0.33%)19.33s (± 0.29%)-0.10s (- 0.51%)19.23s19.38sp=0.013 n=6
Emit Time0.00s0.00s~~~p=1.000 n=6
Total Time24.84s (± 0.27%)24.78s (± 0.33%)~24.64s24.85sp=0.230 n=6
vscode - node (v18.15.0, x64)
Errors44~~~p=1.000 n=6
Symbols2,799,5442,801,275+1,731 (+ 0.06%)~~p=0.001 n=6
Types950,964950,758-206 (- 0.02%)~~p=0.001 n=6
Memory used2,927,051k (± 0.01%)2,927,911k (± 0.01%)+860k (+ 0.03%)2,927,421k2,928,160kp=0.005 n=6
Parse Time13.38s (± 0.53%)13.31s (± 0.26%)~13.28s13.37sp=0.076 n=6
Bind Time4.29s (± 0.27%)4.16s (± 2.77%)~4.08s4.32sp=0.167 n=6
Check Time73.00s (± 0.31%)72.58s (± 0.37%)-0.42s (- 0.57%)72.30s73.03sp=0.031 n=6
Emit Time21.05s (± 7.68%)21.11s (± 8.23%)~19.55s23.35sp=0.575 n=6
Total Time111.72s (± 1.46%)111.16s (± 1.40%)~109.47s113.18sp=0.471 n=6
webpack - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols265,858265,858~~~p=1.000 n=6
Types108,442108,442~~~p=1.000 n=6
Memory used410,483k (± 0.02%)410,427k (± 0.01%)~410,349k410,496kp=0.128 n=6
Parse Time4.77s (± 1.18%)4.74s (± 0.71%)~4.71s4.80sp=0.333 n=6
Bind Time2.08s (± 0.95%)2.06s (± 0.90%)~2.04s2.09sp=0.280 n=6
Check Time21.18s (± 0.22%)20.98s (± 0.17%)-0.20s (- 0.95%)20.92s21.02sp=0.005 n=6
Emit Time0.00s0.00s~~~p=1.000 n=6
Total Time28.03s (± 0.32%)27.79s (± 0.24%)-0.24s (- 0.87%)27.69s27.89sp=0.005 n=6
xstate-main - node (v18.15.0, x64)
Errors00~~~p=1.000 n=6
Symbols524,146553,173🔻+29,027 (+ 5.54%)~~p=0.001 n=6
Types178,732188,311🔻+9,579 (+ 5.36%)~~p=0.001 n=6
Memory used461,380k (± 0.02%)476,795k (± 0.03%)+15,416k (+ 3.34%)476,628k476,998kp=0.005 n=6
Parse Time3.89s (± 0.32%)3.89s (± 0.70%)~3.85s3.93sp=1.000 n=6
Bind Time1.46s (± 1.28%)1.47s (± 1.34%)~1.43s1.48sp=0.870 n=6
Check Time22.56s (± 0.79%)22.78s (± 0.40%)+0.23s (+ 1.00%)22.68s22.92sp=0.031 n=6
Emit Time0.00s0.00s~~~p=1.000 n=6
Total Time27.91s (± 0.62%)28.14s (± 0.42%)+0.23s (+ 0.82%)27.99s28.28sp=0.045 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

@ahejlsberg

Copy link
Copy Markdown
MemberAuthor

Hmm, removing null and undefined from apparent contextual types seems to be a net negative. I'll get rid of that again.

@typescript-bot

Copy link
Copy Markdown
Contributor

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

Everything looks good!

@ahejlsberg
Anders Hejlsberg (ahejlsberg) deleted the cacheDiscriminatedContextualTypes branch April 30, 2024 19:40
@ssalbdivad

Copy link
Copy Markdown

I bisected a perf regression typechecking https://github.com/arktypeio/arktype and found the following:

{"checkTime": 9.68,"types": 483415,"instantiations": 2629152}
devDependencies:
-typescript5.5.0-dev.20240429+typescript5.5.0-dev.20240430{"checkTime": 12.2,"types": 514846,"instantiations": 2819487}

It seems likely this change was somehow involved?

@Andarist

Copy link
Copy Markdown
Contributor

Guided by package.json#gitHead in both of those we can see the diff between those versions here:
3358157...dc316af

This PR isn't part of that.

@ssalbdivad

Copy link
Copy Markdown

My mistake, I likely jumped to conclusions when I saw this in the release notes as a likely candidate since I use quite a lot of unions internally.

Mateusz Burzyński (@Andarist) and I have been looking at which of the changes from that day could have caused such a large increase in type instantiations and check time and haven't been able to identify it yet.

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.

6 participants

@ahejlsberg@jakebailey@typescript-bot@ssalbdivad@Andarist@weswigham