OmniSharp / omnisharp-roslyn

OmniSharp server (HTTP, STDIO) based on Roslyn workspaces
MIT License
1.76k stars 420 forks source link

[coc.nvim] Failed to handle notification textDocument/completion - System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values. #1517

Open shosca opened 5 years ago

shosca commented 5 years ago

Trying to use coc.nvim and omnisharp-roslyn lsp and getting some suggestions for completion:

Screenshot from 2019-06-04 06-18-39

But failing to suggest Console.*, here's the messages:

[coc.nvim] Source "languageserver.omnisharp" recreated
1 line less
"TestProject/Program.cs" [dos] 12L, 193C [w]
1 line less
1 line less
[coc.nvim] Error output from languageserver.omnisharp: Failed to handle notification textDocument/completion - System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values.
Parameter name: position
  at Microsoft.CodeAnalysis.Text.SubText.get_Item (System.Int32 position) [0x0000d] in <76ae43ad22f44077a09a9589a874c255>:0 
  at Microsoft.CodeAnalysis.Text.CompositeText.get_Item (System.Int32 position) [0x0001a] in <76ae43ad22f44077a09a9589a874c255>:0 
  at Microsoft.CodeAnalysis.Text.ChangedText.get_Item (System.Int32 position) [0x00000] in <76ae43ad22f44077a09a9589a874c255>:0 
  at Microsoft.CodeAnalysis.Completion.CommonCompletionUtilities.GetWordSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 position, System.Func`2[T,TResult] isWordStartCharacter, System.Func`2[T,TResult] isWordCharacter, System.Boolean alwaysExtendEndSpan) [0x0000c] in <2c0a476872d74693aae1fd0cb0652cc4>:0 
  at Microsoft.CodeAnalysis.Completion.CommonCompletionUtilities.GetWordSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 position, System.Func`2[T,TResult] isWordStartCharacter, System.Func`2[T,TResult] isWordCharacter) [0x00000] in <2c0a476872d74693aae1fd0cb0652cc4>:0 
  at Microsoft.CodeAnalysis.CSharp.Completion.Providers.CompletionUtilities.GetCompletionItemSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 position) [0x00000] in <d83c7c973f1e4f9c94e475b46ef307f9>:0 
  at Microsoft.CodeAnalysis.CSharp.Completion.CSharpCompletionService.GetDefaultCompletionListSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 caretPosition) [0x00000] in <d83c7c973f1e4f9c94e475b46ef307f9>:0 
  at Microsoft.CodeAnalysis.Completion.CompletionServiceWithProviders.GetCompletionsAsync (Microsoft.CodeAnalysis.Document document, System.Int32 caretPosition, Microsoft.CodeAnalysis.Completion.CompletionTrigger trigger, System.Collections.Immutable.ImmutableHashSet`1[T] roles, Microsoft.CodeAnalysis.Options.OptionSet options, System.Threading.CancellationToken 
cancellationToken) [0x000e4] in <2c0a476872d74693aae1fd0cb0652cc4>:0 
  at OmniSharp.Roslyn.CSharp.Services.Intellisense.IntellisenseService.Handle (OmniSharp.Models.AutoComplete.AutoCompleteRequest request) [0x001b1] in <f59b57b08177425fae4c524f7af77f07>:0 
  at OmniSharp.LanguageServerProtocol.Handlers.CompletionHandler.Handle (OmniSharp.Extensions.LanguageServer.Protocol.Models.CompletionParams request, System.Threading.CancellationToken token) [0x000dd] in <41a2212eaec34670ae4b9c5df8c188a2>:0 
  at OmniSharp.Extensions.LanguageServer.Server.Pipelines.ResolveCommandPipeline`2[TRequest,TResponse].Handle (TRequest request, System.Threading.CancellationToken cancellationToken, OmniSharp.Extensions.Embedded.MediatR.RequestHandlerDelegate`1[TResponse] next) [0x000e1] in <c33e73e38fa14bf293bda2f62d3759c4>:0 
  at OmniSharp.Extensions.LanguageServer.Server.LspRequestRouter.RouteRequest (OmniSharp.Extensions.JsonRpc.IHandlerDescriptor descriptor, OmniSharp.Extensions.JsonRpc.Server.Request request) [0x002e2] in <c33e73e38fa14bf293bda2f62d3759c4>:0 
[coc.nvim] Error output from languageserver.omnisharp: Request textDocument/completion failed.
  Message: Internal Error - System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values.
Parameter name: position
  at Microsoft.CodeAnalysis.Text.SubText.get_Item (System.Int32 position) [0x0000d] in <76ae43ad22f44077a09a9589a874c255>:0 
  at Microsoft.CodeAnalysis.Text.CompositeText.get_Item (System.Int32 position) [0x0001a] in <76ae43ad22f44077a09a9589a874c255>:0 
  at Microsoft.CodeAnalysis.Text.ChangedText.get_Item (System.Int32 position) [0x00000] in <76ae43ad22f44077a09a9589a874c255>:0 
  at Microsoft.CodeAnalysis.Completion.CommonCompletionUtilities.GetWordSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 position, System.Func`2[T,TResult] isWordStartCharacter, System.Func`2[T,TResult] isWordCharacter, System.Boolean alwaysExtendEndSpan) [0x0000c] in <2c0a476872d74693aae1fd0cb0652cc4>:0 
  at Microsoft.CodeAnalysis.Completion.CommonCompletionUtilities.GetWordSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 position, System.Func`2[T,TResult] isWordStartCharacter, System.Func`2[T,TResult] isWordCharacter) [0x00000] in <2c0a476872d74693aae1fd0cb0652cc4>:0 
  at Microsoft.CodeAnalysis.CSharp.Completion.Providers.CompletionUtilities.GetCompletionItemSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 position) [0x00000] in <d83c7c973f1e4f9c94e475b46ef307f9>:0 
  at Microsoft.CodeAnalysis.CSharp.Completion.CSharpCompletionService.GetDefaultCompletionListSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 caretPosition) [0x00000] in <d83c7c973f1e4f9c94e475b46ef307f9>:0 
  at Microsoft.CodeAnalysis.Completion.CompletionServiceWithProviders.GetCompletionsAsync (Microsoft.CodeAnalysis.Document document, System.Int32 caretPosition, Microsoft.CodeAnalysis.Completion.CompletionTrigger trigger, System.Collections.Immutable.ImmutableHashSet`1[T] roles, Microsoft.CodeAnalysis.Options.OptionSet options, System.Threading.CancellationToken 
cancellationToken) [0x000e4] in <2c0a476872d74693aae1fd0cb0652cc4>:0 
  at OmniSharp.Roslyn.CSharp.Services.Intellisense.IntellisenseService.Handle (OmniSharp.Models.AutoComplete.AutoCompleteRequest request) [0x001b1] in <f59b57b08177425fae4c524f7af77f07>:0 
  at OmniSharp.LanguageServerProtocol.Handlers.CompletionHandler.Handle (OmniSharp.Extensions.LanguageServer.Protocol.Models.CompletionParams request, System.Threading.CancellationToken token) [0x000dd] in <41a2212eaec34670ae4b9c5df8c188a2>:0 
  at OmniSharp.Extensions.LanguageServer.Server.Pipelines.ResolveCommandPipeline`2[TRequest,TResponse].Handle (TRequest request, System.Threading.CancellationToken cancellationToken, OmniSharp.Extensions.Embedded.MediatR.RequestHandlerDelegate`1[TResponse] next) [0x000e1] in <c33e73e38fa14bf293bda2f62d3759c4>:0 
  at OmniSharp.Extensions.LanguageServer.Server.LspRequestRouter.RouteRequest (OmniSharp.Extensions.JsonRpc.IHandlerDescriptor descriptor, OmniSharp.Extensions.JsonRpc.Server.Request request) [0x002e2] in <c33e73e38fa14bf293bda2f62d3759c4>:0 
  Code: -32602 
1 line less
[coc.nvim] Error output from languageserver.omnisharp: Failed to handle notification textDocument/completion - System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values.
Parameter name: position
  at Microsoft.CodeAnalysis.Text.SubText.get_Item (System.Int32 position) [0x0000d] in <76ae43ad22f44077a09a9589a874c255>:0 
  at Microsoft.CodeAnalysis.Text.CompositeText.get_Item (System.Int32 position) [0x0001a] in <76ae43ad22f44077a09a9589a874c255>:0 
  at Microsoft.CodeAnalysis.Text.ChangedText.get_Item (System.Int32 position) [0x00000] in <76ae43ad22f44077a09a9589a874c255>:0 
  at Microsoft.CodeAnalysis.Completion.CommonCompletionUtilities.GetWordSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 position, System.Func`2[T,TResult] isWordStartCharacter, System.Func`2[T,TResult] isWordCharacter, System.Boolean alwaysExtendEndSpan) [0x0000c] in <2c0a476872d74693aae1fd0cb0652cc4>:0 
  at Microsoft.CodeAnalysis.Completion.CommonCompletionUtilities.GetWordSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 position, System.Func`2[T,TResult] isWordStartCharacter, System.Func`2[T,TResult] isWordCharacter) [0x00000] in <2c0a476872d74693aae1fd0cb0652cc4>:0 
  at Microsoft.CodeAnalysis.CSharp.Completion.Providers.CompletionUtilities.GetCompletionItemSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 position) [0x00000] in <d83c7c973f1e4f9c94e475b46ef307f9>:0 
  at Microsoft.CodeAnalysis.CSharp.Completion.CSharpCompletionService.GetDefaultCompletionListSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 caretPosition) [0x00000] in <d83c7c973f1e4f9c94e475b46ef307f9>:0 
  at Microsoft.CodeAnalysis.Completion.CompletionServiceWithProviders.GetCompletionsAsync (Microsoft.CodeAnalysis.Document document, System.Int32 caretPosition, Microsoft.CodeAnalysis.Completion.CompletionTrigger trigger, System.Collections.Immutable.ImmutableHashSet`1[T] roles, Microsoft.CodeAnalysis.Options.OptionSet options, System.Threading.CancellationToken 
cancellationToken) [0x000e4] in <2c0a476872d74693aae1fd0cb0652cc4>:0 
  at OmniSharp.Roslyn.CSharp.Services.Intellisense.IntellisenseService.Handle (OmniSharp.Models.AutoComplete.AutoCompleteRequest request) [0x001b1] in <f59b57b08177425fae4c524f7af77f07>:0 
  at OmniSharp.LanguageServerProtocol.Handlers.CompletionHandler.Handle (OmniSharp.Extensions.LanguageServer.Protocol.Models.CompletionParams request, System.Threading.CancellationToken token) [0x000dd] in <41a2212eaec34670ae4b9c5df8c188a2>:0 
  at OmniSharp.Extensions.LanguageServer.Server.Pipelines.ResolveCommandPipeline`2[TRequest,TResponse].Handle (TRequest request, System.Threading.CancellationToken cancellationToken, OmniSharp.Extensions.Embedded.MediatR.RequestHandlerDelegate`1[TResponse] next) [0x000e1] in <c33e73e38fa14bf293bda2f62d3759c4>:0 
  at OmniSharp.Extensions.LanguageServer.Server.LspRequestRouter.RouteRequest (OmniSharp.Extensions.JsonRpc.IHandlerDescriptor descriptor, OmniSharp.Extensions.JsonRpc.Server.Request request) [0x002e2] in <c33e73e38fa14bf293bda2f62d3759c4>:0 
[coc.nvim] Error output from languageserver.omnisharp: Request textDocument/completion failed.
  Message: Internal Error - System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values.
Parameter name: position
  at Microsoft.CodeAnalysis.Text.SubText.get_Item (System.Int32 position) [0x0000d] in <76ae43ad22f44077a09a9589a874c255>:0 
  at Microsoft.CodeAnalysis.Text.CompositeText.get_Item (System.Int32 position) [0x0001a] in <76ae43ad22f44077a09a9589a874c255>:0 
  at Microsoft.CodeAnalysis.Text.ChangedText.get_Item (System.Int32 position) [0x00000] in <76ae43ad22f44077a09a9589a874c255>:0 
  at Microsoft.CodeAnalysis.Completion.CommonCompletionUtilities.GetWordSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 position, System.Func`2[T,TResult] isWordStartCharacter, System.Func`2[T,TResult] isWordCharacter, System.Boolean alwaysExtendEndSpan) [0x0000c] in <2c0a476872d74693aae1fd0cb0652cc4>:0 
  at Microsoft.CodeAnalysis.Completion.CommonCompletionUtilities.GetWordSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 position, System.Func`2[T,TResult] isWordStartCharacter, System.Func`2[T,TResult] isWordCharacter) [0x00000] in <2c0a476872d74693aae1fd0cb0652cc4>:0 
  at Microsoft.CodeAnalysis.CSharp.Completion.Providers.CompletionUtilities.GetCompletionItemSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 position) [0x00000] in <d83c7c973f1e4f9c94e475b46ef307f9>:0 
  at Microsoft.CodeAnalysis.CSharp.Completion.CSharpCompletionService.GetDefaultCompletionListSpan (Microsoft.CodeAnalysis.Text.SourceText text, System.Int32 caretPosition) [0x00000] in <d83c7c973f1e4f9c94e475b46ef307f9>:0 
  at Microsoft.CodeAnalysis.Completion.CompletionServiceWithProviders.GetCompletionsAsync (Microsoft.CodeAnalysis.Document document, System.Int32 caretPosition, Microsoft.CodeAnalysis.Completion.CompletionTrigger trigger, System.Collections.Immutable.ImmutableHashSet`1[T] roles, Microsoft.CodeAnalysis.Options.OptionSet options, System.Threading.CancellationToken 
cancellationToken) [0x000e4] in <2c0a476872d74693aae1fd0cb0652cc4>:0 
  at OmniSharp.Roslyn.CSharp.Services.Intellisense.IntellisenseService.Handle (OmniSharp.Models.AutoComplete.AutoCompleteRequest request) [0x001b1] in <f59b57b08177425fae4c524f7af77f07>:0 
  at OmniSharp.LanguageServerProtocol.Handlers.CompletionHandler.Handle (OmniSharp.Extensions.LanguageServer.Protocol.Models.CompletionParams request, System.Threading.CancellationToken token) [0x000dd] in <41a2212eaec34670ae4b9c5df8c188a2>:0 
  at OmniSharp.Extensions.LanguageServer.Server.Pipelines.ResolveCommandPipeline`2[TRequest,TResponse].Handle (TRequest request, System.Threading.CancellationToken cancellationToken, OmniSharp.Extensions.Embedded.MediatR.RequestHandlerDelegate`1[TResponse] next) [0x000e1] in <c33e73e38fa14bf293bda2f62d3759c4>:0 
  at OmniSharp.Extensions.LanguageServer.Server.LspRequestRouter.RouteRequest (OmniSharp.Extensions.JsonRpc.IHandlerDescriptor descriptor, OmniSharp.Extensions.JsonRpc.Server.Request request) [0x002e2] in <c33e73e38fa14bf293bda2f62d3759c4>:0 
  Code: -32602

