-
Notifications
You must be signed in to change notification settings - Fork 4k
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
Allow Razor to get diagnostics for cohosting #75102
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Doing this as a separate commit to prove I didn't break anything :P
Purely mechanical, except for making one method public
These two methods have diverged so I don't honestly know if this is valuable, but updating a comment seems easy enough.
dotnet-issue-labeler
bot
added
Area-IDE
untriaged
Issues and PRs which have not yet been triaged by a lead
labels
Sep 13, 2024
dibarbet
approved these changes
Sep 16, 2024
davidwengier
added a commit
to dotnet/razor
that referenced
this pull request
Sep 18, 2024
Fixes #10696 Fixes #10769 Fixes #10874 Needs Roslyn change: dotnet/roslyn#75102 The actual code change was quite straight foward. The test code was a bigger pain. Previously in cohosting tests we had two MEF composition, one for Razor and one for Roslyn. Since Roslyn diagnostics can only run, or at least start, in devenv, we now need three MEF compositions - Roslyn devenv, Roslyn OOP and razor OOP - and two workspaces - Roslyn devenv and Roslyn OOP - and our previous MEF infrastructure really didn't handle this well, as evidenced by the fact that this PR also fixes #10874 Now our MEF infra is simpler: We still cache catalogs etc. statically the save time, but we create an `ExportProvider` as needed and expect consumers to dispose of it like any other `IDisposable`, though there is also here a test fixture to share the editor composition in the formatting tests so we don't pay a huge penalty in terms of test run time. Commit-at-a-time if you want to read the story from beginning to end, but it should be reasonably okay to just review as a whole too.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Roslyn side of dotnet/razor#10696
Razor PR is dotnet/razor#10882
Review commit-at-a-time if you want to see the details of the changes, but most of it is just moving the code that converts from
DiagnosticData
to LSPDiagnostic
into theProtocolConversions
class.