Skip to content

fix(19577): fix regression with fully inferred types and non-null assertions #50092

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
Apr 11, 2023

Conversation

nicolas377
Copy link
Contributor

@nicolas377 nicolas377 commented Jul 29, 2022

Fixes #19577

@typescript-bot typescript-bot added the For Backlog Bug PRs that fix a backlog bug label Jul 29, 2022
@nicolas377 nicolas377 changed the title test: add failing test for #19577 fix(19577): fix regression with fully inferred types and non-null assertions Jul 29, 2022
this fix is just easier for me to understand
i'll refactor the fix to fit into the repo style in a later commit
@nicolas377 nicolas377 marked this pull request as ready for review July 29, 2022 20:34
thanks to @Andarist for providing this test!
@weswigham
Copy link
Member

@typescript-bot pack this
@typescript-bot user test this inline
@typescript-bot test this
@typescript-bot run dt
@typescript-bot perf test this

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 13, 2022

Heya @weswigham, I've started to run the perf test suite on this PR at 4a50f11. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 13, 2022

Heya @weswigham, I've started to run the parallelized Definitely Typed test suite on this PR at 4a50f11. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 13, 2022

Heya @weswigham, I've started to run the diff-based user code test suite on this PR at 4a50f11. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 13, 2022

Heya @weswigham, I've started to run the extended test suite on this PR at 4a50f11. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 13, 2022

Heya @weswigham, I've started to run the tarball bundle task on this PR at 4a50f11. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

@weswigham Here are the results of running the user test suite comparing main and refs/pull/50092/merge:

Everything looks good!

@typescript-bot
Copy link
Collaborator

Heya @weswigham, I've run the RWC suite on this PR - assuming you're on the TS core team, you can view the resulting diff here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 13, 2022

Hey @weswigham, I've packed this into an installable tgz. You can install it for testing by referencing it in your package.json like so:

{
    "devDependencies": {
        "typescript": "https://typescript.visualstudio.com/cf7ac146-d525-443c-b23c-0d58337efebc/_apis/build/builds/134088/artifacts?artifactName=tgz&fileId=385EEA1273EC646C19D165CEB769588C2C7178E1B2834F18707217B5A50E7C8A02&fileName=/typescript-4.9.0-insiders.20220913.tgz"
    }
}

and then running npm install.


There is also a playground for this build and an npm module you can use via "typescript": "npm:@typescript-deploys/[email protected]".;

@typescript-bot
Copy link
Collaborator

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

Here they are:

Compiler

