Update lsp.config to invoke dnx from the plugin directory - #607
Conversation
Due to the behavior of dotnet SDK resolution when running in repos which use a global.json, we are not gaurenteed that the choosen SDK will be new enough to support the `dotnet dnx` command, which we were using to install and run the roslyn-language-server. Instead, we make having roslyn-language-server installed a prerequisite so that we can invoke it directly.
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
This PR changes the .NET plugin to launch Roslyn's language server as a preinstalled executable instead of using dotnet dnx, to avoid SDK-resolution problems in repositories that pin older SDKs with global.json.
Changes:
- Replaces the C# LSP launch command in
plugins/dotnet/lsp.jsonwith directroslyn-language-serverexecution. - Updates the plugin README to make global installation of
roslyn-language-servera prerequisite. - Documents a new setup flow based on installing the Roslyn language server tool globally.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| plugins/dotnet/lsp.json | Switches the C# LSP server command from dotnet dnx to direct roslyn-language-server execution. |
| plugins/dotnet/README.md | Updates setup instructions and prerequisites to match the new Roslyn server launch model. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
dibarbet
left a comment
There was a problem hiding this comment.
Think this is the best we can do without dotnet/sdk#51085
|
@JoeRobich : Circling back on this - Is this still good to go? If so, looks like the branch needs an update from the latest main. |
|
👋 @JoeRobich — this PR has 3 unresolved review thread(s). When you're ready, please address the feedback and push an update; the triage bot will pick up the next state automatically. (Add the |
Due to the behavior of dotnet SDK resolution when running in repos which use a global.json, we are not gaurenteed that the choosen SDK will be new enough to support the
dotnet dnxcommand which we were using to install and run the roslyn-language-server. Instead, we will ship our own global.json and configure the current working directory to be the plugin directory.