Skip to content

Releases: OmniSharp/csharp-language-server-protocol

Fixed an issue when using AddTextDocumentIdentifier

02 Jun 05:04
43e946c
Compare
Choose a tag to compare
v0.17.1

fixed an bug in AddTextDocumentIdentifier where it would not register…

We pipelined the hell out of this one...

02 Jun 04:21
21f56ec
Compare
Choose a tag to compare

mariopipes-final

  • Adds support for System.IO.Pipelines
  • Added new LanguageClient that mirrors the language server with full functionality.
  • Started work on integration testing to ensure that features all work as expected
  • Cancellation should now work more consistently.
    • Added global request timeout
    • Added cancellation of pending requests when text changes occur (ContentModified)
  • Normalized all OnXyz handlers to be consistent across all methods. (Enforced with unit tests)
    • Requests have a cancellation and non-cancellation overload
    • Requests that support partial item results have an additional overloads with async/sync and cancellation/no-cancellation that provide an IObserver<T>
    • Notifications support both async/sync and cancellation/no-cancellation
  • Normalized all the RequestXyz to be action oriented. Requests are normally prefixed with Request and notifications are normally prefixed with Send except in the cases where the grammar fails SendDidChangeTextDocument vs DidChangeTextDocument or SendPublishDiagnostics vs PublishDiagnostics.
    • These all take optional cancellation tokens
    • Enforced through unit tests to ensure they exist.
  • Direction has been added to all requests and notifications to help with understanding what way they should go.
  • Namespaces have been changed slightly, most class names have not been changed drastically.

Thanks to @TylerLeonhardt for working through all the bugs we found with the powershell extension. I feel like we have an even better foundation now with the new tests that were added each time we stomped out a bug.

V0.16.0: Added support for the latest language server protocol.

29 Mar 18:15
179d21d
Compare
Choose a tag to compare
v0.16.0

Updated license to include .net foundation (#224)

v0.15.0

14 Feb 19:12
c8cca33
Compare
Choose a tag to compare
  • Fix DocumentSymbol Json Converter #201
  • Added OnStarted delegate handler that is called after the server has successfully started #206
  • Correctly handle CommandOrCodeAction with missing "command" property #211

v0.14.2

27 Jan 14:53
a8e44c2
Compare
Choose a tag to compare
  • Fix TextDocument synchronization for LSP3 #199
  • Always return result property on success #203

v0.14.1

02 Jan 21:34
ad24c91
Compare
Choose a tag to compare
  • Added support for Definition, DocumentHighlights, FoldingRanges to TextDocumentClient. (Client) #188
  • Workaround Unicode characters in URIs .NET bug (Serialization) #196

v0.14.0

29 Oct 06:53
83f3f51
Compare
Choose a tag to compare

#157 Support: Debug Adapter Protocol
#161 fixed boolean or converter so that it handles boolean values, as well…
#163 Changes for #162 correct how text document sync settings are configured
#164 fix/uri-serialization
#176 Changes for #175 to return a Location object for diagnostic related information
#177 Do not embed MediatR
#178 Remove duplicate code
#182 Refactor logging +semver:minor
#184 Added SignatureHelp support.
#187 Adds ILoggingBuilder extension for LanguageServer logging.
#189 Allow using global log level as minimum log level for LanguageServerLoggerProvider
#190 Update example to use log level debug instead of information

Please note that there's a breaking change with regards to configuring logging, you should now use the .ConfigureLogging(Action<ILoggingBuilder>) extension on LanguageServerOptions to configure logging. Language Server Logging can be configured using the AddLanguageServer() extension method. Example:

var server = await LanguageServer.From(options =>
                options
                    .WithInput(Console.OpenStandardInput())
                    .WithOutput(Console.OpenStandardOutput())
                    .ConfigureLogging(x => x
                        .AddLanguageServer())
                    .WithHandler<MyHandler>());

v0.13.1

21 Jul 21:12
6bf47e5
Compare
Choose a tag to compare

#160 Fixes BooleanOrConverter

v0.13.0

21 Jul 19:44
2c88d7c
Compare
Choose a tag to compare

#156 Move registration options to the descriptor
#155 Updated protocol to sync with the latest spec
#154 Made SetCapability virtual instead of abstract
#152 Fixed typo
#153 Fix language server not working with the latest beta
#148 Updated support for capabilities to be more generous to clients that do not report their support via capabilities
#147 Added a fix for #141 with test validating that it works
#128 Added delegate handlers for all base interfaces
#130 Added test with special character for text document matcher
#143 Fix handling of textDocument/foldingRange

v0.12.1

22 May 19:08
6069be5
Compare
Choose a tag to compare

649246f Fix implicit cast of null and BooleanOr
03f4507 Make BooleanOr class instead of struct to fix ignore null value when serializing
01a7b2e RGB values for colors are now represented using double
3380e61 Fixes tests for Code Actions
cb98e4e (GH-136) Corrected IRegistration definition
21907ad Support Client capabilities implementing ConnectedCapability<> multiple times.