Skip to content

Conversation

ahejlsberg
Copy link
Member

Fixes #43425.

@typescript-bot typescript-bot added Author: Team For Milestone Bug PRs that fix a bug with a specific milestone labels May 23, 2021
@ahejlsberg ahejlsberg changed the title Properly remove generic types that are constrained to Properly remove generic types that are constrained to 'null | undefined' in getNonNullableType May 23, 2021
@ahejlsberg
Copy link
Member Author

This is a very safe fix. If possible, we should cherry pick it for 4.3.

@DanielRosenwasser
Copy link
Member

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

@typescript-bot
Copy link
Collaborator

typescript-bot commented May 24, 2021

Heya @DanielRosenwasser, I've started to run the extended test suite on this PR at 634b01a. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented May 24, 2021

Heya @DanielRosenwasser, I've started to run the parallelized community code test suite on this PR at 634b01a. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented May 24, 2021

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

@typescript-bot
Copy link
Collaborator

typescript-bot commented May 24, 2021

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

@typescript-bot
Copy link
Collaborator

typescript-bot commented May 24, 2021

Heya @DanielRosenwasser, I've started to run the perf test suite on this PR at 634b01a. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented May 24, 2021

Hey @DanielRosenwasser, 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/103786/artifacts?artifactName=tgz&fileId=2CB484CD98847912C74630D9090A4ACD9170A4BE670BCDC20897A5466355A81402&fileName=/typescript-4.4.0-insiders.20210524.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

The user suite test run you requested has finished and failed. I've opened a PR with the baseline diff from master.

@typescript-bot
Copy link
Collaborator

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

Here they are:

Comparison Report - master..44219