Comparison Report - main..50092
Metric main 50092 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 363,328k (± 0.02%) 363,322k (± 0.03%) -6k (- 0.00%) 363,082k 363,482k
Parse Time 2.10s (± 0.71%) 2.10s (± 0.86%) +0.00s (+ 0.05%) 2.06s 2.14s
Bind Time 0.79s (± 0.59%) 0.79s (± 0.82%) +0.00s (+ 0.25%) 0.78s 0.81s
Check Time 6.20s (± 0.37%) 6.22s (± 0.50%) +0.02s (+ 0.27%) 6.13s 6.26s
Emit Time 6.02s (± 0.52%) 6.05s (± 0.84%) +0.03s (+ 0.45%) 5.97s 6.21s
Total Time 15.11s (± 0.27%) 15.16s (± 0.39%) +0.05s (+ 0.34%) 15.03s 15.33s
Compiler-Unions - node (v10.16.3, x64)
Memory used 206,042k (± 0.30%) 206,192k (± 0.03%) +150k (+ 0.07%) 206,011k 206,359k
Parse Time 0.84s (± 0.62%) 0.84s (± 0.84%) -0.00s (- 0.24%) 0.82s 0.85s
Bind Time 0.47s (± 1.10%) 0.47s (± 1.44%) +0.00s (+ 0.85%) 0.46s 0.49s
Check Time 8.54s (± 0.32%) 8.53s (± 0.44%) -0.01s (- 0.14%) 8.42s 8.60s
Emit Time 2.42s (± 0.79%) 2.43s (± 0.74%) +0.01s (+ 0.25%) 2.40s 2.46s
Total Time 12.28s (± 0.24%) 12.27s (± 0.34%) -0.00s (- 0.02%) 12.17s 12.37s
Monaco - node (v10.16.3, x64)
Memory used 344,751k (± 0.01%) 344,875k (± 0.02%) +124k (+ 0.04%) 344,788k 345,036k
Parse Time 1.61s (± 0.58%) 1.62s (± 0.62%) +0.01s (+ 0.81%) 1.61s 1.65s
Bind Time 0.70s (± 0.83%) 0.71s (± 0.85%) +0.01s (+ 1.15%) 0.69s 0.72s
Check Time 6.22s (± 0.72%) 6.25s (± 0.56%) +0.03s (+ 0.48%) 6.16s 6.31s
Emit Time 3.20s (± 0.68%) 3.22s (± 0.85%) +0.02s (+ 0.69%) 3.17s 3.27s
Total Time 11.73s (± 0.57%) 11.80s (± 0.39%) +0.07s (+ 0.62%) 11.67s 11.87s
TFS - node (v10.16.3, x64)
Memory used 305,994k (± 0.02%) 305,971k (± 0.02%) -23k (- 0.01%) 305,864k 306,081k
Parse Time 1.29s (± 0.81%) 1.29s (± 0.69%) +0.00s (+ 0.31%) 1.27s 1.31s
Bind Time 0.67s (± 0.71%) 0.67s (± 0.99%) -0.00s (- 0.45%) 0.66s 0.68s
Check Time 5.49s (± 0.57%) 5.50s (± 0.37%) +0.01s (+ 0.20%) 5.44s 5.54s
Emit Time 3.36s (± 1.12%) 3.42s (± 1.49%) +0.06s (+ 1.91%) 3.33s 3.57s
Total Time 10.81s (± 0.35%) 10.89s (± 0.56%) +0.08s (+ 0.74%) 10.77s 11.04s
material-ui - node (v10.16.3, x64)
Memory used 459,171k (± 0.01%) 459,200k (± 0.01%) +30k (+ 0.01%) 459,071k 459,309k
Parse Time 1.82s (± 0.95%) 1.84s (± 0.77%) +0.02s (+ 0.88%) 1.81s 1.86s
Bind Time 0.58s (± 1.56%) 0.59s (± 2.20%) +0.01s (+ 1.03%) 0.56s 0.61s
Check Time 15.65s (± 0.41%) 15.80s (± 0.48%) +0.15s (+ 0.95%) 15.66s 15.99s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 18.05s (± 0.41%) 18.23s (± 0.40%) +0.17s (+ 0.96%) 18.09s 18.40s
xstate - node (v10.16.3, x64)
Memory used 584,141k (± 0.01%) 584,086k (± 0.01%) -55k (- 0.01%) 583,956k 584,221k
Parse Time 2.62s (± 0.38%) 2.61s (± 0.38%) -0.01s (- 0.34%) 2.59s 2.64s
Bind Time 0.92s (± 0.56%) 0.92s (± 0.52%) +0.00s (+ 0.22%) 0.91s 0.93s
Check Time 1.61s (± 0.55%) 1.61s (± 0.84%) -0.00s (- 0.12%) 1.58s 1.63s
Emit Time 0.07s (± 4.13%) 0.07s (± 3.14%) -0.00s (- 1.39%) 0.07s 0.08s
Total Time 5.22s (± 0.25%) 5.22s (± 0.29%) -0.01s (- 0.13%) 5.19s 5.26s
Angular - node (v12.1.0, x64)
Memory used 340,829k (± 0.02%) 340,809k (± 0.03%) -20k (- 0.01%) 340,645k 341,021k
Parse Time 2.07s (± 0.49%) 2.10s (± 0.74%) +0.02s (+ 1.11%) 2.07s 2.14s
Bind Time 0.77s (± 0.62%) 0.78s (± 0.61%) +0.01s (+ 1.30%) 0.77s 0.79s
Check Time 5.85s (± 0.47%) 5.85s (± 0.72%) +0.01s (+ 0.12%) 5.78s 5.95s
Emit Time 6.19s (± 0.65%) 6.28s (± 0.62%) +0.09s (+ 1.40%) 6.17s 6.35s
Total Time 14.88s (± 0.46%) 15.01s (± 0.49%) +0.13s (+ 0.85%) 14.85s 15.15s
Compiler-Unions - node (v12.1.0, x64)
Memory used 193,830k (± 0.12%) 193,557k (± 0.36%) -272k (- 0.14%) 190,846k 194,172k
Parse Time 0.83s (± 0.48%) 0.83s (± 0.60%) -0.00s (- 0.36%) 0.82s 0.84s
Bind Time 0.47s (± 1.60%) 0.48s (± 0.76%) +0.00s (+ 0.21%) 0.47s 0.48s
Check Time 6.69s (± 0.75%) 6.73s (± 0.60%) +0.04s (+ 0.66%) 6.64s 6.82s
Emit Time 2.45s (± 2.13%) 2.44s (± 1.21%) -0.00s (- 0.12%) 2.39s 2.53s
Total Time 10.44s (± 0.92%) 10.48s (± 0.39%) +0.04s (+ 0.37%) 10.39s 10.58s
Monaco - node (v12.1.0, x64)
Memory used 327,671k (± 0.02%) 327,756k (± 0.01%) +85k (+ 0.03%) 327,681k 327,827k
Parse Time 1.59s (± 1.14%) 1.58s (± 0.70%) -0.01s (- 0.57%) 1.57s 1.61s
Bind Time 0.69s (± 0.49%) 0.70s (± 0.93%) +0.01s (+ 0.72%) 0.69s 0.72s
Check Time 5.82s (± 0.40%) 5.86s (± 0.50%) +0.04s (+ 0.77%) 5.80s 5.95s
Emit Time 3.27s (± 1.40%) 3.27s (± 0.57%) -0.00s (- 0.03%) 3.22s 3.31s
Total Time 11.37s (± 0.68%) 11.42s (± 0.35%) +0.04s (+ 0.38%) 11.32s 11.52s
TFS - node (v12.1.0, x64)
Memory used 290,438k (± 0.09%) 290,588k (± 0.05%) +150k (+ 0.05%) 289,998k 290,812k
Parse Time 1.29s (± 0.48%) 1.30s (± 0.44%) +0.01s (+ 0.85%) 1.29s 1.31s
Bind Time 0.67s (± 0.88%) 0.68s (± 1.18%) +0.00s (+ 0.59%) 0.66s 0.69s
Check Time 5.36s (± 0.36%) 5.41s (± 0.62%) +0.05s (+ 1.03%) 5.35s 5.50s
Emit Time 3.45s (± 0.89%) 3.46s (± 0.78%) +0.01s (+ 0.32%) 3.40s 3.53s
Total Time 10.77s (± 0.39%) 10.85s (± 0.50%) +0.08s (+ 0.73%) 10.71s 10.98s
material-ui - node (v12.1.0, x64)
Memory used 438,468k (± 0.01%) 438,409k (± 0.01%) -59k (- 0.01%) 438,315k 438,561k
Parse Time 1.83s (± 0.57%) 1.83s (± 0.45%) -0.01s (- 0.38%) 1.81s 1.84s
Bind Time 0.55s (± 0.73%) 0.55s (± 0.85%) -0.00s (- 0.18%) 0.54s 0.56s
Check Time 12.79s (± 0.29%) 12.87s (± 0.49%) +0.08s (+ 0.61%) 12.68s 12.98s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.18s (± 0.22%) 15.24s (± 0.46%) +0.07s (+ 0.44%) 15.04s 15.36s
xstate - node (v12.1.0, x64)
Memory used 549,107k (± 0.01%) 549,193k (± 0.01%) +86k (+ 0.02%) 549,044k 549,321k
Parse Time 2.53s (± 0.50%) 2.55s (± 0.55%) +0.02s (+ 0.91%) 2.52s 2.58s
Bind Time 0.89s (± 0.54%) 0.90s (± 0.78%) +0.01s (+ 1.35%) 0.88s 0.91s
Check Time 1.48s (± 0.49%) 1.48s (± 0.57%) +0.00s (+ 0.07%) 1.47s 1.50s
Emit Time 0.07s (± 0.00%) 0.07s (± 0.00%) 0.00s ( 0.00%) 0.07s 0.07s
Total Time 4.97s (± 0.28%) 5.01s (± 0.50%) +0.03s (+ 0.68%) 4.95s 5.06s
Angular - node (v14.15.1, x64)
Memory used 338,916k (± 0.01%) 338,936k (± 0.01%) +21k (+ 0.01%) 338,885k 338,980k
Parse Time 2.06s (± 0.56%) 2.07s (± 0.51%) +0.00s (+ 0.05%) 2.04s 2.09s
Bind Time 0.80s (± 0.84%) 0.81s (± 1.50%) +0.01s (+ 1.13%) 0.79s 0.85s
Check Time 5.86s (± 0.51%) 5.89s (± 0.45%) +0.03s (+ 0.53%) 5.83s 5.96s
Emit Time 6.21s (± 0.71%) 6.24s (± 0.58%) +0.03s (+ 0.47%) 6.16s 6.32s
Total Time 14.93s (± 0.35%) 15.00s (± 0.39%) +0.07s (+ 0.48%) 14.90s 15.11s
Compiler-Unions - node (v14.15.1, x64)
Memory used 191,286k (± 0.91%) 190,156k (± 0.01%) -1,130k (- 0.59%) 190,110k 190,206k
Parse Time 0.85s (± 1.13%) 0.85s (± 0.40%) -0.00s (- 0.47%) 0.84s 0.85s
Bind Time 0.48s (± 0.77%) 0.49s (± 0.91%) +0.00s (+ 0.62%) 0.48s 0.50s
Check Time 6.73s (± 0.29%) 6.75s (± 0.78%) +0.02s (+ 0.28%) 6.61s 6.85s
Emit Time 2.38s (± 0.86%) 2.39s (± 1.48%) +0.01s (+ 0.55%) 2.35s 2.52s
Total Time 10.45s (± 0.28%) 10.48s (± 0.73%) +0.03s (+ 0.33%) 10.31s 10.66s
Monaco - node (v14.15.1, x64)
Memory used 326,581k (± 0.01%) 326,579k (± 0.01%) -2k (- 0.00%) 326,524k 326,617k
Parse Time 1.59s (± 1.10%) 1.59s (± 0.79%) +0.01s (+ 0.44%) 1.57s 1.63s
Bind Time 0.72s (± 0.55%) 0.73s (± 0.80%) +0.01s (+ 0.83%) 0.72s 0.74s
Check Time 5.70s (± 0.41%) 5.74s (± 0.47%) +0.04s (+ 0.72%) 5.66s 5.80s
Emit Time 3.31s (± 0.61%) 3.34s (± 0.44%) +0.03s (+ 0.88%) 3.32s 3.38s
Total Time 11.32s (± 0.28%) 11.41s (± 0.29%) +0.08s (+ 0.74%) 11.34s 11.51s
TFS - node (v14.15.1, x64)
Memory used 289,693k (± 0.00%) 289,715k (± 0.01%) +22k (+ 0.01%) 289,685k 289,755k
Parse Time 1.30s (± 0.46%) 1.31s (± 0.91%) +0.01s (+ 0.46%) 1.29s 1.34s
Bind Time 0.79s (± 0.51%) 0.79s (± 1.07%) -0.00s (- 0.00%) 0.76s 0.80s
Check Time 5.37s (± 0.49%) 5.37s (± 0.30%) +0.01s (+ 0.13%) 5.34s 5.40s
Emit Time 3.54s (± 0.43%) 3.53s (± 0.36%) -0.01s (- 0.25%) 3.50s 3.56s
Total Time 11.00s (± 0.32%) 11.01s (± 0.24%) +0.01s (+ 0.06%) 10.93s 11.06s
material-ui - node (v14.15.1, x64)
Memory used 436,528k (± 0.06%) 436,627k (± 0.00%) +99k (+ 0.02%) 436,586k 436,678k
Parse Time 1.87s (± 0.56%) 1.88s (± 0.58%) +0.01s (+ 0.75%) 1.85s 1.90s
Bind Time 0.58s (± 1.28%) 0.59s (± 1.01%) +0.00s (+ 0.51%) 0.58s 0.60s
Check Time 12.89s (± 0.62%) 12.96s (± 0.98%) +0.08s (+ 0.59%) 12.78s 13.25s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.34s (± 0.54%) 15.44s (± 0.86%) +0.10s (+ 0.65%) 15.22s 15.74s
xstate - node (v14.15.1, x64)
Memory used 546,991k (± 0.00%) 547,012k (± 0.00%) +22k (+ 0.00%) 546,971k 547,046k
Parse Time 2.61s (± 0.59%) 2.61s (± 0.28%) -0.00s (- 0.08%) 2.60s 2.63s
Bind Time 0.97s (± 0.82%) 0.98s (± 0.57%) +0.01s (+ 0.62%) 0.97s 0.99s
Check Time 1.52s (± 0.63%) 1.53s (± 0.61%) +0.01s (+ 0.33%) 1.51s 1.55s
Emit Time 0.07s (± 0.00%) 0.07s (± 0.00%) 0.00s ( 0.00%) 0.07s 0.07s
Total Time 5.18s (± 0.36%) 5.20s (± 0.25%) +0.01s (+ 0.25%) 5.18s 5.23s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-210-generic
Architecturex64
Available Memory16 GB
Available Memory15 GB
CPUs4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
Hosts
  • node (v10.16.3, x64)
  • node (v12.1.0, x64)
  • node (v14.15.1, x64)
Scenarios
  • Angular - node (v10.16.3, x64)
  • Angular - node (v12.1.0, x64)
  • Angular - node (v14.15.1, x64)
  • Compiler-Unions - node (v10.16.3, x64)
  • Compiler-Unions - node (v12.1.0, x64)
  • Compiler-Unions - node (v14.15.1, x64)
  • Monaco - node (v10.16.3, x64)
  • Monaco - node (v12.1.0, x64)
  • Monaco - node (v14.15.1, x64)
  • TFS - node (v10.16.3, x64)
  • TFS - node (v12.1.0, x64)
  • TFS - node (v14.15.1, x64)
  • material-ui - node (v10.16.3, x64)
  • material-ui - node (v12.1.0, x64)
  • material-ui - node (v14.15.1, x64)
  • xstate - node (v10.16.3, x64)
  • xstate - node (v12.1.0, x64)
  • xstate - node (v14.15.1, x64)
Benchmark Name Iterations
Current 50092 10
Baseline main 10

TSServer

Comparison Report - main..50092
Metric main 50092 Delta Best Worst
Compiler-UnionsTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 1,405ms (± 0.39%) 1,411ms (± 0.31%) +6ms (+ 0.43%) 1,404ms 1,420ms
Req 2 - geterr 4,105ms (± 0.81%) 4,114ms (± 0.91%) +9ms (+ 0.22%) 4,009ms 4,178ms
Req 3 - references 228ms (± 0.86%) 231ms (± 0.86%) +3ms (+ 1.27%) 227ms 236ms
Req 4 - navto 173ms (± 1.15%) 174ms (± 0.87%) +1ms (+ 0.58%) 171ms 178ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 96ms (± 3.08%) 98ms (± 1.75%) +2ms (+ 1.77%) 93ms 100ms
CompilerTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 1,496ms (± 0.58%) 1,506ms (± 0.45%) +11ms (+ 0.72%) 1,490ms 1,520ms
Req 2 - geterr 2,254ms (± 0.41%) 2,280ms (± 0.58%) +27ms (+ 1.19%) 2,255ms 2,313ms
Req 3 - references 244ms (± 0.79%) 244ms (± 0.66%) -1ms (- 0.25%) 241ms 248ms
Req 4 - navto 185ms (± 0.97%) 185ms (± 0.88%) -0ms (- 0.05%) 181ms 188ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 62ms (± 1.08%) 63ms (± 2.45%) +2ms (+ 2.43%) 61ms 67ms
xstateTSServer - node (v10.16.3, x64)
Req 1 - updateOpen 2,089ms (± 0.28%) 2,104ms (± 0.32%) +15ms (+ 0.70%) 2,087ms 2,118ms
Req 2 - geterr 794ms (± 0.82%) 801ms (± 0.54%) +7ms (+ 0.89%) 789ms 811ms
Req 3 - references 99ms (± 1.85%) 99ms (± 2.83%) 0ms ( 0.00%) 92ms 105ms
Req 4 - navto 232ms (± 1.19%) 235ms (± 0.95%) +3ms (+ 1.16%) 230ms 239ms
Req 5 - completionInfo count 3,301 (± 0.00%) 3,301 (± 0.00%) 0 ( 0.00%) 3,301 3,301
Req 5 - completionInfo 280ms (± 1.43%) 283ms (± 1.05%) +3ms (+ 0.93%) 276ms 290ms
Compiler-UnionsTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 1,405ms (± 0.81%) 1,414ms (± 0.80%) +9ms (+ 0.64%) 1,384ms 1,448ms
Req 2 - geterr 3,392ms (± 0.69%) 3,393ms (± 0.84%) +1ms (+ 0.03%) 3,321ms 3,455ms
Req 3 - references 220ms (± 0.70%) 220ms (± 0.54%) +1ms (+ 0.32%) 217ms 223ms
Req 4 - navto 159ms (± 1.09%) 160ms (± 0.87%) +1ms (+ 0.44%) 156ms 163ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 59ms (± 3.07%) 61ms (± 3.11%) +2ms (+ 2.53%) 57ms 65ms
CompilerTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 1,495ms (± 0.62%) 1,500ms (± 0.96%) +6ms (+ 0.38%) 1,469ms 1,534ms
Req 2 - geterr 2,163ms (± 0.46%) 2,181ms (± 0.78%) +19ms (+ 0.86%) 2,144ms 2,211ms
Req 3 - references 235ms (± 0.43%) 236ms (± 1.05%) +1ms (+ 0.60%) 232ms 242ms
Req 4 - navto 169ms (± 1.08%) 172ms (± 1.64%) +4ms (+ 2.13%) 165ms 179ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 60ms (± 2.91%) 63ms (± 3.06%) +3ms (+ 5.21%) 58ms 66ms
xstateTSServer - node (v12.1.0, x64)
Req 1 - updateOpen 2,038ms (± 0.64%) 2,056ms (± 0.31%) +18ms (+ 0.86%) 2,047ms 2,078ms
Req 2 - geterr 747ms (± 0.73%) 749ms (± 0.30%) +2ms (+ 0.32%) 744ms 754ms
Req 3 - references 67ms (± 1.12%) 68ms (± 0.88%) +0ms (+ 0.30%) 66ms 69ms
Req 4 - navto 222ms (± 1.48%) 224ms (± 1.50%) +2ms (+ 0.85%) 214ms 230ms
Req 5 - completionInfo count 3,301 (± 0.00%) 3,301 (± 0.00%) 0 ( 0.00%) 3,301 3,301
Req 5 - completionInfo 276ms (± 1.18%) 278ms (± 1.26%) +1ms (+ 0.51%) 266ms 283ms
Compiler-UnionsTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 1,446ms (± 0.38%) 1,455ms (± 0.61%) +9ms (+ 0.65%) 1,441ms 1,475ms
Req 2 - geterr 3,514ms (± 0.89%) 3,533ms (± 0.74%) +19ms (+ 0.53%) 3,483ms 3,581ms
Req 3 - references 230ms (± 0.51%) 230ms (± 0.77%) 0ms ( 0.00%) 224ms 233ms
Req 4 - navto 169ms (± 0.68%) 171ms (± 0.61%) +2ms (+ 1.30%) 168ms 173ms
Req 5 - completionInfo count 1,356 (± 0.00%) 1,356 (± 0.00%) 0 ( 0.00%) 1,356 1,356
Req 5 - completionInfo 57ms (± 6.11%) 59ms (± 6.54%) +2ms (+ 3.15%) 54ms 67ms
CompilerTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 1,516ms (± 0.63%) 1,519ms (± 0.55%) +2ms (+ 0.14%) 1,500ms 1,540ms
Req 2 - geterr 2,298ms (± 0.49%) 2,304ms (± 0.46%) +6ms (+ 0.26%) 2,280ms 2,328ms
Req 3 - references 242ms (± 0.59%) 243ms (± 0.58%) +1ms (+ 0.29%) 240ms 245ms
Req 4 - navto 178ms (± 0.50%) 178ms (± 0.49%) +1ms (+ 0.34%) 176ms 180ms
Req 5 - completionInfo count 1,518 (± 0.00%) 1,518 (± 0.00%) 0 ( 0.00%) 1,518 1,518
Req 5 - completionInfo 55ms (± 0.90%) 55ms (± 0.95%) +0ms (+ 0.55%) 54ms 56ms
xstateTSServer - node (v14.15.1, x64)
Req 1 - updateOpen 2,139ms (± 0.56%) 2,155ms (± 0.46%) +16ms (+ 0.75%) 2,131ms 2,175ms
Req 2 - geterr 766ms (± 0.40%) 767ms (± 0.62%) +2ms (+ 0.25%) 757ms 776ms
Req 3 - references 68ms (± 1.73%) 68ms (± 1.56%) -0ms (- 0.29%) 66ms 70ms
Req 4 - navto 227ms (± 0.73%) 229ms (± 0.67%) +1ms (+ 0.53%) 225ms 232ms
Req 5 - completionInfo count 3,301 (± 0.00%) 3,301 (± 0.00%) 0 ( 0.00%) 3,301 3,301
Req 5 - completionInfo 277ms (± 0.68%) 282ms (± 3.83%) +5ms (+ 1.81%) 272ms 324ms
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-210-generic
Architecturex64
Available Memory16 GB
Available Memory15 GB
CPUs4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
Hosts
  • node (v10.16.3, x64)
  • node (v12.1.0, x64)
  • node (v14.15.1, x64)
