dotnet/vscode-csharp

`Fix all` commands not available as of 1.25.1

tillig opened this issue · 1 comments

Issue Description

As of 1.25.1 of the plugin, the commands to fix all analysis issues in a file, project, or solution do not appear in the command palette.

Screenshot of command palette for 1.25.2

If I roll back to 1.25.0 of the plugin, the commands show up again.

Screenshot of command palette for 1.25.0

Note I have never seen the "fix all for a solution" show up until just now when I manually reverted to 1.25.0. I usually only ever see the commands for file or project.

Steps to Reproduce

Open a .NET 6 solution with VS Code on Mac. Show the command palette and type "Omni" to get the OmniSharp commands. Under 1.25.0, the commands are available. Under 1.25.1, they are not. No other extensions need be installed or enabled; I can repro this with ONLY C# enabled.

Expected Behavior

The commands should be available to fix all the issues in a file, project, or solution.

Actual Behavior

The commands are not there.

Logs

OmniSharp log

Here's the log for a WORKING version (1.25.0).

Starting OmniSharp server at 11/28/2022, 3:06:15 PM Target: /Users/tillig/dev/project-folder/MyProject.sln

OmniSharp server started with .NET 6.0.401
.
Path: /Users/tillig/.vscode/extensions/ms-dotnettools.csharp-1.25.0-darwin-x64/.omnisharp/1.39.0-net6.0/OmniSharp.dll
PID: 51571

Starting OmniSharp on Unknown 0.0 (Unknown)
info: OmniSharp.Services.DotNetCliService
Checking the 'DOTNET_ROOT' environment variable to find a .NET SDK
info: OmniSharp.Services.DotNetCliService
Using the 'dotnet' on the PATH.
info: OmniSharp.Services.DotNetCliService
DotNetPath set to dotnet
info: OmniSharp.MSBuild.Discovery.MSBuildLocator
Located 1 MSBuild instance(s)
1: .NET Core SDK 6.0.401 17.3.1 - "/usr/local/share/dotnet/sdk/6.0.401/"
info: OmniSharp.MSBuild.Discovery.MSBuildLocator
Registered MSBuild instance: .NET Core SDK 6.0.401 17.3.1 - "/usr/local/share/dotnet/sdk/6.0.401/"
info: OmniSharp.WorkspaceInitializer
Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpFormattingWorkspaceOptionsProvider, Order: 0
info: OmniSharp.MSBuild.ProjectSystem
Detecting projects in '/Users/tillig/dev/project-folder/MyProject.sln'.
info: OmniSharp.MSBuild.ProjectManager
Queue project update for '/Users/tillig/dev/project-folder/src/MyProject/MyProject.csproj'
info: OmniSharp.MSBuild.ProjectManager
Queue project update for '/Users/tillig/dev/project-folder/test/MyProject.Test/MyProject.Test.csproj'
info: OmniSharp.MSBuild.ProjectManager
Queue project update for '/Users/tillig/dev/project-folder/test/MyProject.IntegrationTest/MyProject.IntegrationTest.csproj'
info: OmniSharp.Script.ScriptProjectSystem
Detecting CSX files in '/Users/tillig/dev/project-folder'.
info: OmniSharp.Script.ScriptProjectSystem
Did not find any CSX files
info: OmniSharp.WorkspaceInitializer
Configuration finished.
info: OmniSharp.Stdio.Host
Omnisharp server running using Stdio at location '/Users/tillig/dev/project-folder' on host 51517.
info: OmniSharp.MSBuild.ProjectManager
Loading project: /Users/tillig/dev/project-folder/src/MyProject/MyProject.csproj
info: OmniSharp.MSBuild.ProjectManager
Successfully loaded project file '/Users/tillig/dev/project-folder/src/MyProject/MyProject.csproj'.
info: OmniSharp.MSBuild.ProjectManager
Adding project '/Users/tillig/dev/project-folder/src/MyProject/MyProject.csproj'
info: OmniSharp.MSBuild.ProjectManager
Loading project: /Users/tillig/dev/project-folder/test/MyProject.Test/MyProject.Test.csproj
info: OmniSharp.MSBuild.ProjectManager
Successfully loaded project file '/Users/tillig/dev/project-folder/test/MyProject.Test/MyProject.Test.csproj'.
info: OmniSharp.MSBuild.ProjectManager
Adding project '/Users/tillig/dev/project-folder/test/MyProject.Test/MyProject.Test.csproj'
info: OmniSharp.MSBuild.ProjectManager
Loading project: /Users/tillig/dev/project-folder/test/MyProject.IntegrationTest/MyProject.IntegrationTest.csproj
info: OmniSharp.MSBuild.ProjectManager
Successfully loaded project file '/Users/tillig/dev/project-folder/test/MyProject.IntegrationTest/MyProject.IntegrationTest.csproj'.
info: OmniSharp.MSBuild.ProjectManager
Adding project '/Users/tillig/dev/project-folder/test/MyProject.IntegrationTest/MyProject.IntegrationTest.csproj'
info: OmniSharp.MSBuild.ProjectManager
Update project: MyProject
info: OmniSharp.MSBuild.ProjectManager
Update project: MyProject.Test
info: OmniSharp.MSBuild.ProjectManager
Update project: MyProject.IntegrationTest
info: OmniSharp.Roslyn.CSharp.Services.Diagnostics.CSharpDiagnosticWorkerWithAnalyzers
Solution initialized -> queue all documents for code analysis. Initial document count: 69.
[warn]: OmniSharp.Roslyn.CSharp.Services.Navigation.FindUsagesService
No symbol found. File: /Users/tillig/dev/project-folder/src/MyProject/Repositories/IDataRepository.cs, Line: 8, Column: 0.

Here are the logs for a FAILING version (1.25.2):

Starting OmniSharp server at 11/28/2022, 3:11:51 PM Target: /Users/tillig/dev/project-folder/MyProject.sln

OmniSharp server started with .NET 6.0.401
.
Path: /Users/tillig/.vscode/extensions/ms-dotnettools.csharp-1.25.2-darwin-x64/.omnisharp/1.39.2-net6.0/OmniSharp.dll
PID: 52714

Starting OmniSharp on Unknown 0.0 (Unknown)
info: OmniSharp.Services.DotNetCliService
Checking the 'DOTNET_ROOT' environment variable to find a .NET SDK
info: OmniSharp.Services.DotNetCliService
Using the 'dotnet' on the PATH.
info: OmniSharp.Services.DotNetCliService
DotNetPath set to dotnet
info: OmniSharp.MSBuild.Discovery.MSBuildLocator
Located 1 MSBuild instance(s)
1: .NET Core SDK 6.0.401 17.3.1 - "/usr/local/share/dotnet/sdk/6.0.401/"
info: OmniSharp.MSBuild.Discovery.MSBuildLocator
Registered MSBuild instance: .NET Core SDK 6.0.401 17.3.1 - "/usr/local/share/dotnet/sdk/6.0.401/"
info: OmniSharp.WorkspaceInitializer
Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpFormattingWorkspaceOptionsProvider, Order: 0
info: OmniSharp.Cake.CakeProjectSystem
Detecting Cake files in '/Users/tillig/dev/project-folder'.
info: OmniSharp.Cake.CakeProjectSystem
Did not find any Cake files
info: OmniSharp.MSBuild.ProjectSystem
Detecting projects in '/Users/tillig/dev/project-folder/MyProject.sln'.
info: OmniSharp.MSBuild.ProjectManager
Queue project update for '/Users/tillig/dev/project-folder/src/MyProject/MyProject.csproj'
info: OmniSharp.MSBuild.ProjectManager
Queue project update for '/Users/tillig/dev/project-folder/test/MyProject.Test/MyProject.Test.csproj'
info: OmniSharp.MSBuild.ProjectManager
Queue project update for '/Users/tillig/dev/project-folder/test/MyProject.IntegrationTest/MyProject.IntegrationTest.csproj'
info: OmniSharp.Script.ScriptProjectSystem
Detecting CSX files in '/Users/tillig/dev/project-folder'.
info: OmniSharp.Script.ScriptProjectSystem
Did not find any CSX files
info: OmniSharp.WorkspaceInitializer
Configuration finished.
info: OmniSharp.Stdio.Host
Omnisharp server running using Stdio at location '/Users/tillig/dev/project-folder' on host 52645.
info: OmniSharp.MSBuild.ProjectManager
Loading project: /Users/tillig/dev/project-folder/src/MyProject/MyProject.csproj
info: OmniSharp.MSBuild.ProjectManager
Successfully loaded project file '/Users/tillig/dev/project-folder/src/MyProject/MyProject.csproj'.
info: OmniSharp.MSBuild.ProjectManager
Adding project '/Users/tillig/dev/project-folder/src/MyProject/MyProject.csproj'
info: OmniSharp.MSBuild.ProjectManager
Loading project: /Users/tillig/dev/project-folder/test/MyProject.Test/MyProject.Test.csproj
info: OmniSharp.MSBuild.ProjectManager
Successfully loaded project file '/Users/tillig/dev/project-folder/test/MyProject.Test/MyProject.Test.csproj'.
info: OmniSharp.MSBuild.ProjectManager
Adding project '/Users/tillig/dev/project-folder/test/MyProject.Test/MyProject.Test.csproj'
info: OmniSharp.MSBuild.ProjectManager
Loading project: /Users/tillig/dev/project-folder/test/MyProject.IntegrationTest/MyProject.IntegrationTest.csproj
info: OmniSharp.MSBuild.ProjectManager
Successfully loaded project file '/Users/tillig/dev/project-folder/test/MyProject.IntegrationTest/MyProject.IntegrationTest.csproj'.
info: OmniSharp.MSBuild.ProjectManager
Adding project '/Users/tillig/dev/project-folder/test/MyProject.IntegrationTest/MyProject.IntegrationTest.csproj'
info: OmniSharp.MSBuild.ProjectManager
Update project: MyProject
info: OmniSharp.MSBuild.ProjectManager
Update project: MyProject.Test
info: OmniSharp.MSBuild.ProjectManager
Update project: MyProject.IntegrationTest
info: OmniSharp.Roslyn.CSharp.Services.Diagnostics.CSharpDiagnosticWorkerWithAnalyzers
Solution initialized -> queue all documents for code analysis. Initial document count: 69.