Metric master 44219 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 343,846k (± 0.01%) 343,863k (± 0.02%) +17k (+ 0.00%) 343,768k 344,059k
Parse Time 1.80s (± 0.40%) 1.81s (± 0.73%) +0.01s (+ 0.33%) 1.78s 1.84s
Bind Time 0.84s (± 0.84%) 0.84s (± 0.73%) +0.00s (+ 0.24%) 0.83s 0.85s
Check Time 5.22s (± 0.37%) 5.22s (± 0.44%) +0.00s (+ 0.02%) 5.17s 5.27s
Emit Time 5.48s (± 0.56%) 5.49s (± 0.60%) +0.01s (+ 0.15%) 5.40s 5.55s
Total Time 13.34s (± 0.34%) 13.36s (± 0.45%) +0.02s (+ 0.15%) 13.20s 13.48s
Compiler-Unions - node (v10.16.3, x64)
Memory used 200,380k (± 0.02%) 200,349k (± 0.02%) -31k (- 0.02%) 200,262k 200,416k
Parse Time 0.78s (± 0.67%) 0.78s (± 0.43%) +0.00s (+ 0.13%) 0.77s 0.79s
Bind Time 0.53s (± 1.14%) 0.54s (± 0.93%) +0.01s (+ 1.90%) 0.52s 0.54s
Check Time 7.54s (± 0.48%) 7.61s (± 0.68%) +0.07s (+ 0.87%) 7.49s 7.69s
Emit Time 2.24s (± 1.36%) 2.23s (± 0.72%) -0.00s (- 0.22%) 2.19s 2.27s
Total Time 11.09s (± 0.50%) 11.16s (± 0.55%) +0.07s (+ 0.67%) 11.00s 11.27s
Monaco - node (v10.16.3, x64)
Memory used 340,397k (± 0.02%) 340,413k (± 0.02%) +16k (+ 0.00%) 340,300k 340,573k
Parse Time 1.45s (± 0.85%) 1.46s (± 1.12%) +0.01s (+ 0.48%) 1.42s 1.48s
Bind Time 0.74s (± 0.78%) 0.74s (± 1.10%) +0.00s (+ 0.41%) 0.73s 0.76s
Check Time 5.36s (± 0.61%) 5.41s (± 0.46%) +0.05s (+ 0.88%) 5.34s 5.45s
Emit Time 2.97s (± 0.77%) 2.97s (± 0.54%) +0.00s (+ 0.10%) 2.94s 3.01s
Total Time 10.51s (± 0.35%) 10.58s (± 0.28%) +0.06s (+ 0.58%) 10.51s 10.65s
TFS - node (v10.16.3, x64)
Memory used 304,084k (± 0.04%) 304,017k (± 0.03%) -66k (- 0.02%) 303,850k 304,195k
Parse Time 1.18s (± 0.44%) 1.19s (± 0.93%) +0.01s (+ 0.68%) 1.16s 1.20s
Bind Time 0.70s (± 0.79%) 0.71s (± 0.70%) +0.01s (+ 1.85%) 0.70s 0.72s
Check Time 4.87s (± 0.42%) 4.89s (± 0.49%) +0.02s (+ 0.43%) 4.84s 4.95s
Emit Time 3.06s (± 1.05%) 3.13s (± 1.72%) +0.07s (+ 2.32%) 3.03s 3.26s
Total Time 9.81s (± 0.42%) 9.92s (± 0.53%) +0.12s (+ 1.17%) 9.81s 10.06s
material-ui - node (v10.16.3, x64)
Memory used 471,555k (± 0.01%) 471,632k (± 0.02%) +76k (+ 0.02%) 471,471k 471,758k
Parse Time 1.73s (± 0.29%) 1.73s (± 0.61%) +0.01s (+ 0.41%) 1.70s 1.75s
Bind Time 0.66s (± 0.67%) 0.67s (± 0.56%) +0.00s (+ 0.45%) 0.66s 0.67s
Check Time 14.23s (± 0.64%) 14.31s (± 0.53%) +0.09s (+ 0.61%) 14.12s 14.47s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 16.62s (± 0.57%) 16.71s (± 0.51%) +0.09s (+ 0.57%) 16.52s 16.89s
Angular - node (v12.1.0, x64)
Memory used 322,145k (± 0.03%) 322,049k (± 0.08%) -96k (- 0.03%) 321,036k 322,303k
Parse Time 1.77s (± 0.53%) 1.77s (± 0.54%) +0.00s (+ 0.11%) 1.76s 1.80s
Bind Time 0.82s (± 0.60%) 0.83s (± 1.09%) +0.01s (+ 0.73%) 0.82s 0.85s
Check Time 5.07s (± 0.52%) 5.10s (± 0.51%) +0.03s (+ 0.63%) 5.04s 5.16s
Emit Time 5.66s (± 0.43%) 5.70s (± 0.71%) +0.04s (+ 0.64%) 5.61s 5.77s
Total Time 13.32s (± 0.33%) 13.40s (± 0.46%) +0.08s (+ 0.60%) 13.25s 13.52s
Compiler-Unions - node (v12.1.0, x64)
Memory used 187,859k (± 0.07%) 187,766k (± 0.07%) -93k (- 0.05%) 187,430k 187,968k
Parse Time 0.76s (± 0.49%) 0.76s (± 0.45%) -0.00s (- 0.26%) 0.76s 0.77s
Bind Time 0.53s (± 0.56%) 0.53s (± 0.84%) +0.00s (+ 0.76%) 0.52s 0.54s
Check Time 7.07s (± 0.49%) 7.08s (± 0.78%) +0.01s (+ 0.13%) 6.96s 7.19s
Emit Time 2.25s (± 0.85%) 2.29s (± 3.08%) +0.04s (+ 1.78%) 2.21s 2.55s
Total Time 10.61s (± 0.31%) 10.66s (± 0.70%) +0.04s (+ 0.41%) 10.50s 10.82s
Monaco - node (v12.1.0, x64)
Memory used 323,442k (± 0.02%) 323,349k (± 0.06%) -93k (- 0.03%) 322,540k 323,551k
Parse Time 1.42s (± 0.78%) 1.42s (± 0.63%) -0.00s (- 0.14%) 1.40s 1.43s
Bind Time 0.72s (± 1.21%) 0.72s (± 0.77%) 0.00s ( 0.00%) 0.71s 0.73s
Check Time 5.19s (± 0.38%) 5.22s (± 0.67%) +0.03s (+ 0.52%) 5.15s 5.32s
Emit Time 2.99s (± 0.42%) 3.02s (± 1.25%) +0.04s (+ 1.17%) 2.95s 3.12s
Total Time 10.31s (± 0.38%) 10.37s (± 0.52%) +0.06s (+ 0.58%) 10.28s 10.50s
TFS - node (v12.1.0, x64)
Memory used 288,535k (± 0.02%) 288,589k (± 0.01%) +55k (+ 0.02%) 288,541k 288,628k
Parse Time 1.19s (± 0.75%) 1.18s (± 0.70%) -0.00s (- 0.17%) 1.17s 1.21s
Bind Time 0.68s (± 0.85%) 0.69s (± 0.69%) +0.00s (+ 0.59%) 0.68s 0.70s
Check Time 4.79s (± 0.76%) 4.79s (± 0.44%) +0.00s (+ 0.02%) 4.74s 4.85s
Emit Time 3.13s (± 0.56%) 3.14s (± 0.97%) +0.01s (+ 0.26%) 3.06s 3.20s
Total Time 9.79s (± 0.52%) 9.80s (± 0.49%) +0.01s (+ 0.12%) 9.70s 9.91s
material-ui - node (v12.1.0, x64)
Memory used 450,090k (± 0.08%) 450,201k (± 0.07%) +111k (+ 0.02%) 448,938k 450,484k
Parse Time 1.71s (± 0.53%) 1.72s (± 0.87%) +0.01s (+ 0.47%) 1.69s 1.76s
Bind Time 0.64s (± 0.74%) 0.64s (± 1.09%) -0.00s (- 0.31%) 0.63s 0.66s
Check Time 12.78s (± 0.73%) 12.76s (± 0.91%) -0.01s (- 0.11%) 12.60s 13.16s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.13s (± 0.64%) 15.12s (± 0.80%) -0.01s (- 0.05%) 14.96s 15.54s
Angular - node (v14.15.1, x64)
Memory used 320,874k (± 0.01%) 320,877k (± 0.01%) +3k (+ 0.00%) 320,819k 320,911k
Parse Time 1.80s (± 0.78%) 1.80s (± 0.39%) +0.00s (+ 0.06%) 1.79s 1.82s
Bind Time 0.87s (± 0.67%) 0.87s (± 0.54%) +0.00s (+ 0.35%) 0.86s 0.88s
Check Time 5.12s (± 0.39%) 5.12s (± 0.45%) +0.00s (+ 0.08%) 5.09s 5.19s
Emit Time 5.72s (± 0.54%) 5.72s (± 0.90%) -0.00s (- 0.02%) 5.65s 5.86s
Total Time 13.51s (± 0.33%) 13.52s (± 0.36%) +0.01s (+ 0.04%) 13.41s 13.62s
Compiler-Unions - node (v14.15.1, x64)
Memory used 188,507k (± 0.61%) 188,504k (± 0.62%) -3k (- 0.00%) 186,547k 189,908k
Parse Time 0.80s (± 0.56%) 0.80s (± 0.63%) -0.00s (- 0.38%) 0.79s 0.81s
Bind Time 0.55s (± 0.67%) 0.56s (± 0.79%) +0.01s (+ 1.26%) 0.55s 0.57s
Check Time 7.20s (± 0.72%) 7.15s (± 0.52%) -0.04s (- 0.58%) 7.08s 7.25s
Emit Time 2.26s (± 1.11%) 2.27s (± 0.85%) +0.00s (+ 0.22%) 2.24s 2.33s
Total Time 10.81s (± 0.58%) 10.78s (± 0.39%) -0.04s (- 0.35%) 10.70s 10.87s
Monaco - node (v14.15.1, x64)
Memory used 322,487k (± 0.01%) 322,505k (± 0.01%) +18k (+ 0.01%) 322,451k 322,580k
Parse Time 1.48s (± 1.21%) 1.47s (± 0.67%) -0.01s (- 0.41%) 1.46s 1.50s
Bind Time 0.75s (± 0.80%) 0.75s (± 0.78%) +0.00s (+ 0.13%) 0.74s 0.76s
Check Time 5.17s (± 0.47%) 5.19s (± 0.62%) +0.02s (+ 0.35%) 5.14s 5.29s
Emit Time 3.05s (± 0.48%) 3.05s (± 0.63%) -0.01s (- 0.16%) 3.01s 3.09s
Total Time 10.45s (± 0.36%) 10.46s (± 0.50%) +0.01s (+ 0.08%) 10.37s 10.58s
TFS - node (v14.15.1, x64)
Memory used 287,598k (± 0.00%) 287,603k (± 0.01%) +5k (+ 0.00%) 287,546k 287,651k
Parse Time 1.24s (± 1.29%) 1.25s (± 1.58%) +0.01s (+ 1.13%) 1.22s 1.32s
Bind Time 0.72s (± 0.80%) 0.71s (± 0.31%) -0.01s (- 1.25%) 0.71s 0.72s
Check Time 4.82s (± 0.41%) 4.81s (± 0.58%) -0.01s (- 0.31%) 4.76s 4.89s
Emit Time 3.22s (± 0.60%) 3.21s (± 0.71%) -0.01s (- 0.37%) 3.15s 3.26s
Total Time 10.00s (± 0.24%) 9.98s (± 0.43%) -0.02s (- 0.20%) 9.93s 10.14s
material-ui - node (v14.15.1, x64)
Memory used 448,640k (± 0.01%) 448,619k (± 0.00%) -21k (- 0.00%) 448,565k 448,672k
Parse Time 1.78s (± 0.65%) 1.78s (± 0.81%) +0.01s (+ 0.34%) 1.74s 1.80s
Bind Time 0.69s (± 0.71%) 0.70s (± 0.64%) +0.00s (+ 0.58%) 0.69s 0.71s
Check Time 13.04s (± 0.70%) 13.00s (± 0.51%) -0.05s (- 0.35%) 12.85s 13.15s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.51s (± 0.61%) 15.48s (± 0.46%) -0.03s (- 0.22%) 15.36s 15.65s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-206-generic
Architecturex64
Available Memory16 GB
Available Memory1 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)
Benchmark Name Iterations
Current 44219 10
Baseline master 10

Developer Information:

Download Benchmark

@DanielRosenwasser
Copy link
Member

@ahejlsberg the Node 10 check time numbers have me a little bit concerned. Any idea what could have caused that?

CC @amcasey

@ahejlsberg
Copy link
Member Author

The Node 10 check time numbers have me a little bit concerned. Any idea what could have caused that?

Those deltas are all in the noise. If you don't like them, just run the tests again. 😉

@DanielRosenwasser
Copy link
Member

@typescript-bot perf test this

@typescript-bot
Copy link
Collaborator

typescript-bot commented May 24, 2021

Heya @DanielRosenwasser, I've started to run the perf test suite on this PR at 634b01a. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

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

Here they are:

Comparison Report - master..44219

Metric master 44219 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 343,861k (± 0.01%) 343,944k (± 0.02%) +83k (+ 0.02%) 343,732k 344,115k
Parse Time 1.79s (± 0.56%) 1.80s (± 0.52%) +0.01s (+ 0.39%) 1.78s 1.82s
Bind Time 0.83s (± 0.63%) 0.84s (± 0.60%) +0.00s (+ 0.48%) 0.83s 0.85s
Check Time 5.21s (± 0.36%) 5.21s (± 0.46%) +0.01s (+ 0.13%) 5.17s 5.28s
Emit Time 5.44s (± 0.49%) 5.44s (± 0.57%) -0.00s (- 0.00%) 5.36s 5.51s
Total Time 13.27s (± 0.34%) 13.29s (± 0.26%) +0.02s (+ 0.13%) 13.17s 13.34s
Compiler-Unions - node (v10.16.3, x64)
Memory used 200,391k (± 0.03%) 200,371k (± 0.03%) -20k (- 0.01%) 200,212k 200,529k
Parse Time 0.78s (± 0.93%) 0.78s (± 0.83%) 0.00s ( 0.00%) 0.77s 0.80s
Bind Time 0.53s (± 1.04%) 0.53s (± 1.69%) -0.01s (- 1.13%) 0.51s 0.54s
Check Time 7.56s (± 0.75%) 7.54s (± 0.65%) -0.02s (- 0.28%) 7.44s 7.64s
Emit Time 2.24s (± 1.93%) 2.24s (± 0.81%) -0.01s (- 0.22%) 2.19s 2.28s
Total Time 11.12s (± 0.63%) 11.09s (± 0.48%) -0.03s (- 0.28%) 10.96s 11.19s
Monaco - node (v10.16.3, x64)
Memory used 340,438k (± 0.02%) 340,392k (± 0.02%) -46k (- 0.01%) 340,275k 340,514k
Parse Time 1.44s (± 1.06%) 1.45s (± 0.70%) +0.00s (+ 0.28%) 1.42s 1.47s
Bind Time 0.74s (± 0.90%) 0.74s (± 0.60%) -0.00s (- 0.27%) 0.73s 0.75s
Check Time 5.35s (± 0.60%) 5.38s (± 0.41%) +0.02s (+ 0.41%) 5.31s 5.42s
Emit Time 2.96s (± 0.81%) 2.94s (± 0.67%) -0.02s (- 0.57%) 2.89s 2.98s
Total Time 10.50s (± 0.29%) 10.50s (± 0.33%) +0.01s (+ 0.08%) 10.43s 10.58s
TFS - node (v10.16.3, x64)
Memory used 303,947k (± 0.03%) 304,017k (± 0.03%) +70k (+ 0.02%) 303,867k 304,345k
Parse Time 1.18s (± 0.69%) 1.18s (± 0.85%) +0.01s (+ 0.68%) 1.17s 1.21s
Bind Time 0.71s (± 0.71%) 0.70s (± 0.79%) -0.00s (- 0.43%) 0.69s 0.71s
Check Time 4.87s (± 0.61%) 4.89s (± 0.56%) +0.02s (+ 0.35%) 4.83s 4.94s
Emit Time 3.04s (± 1.25%) 3.07s (± 0.62%) +0.03s (+ 0.95%) 3.03s 3.10s
Total Time 9.79s (± 0.65%) 9.85s (± 0.40%) +0.05s (+ 0.55%) 9.74s 9.92s
material-ui - node (v10.16.3, x64)
Memory used 471,565k (± 0.01%) 471,636k (± 0.01%) +71k (+ 0.02%) 471,499k 471,818k
Parse Time 1.74s (± 0.58%) 1.74s (± 0.64%) 0.00s ( 0.00%) 1.71s 1.76s
Bind Time 0.66s (± 0.79%) 0.66s (± 0.84%) +0.00s (+ 0.15%) 0.65s 0.67s
Check Time 14.23s (± 0.50%) 14.20s (± 0.50%) -0.02s (- 0.17%) 14.06s 14.36s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 16.62s (± 0.45%) 16.60s (± 0.42%) -0.02s (- 0.15%) 16.46s 16.73s
Angular - node (v12.1.0, x64)
Memory used 322,057k (± 0.02%) 322,114k (± 0.02%) +57k (+ 0.02%) 321,992k 322,292k
Parse Time 1.78s (± 0.49%) 1.77s (± 0.42%) -0.01s (- 0.56%) 1.75s 1.78s
Bind Time 0.82s (± 0.79%) 0.83s (± 0.70%) +0.00s (+ 0.61%) 0.81s 0.84s
Check Time 5.09s (± 0.37%) 5.10s (± 0.45%) +0.01s (+ 0.24%) 5.06s 5.14s
Emit Time 5.66s (± 0.82%) 5.68s (± 0.50%) +0.02s (+ 0.28%) 5.62s 5.73s
Total Time 13.36s (± 0.42%) 13.38s (± 0.39%) +0.02s (+ 0.17%) 13.24s 13.46s
Compiler-Unions - node (v12.1.0, x64)
Memory used 187,663k (± 0.12%) 187,786k (± 0.07%) +123k (+ 0.07%) 187,399k 187,964k
Parse Time 0.77s (± 0.84%) 0.77s (± 1.04%) 0.00s ( 0.00%) 0.75s 0.79s
Bind Time 0.53s (± 0.69%) 0.53s (± 1.04%) +0.01s (+ 1.14%) 0.52s 0.54s
Check Time 7.00s (± 0.38%) 7.02s (± 0.85%) +0.02s (+ 0.23%) 6.95s 7.18s
Emit Time 2.26s (± 0.82%) 2.24s (± 0.80%) -0.02s (- 0.89%) 2.20s 2.28s
Total Time 10.55s (± 0.31%) 10.55s (± 0.68%) +0.00s (+ 0.00%) 10.47s 10.75s
Monaco - node (v12.1.0, x64)
Memory used 323,464k (± 0.01%) 323,450k (± 0.02%) -14k (- 0.00%) 323,341k 323,634k
Parse Time 1.41s (± 0.53%) 1.40s (± 0.72%) -0.01s (- 0.43%) 1.38s 1.42s
Bind Time 0.71s (± 1.05%) 0.72s (± 0.93%) +0.00s (+ 0.56%) 0.70s 0.73s
Check Time 5.20s (± 0.40%) 5.20s (± 0.57%) -0.00s (- 0.06%) 5.13s 5.26s
Emit Time 2.98s (± 0.50%) 3.00s (± 0.50%) +0.02s (+ 0.60%) 2.96s 3.03s
Total Time 10.30s (± 0.32%) 10.31s (± 0.42%) +0.01s (+ 0.12%) 10.21s 10.43s
TFS - node (v12.1.0, x64)
Memory used 288,555k (± 0.02%) 288,566k (± 0.02%) +12k (+ 0.00%) 288,471k 288,672k
Parse Time 1.18s (± 0.66%) 1.19s (± 0.62%) +0.01s (+ 0.93%) 1.17s 1.21s
Bind Time 0.69s (± 0.84%) 0.69s (± 1.32%) +0.00s (+ 0.29%) 0.67s 0.71s
Check Time 4.78s (± 0.30%) 4.76s (± 0.44%) -0.02s (- 0.42%) 4.73s 4.81s
Emit Time 3.11s (± 0.56%) 3.11s (± 0.75%) +0.00s (+ 0.06%) 3.05s 3.16s
Total Time 9.75s (± 0.31%) 9.74s (± 0.47%) -0.00s (- 0.04%) 9.63s 9.84s
material-ui - node (v12.1.0, x64)
Memory used 450,297k (± 0.01%) 450,354k (± 0.01%) +57k (+ 0.01%) 450,246k 450,490k
Parse Time 1.71s (± 0.62%) 1.72s (± 0.50%) +0.01s (+ 0.41%) 1.70s 1.74s
Bind Time 0.63s (± 0.57%) 0.64s (± 0.96%) +0.01s (+ 1.10%) 0.63s 0.65s
Check Time 12.72s (± 0.40%) 12.76s (± 0.54%) +0.04s (+ 0.32%) 12.62s 12.97s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.07s (± 0.40%) 15.12s (± 0.44%) +0.05s (+ 0.37%) 15.00s 15.33s
Angular - node (v14.15.1, x64)
Memory used 320,822k (± 0.01%) 320,826k (± 0.00%) +3k (+ 0.00%) 320,794k 320,857k
Parse Time 1.79s (± 0.69%) 1.79s (± 0.29%) +0.00s (+ 0.06%) 1.78s 1.80s
Bind Time 0.87s (± 0.55%) 0.87s (± 0.60%) +0.00s (+ 0.23%) 0.86s 0.88s
Check Time 5.10s (± 0.57%) 5.11s (± 0.56%) +0.01s (+ 0.27%) 5.07s 5.20s
Emit Time 5.70s (± 0.61%) 5.69s (± 0.54%) -0.01s (- 0.18%) 5.62s 5.75s
Total Time 13.46s (± 0.43%) 13.46s (± 0.40%) +0.01s (+ 0.04%) 13.37s 13.62s
Compiler-Unions - node (v14.15.1, x64)
Memory used 189,743k (± 0.02%) 189,425k (± 0.38%) -318k (- 0.17%) 186,506k 189,826k
Parse Time 0.80s (± 0.83%) 0.80s (± 0.65%) +0.00s (+ 0.12%) 0.79s 0.82s
Bind Time 0.56s (± 0.85%) 0.55s (± 0.67%) -0.00s (- 0.36%) 0.55s 0.56s
Check Time 7.15s (± 0.84%) 7.12s (± 0.34%) -0.03s (- 0.38%) 7.08s 7.20s
Emit Time 2.27s (± 1.04%) 2.26s (± 0.86%) -0.02s (- 0.70%) 2.22s 2.32s
Total Time 10.78s (± 0.66%) 10.74s (± 0.26%) -0.04s (- 0.35%) 10.67s 10.78s
Monaco - node (v14.15.1, x64)
Memory used 322,491k (± 0.01%) 322,482k (± 0.00%) -9k (- 0.00%) 322,464k 322,528k
Parse Time 1.46s (± 0.57%) 1.46s (± 0.73%) -0.00s (- 0.07%) 1.44s 1.49s
Bind Time 0.75s (± 0.91%) 0.75s (± 1.11%) -0.00s (- 0.13%) 0.73s 0.77s
Check Time 5.18s (± 0.60%) 5.16s (± 0.42%) -0.02s (- 0.35%) 5.11s 5.20s
Emit Time 3.06s (± 0.70%) 3.05s (± 0.62%) -0.01s (- 0.46%) 3.01s 3.09s
Total Time 10.45s (± 0.40%) 10.41s (± 0.34%) -0.03s (- 0.32%) 10.32s 10.51s
TFS - node (v14.15.1, x64)
Memory used 287,590k (± 0.01%) 287,577k (± 0.00%) -12k (- 0.00%) 287,554k 287,604k
Parse Time 1.25s (± 1.74%) 1.24s (± 1.02%) -0.01s (- 1.20%) 1.21s 1.27s
Bind Time 0.71s (± 0.67%) 0.71s (± 0.31%) -0.00s (- 0.28%) 0.71s 0.72s
Check Time 4.80s (± 0.29%) 4.81s (± 0.35%) +0.01s (+ 0.21%) 4.76s 4.85s
Emit Time 3.21s (± 1.02%) 3.22s (± 0.79%) +0.01s (+ 0.31%) 3.17s 3.29s
Total Time 9.97s (± 0.40%) 9.97s (± 0.25%) +0.00s (+ 0.01%) 9.92s 10.02s
material-ui - node (v14.15.1, x64)
Memory used 448,521k (± 0.06%) 448,613k (± 0.00%) +92k (+ 0.02%) 448,576k 448,655k
Parse Time 1.77s (± 0.94%) 1.77s (± 0.56%) -0.01s (- 0.39%) 1.75s 1.80s
Bind Time 0.69s (± 0.75%) 0.69s (± 0.48%) +0.00s (+ 0.15%) 0.68s 0.70s
Check Time 12.97s (± 0.57%) 13.00s (± 0.52%) +0.03s (+ 0.19%) 12.80s 13.15s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 15.43s (± 0.53%) 15.46s (± 0.47%) +0.02s (+ 0.16%) 15.26s 15.63s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-206-generic
Architecturex64
Available Memory16 GB
Available Memory1 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)
Benchmark Name Iterations
Current 44219 10
Baseline master 10