and coc.nvim log:

2019-06-04T06:16:25.907 INFO (pid:3956) [services] - registed service "languageserver.bash"
2019-06-04T06:16:25.908 INFO (pid:3956) [services] - registed service "languageserver.omnisharp"
2019-06-04T06:16:25.908 INFO (pid:3956) [services] - omnisharp state change: stopped => starting
2019-06-04T06:16:25.967 INFO (pid:3956) [services] - registed service "eslint"
2019-06-04T06:16:25.999 INFO (pid:3956) [services] - registed service "highlight"
2019-06-04T06:16:25.999 INFO (pid:3956) [services] - highlight server state change: stopped => starting
2019-06-04T06:16:26.130 INFO (pid:3956) [plugin] - coc 0.0.68 initialized with node: v11.15.0
2019-06-04T06:16:26.501 INFO (pid:3956) [services] - highlight server state change: starting => running
2019-06-04T06:16:26.503 INFO (pid:3956) [services] - service highlight started
2019-06-04T06:16:27.303 INFO (pid:3956) [extensions] - Upgrading coc-tsserver coc-eslint coc-git
2019-06-04T06:16:27.773 INFO (pid:3956) [services] - omnisharp state change: starting => running
2019-06-04T06:16:27.774 INFO (pid:3956) [services] - service languageserver.omnisharp started
2019-06-04T06:16:30.517 INFO (pid:3956) [completion-complete] - Results from: around,issues
2019-06-04T06:16:34.012 INFO (pid:3956) [completion-complete] - Results from: languageserver.omnisharp
2019-06-04T06:16:42.644 INFO (pid:3956) [completion-complete] - Results from: around,issues,languageserver.omnisharp
2019-06-04T06:16:48.140 INFO (pid:3956) [willSaveHandler] - Will save cost: 1
2019-06-04T06:17:27.598 INFO (pid:3956) [completion-complete] - Results from: around,issues,languageserver.omnisharp
2019-06-04T06:17:35.809 INFO (pid:3956) [completion-complete] - Results from: around,issues,syntax,languageserver.omnisharp
2019-06-04T06:17:36.989 INFO (pid:3956) [completion-complete] - Results from: around,issues,languageserver.omnisharp
2019-06-04T06:17:41.537 INFO (pid:3956) [completion-complete] - Results from: languageserver.omnisharp
2019-06-04T06:17:44.987 INFO (pid:3956) [completion-complete] - Results from: languageserver.omnisharp
2019-06-04T06:17:46.436 INFO (pid:3956) [completion-complete] - Results from: issues,syntax,languageserver.omnisharp
2019-06-04T06:17:51.820 INFO (pid:3956) [completion-complete] - Results from: around,issues,languageserver.omnisharp
2019-06-04T06:17:57.355 INFO (pid:3956) [completion-complete] - Results from: around,issues,languageserver.omnisharp
2019-06-04T06:18:28.204 INFO (pid:3956) [completion-complete] - Results from: around,issues,languageserver.omnisharp

