-
-
Notifications
You must be signed in to change notification settings - Fork 721
feat(language_server): support textDocument/diagnostic
#11447
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
feat(language_server): support textDocument/diagnostic
#11447
Conversation
How to use the Graphite Merge QueueAdd either label to this PR to merge it via the merge queue:
You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
CodSpeed Instrumentation Performance ReportMerging #11447 will not alter performanceComparing Summary
|
7b4da00 to
d0fbfb4
Compare
d384b02 to
4b057c7
Compare
ff92bd2 to
320977c
Compare
4b057c7 to
7268fc6
Compare
7268fc6 to
f729734
Compare
320977c to
8440072
Compare
8440072 to
9b11fcc
Compare
07b6c68 to
4a3116e
Compare
f0047ac to
db0b099
Compare
4a3116e to
771f995
Compare
771f995 to
4df4e72
Compare
4df4e72 to
73b168d
Compare
73b168d to
d2f513d
Compare
| [patch.crates-io] | ||
| # this patch has the fix for `WorkspaceClientCapabilities`, see tower-lsp-community/tower-lsp-server#50 | ||
| lsp-types = { git = "https://github.com/tower-lsp-community/lsp-types", rev = "7332122ee5572c3f2c247b37cd1af77289b2e1c8" } | ||
| tower-lsp-server = { git = "https://github.com/tower-lsp-community/tower-lsp-server", rev = "27cbe421c6cdc6e9cd607abaf1ece8c060e5cd4e" } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
cc @Boshen is this ok? i remember you mentioning using git tags means cargo can't cache it
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Boshen want to make sure you agree to this before, before resolving the conversation and starting the queue
d2f513d to
06f3ec3
Compare
Merge activity
|
06f3ec3 to
e627309
Compare
|
After the integration with |

This PR introduces the support for
textDocument/diagnostics. This will be preferred over the other way aroundtextDocument/publishDiagnosticsIt is a newer concept between language server and the clients (editors).
https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_pullDiagnostics
For our server, we need one more feature.
This is needed because in the current implementation we re-lint the opened files when some
.oxlintrc.jsonconfiguration is changed orfix_kindserver configuration. Instead of re-linting, the server will send this request to the client.This will be a breaking change for other clients which are sending the
run = onType | onSaveconfiguration, but are supporting all needed specs for the pull diagnostics mode. The client should instead implement their own configuration and sending thetextDocument/diagnosticsto the server when needed.The cargo patches are needed, because of a typo in the
lsp-typesproject. The community created a fork and fixed it already for us: tower-lsp-community/ls-types@71ca29bThe
tower-lsp-serverneeded an update too, or else we could not use the fixed version. I created a PR here: tower-lsp-community/tower-lsp-server#52 and used the commit ID to patch it here.