microsoft / vscode-dotnettools

This is a feedback repository to capture issues logged for the C# Dev Kit and related extensions from Visual Studio Code
Other
221 stars 10 forks source link

[BUG] Request textDocument/hover failed. #1413

Open rolfbjarne opened 2 weeks ago

rolfbjarne commented 2 weeks ago

Describe the Issue

I get this error popping up rather frequently:

Screenshot 2024-08-28 at 14 11 11

It seems to be when moving the mouse over .xaml files.

Here's the log it points to:

Using dotnet configured on PATH
Dotnet path: /usr/local/share/dotnet/dotnet
Activating C# + C# Dev Kit + C# IntelliCode...
waiting for named pipe information from server...
[stdout] {"pipeName":"/var/folders/43/c7b5_0ts4yb2ddjvrb6d20b40000gn/T/8ec0cc18.sock"}
received named pipe information from server
attempting to connect client to server...
client has connected to server
[Info  - 2:04:11 PM] [Program] Language server initialized
[Info  - 2:04:12 PM] [WorkspaceProjectFactoryService] Project /Users/rolf/Projects/Notes/Notes.csproj loaded by C# Dev Kit
[Info  - 2:04:12 PM] [WorkspaceProjectFactoryService] Project /Users/rolf/Projects/Notes/Notes.csproj loaded by C# Dev Kit
[Error - 2:11:04 PM] [LanguageServerHost] System.MissingMethodException: Method not found: 'Void Roslyn.LanguageServer.Protocol.Hover.set_Contents(System.Nullable`1<Roslyn.LanguageServer.Protocol.SumType`4<System.String,Roslyn.LanguageServer.Protocol.MarkedString,Roslyn.LanguageServer.Protocol.SumType`2<System.String,Roslyn.LanguageServer.Protocol.MarkedString>[],Roslyn.LanguageServer.Protocol.MarkupContent>>)'.
   at Microsoft.VisualStudio.DesignTools.CodeAnalysis.Handlers.Hover.XamlHoverHandler.HandleRequestAsync(TextDocumentPositionParams request, XamlRequestContext context, CancellationToken cancellationToken)
   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[TStateMachine](TStateMachine& stateMachine)
   at Microsoft.VisualStudio.DesignTools.CodeAnalysis.Handlers.Hover.XamlHoverHandler.HandleRequestAsync(TextDocumentPositionParams request, XamlRequestContext context, CancellationToken cancellationToken)
   at Microsoft.CodeAnalysis.ExternalAccess.Xaml.XamlRequestHandlerBase`2.HandleRequestAsync(TRequest request, RequestContext context, CancellationToken cancellationToken) in /_/src/Tools/ExternalAccess/Xaml/External/XamlRequestHandlerBase.cs:line 32
   at Microsoft.CommonLanguageServerProtocol.Framework.QueueItem`1.StartRequestAsync[TRequest,TResponse](TRequest request, TRequestContext context, IMethodHandler handler, String language, CancellationToken cancellationToken) in /_/src/LanguageServer/Microsoft.CommonLanguageServerProtocol.Framework/QueueItem.cs:line 187
[Error - 2:11:04 PM] Request textDocument/hover failed.
  Message: Method not found: 'Void Roslyn.LanguageServer.Protocol.Hover.set_Contents(System.Nullable`1<Roslyn.LanguageServer.Protocol.SumType`4<System.String,Roslyn.LanguageServer.Protocol.MarkedString,Roslyn.LanguageServer.Protocol.SumType`2<System.String,Roslyn.LanguageServer.Protocol.MarkedString>[],Roslyn.LanguageServer.Protocol.MarkupContent>>)'.
  Code: -32000 
[object Object]

Steps To Reproduce

  1. Create MAUI app
  2. Open a .xaml file, move the mouse over it.

Expected Behavior

No error popups.

Environment Information

macOS 14.6.1 (Sonoma)

VSCode:

Version: 1.92.2
Commit: fee1edb8d6d72a0ddff41e5f71a671c23ed924b9
Date: 2024-08-14T17:29:30.058Z (1 wk ago)
Electron: 30.1.2
ElectronBuildId: 9870757
Chromium: 124.0.6367.243
Node.js: 20.14.0
V8: 12.4.254.20-electron.0
OS: Darwin arm64 23.6.0

.NET Install Tool: v2.1.5 .NET MAUI: v1.2.15 C#: v2.45.17 (pre-release) C# Dev Kit: v1.10.12 (pre-release) IntelliCode for C# Dev Kit: v2.1.11

$ dotnet --info
.NET SDK:
 Version:           9.0.100-preview.7.24407.12
 Commit:            d672b8a045
 Workload version:  9.0.100-manifests.1c942e70
 MSBuild version:   17.12.0-preview-24374-02+48e81c6f1

Runtime Environment:
 OS Name:     Mac OS X
 OS Version:  14.6
 OS Platform: Darwin
 RID:         osx-arm64
 Base Path:   /usr/local/share/dotnet/sdk/9.0.100-preview.7.24407.12/

.NET workloads installed:
Configured to use loose manifests when installing new manifests.
 [maui-ios]
   Installation Source: SDK 9.0.100-preview.7
   Manifest Version:    9.0.0-preview.7.24407.4/9.0.100-preview.7
   Manifest Path:       /usr/local/share/dotnet/sdk-manifests/9.0.100-preview.7/microsoft.net.sdk.maui/9.0.0-preview.7.24407.4/WorkloadManifest.json
   Install Type:        FileBased

 [ios]
   Installation Source: SDK 9.0.100-preview.7
   Manifest Version:    17.5.9231-net9-p7/9.0.100-preview.7
   Manifest Path:       /usr/local/share/dotnet/sdk-manifests/9.0.100-preview.7/microsoft.net.sdk.ios/17.5.9231-net9-p7/WorkloadManifest.json
   Install Type:        FileBased

 [maui]
   Installation Source: SDK 9.0.100-preview.7
   Manifest Version:    9.0.0-preview.7.24407.4/9.0.100-preview.7
   Manifest Path:       /usr/local/share/dotnet/sdk-manifests/9.0.100-preview.7/microsoft.net.sdk.maui/9.0.0-preview.7.24407.4/WorkloadManifest.json
   Install Type:        FileBased

Host:
  Version:      9.0.0-rc.1.24378.5
  Architecture: arm64
  Commit:       static

.NET SDKs installed:
  7.0.311 [/usr/local/share/dotnet/sdk]
  8.0.100 [/usr/local/share/dotnet/sdk]
  8.0.104 [/usr/local/share/dotnet/sdk]
  8.0.201 [/usr/local/share/dotnet/sdk]
  8.0.301 [/usr/local/share/dotnet/sdk]
  8.0.303 [/usr/local/share/dotnet/sdk]
  9.0.100-preview.6.24328.19 [/usr/local/share/dotnet/sdk]
  9.0.100-preview.7.24407.12 [/usr/local/share/dotnet/sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 7.0.14 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 8.0.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 8.0.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 8.0.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 8.0.6 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 8.0.7 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 9.0.0-preview.3.24151.1 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 9.0.0-preview.4.24260.3 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 9.0.0-preview.4.24267.6 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 9.0.0-preview.6.24328.4 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 9.0.0-preview.7.24406.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 9.0.0-rc.1.24379.7 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 7.0.14 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 8.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 8.0.2 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 8.0.3 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 8.0.6 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 8.0.7 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 9.0.0-preview.3.24129.2 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 9.0.0-preview.4.24260.3 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 9.0.0-preview.4.24266.19 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 9.0.0-preview.6.24327.7 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 9.0.0-preview.7.24405.7 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 9.0.0-rc.1.24378.5 [/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
dcahilljr commented 2 weeks ago

I am seeing this as well.

Environment Information macOS 14.6.1 (Sonoma)

Version: 1.92.2 (Universal) Commit: fee1edb8d6d72a0ddff41e5f71a671c23ed924b9 Date: 2024-08-14T17:29:30.058Z (2 wks ago) Electron: 30.1.2 ElectronBuildId: 9870757 Chromium: 124.0.6367.243 Node.js: 20.14.0 V8: 12.4.254.20-electron.0 OS: Darwin arm64 23.6.0

Extensions amazonwebservices.amazon-q-vscode dbaeumer.vscode-eslint mechatroner.rainbow-csv ms-azuretools.vscode-docker ms-dotnettools.csdevkit ms-dotnettools.csharp ms-dotnettools.dotnet-maui ms-dotnettools.vscode-dotnet-runtime ms-dotnettools.vscodeintellicode-csharp ms-python.debugpy ms-python.isort ms-python.python ms-python.vscode-pylance ms-toolsai.jupyter ms-toolsai.jupyter-keymap ms-toolsai.jupyter-renderers ms-toolsai.vscode-jupyter-cell-tags ms-toolsai.vscode-jupyter-slideshow ms-vscode-remote.remote-containers ms-vscode.cmake-tools ms-vscode.cpptools ms-vscode.cpptools-extension-pack ms-vscode.cpptools-themes ms-vscode.makefile-tools msjsdiag.vscode-react-native parallelsdesktop.parallels-desktop visualstudioexptteam.intellicode-api-usage-examples visualstudioexptteam.vscodeintellicode

`.NET SDK: Version: 8.0.300 Commit: 326f6e68b2 Workload version: 8.0.300-manifests.d7126b9e MSBuild version: 17.10.4+10fbfbf2e

Runtime Environment: OS Name: Mac OS X OS Version: 14.6 OS Platform: Darwin RID: osx-arm64 Base Path: /usr/local/share/dotnet/sdk/8.0.300/

.NET workloads installed: [maui-maccatalyst] Installation Source: SDK 8.0.300 Manifest Version: 8.0.61/8.0.100 Manifest Path: /usr/local/share/dotnet/sdk-manifests/8.0.100/microsoft.net.sdk.maui/8.0.61/WorkloadManifest.json Install Type: FileBased

[maui-android] Installation Source: SDK 8.0.300 Manifest Version: 8.0.61/8.0.100 Manifest Path: /usr/local/share/dotnet/sdk-manifests/8.0.100/microsoft.net.sdk.maui/8.0.61/WorkloadManifest.json Install Type: FileBased

[ios] Installation Source: SDK 8.0.300 Manifest Version: 17.2.8078/8.0.100 Manifest Path: /usr/local/share/dotnet/sdk-manifests/8.0.100/microsoft.net.sdk.ios/17.2.8078/WorkloadManifest.json Install Type: FileBased

[maccatalyst] Installation Source: SDK 8.0.300 Manifest Version: 17.2.8078/8.0.100 Manifest Path: /usr/local/share/dotnet/sdk-manifests/8.0.100/microsoft.net.sdk.maccatalyst/17.2.8078/WorkloadManifest.json Install Type: FileBased

[wasm-tools-net7] Installation Source: SDK 8.0.300 Manifest Version: 8.0.7/8.0.100 Manifest Path: /usr/local/share/dotnet/sdk-manifests/8.0.100/microsoft.net.workload.mono.toolchain.net7/8.0.7/WorkloadManifest.json Install Type: FileBased

Host: Version: 8.0.5 Architecture: arm64 Commit: 087e15321b

.NET SDKs installed: 6.0.413 [/usr/local/share/dotnet/sdk] 6.0.414 [/usr/local/share/dotnet/sdk] 6.0.415 [/usr/local/share/dotnet/sdk] 6.0.416 [/usr/local/share/dotnet/sdk] 6.0.417 [/usr/local/share/dotnet/sdk] 6.0.418 [/usr/local/share/dotnet/sdk] 6.0.422 [/usr/local/share/dotnet/sdk] 6.0.425 [/usr/local/share/dotnet/sdk] 7.0.307 [/usr/local/share/dotnet/sdk] 7.0.308 [/usr/local/share/dotnet/sdk] 7.0.309 [/usr/local/share/dotnet/sdk] 7.0.310 [/usr/local/share/dotnet/sdk] 7.0.311 [/usr/local/share/dotnet/sdk] 7.0.312 [/usr/local/share/dotnet/sdk] 7.0.316 [/usr/local/share/dotnet/sdk] 7.0.317 [/usr/local/share/dotnet/sdk] 8.0.300 [/usr/local/share/dotnet/sdk]

.NET runtimes installed: Microsoft.AspNetCore.App 6.0.21 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.22 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.23 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.24 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.25 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.26 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.30 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.33 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 7.0.10 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 7.0.11 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 7.0.12 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 7.0.13 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 7.0.14 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 7.0.15 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 7.0.19 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 7.0.20 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 8.0.5 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.NETCore.App 6.0.21 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.22 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.23 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.24 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.25 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.26 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.30 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.33 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 7.0.10 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 7.0.11 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 7.0.12 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 7.0.13 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 7.0.14 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 7.0.15 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 7.0.19 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 7.0.20 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 8.0.5 [/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`

[Error - 12:31:49 PM] [LanguageServerHost] System.MissingMethodException: Method not found: 'Void Roslyn.LanguageServer.Protocol.Hover.set_Contents(System.Nullable1<Roslyn.LanguageServer.Protocol.SumType4<System.String,Roslyn.LanguageServer.Protocol.MarkedString,Roslyn.LanguageServer.Protocol.SumType2<System.String,Roslyn.LanguageServer.Protocol.MarkedString>[],Roslyn.LanguageServer.Protocol.MarkupContent>>)'. at Microsoft.VisualStudio.DesignTools.CodeAnalysis.Handlers.Hover.XamlHoverHandler.HandleRequestAsync(TextDocumentPositionParams request, XamlRequestContext context, CancellationToken cancellationToken) at System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[TStateMachine](TStateMachine& stateMachine) at Microsoft.VisualStudio.DesignTools.CodeAnalysis.Handlers.Hover.XamlHoverHandler.HandleRequestAsync(TextDocumentPositionParams request, XamlRequestContext context, CancellationToken cancellationToken) at Microsoft.CodeAnalysis.ExternalAccess.Xaml.XamlRequestHandlerBase2.HandleRequestAsync(TRequest request, RequestContext context, CancellationToken cancellationToken) in /_/src/Tools/ExternalAccess/Xaml/External/XamlRequestHandlerBase.cs:line 32 at Microsoft.CommonLanguageServerProtocol.Framework.QueueItem1.StartRequestAsync[TRequest,TResponse](TRequest request, TRequestContext context, IMethodHandler handler, String language, CancellationToken cancellationToken) [Error - 12:31:49 PM] Request textDocument/hover failed. Message: Method not found: 'Void Roslyn.LanguageServer.Protocol.Hover.set_Contents(System.Nullable1<Roslyn.LanguageServer.Protocol.SumType4<System.String,Roslyn.LanguageServer.Protocol.MarkedString,Roslyn.LanguageServer.Protocol.SumType2<System.String,Roslyn.LanguageServer.Protocol.MarkedString>[],Roslyn.LanguageServer.Protocol.MarkupContent>>)'. Code: -32000 [object Object]

dibarbet commented 1 week ago

Looks like the repro is in xaml files - @mgoertz-msft would you mind taking a first look?

etvorun commented 1 week ago

Issue has something to do with nullability of Hover.Contents. Fix should be available in VS Code pre-release week of Sep 9.

etvorun commented 1 week ago

Fixed with https://github.com/dotnet/vscode-csharp/pull/7508