Skip to content
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

Add isDeeplyNestedType logic to getResolvedBaseConstraint #40971

Merged
merged 5 commits into from
Oct 7, 2020
Merged

Conversation

ahejlsberg
Copy link
Member

Fixes #40970.

@typescript-bot typescript-bot added the For Milestone Bug PRs that fix a bug with a specific milestone label Oct 6, 2020
@ahejlsberg
Copy link
Member Author

@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 Oct 6, 2020

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

@typescript-bot
Copy link
Collaborator

typescript-bot commented Oct 6, 2020

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

@typescript-bot
Copy link
Collaborator

typescript-bot commented Oct 6, 2020

Heya @ahejlsberg, I've started to run the perf test suite on this PR at 56dc16e. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Oct 6, 2020

Heya @ahejlsberg, I've started to run the extended test suite on this PR at 56dc16e. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

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

Here they are:

Comparison Report - master..40971

Metric master 40971 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 349,757k (± 0.02%) 349,793k (± 0.02%) +36k (+ 0.01%) 349,659k 350,054k
Parse Time 2.01s (± 0.80%) 2.00s (± 0.65%) -0.00s (- 0.25%) 1.98s 2.04s
Bind Time 0.82s (± 1.07%) 0.82s (± 0.68%) -0.00s (- 0.12%) 0.81s 0.84s
Check Time 4.94s (± 0.54%) 4.96s (± 0.81%) +0.02s (+ 0.38%) 4.89s 5.07s
Emit Time 5.19s (± 0.41%) 5.19s (± 0.45%) +0.00s (+ 0.00%) 5.13s 5.24s
Total Time 12.96s (± 0.34%) 12.97s (± 0.32%) +0.01s (+ 0.08%) 12.91s 13.09s
Monaco - node (v10.16.3, x64)
Memory used 354,351k (± 0.02%) 354,373k (± 0.03%) +22k (+ 0.01%) 354,150k 354,646k
Parse Time 1.57s (± 0.57%) 1.56s (± 0.45%) -0.01s (- 0.32%) 1.55s 1.57s
Bind Time 0.71s (± 0.56%) 0.72s (± 0.81%) +0.01s (+ 0.84%) 0.71s 0.73s
Check Time 5.07s (± 0.54%) 5.08s (± 0.43%) +0.01s (+ 0.24%) 5.05s 5.15s
Emit Time 2.76s (± 0.93%) 2.76s (± 1.11%) -0.00s (- 0.14%) 2.70s 2.83s
Total Time 10.11s (± 0.37%) 10.12s (± 0.38%) +0.01s (+ 0.08%) 10.03s 10.19s
TFS - node (v10.16.3, x64)
Memory used 307,640k (± 0.04%) 307,606k (± 0.02%) -35k (- 0.01%) 307,490k 307,746k
Parse Time 1.22s (± 0.76%) 1.22s (± 0.39%) -0.00s (- 0.16%) 1.21s 1.23s
Bind Time 0.66s (± 1.37%) 0.67s (± 1.30%) +0.01s (+ 1.06%) 0.65s 0.68s
Check Time 4.57s (± 0.94%) 4.56s (± 0.76%) -0.01s (- 0.13%) 4.48s 4.65s
Emit Time 2.90s (± 1.72%) 2.86s (± 1.56%) -0.04s (- 1.45%) 2.75s 2.94s
Total Time 9.35s (± 0.59%) 9.30s (± 0.43%) -0.04s (- 0.47%) 9.22s 9.38s
material-ui - node (v10.16.3, x64)
Memory used 489,125k (± 0.02%) 488,998k (± 0.01%) -127k (- 0.03%) 488,923k 489,077k
Parse Time 1.99s (± 0.54%) 1.98s (± 0.43%) -0.01s (- 0.50%) 1.97s 2.00s
Bind Time 0.65s (± 0.90%) 0.65s (± 0.56%) -0.00s (- 0.15%) 0.64s 0.65s
Check Time 13.42s (± 0.51%) 13.49s (± 0.65%) +0.06s (+ 0.48%) 13.32s 13.75s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 16.06s (± 0.45%) 16.12s (± 0.55%) +0.05s (+ 0.34%) 15.95s 16.36s
Angular - node (v12.1.0, x64)
Memory used 326,934k (± 0.02%) 326,857k (± 0.10%) -77k (- 0.02%) 325,478k 327,124k
Parse Time 2.00s (± 0.53%) 1.99s (± 0.53%) -0.01s (- 0.50%) 1.97s 2.02s
Bind Time 0.81s (± 1.12%) 0.80s (± 0.72%) -0.01s (- 0.74%) 0.79s 0.81s
Check Time 4.83s (± 0.40%) 4.90s (± 1.25%) +0.06s (+ 1.28%) 4.81s 5.09s
Emit Time 5.39s (± 0.84%) 5.38s (± 0.76%) -0.02s (- 0.37%) 5.31s 5.48s
Total Time 13.04s (± 0.52%) 13.06s (± 0.52%) +0.03s (+ 0.19%) 12.95s 13.23s
Monaco - node (v12.1.0, x64)
Memory used 336,578k (± 0.02%) 336,586k (± 0.02%) +9k (+ 0.00%) 336,464k 336,746k
Parse Time 1.54s (± 0.72%) 1.54s (± 0.49%) +0.01s (+ 0.52%) 1.52s 1.56s
Bind Time 0.69s (± 0.58%) 0.69s (± 0.80%) +0.00s (+ 0.44%) 0.68s 0.71s
Check Time 4.88s (± 0.50%) 4.88s (± 0.45%) -0.00s (- 0.08%) 4.84s 4.93s
Emit Time 2.82s (± 0.91%) 2.80s (± 0.56%) -0.02s (- 0.74%) 2.76s 2.84s
Total Time 9.93s (± 0.39%) 9.92s (± 0.32%) -0.01s (- 0.13%) 9.85s 9.99s
TFS - node (v12.1.0, x64)
Memory used 291,933k (± 0.03%) 291,876k (± 0.02%) -58k (- 0.02%) 291,795k 292,041k
Parse Time 1.23s (± 0.49%) 1.23s (± 0.76%) +0.00s (+ 0.24%) 1.21s 1.25s
Bind Time 0.65s (± 1.38%) 0.64s (± 1.01%) -0.01s (- 1.24%) 0.62s 0.65s
Check Time 4.47s (± 0.30%) 4.49s (± 0.46%) +0.03s (+ 0.63%) 4.46s 4.55s
Emit Time 2.92s (± 0.99%) 2.95s (± 0.90%) +0.03s (+ 1.13%) 2.90s 3.01s
Total Time 9.26s (± 0.36%) 9.31s (± 0.30%) +0.06s (+ 0.60%) 9.27s 9.37s
material-ui - node (v12.1.0, x64)
Memory used 467,034k (± 0.05%) 466,910k (± 0.07%) -125k (- 0.03%) 465,961k 467,237k
Parse Time 2.01s (± 0.37%) 2.01s (± 0.58%) -0.00s (- 0.10%) 1.99s 2.04s
Bind Time 0.64s (± 1.05%) 0.63s (± 0.94%) -0.00s (- 0.47%) 0.62s 0.65s
Check Time 12.05s (± 0.94%) 12.03s (± 0.85%) -0.01s (- 0.12%) 11.86s 12.30s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 14.70s (± 0.81%) 14.68s (± 0.67%) -0.02s (- 0.13%) 14.51s 14.92s
Angular - node (v8.9.0, x64)
Memory used 346,442k (± 0.01%) 346,399k (± 0.03%) -43k (- 0.01%) 346,148k 346,585k
Parse Time 2.54s (± 0.51%) 2.55s (± 0.68%) +0.00s (+ 0.16%) 2.52s 2.61s
Bind Time 0.85s (± 0.43%) 0.86s (± 0.61%) +0.00s (+ 0.59%) 0.85s 0.87s
Check Time 5.56s (± 0.52%) 5.58s (± 0.65%) +0.03s (+ 0.47%) 5.53s 5.66s
Emit Time 6.15s (± 1.07%) 6.11s (± 1.54%) -0.04s (- 0.65%) 5.92s 6.30s
Total Time 15.11s (± 0.55%) 15.10s (± 0.69%) -0.01s (- 0.05%) 14.92s 15.39s
Monaco - node (v8.9.0, x64)
Memory used 355,704k (± 0.02%) 355,730k (± 0.01%) +26k (+ 0.01%) 355,663k 355,805k
Parse Time 1.89s (± 0.77%) 1.88s (± 0.28%) -0.01s (- 0.27%) 1.87s 1.89s
Bind Time 0.89s (± 0.45%) 0.89s (± 0.38%) -0.00s (- 0.45%) 0.88s 0.89s
Check Time 5.62s (± 0.37%) 5.63s (± 0.30%) +0.00s (+ 0.04%) 5.60s 5.67s
Emit Time 3.29s (± 1.17%) 3.22s (± 0.56%) -0.07s (- 2.04%) 3.19s 3.27s
Total Time 11.69s (± 0.28%) 11.61s (± 0.25%) -0.08s (- 0.67%) 11.56s 11.68s
TFS - node (v8.9.0, x64)
Memory used 309,391k (± 0.02%) 309,396k (± 0.01%) +4k (+ 0.00%) 309,333k 309,478k
Parse Time 1.55s (± 0.64%) 1.56s (± 0.54%) +0.01s (+ 0.39%) 1.54s 1.57s
Bind Time 0.68s (± 0.73%) 0.67s (± 0.55%) -0.00s (- 0.15%) 0.67s 0.68s
Check Time 5.31s (± 0.58%) 5.30s (± 0.47%) -0.01s (- 0.13%) 5.25s 5.35s
Emit Time 2.94s (± 0.34%) 2.94s (± 0.56%) -0.00s (- 0.03%) 2.89s 2.98s
Total Time 10.48s (± 0.34%) 10.47s (± 0.27%) -0.01s (- 0.11%) 10.41s 10.54s
material-ui - node (v8.9.0, x64)
Memory used 493,431k (± 0.01%) 493,459k (± 0.01%) +28k (+ 0.01%) 493,326k 493,542k
Parse Time 2.40s (± 0.46%) 2.40s (± 0.30%) -0.00s (- 0.04%) 2.39s 2.42s
Bind Time 0.81s (± 1.02%) 0.81s (± 0.58%) -0.00s (- 0.12%) 0.80s 0.82s
Check Time 17.95s (± 0.69%) 18.09s (± 0.72%) +0.14s (+ 0.76%) 17.73s 18.40s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 21.17s (± 0.56%) 21.31s (± 0.61%) +0.13s (+ 0.63%) 20.95s 21.62s
Angular - node (v8.9.0, x86)
Memory used 198,690k (± 0.01%) 198,731k (± 0.02%) +41k (+ 0.02%) 198,598k 198,807k
Parse Time 2.48s (± 1.02%) 2.47s (± 0.75%) -0.01s (- 0.28%) 2.43s 2.51s
Bind Time 1.00s (± 1.00%) 1.01s (± 0.59%) +0.01s (+ 1.10%) 1.00s 1.03s
Check Time 5.05s (± 0.56%) 5.07s (± 0.72%) +0.02s (+ 0.44%) 5.02s 5.17s
Emit Time 5.89s (± 0.83%) 5.96s (± 0.64%) +0.08s (+ 1.34%) 5.86s 6.05s
Total Time 14.42s (± 0.58%) 14.52s (± 0.49%) +0.10s (+ 0.72%) 14.32s 14.67s
Monaco - node (v8.9.0, x86)
Memory used 201,493k (± 0.01%) 201,505k (± 0.02%) +12k (+ 0.01%) 201,427k 201,602k
Parse Time 1.94s (± 1.05%) 1.94s (± 1.02%) -0.00s (- 0.21%) 1.91s 1.99s
Bind Time 0.71s (± 0.47%) 0.71s (± 0.78%) -0.00s (- 0.28%) 0.69s 0.72s
Check Time 5.47s (± 0.38%) 5.52s (± 1.39%) +0.06s (+ 1.04%) 5.44s 5.72s
Emit Time 3.06s (± 0.59%) 2.99s (± 3.88%) -0.06s (- 2.03%) 2.68s 3.11s
Total Time 11.18s (± 0.25%) 11.17s (± 0.62%) -0.01s (- 0.11%) 11.01s 11.32s
TFS - node (v8.9.0, x86)
Memory used 176,867k (± 0.03%) 176,870k (± 0.02%) +3k (+ 0.00%) 176,782k 176,958k
Parse Time 1.60s (± 1.10%) 1.59s (± 0.61%) -0.02s (- 1.00%) 1.57s 1.61s
Bind Time 0.66s (± 2.04%) 0.64s (± 0.77%) -0.01s (- 1.53%) 0.64s 0.66s
Check Time 4.82s (± 0.58%) 4.82s (± 0.77%) -0.00s (- 0.04%) 4.78s 4.94s
Emit Time 2.80s (± 0.66%) 2.83s (± 0.71%) +0.02s (+ 0.78%) 2.80s 2.88s
Total Time 9.88s (± 0.51%) 9.88s (± 0.49%) -0.00s (- 0.05%) 9.80s 10.01s
material-ui - node (v8.9.0, x86)
Memory used 277,878k (± 0.02%) 277,858k (± 0.01%) -20k (- 0.01%) 277,782k 277,968k
Parse Time 2.46s (± 0.43%) 2.47s (± 0.96%) +0.01s (+ 0.45%) 2.42s 2.51s
Bind Time 0.69s (± 1.35%) 0.71s (± 3.50%) +0.02s (+ 2.91%) 0.67s 0.79s
Check Time 16.45s (± 0.73%) 16.43s (± 0.53%) -0.02s (- 0.15%) 16.23s 16.69s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 19.60s (± 0.63%) 19.60s (± 0.55%) +0.01s (+ 0.03%) 19.39s 19.93s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-166-generic
Architecturex64
Available Memory16 GB
Available Memory3 GB
CPUs4 × Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
Hosts
  • node (v10.16.3, x64)
  • node (v12.1.0, x64)
  • node (v8.9.0, x64)
  • node (v8.9.0, x86)
Scenarios
  • Angular - node (v10.16.3, x64)
  • Angular - node (v12.1.0, x64)
  • Angular - node (v8.9.0, x64)
  • Angular - node (v8.9.0, x86)
  • Monaco - node (v10.16.3, x64)
  • Monaco - node (v12.1.0, x64)
  • Monaco - node (v8.9.0, x64)
  • Monaco - node (v8.9.0, x86)
  • TFS - node (v10.16.3, x64)
  • TFS - node (v12.1.0, x64)
  • TFS - node (v8.9.0, x64)
  • TFS - node (v8.9.0, x86)
  • material-ui - node (v10.16.3, x64)
  • material-ui - node (v12.1.0, x64)
  • material-ui - node (v8.9.0, x64)
  • material-ui - node (v8.9.0, x86)
Benchmark Name Iterations
Current 40971 10
Baseline master 10

@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.

@ahejlsberg
Copy link
Member Author

Tests all look clean. No performance impact.

Copy link
Member

@DanielRosenwasser DanielRosenwasser left a comment

Choose a reason for hiding this comment

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

Looks reasonable to me, get a second pair of eyes just to be safe.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
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.

Excessive depth exploring template literal type constraints
4 participants