coc-settings.json:


➜ cat ~/dotfiles/coc-settings.json      
{
  "coc.preferences.colorSupport": true,
  "diagnostic.checkCurrentLine": true,
  "diagnostic.errorSign": "•",
  "diagnostic.infoSign": "•",
  "diagnostic.warningSign": "•",
  "suggest.echodocSupport": true,
  "suggest.maxCompleteItemCount": 20,
  "languageserver": {
    "bash": {
      "command": "bash-language-server",
      "filetypes": ["sh"],
      "args": ["start"],
      "ignoredRootPaths": ["~"]
    },
    "omnisharp": {
      "command": "/home/serkan/.vscode/extensions/ms-vscode.csharp-1.19.1/.omnisharp/1.32.19/omnisharp/OmniSharp.exe",
      "args": ["-lsp"],
      "filetypes": ["cs"],
    }
  }
}

I'm using archlinux and I have also tried the omnisharp-roslyn aur package with same result.

This is the sample test project created with:

dotnet new console -o TestProject
dotnet new sln
dotnet sln add TestProject/TestProject.csproj

and

~/src/TestProject via .NET 2.2.105 
➜ dotnet --version                
2.2.105
hrai commented 4 years ago

Have you given this a go instead? https://github.com/coc-extensions/coc-omnisharp