Skip to content

Update OmniSharp to 2.0.0 - #9786

Draft
JoeRobich wants to merge 5 commits into
mainfrom
update/omnisharp-2.0.0
Draft

JoeRobich wants to merge 5 commits into
mainfrom
update/omnisharp-2.0.0

Conversation

@JoeRobich

@JoeRobich JoeRobich commented Sep 18, 2026

Copy link
Copy Markdown
Member

Summary

  • update OmniSharp from 1.39.15 to 2.0.0
  • replace the .NET Framework and Mono package matrix with the eight supported .NET 10 release assets
  • remove the obsolete omnisharp.useModernNet, omnisharp.monoPath, and omnisharp.sdk* settings and their documentation
  • remove all unreachable framework/Mono code paths and stale legacy configuration guidance
  • simplify OmniSharp installation, launching, requirements, telemetry, and issue reporting to the single supported .NET host
  • use the same resolved .NET 10 executable for OmniSharp requirement validation and launch while keeping dotNetCliPaths scoped to project and debugging operations
  • support the unsuffixed package names used by OmniSharp 2.x custom-version downloads
  • reject latest as a dotnet.server.path value so the selected OmniSharp version cannot change remotely
  • require a .NET 10 SDK when using OmniSharp

The remaining server-bound configuration was checked against OmniSharp/omnisharp-roslyn master at 1551011c36ea669ea0fdee3821a344a8cea17fe4; each remaining option is present and consumed upstream.

Upstream release: https://github.com/OmniSharp/omnisharp-roslyn/releases/tag/v2.0.0

Validation

  • npm run compileDev
  • full OmniSharp unit suite: 39 suites, 355 tests passed, 1 skipped
  • languageServerConfigChangeObserver.test.ts: 16 tests passed
  • OmniSharp option tests: 32 tests passed
  • all checked-in package.nls*.json files parse successfully

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 9c450012-6263-4cd4-9dd7-4e38a81dc8d4
Copilot AI lite review requested due to automatic review settings September 18, 2026 06:18
@JoeRobich
JoeRobich requested a review from a team as a code owner September 18, 2026 06:18
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 9c450012-6263-4cd4-9dd7-4e38a81dc8d4

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot review overview

🟡 Changes recommended

Update the SDK requirement messaging and localized resources to match the removed settings.

Get a fresh assessment by requesting another Copilot review.

Review effort: Lite
Findings: 1 Medium severity · 1 Low severity

Open (2)
What changed in this PR

Updates OmniSharp to 2.0.0 with .NET 10-only assets and removes obsolete configuration.

Changes:

  • Updates package assets and installation handling.
  • Requires the .NET 10 SDK.
  • Removes legacy framework and Mono settings.
  • Updates tests, localization, and changelog entries.
File Summary
test/​omnisharp/​omnisharpUnitTests/​optionChangeObserver.test.ts Updates obsolete option coverage.
test/​omnisharp/​omnisharpUnitTests/​omnisharpPackageCreator.test.ts Tests updated package suffix behavior.
test/​omnisharp/​omnisharpUnitTests/​omnisharpManager.test.ts Updates installation path tests.
test/​omnisharp/​omnisharpUnitTests/​omnisharpDownloader.test.ts Updates downloader tests.
src/​shared/​options.ts Removes legacy host selection.
src/​omnisharp/​requirementCheck.ts Raises the SDK requirement.
src/​omnisharp/​omnisharpPackageCreator.ts Handles version-dependent package suffixes.
src/​omnisharp/​omnisharpManager.ts Updates installation path handling.
package.nls.json Updates configuration localization strings.
package.json Updates OmniSharp assets and settings.
CHANGELOG.md Documents the OmniSharp upgrade.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread src/omnisharp/requirementCheck.ts Outdated
Comment thread package.nls.json Outdated
Remove the unreachable .NET Framework and Mono launch, requirement, package-selection, reporting, and telemetry paths now that OmniSharp 2.0 only supports .NET 10. Also reject the special dotnet.server.path value 'latest' so server selection cannot be changed remotely.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 32b54e6d-2bfe-4a04-a2a5-2ac382534914
Copilot AI review requested due to automatic review settings September 18, 2026 17:48

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot review overview

🟡 Changes recommended

The requirement check may validate a different .NET installation than the one used to launch OmniSharp.

Get a fresh assessment by requesting another Copilot review.

Review effort: Lite
Findings: 1 Medium severity

Open (1)
Resolved since last review (2)

Comment thread src/omnisharp/requirementCheck.ts Outdated
Remove the sdkPath, sdkVersion, and sdkIncludePrereleases settings because OmniSharp 2.0 no longer binds those options. Remove stale localized setting text and legacy host configuration documentation.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 32b54e6d-2bfe-4a04-a2a5-2ac382534914
Copilot AI review requested due to automatic review settings September 18, 2026 17:59

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot review overview

🔵 Needs a closer look

Update the package task and align .NET 10 SDK validation and launch selection; clean up remaining localized legacy strings.

Review effort: Lite
Findings: 1 Medium severity

Open (1)

Use DotnetResolver as the single source of truth for .NET 10 requirement validation and OmniSharp launch. Keep dotNetCliPaths scoped to project and debugger CLI discovery, and clarify both setting descriptions.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 32b54e6d-2bfe-4a04-a2a5-2ac382534914
Copilot AI review requested due to automatic review settings September 18, 2026 18:07

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot review overview

🔵 Needs a closer look

Invalidate the cached .NET host when dotnetPath changes or lookup fails; localized bundles also retain stale guidance.

Review effort: Lite
Findings: None

Resolved since last review (1)

@JoeRobich
JoeRobich marked this pull request as draft September 19, 2026 00:03
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.

2 participants