Releases: OmniSharp/csharp-language-server-protocol
Fixed an issue when using AddTextDocumentIdentifier
v0.17.1 fixed an bug in AddTextDocumentIdentifier where it would not register…
We pipelined the hell out of this one...
- 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 withSend
except in the cases where the grammar failsSendDidChangeTextDocument
vsDidChangeTextDocument
orSendPublishDiagnostics
vsPublishDiagnostics
.- 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.
v0.16.0 Updated license to include .net foundation (#224)
v0.15.0
v0.14.2
v0.14.1
v0.14.0
#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
v0.13.0
#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
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.