Developer Information:

Download Benchmark

@ahejlsberg
Copy link
Member Author

@DanielRosenwasser There we go, basically no difference!

@DanielRosenwasser
Copy link
Member

That's amazing! I can't believe you drove down those numbers in just a few hours!

@typescript-bot cherry-pick this to release-4.3 and LKG

@typescript-bot
Copy link
Collaborator

typescript-bot commented May 25, 2021

Heya @DanielRosenwasser, I've started to run the task to cherry-pick this into release-4.3 on this PR at 634b01a. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

Hey @DanielRosenwasser, I've opened #44243 for you.

typescript-bot pushed a commit to typescript-bot/TypeScript that referenced this pull request May 25, 2021
Component commits:
4475012 Improve getNonNullableType function

86f09ae Add tests

d45806a More closely match previous behavior

634b01a Add non-strict mode test
@DanielRosenwasser DanielRosenwasser merged commit 3938958 into master May 25, 2021
@DanielRosenwasser DanielRosenwasser deleted the fix43425 branch May 25, 2021 18:40
DanielRosenwasser pushed a commit that referenced this pull request May 25, 2021
…e-4.3 (#44243)

* Cherry-pick PR #44219 into release-4.3

Component commits:
4475012 Improve getNonNullableType function

86f09ae Add tests

d45806a More closely match previous behavior

634b01a Add non-strict mode test

* Update LKG

Co-authored-by: Anders Hejlsberg <[email protected]>
Co-authored-by: typescript-bot <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Author: Team For Milestone Bug PRs that fix a bug with a specific milestone
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Can't call ((_: string) => T) | undefined when conditionally string extends T
3 participants