Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump OmniSharp.Extensions.LanguageClient from 0.18.3 to 0.19.0 #1422

Conversation

dependabot-preview[bot]
Copy link
Contributor

@dependabot-preview dependabot-preview bot commented Mar 1, 2021

⚠️ Dependabot is rebasing this PR ⚠️

If you make any changes to it yourself then they will take precedence over the rebase.


Bumps OmniSharp.Extensions.LanguageClient from 0.18.3 to 0.19.0.

Release notes

Sourced from OmniSharp.Extensions.LanguageClient's releases.

v0.19.0

As part of this release we had 76 issues closed.

Breaking Changes

Serializer Changes

  • The LSP Serializer renamed to LSPSerializer
  • Added serialization rules for client
    • Ensure code actions are provided properly.
  • Updated serialization rules for server

Registration Changes

The 3.16 specification defines the SemanticLegend in such a way that the client produces a list of supported tokens and the server must return the tokens it supports and the index order it will use.

Today we get the registration options at registration of a handler, but this is typically before we have started communicating with the server.

This change adds a new interface IRegistrationOptions<TOptions, TCapability> and all interfaces have been updated to implement this interface if they have both a client capability and a server registration option.

Abstract Handlers Registration Options

The abstract base classes by the above change now have a new method that must be implemented.

protected internal abstract TRegistrationOptions CreateRegistrationOptions(TCapability capability);

The base handler then caches the resulting value so this method is only ever called once.

Existing implementations of GetRegistrationOptions can be replaced with CreateRegistrationOptions.

Abstract Handlers

All the abstract handler base classes have been renamed to have a Suffix of "Base" if there was not one there before.

The fix for this is simply to make sure the Base suffix has been applied.

Feature Specific Files

This is not a breaking change, the goal was to make sure that namespaces did not change, if there is a miss let me know.

Any classes related to the Request, Response, Capability and Registration Options have been moved into a XyzFeature.cs file. This will help reduce the number of overall files in the repo, as well as hopefully with discoverabiliy. More importantly this make it easier to create new features, as all the components for a given feature will be in the same file.

TextDocumentSyncRegistrationOptions Added

The IDidXyzTextDocument handlers have been updated to have specific named options, and a master options class TextDocumentSyncRegistrationOptions has been added. You provide the TextDocumentSyncRegistrationOptions and all the other named options can be implicitly created from it.

Source Generation

Source Generation has been refactored to be a little more flexible and better organized (it's not prefect but better).

Some documentation has been added to document the attributes and their usage. These should available to consumers to also use themselves, please let me know of any bugs you might encounter with them.

HandlerIdentity is now an interface named IHandlerIdentity

HandlerIdentity is not automatically implemented via source generators (you can implement it yourself if you want to)

This type is used to ensure proper routing of CodeAction, CodeLens and other requests. Changing it an interface was required to support classes and records at the same time.

Records

... (truncated)

Commits
  • 803603a Bump lint-staged from 10.5.3 to 10.5.4 (#519)
  • 36ad6fd Bump DryIoc.Internal from 4.7.2 to 4.7.3 (#523)
  • 7e633ff Bump Serilog.Sinks.Debug from 1.0.1 to 2.0.0 (#525)
  • 6574b4e Bump gittools/actions from v0.9.8 to v0.9.9 (#520)
  • 8836c19 Bump coverlet.collector from 3.0.2 to 3.0.3 (#529)
  • 38253ae Bump husky from 4.3.8 to 5.1.1 (#532)
  • 3884457 Bump peaceiris/actions-label-commenter from v1.9.0 to v1.9.1 (#524)
  • 1295f0d Bump Microsoft.NET.Test.Sdk from 16.8.3 to 16.9.1 (#534)
  • 5a7f35d Bump JetBrains.ReSharper.CommandLineTools from 2020.3.2 to 2020.3.3 (#533)
  • c2ee895 Bump ReportGenerator from 4.8.4 to 4.8.6 (#530)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

Additionally, you can set the following in the .dependabot/config.yml file in this repo:

  • Update frequency
  • Automerge options (never/patch/minor, and dev/runtime dependencies)
  • Out-of-range updates (receive only lockfile updates, if desired)
  • Security updates (receive only security updates, if desired)

@dependabot-preview dependabot-preview bot force-pushed the dependabot/nuget/OmniSharp.Extensions.LanguageClient-0.19.0 branch from 68f5617 to 4ec03be Compare March 2, 2021 00:40
@andyleejordan andyleejordan self-assigned this Mar 16, 2021
@dependabot-preview
Copy link
Contributor Author

OK, I won't notify you again about this release, but will get in touch when a new version is available.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot-preview dependabot-preview bot deleted the dependabot/nuget/OmniSharp.Extensions.LanguageClient-0.19.0 branch March 26, 2021 17:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant