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

fix(language-service): reinstate getExternalFiles() #37750

Closed
wants to merge 1 commit into from

Conversation

kyliau
Copy link
Contributor

@kyliau kyliau commented Jun 25, 2020

getExternalFiles() is an API that could optionally be provided by a tsserver plugin
to notify the server of any additional files that should belong to a particular project.

This API was removed in #34260 mainly
due to performance reasons.

However, with the introduction of "solution-style" tsconfig in typescript 3.9,
the Angular extension could no longer reliably detect the owning Project solely
based on the ancestor tsconfig.json. In order to support this use case, we have
to reinstate getExternalFiles().

Fixes angular/vscode-ng-language-service#824

PR Checklist

Please check if your PR fulfills the following requirements:

PR Type

What kind of change does this PR introduce?

  • Bugfix
  • Feature
  • Code style update (formatting, local variables)
  • Refactoring (no functional changes, no api changes)
  • Build related changes
  • CI related changes
  • Documentation content changes
  • angular.io application / infrastructure changes
  • Other... Please describe:

What is the current behavior?

Issue Number: N/A

What is the new behavior?

Does this PR introduce a breaking change?

  • Yes
  • No

Other information

`getExternalFiles()` is an API that could optionally be provided by a tsserver plugin
to notify the server of any additional files that should belong to a particular project.

This API was removed in angular#34260 mainly
due to performance reasons.

However, with the introduction of "solution-style" tsconfig in typescript 3.9,
the Angular extension could no longer reliably detect the owning Project solely
based on the ancestor tsconfig.json. In order to support this use case, we have
to reinstate `getExternalFiles()`.

Fixes angular/vscode-ng-language-service#824
@kyliau kyliau added area: language-service Issues related to Angular's VS Code language service target: patch This PR is targeted for the next patch release labels Jun 25, 2020
@kyliau kyliau requested a review from ayazhafiz June 25, 2020 21:28
@ngbot ngbot bot modified the milestone: needsTriage Jun 25, 2020
@kyliau kyliau added the action: merge The PR is ready for merge by the caretaker label Jun 25, 2020
AndrewKushnir pushed a commit that referenced this pull request Jun 26, 2020
`getExternalFiles()` is an API that could optionally be provided by a tsserver plugin
to notify the server of any additional files that should belong to a particular project.

This API was removed in #34260 mainly
due to performance reasons.

However, with the introduction of "solution-style" tsconfig in typescript 3.9,
the Angular extension could no longer reliably detect the owning Project solely
based on the ancestor tsconfig.json. In order to support this use case, we have
to reinstate `getExternalFiles()`.

Fixes angular/vscode-ng-language-service#824

PR Close #37750
drewswanner pushed a commit to drewswanner/angular that referenced this pull request Jun 29, 2020
* upstream/master: (861 commits)
  ci: decrease payload size limit for integration tests (angular#37784)
  fix(core): error when invoking callbacks registered via ViewRef.onDestroy (angular#37543)
  fix(core): don't consider inherited NG_ELEMENT_ID during DI (angular#37574)
  ci: decrease expected AIO and integration payload sizes (angular#36578) (angular#36578)
  fix(core): determine required DOMParser feature availability (angular#36578) (angular#36578)
  refactor(core): split inert strategies to separate classes (angular#36578) (angular#36578)
  fix(core): do not trigger CSP alert/report in Firefox and Chrome (angular#36578) (angular#36578)
  fix(language-service): incorrect autocomplete results on unknown symbol (angular#37518)
  docs: release notes for the v10.0.1 release
  ci: exclude "docs" commit type from minBodyLength commit message validation (angular#37764)
  feat(dev-infra): add support for minBodyLengthTypeExcludes to  commit-message validation (angular#37764)
  feat(platform-browser): Allow `sms`-URLs (angular#31463)
  refactor(core): throw more descriptive error message in case of invalid host element (angular#35916)
  build: move shims_for_IE to third_party directory (angular#37624)
  refactor(compiler-cli): Remove any cast for CompilerHost (angular#37079)
  fix(language-service): reinstate getExternalFiles() (angular#37750)
  docs: correct outdated dev instructions for public api golds (angular#37026)
  docs: add note about the month being zero-based in the Date constructor (angular#37770)
  fix(dev-infra): merge script should not always require full repo permissions (angular#37718)
  fix(dev-infra): support running scripts from within a detached head (angular#37737)
  ...
@angular-automatic-lock-bot
Copy link

This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.

@angular-automatic-lock-bot angular-automatic-lock-bot bot locked and limited conversation to collaborators Jul 27, 2020
profanis pushed a commit to profanis/angular that referenced this pull request Sep 5, 2020
`getExternalFiles()` is an API that could optionally be provided by a tsserver plugin
to notify the server of any additional files that should belong to a particular project.

This API was removed in angular#34260 mainly
due to performance reasons.

However, with the introduction of "solution-style" tsconfig in typescript 3.9,
the Angular extension could no longer reliably detect the owning Project solely
based on the ancestor tsconfig.json. In order to support this use case, we have
to reinstate `getExternalFiles()`.

Fixes angular/vscode-ng-language-service#824

PR Close angular#37750
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
action: merge The PR is ready for merge by the caretaker area: language-service Issues related to Angular's VS Code language service cla: yes target: patch This PR is targeted for the next patch release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

v0.1000.0 does not support solution-style tsconfig
3 participants