Skip to content

Language server crashes when adding a WSL workspace folder #8232

@vickyharp

Description

@vickyharp

Type: Bug

I am working on a project where I have a C# service from Windows that I will be connecting to from a Python app in WSL. I decided to add the WSL Python folder to the workspace to make the code visible to Copilot, and as soon as I added the folder the language server outputs a bundle of errors and then crashes.

Steps to Reproduce

On my machine I can reliably reproduce this when adding a workspace folder to \wsl$\ - I have not tested to see if this is only happening with Python folder or any folder at all.

Expected Behavior

I would expect to at least be able to browse the files in VSCode and make them available as context to Copilot.

Actual Behavior

A number of errors appear and the language server (and extension) crashes

Image

Logs

I can provide more complete logs by email on request, viharp [at] microsoft. Here is the last part of the output log

2025-04-30 11:24:48.488 [info] received named pipe information from server
2025-04-30 11:24:48.488 [info] client has connected to server
2025-04-30 11:24:48.552 [info] [Info - 11:24:48 AM] [Program] Language server initialized
2025-04-30 11:24:48.645 [info] [Error - 11:24:48 AM] [initialize] [LanguageServerHost] System.UriFormatException: Invalid URI: The hostname could not be parsed.
at System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind, UriCreationOptions& creationOptions)
at System.Uri..ctor(String uriString)
at Roslyn.LanguageServer.Protocol.DocumentUriConverter.Read(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options) in //src/LanguageServer/Protocol/Protocol/Converters/DocumentUriConverter.cs:line 17
at System.Text.Json.Serialization.JsonConverter1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value, Boolean& isPopulatedValue) at System.Text.Json.Serialization.Metadata.JsonPropertyInfo1.ReadJsonAndSetMember(Object obj, ReadStack& state, Utf8JsonReader& reader)
at System.Text.Json.Serialization.Converters.ObjectDefaultConverter1.OnTryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value) at System.Text.Json.Serialization.JsonConverter1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value, Boolean& isPopulatedValue)
at System.Text.Json.Serialization.JsonCollectionConverter2.OnTryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, TCollection& value) at System.Text.Json.Serialization.JsonConverter1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value, Boolean& isPopulatedValue)
at System.Text.Json.Serialization.JsonConverter1.ReadCore(Utf8JsonReader& reader, T& value, JsonSerializerOptions options, ReadStack& state) at System.Text.Json.Serialization.Metadata.JsonTypeInfo1.Deserialize(Utf8JsonReader& reader, ReadStack& state)
at System.Text.Json.JsonSerializer.Read[TValue](Utf8JsonReader& reader, JsonTypeInfo1 jsonTypeInfo) at Roslyn.LanguageServer.Protocol.InitializeParamsWorkspaceFoldersConverter.Read(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options) in /_/src/LanguageServer/Protocol/Protocol/Converters/InitializeParamsWorkspaceFoldersConverter.cs:line 31 at System.Text.Json.Serialization.JsonConverter1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value, Boolean& isPopulatedValue)
at System.Text.Json.Serialization.Metadata.JsonPropertyInfo1.ReadJsonAndSetMember(Object obj, ReadStack& state, Utf8JsonReader& reader) at System.Text.Json.Serialization.Converters.ObjectDefaultConverter1.OnTryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value)
at System.Text.Json.Serialization.JsonConverter1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value, Boolean& isPopulatedValue) at System.Text.Json.Serialization.JsonConverter1.ReadCore(Utf8JsonReader& reader, T& value, JsonSerializerOptions options, ReadStack& state)
at System.Text.Json.Serialization.Metadata.JsonTypeInfo1.Deserialize(Utf8JsonReader& reader, ReadStack& state) at System.Text.Json.JsonSerializer.ReadFromSpan[TValue](ReadOnlySpan1 utf8Json, JsonTypeInfo1 jsonTypeInfo, Nullable1 actualByteCount)
at System.Text.Json.JsonSerializer.Deserialize[TValue](JsonElement element, JsonSerializerOptions options)
at Microsoft.CommonLanguageServerProtocol.Framework.SystemTextJsonLanguageServer1.DeserializeRequest[TRequest](Object serializedRequest, RequestHandlerMetadata metadata) in /_/src/LanguageServer/Microsoft.CommonLanguageServerProtocol.Framework/SystemTextJsonLanguageServer.cs:line 49 at Microsoft.CommonLanguageServerProtocol.Framework.QueueItem1.TryDeserializeRequest[TRequest](AbstractLanguageServer1 languageServer, RequestHandlerMetadata requestHandlerMetadata, Boolean isMutating, TRequest& request) in /_/src/LanguageServer/Microsoft.CommonLanguageServerProtocol.Framework/QueueItem.cs:line 120 2025-04-30 11:24:48.652 [info] [Error - 11:24:48 AM] Server initialization failed. 2025-04-30 11:24:48.652 [info] Message: Invalid URI: The hostname could not be parsed. Code: -32000 [object Object] 2025-04-30 11:24:48.652 [info] [Error - 11:24:48 AM] Microsoft.CodeAnalysis.LanguageServer client: couldn't create connection to server. 2025-04-30 11:24:48.652 [info] Message: Invalid URI: The hostname could not be parsed. Code: -32000 [object Object] 2025-04-30 11:24:48.652 [info] [Error - 11:24:48 AM] Restarting server failed 2025-04-30 11:24:48.652 [info] Message: Invalid URI: The hostname could not be parsed. Code: -32000 [object Object] 2025-04-30 11:24:48.664 [info] [Error - 11:24:48 AM] [LanguageServerHost] System.UriFormatException: Invalid URI: The hostname could not be parsed. at System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind, UriCreationOptions& creationOptions) at System.Uri..ctor(String uriString) at Roslyn.LanguageServer.Protocol.DocumentUriConverter.Read(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options) in /_/src/LanguageServer/Protocol/Protocol/Converters/DocumentUriConverter.cs:line 17 at System.Text.Json.Serialization.JsonConverter1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value, Boolean& isPopulatedValue)
at System.Text.Json.Serialization.Metadata.JsonPropertyInfo1.ReadJsonAndSetMember(Object obj, ReadStack& state, Utf8JsonReader& reader) at System.Text.Json.Serialization.Converters.ObjectDefaultConverter1.OnTryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value)
at System.Text.Json.Serialization.JsonConverter1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value, Boolean& isPopulatedValue) at System.Text.Json.Serialization.JsonCollectionConverter2.OnTryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, TCollection& value)
at System.Text.Json.Serialization.JsonConverter1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value, Boolean& isPopulatedValue) at System.Text.Json.Serialization.JsonConverter1.ReadCore(Utf8JsonReader& reader, T& value, JsonSerializerOptions options, ReadStack& state)
at System.Text.Json.Serialization.Metadata.JsonTypeInfo1.Deserialize(Utf8JsonReader& reader, ReadStack& state) at System.Text.Json.JsonSerializer.Read[TValue](Utf8JsonReader& reader, JsonTypeInfo1 jsonTypeInfo)
at Roslyn.LanguageServer.Protocol.InitializeParamsWorkspaceFoldersConverter.Read(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options) in /
/src/LanguageServer/Protocol/Protocol/Converters/InitializeParamsWorkspaceFoldersConverter.cs:line 31
at System.Text.Json.Serialization.JsonConverter1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value, Boolean& isPopulatedValue) at System.Text.Json.Serialization.Metadata.JsonPropertyInfo1.ReadJsonAndSetMember(Object obj, ReadStack& state, Utf8JsonReader& reader)
at System.Text.Json.Serialization.Converters.ObjectDefaultConverter1.OnTryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value) at System.Text.Json.Serialization.JsonConverter1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value, Boolean& isPopulatedValue)
at System.Text.Json.Serialization.JsonConverter1.ReadCore(Utf8JsonReader& reader, T& value, JsonSerializerOptions options, ReadStack& state) at System.Text.Json.Serialization.Metadata.JsonTypeInfo1.Deserialize(Utf8JsonReader& reader, ReadStack& state)
at System.Text.Json.JsonSerializer.ReadFromSpan[TValue](ReadOnlySpan1 utf8Json, JsonTypeInfo1 jsonTypeInfo, Nullable1 actualByteCount) at System.Text.Json.JsonSerializer.Deserialize[TValue](JsonElement element, JsonSerializerOptions options) at Microsoft.CommonLanguageServerProtocol.Framework.SystemTextJsonLanguageServer1.DeserializeRequest[TRequest](Object serializedRequest, RequestHandlerMetadata metadata) in //src/LanguageServer/Microsoft.CommonLanguageServerProtocol.Framework/SystemTextJsonLanguageServer.cs:line 49
at Microsoft.CommonLanguageServerProtocol.Framework.QueueItem1.TryDeserializeRequest[TRequest](AbstractLanguageServer1 languageServer, RequestHandlerMetadata requestHandlerMetadata, Boolean isMutating, TRequest& request) in /
/src/LanguageServer/Microsoft.CommonLanguageServerProtocol.Framework/QueueItem.cs:line 120
--- End of stack trace from previous location ---
at Microsoft.CommonLanguageServerProtocol.Framework.AbstractLanguageServer1.DelegatingEntryPoint.InvokeAsync(IRequestExecutionQueue1 queue, Object requestObject, ILspServices lspServices, CancellationToken cancellationToken) in //src/LanguageServer/Microsoft.CommonLanguageServerProtocol.Framework/AbstractLanguageServer.cs:line 209
at Microsoft.CommonLanguageServerProtocol.Framework.SystemTextJsonLanguageServer1.SystemTextJsonDelegatingEntryPoint.ExecuteRequestAsync(Nullable1 request, CancellationToken cancellationToken) in /
/src/LanguageServer/Microsoft.CommonLanguageServerProtocol.Framework/SystemTextJsonLanguageServer.cs:line 87
at Microsoft.CommonLanguageServerProtocol.Framework.QueueItem1.CreateRequestContextAsync[TRequest](IMethodHandler handler, RequestHandlerMetadata requestHandlerMetadata, AbstractLanguageServer1 languageServer, CancellationToken cancellationToken) in //src/LanguageServer/Microsoft.CommonLanguageServerProtocol.Framework/QueueItem.cs:line 95
at Microsoft.CommonLanguageServerProtocol.Framework.RequestExecutionQueue1.ProcessQueueCoreAsync[TRequest,TResponse](IQueueItem1 work, IMethodHandler handler, RequestHandlerMetadata metadata, ConcurrentDictionary2 concurrentlyExecutingTasks, CancellationTokenSource currentWorkCts, CancellationToken cancellationToken) in /_/src/LanguageServer/Microsoft.CommonLanguageServerProtocol.Framework/RequestExecutionQueue.cs:line 337 at Microsoft.CommonLanguageServerProtocol.Framework.RequestExecutionQueue1.InvokeProcessCoreAsync(IQueueItem1 work, RequestHandlerMetadata metadata, IMethodHandler handler, MethodInfo methodInfo, ConcurrentDictionary2 concurrentlyExecutingTasks, CancellationTokenSource currentWorkCts, CancellationToken cancellationToken) in /
/src/LanguageServer/Microsoft.CommonLanguageServerProtocol.Framework/RequestExecutionQueue.cs:line 320
at Microsoft.CommonLanguageServerProtocol.Framework.RequestExecutionQueue`1.ProcessQueueAsync() in /_/src/LanguageServer/Microsoft.CommonLanguageServerProtocol.Framework/RequestExecutionQueue.cs:line 272
2025-04-30 11:24:48.664 [info] [Info - 11:24:48 AM] Error processing queue, shutting down
2025-04-30 11:24:48.667 [info] [Error - 11:24:48 AM] The Microsoft.CodeAnalysis.LanguageServer server crashed 5 times in the last 3 minutes. The server will not be restarted. See the output for more information.
2025-04-30 11:24:48.826 [info] Language server process exited with 0

Environment information

VSCode version: 1.99.3
C# Extension: 2.72.34
Using OmniSharp: false

Dotnet Information .NET SDK: Version: 9.0.200 Commit: 90e8b202f2 Workload version: 9.0.200-manifests.69179adf MSBuild version: 17.13.8+cbc39bea8

Runtime Environment:
OS Name: Windows
OS Version: 10.0.26406
OS Platform: Windows
RID: win-arm64
Base Path: C:\Program Files\dotnet\sdk\9.0.200\

.NET workloads installed:
There are no installed workloads to display.
Configured to use loose manifests when installing new manifests.

Host:
Version: 9.0.2
Architecture: arm64
Commit: 80aa709f5d

.NET SDKs installed:
9.0.200 [C:\Program Files\dotnet\sdk]

.NET runtimes installed:
Microsoft.AspNetCore.App 8.0.13 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 9.0.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 8.0.13 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 9.0.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 8.0.13 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 9.0.2 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

Other architectures found:
x64 [C:\Program Files\dotnet\x64]
registered at [HKLM\SOFTWARE\dotnet\Setup\InstalledVersions\x64\InstallLocation]
x86 [C:\Program Files (x86)\dotnet]
registered at [HKLM\SOFTWARE\dotnet\Setup\InstalledVersions\x86\InstallLocation]

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 Folder Name
claude-dev saoudrizwan 3.13.3 saoudrizwan.claude-dev-3.13.3
copilot GitHub 1.311.0 github.copilot-1.311.0
copilot-chat GitHub 0.26.7 github.copilot-chat-0.26.7
csdevkit ms-dotnettools 1.18.25 ms-dotnettools.csdevkit-1.18.25-win32-arm64
csharp ms-dotnettools 2.72.34 ms-dotnettools.csharp-2.72.34-win32-arm64
debugpy ms-python 2025.6.0 ms-python.debugpy-2025.6.0-win32-arm64
docker docker 0.6.0 docker.docker-0.6.0-win32-arm64
dotnet-interactive-vscode ms-dotnettools 1.0.6177010 ms-dotnettools.dotnet-interactive-vscode-1.0.6177010
jupyter ms-toolsai 2025.3.0 ms-toolsai.jupyter-2025.3.0-win32-arm64
jupyter-keymap ms-toolsai 1.1.2 ms-toolsai.jupyter-keymap-1.1.2
jupyter-renderers ms-toolsai 1.1.0 ms-toolsai.jupyter-renderers-1.1.0
prettier-vscode esbenp 11.0.0 esbenp.prettier-vscode-11.0.0
python ms-python 2025.4.0 ms-python.python-2025.4.0-win32-arm64
remote-containers ms-vscode-remote 0.412.0 ms-vscode-remote.remote-containers-0.412.0
remote-explorer ms-vscode 0.5.2025021709 ms-vscode.remote-explorer-0.5.2025021709
remote-server ms-vscode 1.6.2025041509 ms-vscode.remote-server-1.6.2025041509
remote-ssh ms-vscode-remote 0.120.2025040915 ms-vscode-remote.remote-ssh-0.120.2025040915
remote-ssh-edit ms-vscode-remote 0.87.0 ms-vscode-remote.remote-ssh-edit-0.87.0
remote-wsl ms-vscode-remote 0.99.0 ms-vscode-remote.remote-wsl-0.99.0
rest-client humao 0.25.1 humao.rest-client-0.25.1
RunOnSave emeraldwalk 0.2.7 emeraldwalk.runonsave-0.2.7
semantic-kernel ms-semantic-kernel 0.12.1 ms-semantic-kernel.semantic-kernel-0.12.1
vscode-azurefunctions ms-azuretools 1.17.1 ms-azuretools.vscode-azurefunctions-1.17.1
vscode-azureresourcegroups ms-azuretools 0.10.9 ms-azuretools.vscode-azureresourcegroups-0.10.9
vscode-dapr ms-azuretools 0.8.0 ms-azuretools.vscode-dapr-0.8.0
vscode-docker ms-azuretools 1.29.6 ms-azuretools.vscode-docker-1.29.6
vscode-dotnet-runtime ms-dotnettools 2.3.3 ms-dotnettools.vscode-dotnet-runtime-2.3.3
vscode-eslint dbaeumer 3.0.10 dbaeumer.vscode-eslint-3.0.10
vscode-jupyter-cell-tags ms-toolsai 0.1.9 ms-toolsai.vscode-jupyter-cell-tags-0.1.9
vscode-jupyter-slideshow ms-toolsai 0.1.6 ms-toolsai.vscode-jupyter-slideshow-0.1.6
vscode-pylance ms-python 2025.4.1 ms-python.vscode-pylance-2025.4.1
vscode-remote-extensionpack ms-vscode-remote 0.26.0 ms-vscode-remote.vscode-remote-extensionpack-0.26.0
vscodeintellicode-csharp ms-dotnettools 2.2.3 ms-dotnettools.vscodeintellicode-csharp-2.2.3-win32-arm64
windows-ai-studio ms-windows-ai-studio 0.13.2025042908 ms-windows-ai-studio.windows-ai-studio-0.13.2025042908-win32-arm64

Extension version: 2.72.34
VS Code version: Code 1.99.3 (17baf841131aa23349f217ca7c570c76ee87b957, 2025-04-15T23:18:46.076Z)
OS version: Windows_NT arm64 10.0.26406
Modes:

System Info
Item Value
CPUs Snapdragon(R) X 12-core X1E80100 @ 3.40 GHz (12 x 2976)
GPU Status 2d_canvas: enabled
canvas_oop_rasterization: enabled_on
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: disabled_off
video_decode: enabled
video_encode: enabled
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: enabled
webnn: unavailable_software
Load (avg) undefined
Memory (System) 15.61GB (2.34GB free)
Process Argv --folder-uri file:///d%3A/source/marvin/marvin --crash-reporter-id 097a69ed-ce81-4d29-bc65-97faec28d7ee
Screen Reader no
VM 0%
A/B Experiments
vsliv368:30146709
vspor879:30202332
vspor708:30202333
vspor363:30204092
vscod805:30301674
binariesv615:30325510
14424c2-chatv2:31289885
vscaac:30438847
c4g48928:30535728
azure-dev_surveyone:30548225
vscrpc:30673769
962ge761:30959799
h48ei257:31000450
pythontbext0:30879054
cppperfnew:31000557
dwnewjupyter:31046869
pythonrstrctxt:31112756
nativeloc2:31192216
5fd0e150:31155592
dwcopilot:31170013
6074i472:31201624
dwoutputs:31242946
customenabled:31248079
9064b325:31222308
copilot_t_ci:31222730
e5gg6876:31282496
pythoneinst12:31285622
bgtreat:31268568
4gafe986:31271826
31787653:31262186
3e8i5726:31271747
pythonpulldiagcf:31298646
996jf627:31283433
pythonrdcb7cf:31296842
usemplatestapi:31297334
7bj51361:31289155
747dc170:31275177
g20af354:31278749
aj953862:31281341
generatesymbolt:31295002
convertfstringf:31295003
gendocf:31295004

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions