- Prior to this if you were to continuously type then additional completion requests would be "requested" for non-transition trigger characters. Aka typing `@D` quickly could result in two completion requests: one for the trigger character `@` and one for the literal `D`. If the first completion request returned quick enough we'd provide C# polyfills because `@` was the trigger character; however, if it doesn't and it instead gets cancelled in favor for the `D` completion request then no polyfills would be provided prior to this PR.
- Given C#'s polyfills are ultimately just a "workaround" until snippet support is added I utilized VS' word calculation logic to lazily detect simple implicit expressions which involve a transition and then a single word. This new logic will grab the entire word range and then look on the left hand side of the word to see if it's lead by a transition.
- Updated existing tests to pass in a fake text navigator since it's a new requirement to better introspect over what we're providing completion over.
- Added a new test to validate that we provide C# completions for re-trigger scenarios
Fixesdotnet/aspnetcore#28327
[master] Update dependencies from dotnet/aspnetcore
- Coherency Updates:
- Microsoft.Extensions.Configuration.Json: from 6.0.0-alpha.1.20611.2 to 6.0.0-alpha.1.20611.23 (parent: Microsoft.CodeAnalysis.Razor)
- Microsoft.Extensions.Logging: from 6.0.0-alpha.1.20611.2 to 6.0.0-alpha.1.20611.23 (parent: Microsoft.CodeAnalysis.Razor)
- System.Diagnostics.DiagnosticSource: from 6.0.0-alpha.1.20611.2 to 6.0.0-alpha.1.20611.23 (parent: Microsoft.CodeAnalysis.Razor)
- System.Resources.Extensions: from 6.0.0-alpha.1.20611.2 to 6.0.0-alpha.1.20611.23 (parent: Microsoft.CodeAnalysis.Razor)
- System.Text.Encodings.Web: from 6.0.0-alpha.1.20611.2 to 6.0.0-alpha.1.20611.23 (parent: Microsoft.CodeAnalysis.Razor)
- Microsoft.Extensions.DependencyModel: from 6.0.0-alpha.1.20611.2 to 6.0.0-alpha.1.20611.23 (parent: Microsoft.CodeAnalysis.Razor)
- Microsoft.NETCore.App.Ref: from 6.0.0-alpha.1.20611.2 to 6.0.0-alpha.1.20611.23 (parent: Microsoft.CodeAnalysis.Razor)
- Microsoft.NETCore.BrowserDebugHost.Transport: from 6.0.0-alpha.1.20611.2 to 6.0.0-alpha.1.20611.23 (parent: Microsoft.CodeAnalysis.Razor)
- Microsoft.NETCore.App.Runtime.win-x64: from 6.0.0-alpha.1.20611.2 to 6.0.0-alpha.1.20611.23 (parent: Microsoft.CodeAnalysis.Razor)
- Microsoft.NETCore.Platforms: from 6.0.0-alpha.1.20611.2 to 6.0.0-alpha.1.20611.23 (parent: Microsoft.CodeAnalysis.Razor)
[master] Update dependencies from dotnet/aspnetcore
- Coherency Updates:
- Microsoft.Extensions.Configuration.Json: from 6.0.0-alpha.1.20609.15 to 6.0.0-alpha.1.20611.2 (parent: Microsoft.CodeAnalysis.Razor)
- Microsoft.Extensions.Logging: from 6.0.0-alpha.1.20609.15 to 6.0.0-alpha.1.20611.2 (parent: Microsoft.CodeAnalysis.Razor)
- System.Diagnostics.DiagnosticSource: from 6.0.0-alpha.1.20609.15 to 6.0.0-alpha.1.20611.2 (parent: Microsoft.CodeAnalysis.Razor)
- System.Resources.Extensions: from 6.0.0-alpha.1.20609.15 to 6.0.0-alpha.1.20611.2 (parent: Microsoft.CodeAnalysis.Razor)
- System.Text.Encodings.Web: from 6.0.0-alpha.1.20609.15 to 6.0.0-alpha.1.20611.2 (parent: Microsoft.CodeAnalysis.Razor)
- Microsoft.Extensions.DependencyModel: from 6.0.0-alpha.1.20609.15 to 6.0.0-alpha.1.20611.2 (parent: Microsoft.CodeAnalysis.Razor)
- Microsoft.NETCore.App.Ref: from 6.0.0-alpha.1.20609.15 to 6.0.0-alpha.1.20611.2 (parent: Microsoft.CodeAnalysis.Razor)
- Microsoft.NETCore.BrowserDebugHost.Transport: from 6.0.0-alpha.1.20609.15 to 6.0.0-alpha.1.20611.2 (parent: Microsoft.CodeAnalysis.Razor)
- Microsoft.NETCore.App.Runtime.win-x64: from 6.0.0-alpha.1.20609.15 to 6.0.0-alpha.1.20611.2 (parent: Microsoft.CodeAnalysis.Razor)
- Microsoft.NETCore.Platforms: from 6.0.0-alpha.1.20609.15 to 6.0.0-alpha.1.20611.2 (parent: Microsoft.CodeAnalysis.Razor)
* Update dependencies from https://github.com/dotnet/aspnetcore build 20201209.12
Microsoft.CodeAnalysis.Razor , Microsoft.AspNetCore.Testing , Microsoft.AspNetCore.Razor.Language , Microsoft.AspNetCore.Razor.Internal.Transport , Microsoft.NET.Sdk.Razor , Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X , Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X , Microsoft.AspNetCore.Mvc.Razor.Extensions
From Version 6.0.0-alpha.1.20609.10 -> To Version 6.0.0-alpha.1.20609.12
Dependency coherency updates
Microsoft.Extensions.Configuration.Json,Microsoft.Extensions.Logging,System.Diagnostics.DiagnosticSource,System.Resources.Extensions,System.Text.Encodings.Web,Microsoft.Extensions.DependencyModel,Microsoft.NETCore.App.Ref,Microsoft.NETCore.App.Internal,Microsoft.NETCore.App.Runtime.win-x64,Microsoft.NETCore.Platforms
From Version 6.0.0-alpha.1.20560.10 -> To Version 6.0.0-alpha.1.20609.11 (parent: Microsoft.CodeAnalysis.Razor
* Update dependencies from https://github.com/dotnet/aspnetcore build 20201209.13
Microsoft.CodeAnalysis.Razor , Microsoft.AspNetCore.Testing , Microsoft.NET.Sdk.Razor , Microsoft.AspNetCore.Razor.Internal.Transport , Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X , Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X , Microsoft.AspNetCore.Mvc.Razor.Extensions , Microsoft.AspNetCore.Razor.Language
From Version 6.0.0-alpha.1.20609.10 -> To Version 6.0.0-alpha.1.20609.13
Dependency coherency updates
Microsoft.Extensions.Configuration.Json,Microsoft.Extensions.Logging,System.Diagnostics.DiagnosticSource,System.Resources.Extensions,System.Text.Encodings.Web,Microsoft.Extensions.DependencyModel,Microsoft.NETCore.App.Ref,Microsoft.NETCore.App.Internal,Microsoft.NETCore.App.Runtime.win-x64,Microsoft.NETCore.Platforms
From Version 6.0.0-alpha.1.20560.10 -> To Version 6.0.0-alpha.1.20609.11 (parent: Microsoft.CodeAnalysis.Razor
* Update dependencies from https://github.com/dotnet/aspnetcore build 20201210.3
Microsoft.CodeAnalysis.Razor , Microsoft.NET.Sdk.Razor , Microsoft.AspNetCore.Testing , Microsoft.AspNetCore.Razor.Language , Microsoft.AspNetCore.Razor.Internal.Transport , Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X , Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X , Microsoft.AspNetCore.Mvc.Razor.Extensions
From Version 6.0.0-alpha.1.20609.10 -> To Version 6.0.0-alpha.1.20610.3
Dependency coherency updates
Microsoft.Extensions.Configuration.Json,Microsoft.Extensions.Logging,System.Diagnostics.DiagnosticSource,System.Resources.Extensions,System.Text.Encodings.Web,Microsoft.Extensions.DependencyModel,Microsoft.NETCore.App.Ref,Microsoft.NETCore.App.Internal,Microsoft.NETCore.App.Runtime.win-x64,Microsoft.NETCore.Platforms
From Version 6.0.0-alpha.1.20560.10 -> To Version 6.0.0-alpha.1.20609.15 (parent: Microsoft.CodeAnalysis.Razor
* Remove usage of Microsoft.Netcore.App.Internal
* Update VSIX binding redirects for Configuration and Primitives dependenies.
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Will Godbe <wigodbe@microsoft.com>
Co-authored-by: N. Taylor Mullen <nimullen@microsoft.com>
* Delegate InvokeKind to sub-languages.
- When the VS language server platform's Json converters are added to our JsonRpc object we're able to see additional information as part of LSP completion requests. This additional information can help influence our sub-languages to "do the right thing".
- To add JsonConverters to our JsonRpc object I had to change the way we construct the object. Also, since we can't rely on a newer LSP protocol version quite yet I had to copy and paste their converter additions into one of our own.
- Updated two existing tests to validate that the `InvokeKind` flows properly.
Fixesdotnet/aspnetcore#27927
* Addressed code review comments.
* Use .NET debugger to launch app server
* Add support for config properties and fix launch
* Update options description
* Add supported config options to options