Skip to content

Add IteratorVoidReturnResult for optional 'value' when done #40825

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

Closed
wants to merge 1 commit into from

Conversation

rbuckton
Copy link
Member

This is an alternative to #40823 to verify whether introducing an optional IteratorVoidReturnResult to the IteratorResult union (that only applies when TReturn contains void) will cause any issues with assignability in our user tests.

Fixes #38479

@typescript-bot typescript-bot added Author: Team For Milestone Bug PRs that fix a bug with a specific milestone labels Sep 29, 2020
@rbuckton
Copy link
Member Author

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

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 29, 2020

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

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 29, 2020

Heya @rbuckton, I've started to run the extended test suite on this PR at 52a09b6. You can monitor the build here.

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 29, 2020

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

@typescript-bot
Copy link
Collaborator

typescript-bot commented Sep 29, 2020

Heya @rbuckton, I've started to run the perf test suite on this PR at 52a09b6. You can monitor the build here.

Update: The results are in!

@typescript-bot
Copy link
Collaborator

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

Here they are:

Comparison Report - master..40825

Metric master 40825 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 349,616k (± 0.01%) 349,574k (± 0.02%) -42k (- 0.01%) 349,350k 349,692k
Parse Time 2.00s (± 0.26%) 2.00s (± 0.50%) -0.00s (- 0.15%) 1.98s 2.02s
Bind Time 0.82s (± 0.81%) 0.82s (± 0.57%) -0.00s (- 0.36%) 0.81s 0.83s
Check Time 4.90s (± 0.77%) 4.88s (± 0.34%) -0.03s (- 0.51%) 4.85s 4.92s
Emit Time 5.19s (± 0.52%) 5.17s (± 0.48%) -0.02s (- 0.37%) 5.13s 5.24s
Total Time 12.91s (± 0.43%) 12.87s (± 0.38%) -0.05s (- 0.37%) 12.81s 13.02s
Monaco - node (v10.16.3, x64)
Memory used 354,341k (± 0.03%) 354,289k (± 0.03%) -52k (- 0.01%) 354,038k 354,545k
Parse Time 1.56s (± 0.52%) 1.57s (± 0.44%) +0.00s (+ 0.32%) 1.55s 1.58s
Bind Time 0.71s (± 0.52%) 0.71s (± 0.67%) -0.00s (- 0.28%) 0.70s 0.72s
Check Time 5.07s (± 0.61%) 5.04s (± 0.63%) -0.03s (- 0.51%) 4.99s 5.15s
Emit Time 2.76s (± 0.86%) 2.76s (± 0.69%) -0.00s (- 0.07%) 2.71s 2.81s
Total Time 10.10s (± 0.49%) 10.08s (± 0.36%) -0.02s (- 0.23%) 10.01s 10.19s
TFS - node (v10.16.3, x64)
Memory used 307,541k (± 0.04%) 307,607k (± 0.02%) +66k (+ 0.02%) 307,472k 307,779k
Parse Time 1.21s (± 0.56%) 1.21s (± 0.78%) 0.00s ( 0.00%) 1.20s 1.24s
Bind Time 0.67s (± 0.99%) 0.67s (± 0.44%) -0.00s (- 0.15%) 0.67s 0.68s
Check Time 4.54s (± 0.49%) 4.53s (± 0.49%) -0.01s (- 0.13%) 4.49s 4.60s
Emit Time 2.90s (± 1.00%) 2.89s (± 0.83%) -0.00s (- 0.17%) 2.84s 2.95s
Total Time 9.33s (± 0.46%) 9.31s (± 0.44%) -0.01s (- 0.13%) 9.24s 9.44s
material-ui - node (v10.16.3, x64)
Memory used 489,001k (± 0.01%) 488,985k (± 0.01%) -16k (- 0.00%) 488,802k 489,177k
Parse Time 1.98s (± 0.45%) 1.98s (± 0.61%) -0.00s (- 0.20%) 1.95s 2.00s
Bind Time 0.65s (± 0.86%) 0.65s (± 0.53%) -0.00s (- 0.15%) 0.64s 0.65s
Check Time 13.50s (± 0.78%) 13.36s (± 0.49%) -0.14s (- 1.07%) 13.26s 13.54s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 16.14s (± 0.64%) 15.99s (± 0.40%) -0.15s (- 0.94%) 15.88s 16.13s
Angular - node (v12.1.0, x64)
Memory used 326,839k (± 0.03%) 326,836k (± 0.03%) -3k (- 0.00%) 326,654k 327,061k
Parse Time 1.99s (± 0.51%) 1.99s (± 0.42%) +0.00s (+ 0.20%) 1.98s 2.02s
Bind Time 0.81s (± 0.64%) 0.81s (± 0.45%) -0.00s (- 0.37%) 0.80s 0.81s
Check Time 4.80s (± 0.57%) 4.80s (± 0.49%) -0.00s (- 0.04%) 4.74s 4.84s
Emit Time 5.36s (± 0.68%) 5.39s (± 1.27%) +0.04s (+ 0.65%) 5.32s 5.64s
Total Time 12.95s (± 0.46%) 12.99s (± 0.62%) +0.04s (+ 0.28%) 12.85s 13.28s
Monaco - node (v12.1.0, x64)
Memory used 336,492k (± 0.01%) 336,513k (± 0.02%) +21k (+ 0.01%) 336,409k 336,673k
Parse Time 1.54s (± 0.86%) 1.54s (± 0.89%) +0.01s (+ 0.39%) 1.52s 1.58s
Bind Time 0.70s (± 1.84%) 0.69s (± 0.80%) -0.01s (- 1.14%) 0.68s 0.71s
Check Time 4.87s (± 0.47%) 4.84s (± 0.36%) -0.03s (- 0.66%) 4.80s 4.87s
Emit Time 2.83s (± 0.76%) 2.81s (± 0.99%) -0.02s (- 0.60%) 2.77s 2.90s
Total Time 9.93s (± 0.47%) 9.88s (± 0.26%) -0.05s (- 0.54%) 9.80s 9.93s
TFS - node (v12.1.0, x64)
Memory used 291,819k (± 0.02%) 291,835k (± 0.03%) +17k (+ 0.01%) 291,676k 291,959k
Parse Time 1.23s (± 0.66%) 1.23s (± 0.63%) +0.00s (+ 0.08%) 1.21s 1.24s
Bind Time 0.64s (± 0.90%) 0.64s (± 0.73%) -0.00s (- 0.47%) 0.63s 0.65s
Check Time 4.44s (± 0.36%) 4.43s (± 0.62%) -0.01s (- 0.20%) 4.38s 4.52s
Emit Time 2.94s (± 0.96%) 2.91s (± 0.85%) -0.02s (- 0.82%) 2.87s 2.98s
Total Time 9.25s (± 0.42%) 9.22s (± 0.40%) -0.03s (- 0.35%) 9.13s 9.28s
material-ui - node (v12.1.0, x64)
Memory used 466,976k (± 0.05%) 466,888k (± 0.08%) -88k (- 0.02%) 465,940k 467,240k
Parse Time 2.00s (± 0.38%) 2.00s (± 0.47%) 0.00s ( 0.00%) 1.99s 2.02s
Bind Time 0.64s (± 0.58%) 0.64s (± 0.77%) +0.00s (+ 0.16%) 0.63s 0.65s
Check Time 12.01s (± 0.69%) 12.02s (± 1.02%) +0.01s (+ 0.09%) 11.82s 12.45s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 14.65s (± 0.59%) 14.66s (± 0.83%) +0.02s (+ 0.11%) 14.48s 15.09s
Angular - node (v8.9.0, x64)
Memory used 346,316k (± 0.02%) 346,357k (± 0.02%) +41k (+ 0.01%) 346,265k 346,495k
Parse Time 2.55s (± 0.37%) 2.55s (± 0.42%) +0.01s (+ 0.27%) 2.53s 2.58s
Bind Time 0.86s (± 0.58%) 0.86s (± 1.10%) -0.00s (- 0.12%) 0.84s 0.88s
Check Time 5.54s (± 0.73%) 5.54s (± 0.49%) +0.01s (+ 0.09%) 5.49s 5.61s
Emit Time 6.21s (± 1.36%) 6.06s (± 1.48%) -0.15s (- 2.40%) 5.90s 6.26s
Total Time 15.17s (± 0.51%) 15.03s (± 0.66%) -0.14s (- 0.92%) 14.81s 15.25s
Monaco - node (v8.9.0, x64)
Memory used 355,579k (± 0.02%) 355,623k (± 0.02%) +45k (+ 0.01%) 355,486k 355,747k
Parse Time 1.90s (± 0.44%) 1.88s (± 0.34%) -0.01s (- 0.74%) 1.87s 1.89s
Bind Time 0.89s (± 0.82%) 0.89s (± 0.77%) -0.01s (- 0.67%) 0.88s 0.91s
Check Time 5.62s (± 0.55%) 5.60s (± 0.38%) -0.02s (- 0.32%) 5.55s 5.63s
Emit Time 3.31s (± 1.50%) 3.24s (± 1.25%) -0.07s (- 1.97%) 3.18s 3.34s
Total Time 11.71s (± 0.55%) 11.61s (± 0.41%) -0.10s (- 0.90%) 11.49s 11.74s
TFS - node (v8.9.0, x64)
Memory used 309,276k (± 0.01%) 309,276k (± 0.03%) -1k (- 0.00%) 309,122k 309,507k
Parse Time 1.56s (± 0.32%) 1.54s (± 0.44%) -0.01s (- 0.77%) 1.53s 1.56s
Bind Time 0.68s (± 0.95%) 0.68s (± 0.70%) -0.00s (- 0.15%) 0.67s 0.69s
Check Time 5.30s (± 0.59%) 5.28s (± 0.46%) -0.02s (- 0.30%) 5.20s 5.32s
Emit Time 2.93s (± 0.80%) 2.94s (± 0.65%) +0.01s (+ 0.31%) 2.88s 2.98s
Total Time 10.46s (± 0.28%) 10.44s (± 0.34%) -0.02s (- 0.20%) 10.31s 10.48s
material-ui - node (v8.9.0, x64)
Memory used 493,347k (± 0.02%) 493,394k (± 0.01%) +47k (+ 0.01%) 493,292k 493,563k
Parse Time 2.40s (± 0.36%) 2.40s (± 0.65%) +0.00s (+ 0.12%) 2.38s 2.44s
Bind Time 0.81s (± 1.17%) 0.82s (± 0.94%) +0.01s (+ 0.86%) 0.80s 0.84s
Check Time 17.92s (± 0.84%) 17.83s (± 0.86%) -0.09s (- 0.49%) 17.52s 18.14s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 21.14s (± 0.68%) 21.06s (± 0.68%) -0.08s (- 0.37%) 20.74s 21.35s
Angular - node (v8.9.0, x86)
Memory used 198,593k (± 0.02%) 198,609k (± 0.03%) +16k (+ 0.01%) 198,489k 198,697k
Parse Time 2.48s (± 0.81%) 2.46s (± 0.58%) -0.02s (- 0.69%) 2.42s 2.49s
Bind Time 1.00s (± 0.93%) 1.00s (± 1.22%) +0.00s (+ 0.10%) 0.98s 1.04s
Check Time 4.99s (± 0.61%) 5.00s (± 0.31%) +0.01s (+ 0.18%) 4.97s 5.05s
Emit Time 5.92s (± 0.90%) 5.94s (± 0.75%) +0.02s (+ 0.32%) 5.84s 6.04s
Total Time 14.39s (± 0.56%) 14.40s (± 0.33%) +0.01s (+ 0.06%) 14.27s 14.50s
Monaco - node (v8.9.0, x86)
Memory used 201,394k (± 0.01%) 201,407k (± 0.02%) +13k (+ 0.01%) 201,313k 201,475k
Parse Time 1.93s (± 0.81%) 1.92s (± 0.90%) -0.01s (- 0.41%) 1.88s 1.97s
Bind Time 0.71s (± 0.91%) 0.71s (± 0.70%) -0.00s (- 0.28%) 0.69s 0.71s
Check Time 5.46s (± 1.24%) 5.47s (± 1.24%) +0.01s (+ 0.16%) 5.37s 5.64s
Emit Time 3.03s (± 3.23%) 2.99s (± 3.32%) -0.05s (- 1.52%) 2.72s 3.10s
Total Time 11.13s (± 0.64%) 11.08s (± 0.50%) -0.05s (- 0.41%) 10.94s 11.21s
TFS - node (v8.9.0, x86)
Memory used 176,811k (± 0.02%) 176,830k (± 0.03%) +19k (+ 0.01%) 176,715k 176,949k
Parse Time 1.58s (± 0.84%) 1.59s (± 1.39%) +0.01s (+ 0.38%) 1.56s 1.67s
Bind Time 0.65s (± 1.23%) 0.65s (± 0.90%) -0.00s (- 0.15%) 0.64s 0.66s
Check Time 4.79s (± 0.56%) 4.83s (± 0.65%) +0.04s (+ 0.75%) 4.75s 4.92s
Emit Time 2.80s (± 1.10%) 2.83s (± 1.55%) +0.03s (+ 1.07%) 2.75s 2.94s
Total Time 9.82s (± 0.40%) 9.89s (± 0.57%) +0.08s (+ 0.79%) 9.74s 10.01s
material-ui - node (v8.9.0, x86)
Memory used 277,775k (± 0.01%) 277,814k (± 0.01%) +39k (+ 0.01%) 277,750k 277,893k
Parse Time 2.46s (± 0.82%) 2.46s (± 0.61%) -0.00s (- 0.00%) 2.43s 2.51s
Bind Time 0.71s (± 5.86%) 0.74s (± 6.14%) +0.03s (+ 3.65%) 0.67s 0.87s
Check Time 16.38s (± 0.69%) 16.42s (± 0.80%) +0.04s (+ 0.24%) 16.24s 16.86s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 19.55s (± 0.74%) 19.61s (± 0.79%) +0.06s (+ 0.32%) 19.42s 20.08s
System
Machine Namets-ci-ubuntu
Platformlinux 4.4.0-166-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 (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 40825 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.

@rbuckton
Copy link
Member Author

These are the exact cases that illustrate why I'm not certain this approach will work compared to #40823:

https://github.com/typescript-bot/TypeScript/pull/88/files#diff-f408a44c43eeedd5c1ee6356b6cda8b2

@sandersn sandersn added the Experiment A fork with an experimental idea which might not make it into master label Oct 9, 2020
@sandersn
Copy link
Member

This experiment is pretty old, so I'm going to close it to reduce the number of open PRs.

@sandersn sandersn closed this May 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Author: Team Experiment A fork with an experimental idea which might not make it into master 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.

IteratorResult<T> definition conflicts with the JS spec
3 participants