aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_lsp_server/src/main_loop.rs
Commit message (Collapse)AuthorAgeFilesLines
* Rework how we send diagnostics to client.Emil Lauridsen2020-02-031-36/+40
| | | | | | | | | | | | The previous way of sending from the thread pool suffered from stale diagnostics due to being canceled before we could clear the old ones. The key change is moving to sending diagnostics from the main loop thread, but doing all the hard work in the thread pool. This should provide the best of both worlds, with little to no of the downsides. This should hopefully fix a lot of issues, but we'll need testing in each individual issue to be sure.
* Avoid premature pessimizationAleksey Kladov2020-02-021-1/+0
| | | | | | The extra allocation for message should not matter here at all, but using a static string is just as ergonomic, if not more, and there's no reason to write deliberately slow code
* Fix long loop timeoutAleksey Kladov2020-01-291-1/+1
|
* Complain loudly if the main loop is blockedAleksey Kladov2020-01-291-1/+21
|
* More uniform namingAleksey Kladov2020-01-291-7/+7
|
* Don't compute diagnostics on the main threadAleksey Kladov2020-01-291-28/+28
| | | | closes #2909
* Bump main thread priority on windowsAleksey Kladov2020-01-261-0/+19
|
* Use default threadpool sizeAleksey Kladov2020-01-251-5/+3
|
* Cancel requests during shutdownAleksey Kladov2020-01-241-1/+1
|
* Remove RWLock from check watcher.Emil Lauridsen2020-01-231-7/+7
| | | | | | | | | | | | | | @matklad mentioned this might be a good idea. So the general idea is that we don't really need the lock, as we can just clone the check watcher state when creating a snapshot. We can then use `Arc::get_mut` to get mutable access to the state from `WorldState` when needed. Running with this it seems to improve responsiveness a bit while cargo is running, but I have no hard numbers to prove it. In any case, a serialization point less is always better when we're trying to be responsive.
* Extract check task handling into functionEmil Lauridsen2020-01-151-47/+56
|
* Manage check state updates in main_loop to reduce lock contentionEmil Lauridsen2020-01-151-2/+26
|
* Schedule check update regardless of notification settingEmil Lauridsen2020-01-131-1/+1
|
* Defer cargo check until after workspace loadEmil Lauridsen2020-01-131-0/+1
|
* Merge pull request #2732 from detrumi/cargo-toml-not-found-message-toggleAleksey Kladov2020-01-091-17/+22
|\ | | | | Flag to hide cargo.toml not found error
| * Use downcasting for CargoTomlNotFoundErrorWilco Kusee2020-01-081-2/+2
| |
| * Allow disabling Cargo.toml not found errorWilco Kusee2020-01-031-17/+22
| |
* | Implement proposed CallHierarchy featureJeremy Kolb2020-01-081-0/+3
|/ | | | See: https://github.com/microsoft/vscode-languageserver-node/blob/master/protocol/src/protocol.callHierarchy.proposed.ts
* Retry inlay hints on content modified errorAleksey Kladov2019-12-301-10/+5
|
* Don't finish main cargo watch thread when subprocess finishes.Emil Lauridsen2019-12-271-1/+4
|
* Move cargo watch functionality to separate crateEmil Lauridsen2019-12-271-5/+7
|
* Keep VSCode config mostly backwards compatibleEmil Lauridsen2019-12-251-3/+4
|
* Re-implement status display using LSP 3.15 progress eventEmil Lauridsen2019-12-251-0/+8
|
* Configuration plumbing for cargo watcherEmil Lauridsen2019-12-251-0/+3
|
* Initial implementation of cargo check watchingEmil Lauridsen2019-12-251-1/+26
|
* Don't fire no-op changes after files are saved to diskAleksey Kladov2019-12-221-4/+6
|
* Add some module docsJeremy Kolb2019-12-211-1/+2
|
* Clippy lintskjeremy2019-12-201-1/+1
|
* Support setting cargo featuresoxalica2019-12-131-0/+1
|
* Revert "Revert "Support LSP 3.15""Aleksey Kladov2019-12-111-1/+2
| | | | This reverts commit 1e0bf205eff81f04c0e1e6c208c3489327520c3f.
* Revert "Support LSP 3.15"Aleksey Kladov2019-12-111-2/+1
| | | | This reverts commit 712700d8e027b108f9c4f8fa9acc2f25e453b6d1.
* Support LSP 3.15Jeremy Kolb2019-12-111-1/+2
| | | | This merely upgrades our protocol support. It does not add any of the new features.
* rename ra_ide_api -> ra_ideAleksey Kladov2019-11-271-1/+1
|
* Merge pull request #2297 from kiljacken/masterAleksey Kladov2019-11-201-0/+1
|\ | | | | Add fancy truncation of type hints.
| * Move type inlay hint truncation to language serverEmil Lauridsen2019-11-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | This commit implements a general truncation framework for HirFormatter that keeps track of how much has been output so far. This information can then be used to perform truncation inside the language server, instead of relying on the client. Initial support is implemented for truncating types hints using the maxInlayHintLength server config option. The existing solution in the VSCode extension has been removed in favor of letting the server truncate type hints.
* | Add recursive expand in vscodeEdwin Cheng2019-11-191-0/+1
|/
* Some clippy fixeskjeremy2019-10-301-1/+1
|
* don't die if a sync task panicsAleksey Kladov2019-10-241-6/+10
|
* fixup folding ranges for "lineFoldingOnly" clients #2033Alex Zatelepin2019-10-211-8/+16
|
* Added test for check doc strings in crates.Alexander Andreev2019-09-301-0/+2
| | | | #1856
* don't deadlock on shutdownAleksey Kladov2019-09-061-2/+2
| | | | | | | Specifically, when we tear down IO threads, we should take care to dispose connection. closes #1775
* add option to disable notifyAleksey Kladov2019-09-061-56/+118
|
* cleanup main loopAleksey Kladov2019-08-311-126/+151
|
* :arrow_up: lsp-serverAleksey Kladov2019-08-301-16/+13
|
* move lsp-server to a separate repositoryAleksey Kladov2019-08-301-65/+76
|
* :arrow_up: vfsAleksey Kladov2019-08-251-1/+1
|
* implement feature flagsAleksey Kladov2019-08-221-12/+30
|
* show error to the user when deserializing configAleksey Kladov2019-08-221-1/+5
|
* fix default for the exlude keyAleksey Kladov2019-08-211-0/+1
|
* don't load sysroot in most heavy testsAleksey Kladov2019-08-191-1/+1
|