Skip to content

Respond to Roslyn frozen compilation changes in semantic tokens#4156

Merged
allisonchou merged 13 commits intomainfrom
allichou/RespondToRoslynFrozenSemantics
Aug 31, 2021
Merged

Respond to Roslyn frozen compilation changes in semantic tokens#4156
allisonchou merged 13 commits intomainfrom
allichou/RespondToRoslynFrozenSemantics

Conversation

@allisonchou
Copy link
Copy Markdown
Contributor

Summary of the changes

  • Response to [LSP] Semantic tokens: Utilize frozen partial compilations roslyn#55976, which allows Roslyn to return partial tokens by taking advantage of frozen compilations.
  • Roslyn will tell us if they return to us partial tokens (via an off-spec IsPartial property). If partial tokens are returned, we need to keep re-queueing Roslyn for tokens until the token set is complete.
  • The Roslyn and Razor PRs should likely go in together to avoid any breakage on Razor's side.

Copy link
Copy Markdown
Contributor

@ryanbrandenburg ryanbrandenburg left a comment

Choose a reason for hiding this comment

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

Changes seem good, :shipit: after the ImmutableArray question is resolved one way or another.

Copy link
Copy Markdown
Contributor

@ryanbrandenburg ryanbrandenburg left a comment

Choose a reason for hiding this comment

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

One suggestion WRT out-of-sync C# responses. Not SUPER important since that scenario should be very rare now that we try to force syncing, but worth fixing if it does mess things up too bad.

…r/DefaultRazorLanguageServerCustomMessageTarget.cs

Co-authored-by: Ryan Brandenburg <rybrande@microsoft.com>
@allisonchou allisonchou merged commit d27d8fd into main Aug 31, 2021
@allisonchou allisonchou deleted the allichou/RespondToRoslynFrozenSemantics branch August 31, 2021 21:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants