Skip to content

Fix double alias of complex export/import/default/namespace combination #41331

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 1 commit into from
Oct 30, 2020

Conversation

rbuckton
Copy link
Contributor

Fixes a case where we failed to resolve an aliased symbol when the following combination of features are employed:

  1. An exported namespace declaration that merges with a function and that has an export named default
  2. An import of the exported namespace in (1)
  3. Exporting (2) using export=
  4. Importing (3) using a default import while --esModuleInterop is set.

This seems to be caused by the fact that we weren't calling resolveSymbol for an export resolved from an export= symbol in resolveExportByName, resulting in a Symbol that was an alias to an alias, rather than the actual target.

Fixes #39149

@typescript-bot typescript-bot added Author: Team For Milestone Bug PRs that fix a bug with a specific milestone labels Oct 30, 2020
@rbuckton
Copy link
Contributor 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 Oct 30, 2020

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

@typescript-bot
Copy link
Collaborator

typescript-bot commented Oct 30, 2020

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

@typescript-bot
Copy link
Collaborator

typescript-bot commented Oct 30, 2020

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

Update: The results are in!

@typescript-bot
Copy link
Collaborator

typescript-bot commented Oct 30, 2020

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

@typescript-bot
Copy link
Collaborator

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

Here they are:

Comparison Report - master..41331

Metric master 41331 Delta Best Worst
Angular - node (v10.16.3, x64)
Memory used 350,726k (± 0.01%) 350,725k (± 0.02%) -1k (- 0.00%) 350,549k 350,815k
Parse Time 2.09s (± 0.93%) 2.09s (± 0.53%) 0.00s ( 0.00%) 2.06s 2.11s
Bind Time 0.85s (± 0.85%) 0.86s (± 1.11%) +0.00s (+ 0.47%) 0.84s 0.88s
Check Time 4.99s (± 0.44%) 4.98s (± 0.30%) -0.01s (- 0.14%) 4.96s 5.01s
Emit Time 5.38s (± 1.04%) 5.31s (± 0.48%) -0.06s (- 1.12%) 5.26s 5.37s
Total Time 13.30s (± 0.63%) 13.24s (± 0.33%) -0.06s (- 0.47%) 13.14s 13.33s
Monaco - node (v10.16.3, x64)
Memory used 354,638k (± 0.02%) 354,646k (± 0.02%) +7k (+ 0.00%) 354,474k 354,859k
Parse Time 1.61s (± 0.32%) 1.61s (± 0.40%) -0.00s (- 0.06%) 1.60s 1.62s
Bind Time 0.74s (± 0.51%) 0.73s (± 0.61%) -0.01s (- 0.95%) 0.72s 0.74s
Check Time 5.12s (± 0.43%) 5.11s (± 0.38%) -0.02s (- 0.35%) 5.07s 5.16s
Emit Time 2.79s (± 0.53%) 2.79s (± 0.94%) +0.00s (+ 0.11%) 2.75s 2.86s
Total Time 10.26s (± 0.33%) 10.23s (± 0.27%) -0.03s (- 0.24%) 10.18s 10.30s
TFS - node (v10.16.3, x64)
Memory used 307,938k (± 0.02%) 307,896k (± 0.01%) -43k (- 0.01%) 307,799k 308,034k
Parse Time 1.24s (± 0.48%) 1.23s (± 0.42%) -0.00s (- 0.32%) 1.22s 1.24s
Bind Time 0.68s (± 1.03%) 0.68s (± 0.49%) +0.00s (+ 0.15%) 0.67s 0.69s
Check Time 4.56s (± 0.51%) 4.57s (± 0.70%) +0.01s (+ 0.22%) 4.51s 4.64s
Emit Time 2.93s (± 0.53%) 2.94s (± 0.57%) +0.01s (+ 0.24%) 2.90s 2.99s
Total Time 9.41s (± 0.34%) 9.42s (± 0.31%) +0.01s (+ 0.16%) 9.36s 9.49s
material-ui - node (v10.16.3, x64)
Memory used 489,271k (± 0.01%) 489,261k (± 0.01%) -10k (- 0.00%) 489,133k 489,318k
Parse Time 2.06s (± 0.62%) 2.05s (± 0.38%) -0.01s (- 0.53%) 2.03s 2.07s
Bind Time 0.66s (± 1.01%) 0.66s (± 0.57%) -0.01s (- 1.21%) 0.65s 0.66s
Check Time 13.59s (± 1.23%) 13.55s (± 0.82%) -0.04s (- 0.29%) 13.33s 13.83s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 16.32s (± 1.08%) 16.26s (± 0.69%) -0.06s (- 0.35%) 16.04s 16.54s
Angular - node (v12.1.0, x64)
Memory used 327,886k (± 0.03%) 327,764k (± 0.08%) -122k (- 0.04%) 326,755k 328,034k
Parse Time 2.07s (± 0.89%) 2.06s (± 0.49%) -0.02s (- 0.87%) 2.04s 2.08s
Bind Time 0.83s (± 0.90%) 0.83s (± 1.22%) -0.00s (- 0.12%) 0.81s 0.86s
Check Time 4.91s (± 0.38%) 4.92s (± 1.31%) +0.01s (+ 0.22%) 4.86s 5.17s
Emit Time 5.49s (± 0.62%) 5.49s (± 0.61%) 0.00s ( 0.00%) 5.44s 5.57s
Total Time 13.29s (± 0.34%) 13.29s (± 0.62%) -0.00s (- 0.03%) 13.19s 13.56s
Monaco - node (v12.1.0, x64)
Memory used 336,828k (± 0.02%) 336,758k (± 0.02%) -71k (- 0.02%) 336,633k 336,893k
Parse Time 1.58s (± 0.60%) 1.58s (± 0.39%) -0.00s (- 0.32%) 1.57s 1.59s
Bind Time 0.71s (± 0.56%) 0.71s (± 0.56%) 0.00s ( 0.00%) 0.70s 0.72s
Check Time 4.93s (± 0.34%) 4.91s (± 0.42%) -0.03s (- 0.53%) 4.85s 4.95s
Emit Time 2.88s (± 0.94%) 2.85s (± 0.58%) -0.03s (- 0.90%) 2.82s 2.90s
Total Time 10.11s (± 0.44%) 10.04s (± 0.27%) -0.06s (- 0.60%) 9.99s 10.12s
TFS - node (v12.1.0, x64)
Memory used 292,135k (± 0.03%) 292,141k (± 0.02%) +6k (+ 0.00%) 292,023k 292,312k
Parse Time 1.26s (± 1.10%) 1.25s (± 0.83%) -0.01s (- 0.64%) 1.23s 1.27s
Bind Time 0.65s (± 0.75%) 0.66s (± 1.73%) +0.00s (+ 0.61%) 0.64s 0.70s
Check Time 4.52s (± 0.49%) 4.49s (± 0.43%) -0.03s (- 0.69%) 4.44s 4.52s
Emit Time 2.95s (± 1.15%) 2.95s (± 0.77%) -0.00s (- 0.14%) 2.89s 3.01s
Total Time 9.38s (± 0.57%) 9.34s (± 0.34%) -0.04s (- 0.39%) 9.23s 9.40s
material-ui - node (v12.1.0, x64)
Memory used 467,367k (± 0.01%) 467,368k (± 0.02%) +1k (+ 0.00%) 467,177k 467,521k
Parse Time 2.08s (± 0.78%) 2.08s (± 0.50%) -0.00s (- 0.19%) 2.06s 2.10s
Bind Time 0.65s (± 1.12%) 0.65s (± 1.17%) -0.00s (- 0.31%) 0.63s 0.67s
Check Time 12.09s (± 1.05%) 11.99s (± 0.30%) -0.10s (- 0.82%) 11.93s 12.06s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 14.82s (± 0.90%) 14.71s (± 0.25%) -0.11s (- 0.72%) 14.64s 14.79s
Angular - node (v8.9.0, x64)
Memory used 353,123k (± 0.01%) 353,139k (± 0.01%) +17k (+ 0.00%) 353,048k 353,286k
Parse Time 2.65s (± 0.38%) 2.65s (± 0.44%) -0.01s (- 0.23%) 2.63s 2.68s
Bind Time 0.90s (± 0.56%) 0.89s (± 0.82%) -0.01s (- 0.78%) 0.87s 0.90s
Check Time 5.63s (± 0.27%) 5.58s (± 0.48%) -0.06s (- 0.99%) 5.55s 5.66s
Emit Time 6.31s (± 1.25%) 6.32s (± 1.13%) +0.01s (+ 0.14%) 6.14s 6.48s
Total Time 15.49s (± 0.51%) 15.43s (± 0.58%) -0.06s (- 0.39%) 15.23s 15.68s
Monaco - node (v8.9.0, x64)
Memory used 358,504k (± 0.01%) 358,454k (± 0.01%) -50k (- 0.01%) 358,367k 358,570k
Parse Time 1.93s (± 0.29%) 1.93s (± 0.38%) 0.00s ( 0.00%) 1.92s 1.95s
Bind Time 0.92s (± 0.71%) 0.92s (± 0.61%) 0.00s ( 0.00%) 0.91s 0.93s
Check Time 5.64s (± 0.46%) 5.68s (± 0.50%) +0.04s (+ 0.69%) 5.61s 5.72s
Emit Time 3.39s (± 1.16%) 3.40s (± 0.98%) +0.00s (+ 0.12%) 3.30s 3.47s
Total Time 11.88s (± 0.54%) 11.92s (± 0.48%) +0.04s (+ 0.37%) 11.78s 12.01s
TFS - node (v8.9.0, x64)
Memory used 310,327k (± 0.02%) 310,313k (± 0.01%) -14k (- 0.00%) 310,243k 310,417k
Parse Time 1.58s (± 0.46%) 1.57s (± 0.55%) -0.01s (- 0.63%) 1.55s 1.59s
Bind Time 0.69s (± 0.81%) 0.69s (± 0.75%) +0.00s (+ 0.44%) 0.68s 0.70s
Check Time 5.34s (± 0.57%) 5.34s (± 0.68%) +0.00s (+ 0.04%) 5.27s 5.43s
Emit Time 2.97s (± 0.90%) 2.96s (± 0.53%) -0.01s (- 0.47%) 2.93s 2.99s
Total Time 10.58s (± 0.53%) 10.56s (± 0.43%) -0.02s (- 0.17%) 10.47s 10.66s
material-ui - node (v8.9.0, x64)
Memory used 496,188k (± 0.01%) 496,187k (± 0.01%) -1k (- 0.00%) 496,136k 496,264k
Parse Time 2.50s (± 0.41%) 2.50s (± 0.51%) -0.00s (- 0.12%) 2.48s 2.54s
Bind Time 0.81s (± 1.08%) 0.82s (± 1.17%) +0.00s (+ 0.37%) 0.80s 0.85s
Check Time 18.07s (± 0.75%) 18.07s (± 0.88%) -0.01s (- 0.04%) 17.59s 18.28s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 21.39s (± 0.61%) 21.38s (± 0.74%) -0.01s (- 0.06%) 20.94s 21.62s
Angular - node (v8.9.0, x86)
Memory used 202,185k (± 0.03%) 202,173k (± 0.03%) -13k (- 0.01%) 202,090k 202,316k
Parse Time 2.57s (± 1.04%) 2.55s (± 0.75%) -0.02s (- 0.90%) 2.51s 2.59s
Bind Time 1.03s (± 0.84%) 1.03s (± 0.63%) 0.00s ( 0.00%) 1.01s 1.04s
Check Time 5.08s (± 0.66%) 5.08s (± 0.60%) +0.00s (+ 0.10%) 4.99s 5.15s
Emit Time 6.12s (± 1.09%) 6.13s (± 1.04%) +0.01s (+ 0.15%) 6.03s 6.34s
Total Time 14.79s (± 0.77%) 14.78s (± 0.63%) -0.01s (- 0.05%) 14.63s 15.05s
Monaco - node (v8.9.0, x86)
Memory used 202,986k (± 0.02%) 202,978k (± 0.02%) -7k (- 0.00%) 202,891k 203,048k
Parse Time 1.97s (± 0.45%) 1.98s (± 0.67%) +0.01s (+ 0.56%) 1.96s 2.01s
Bind Time 0.72s (± 0.72%) 0.72s (± 0.90%) -0.00s (- 0.14%) 0.71s 0.74s
Check Time 5.75s (± 1.28%) 5.78s (± 0.52%) +0.04s (+ 0.64%) 5.71s 5.86s
Emit Time 2.80s (± 2.35%) 2.73s (± 0.95%) -0.06s (- 2.25%) 2.67s 2.80s
Total Time 11.23s (± 0.31%) 11.21s (± 0.42%) -0.02s (- 0.15%) 11.12s 11.31s
TFS - node (v8.9.0, x86)
Memory used 177,450k (± 0.03%) 177,457k (± 0.03%) +7k (+ 0.00%) 177,352k 177,596k
Parse Time 1.62s (± 0.76%) 1.60s (± 0.59%) -0.01s (- 0.87%) 1.59s 1.63s
Bind Time 0.65s (± 0.89%) 0.65s (± 1.35%) 0.00s ( 0.00%) 0.64s 0.68s
Check Time 4.85s (± 0.50%) 4.85s (± 0.43%) -0.01s (- 0.16%) 4.79s 4.88s
Emit Time 2.85s (± 1.41%) 2.82s (± 1.37%) -0.04s (- 1.23%) 2.75s 2.89s
Total Time 9.98s (± 0.49%) 9.92s (± 0.53%) -0.06s (- 0.56%) 9.79s 10.05s
material-ui - node (v8.9.0, x86)
Memory used 279,296k (± 0.02%) 279,290k (± 0.02%) -6k (- 0.00%) 279,201k 279,414k
Parse Time 2.55s (± 0.70%) 2.53s (± 0.64%) -0.02s (- 0.67%) 2.50s 2.57s
Bind Time 0.73s (± 6.90%) 0.73s (± 5.91%) +0.00s (+ 0.14%) 0.69s 0.85s
Check Time 16.49s (± 0.97%) 16.55s (± 0.65%) +0.06s (+ 0.36%) 16.31s 16.78s
Emit Time 0.00s (± 0.00%) 0.00s (± 0.00%) 0.00s ( NaN%) 0.00s 0.00s
Total Time 19.77s (± 0.89%) 19.82s (± 0.53%) +0.05s (+ 0.23%) 19.62s 20.03s
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 41331 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 rbuckton merged commit b9ed93e into master Oct 30, 2020
@rbuckton rbuckton deleted the fix39149 branch October 30, 2020 16:26
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.

emit file lost import module in .js with package use export = with build by new typescript@next
3 participants