Scenarios
  • Compiler-UnionsTSServer - node (v10.16.3, x64)
  • Compiler-UnionsTSServer - node (v12.1.0, x64)
  • Compiler-UnionsTSServer - node (v14.15.1, x64)
  • CompilerTSServer - node (v10.16.3, x64)
  • CompilerTSServer - node (v12.1.0, x64)
  • CompilerTSServer - node (v14.15.1, x64)
  • xstateTSServer - node (v10.16.3, x64)
  • xstateTSServer - node (v12.1.0, x64)
  • xstateTSServer - node (v14.15.1, x64)
Benchmark Name Iterations
Current 50092 10
Baseline main 10

Developer Information:

Download Benchmark

Copy link
Member

@weswigham weswigham left a comment

Choose a reason for hiding this comment

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

Honestly, the tests came back clean and the change seems somewhat reasonable - prioritizing the undefined starting type for a non-null-asserted auto type seems fair, as does getting the nonnullable type of the flow type (though I feel like the containing non-null assertion expression should maybe be doing that, but I guess you have to in order to avoid a spurious use before def error for auto-typed things).

This just needs to be updated for current main and then DT run again as a quick double check that it's still OK.

@gabritto
Copy link
Member

@typescript-bot run DT

@typescript-bot
Copy link
Collaborator

typescript-bot commented Apr 10, 2023

Heya @gabritto, I've started to run the parallelized Definitely Typed test suite on this PR at d33b656. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

Hey @gabritto, the results of running the DT tests are ready.
Everything looks the same!
You can check the log here.

@gabritto
Copy link
Member

@typescript-bot pack this

@typescript-bot
Copy link
Collaborator

typescript-bot commented Apr 11, 2023

Heya @gabritto, I've started to run the tarball bundle task on this PR at d33b656. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Apr 11, 2023

Hey @gabritto, I've packed this into an installable tgz. You can install it for testing by referencing it in your package.json like so:

{
    "devDependencies": {
        "typescript": "https://typescript.visualstudio.com/cf7ac146-d525-443c-b23c-0d58337efebc/_apis/build/builds/152118/artifacts?artifactName=tgz&fileId=8390E25F17206B01FDFED070412238E23363D780EDE3A15B3D5694696196AA5102&fileName=/typescript-5.1.0-insiders.20230411.tgz"
    }
}

and then running npm install.


There is also a playground for this build and an npm module you can use via "typescript": "npm:@typescript-deploys/[email protected]".;

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
Archived in project
Development

Successfully merging this pull request may close these issues.

Regression: Not-null assertion causes implicit any
5 participants