Skip to content

Process type nodes in codefixes/refactors for auto-imports recursively #39130

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 2 commits into from
Jul 7, 2020

Conversation

andrewbranch
Copy link
Member

Fixes #34995

The first time I fixed this bug, it didn’t account for ImportTypeNodes nested inside other types. Now it uses a recursive visitor.

Copy link
Member

@sandersn sandersn left a comment

Choose a reason for hiding this comment

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

Looks good, although I don't understand why you don't need to check !type || type.symbol anymore.

@andrewbranch
Copy link
Member Author

!type || type.symbol was a weird hack to avoid stepping into nodes the function didn’t handle at the time; now that it knows how to handle everything recursively, I was able to remove it.

@andrewbranch andrewbranch merged commit 0c75021 into microsoft:master Jul 7, 2020
@andrewbranch andrewbranch deleted the bug/34995 branch July 7, 2020 20:11
weswigham added a commit to weswigham/TypeScript that referenced this pull request Jul 7, 2020
cangSDARM added a commit to cangSDARM/TypeScript that referenced this pull request Jul 9, 2020
* upstream/master: (75 commits)
  Insert auto-imports in sorted order (microsoft#39394)
  LEGO: check in for master to temporary branch.
  Better checking of @param/@Property tags (microsoft#39487)
  fix(25155): add space before optional parameters/properties (microsoft#38798)
  Add regression test for microsoft#38834 (microsoft#39479)
  Fixes searches for symbols exported using export * as (microsoft#39507)
  fix(39421): omit prefix text for rest binding element (microsoft#39433)
  fix(39440): show QF for abstract classes with methods which include 'this' parameter (microsoft#39465)
  Remove unnecessary assert (microsoft#39483)
  LEGO: check in for master to temporary branch.
  Update user baselines (microsoft#39220)
  Type `this` in more constructor functions (microsoft#39447)
  LEGO: check in for master to temporary branch.
  LEGO: check in for master to temporary branch.
  Properly handle rest parameters in function declarations with @type annotations (microsoft#39473)
  Ensure type/namespaceish statics are included in the list of namespace merge members (microsoft#38920)
  Fix getTypeAtLocation for dotted implements clauses (microsoft#39363)
  Add workflow_dispatch to our nightly publish script. (microsoft#39485)
  Fix crash in decorator metadata calculation when serializing template literal type nodes (microsoft#39481)
  Fix test semantic merge conflict between microsoft#39348 and microsoft#39130 (microsoft#39478)
  ...

# Conflicts:
#	src/compiler/scanner.ts
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Implementing interface puts relative imports
3 participants