I noticed the failing one - 1.25.2 - references looking for a Cake project file, which I don't have. I'm not sure if that makes a difference, but that's the only difference I notice in the logs.

C# log

No logs in this window.

Environment information

VSCode version: 1.73.1
C# Extension: 1.25.2

Mono Information OmniSharp using mono: 6.12.0
Dotnet Information .NET SDK (reflecting any global.json): Version: 6.0.401 Commit: 0906eae6f8

Runtime Environment:
OS Name: Mac OS X
OS Version: 13.0
OS Platform: Darwin
RID: osx-x64
Base Path: /usr/local/share/dotnet/sdk/6.0.401/

Host:
Version: 7.0.0
Architecture: x64
Commit: d099f075e4

You'll note the host here is version 7 but the SDKs do not include that. I installed .NET 7 but then uninstalled it due to #5463.

.NET SDKs installed:
3.1.423 [/usr/local/share/dotnet/sdk]
5.0.408 [/usr/local/share/dotnet/sdk]
6.0.401 [/usr/local/share/dotnet/sdk]

.NET runtimes installed:
Microsoft.AspNetCore.App 3.1.29 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 5.0.17 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 6.0.9 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 3.1.29 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 5.0.17 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 6.0.9 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]

Other architectures found:
None

Environment variables:
Not set

global.json file:
Not found

Learn more:
https://aka.ms/dotnet/info

Download .NET:
https://aka.ms/dotnet/download

Visual Studio Code Extensions
Extension Author Version
csharp ms-dotnettools 1.25.2

Looks like it got broken in this PR #5400 ( fb70bfc ) @willl @dibarbet