aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_lsp_server/src/world.rs
Commit message (Collapse)AuthorAgeFilesLines
* Rework how we send diagnostics to client.Emil Lauridsen2020-02-031-5/+6
| | | | | | | | | | | | 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.
* Remove RWLock from check watcher.Emil Lauridsen2020-01-231-2/+2
| | | | | | | | | | | | | | @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.
* Minimize visibilityAleksey Kladov2020-01-161-1/+5
|
* Manage check state updates in main_loop to reduce lock contentionEmil Lauridsen2020-01-151-3/+3
|
* Clean up straggling mutEmil Lauridsen2020-01-111-1/+1
|
* Disable cargo checking in workspaces with no cargo projectsEmil Lauridsen2020-01-111-14/+14
|
* Address nitEmil Lauridsen2020-01-101-1/+1
|
* Slightly more robust cargo watcher root searchEmil Lauridsen2020-01-101-3/+15
|
* Lowercase drive letters when getting paths from cargo checkEmil Lauridsen2019-12-291-61/+3
|
* Move cargo watch functionality to separate crateEmil Lauridsen2019-12-271-6/+4
|
* Keep VSCode config mostly backwards compatibleEmil Lauridsen2019-12-251-3/+4
|
* Re-format ra_lsp_server changesEmil Lauridsen2019-12-251-1/+1
|
* Configuration plumbing for cargo watcherEmil Lauridsen2019-12-251-1/+4
|
* Initial implementation of cargo check watchingEmil Lauridsen2019-12-251-0/+8
|
* Don't fire no-op changes after files are saved to diskAleksey Kladov2019-12-221-3/+3
|
* Add some module docsJeremy Kolb2019-12-211-1/+4
|
* Clippy lintskjeremy2019-12-201-12/+8
|
* remove unnecessary turbofish.Omer Ben-Amram2019-12-151-2/+1
|
* cfg gated tests that only work on windows.Omer Ben-Amram2019-12-151-10/+16
|
* improved path checking to consider only paths that may contain a windows drive.Omer Ben-Amram2019-12-151-20/+44
|
* move import inside cfg blockOmer Ben-Amram2019-12-151-1/+2
|
* Lowercase drive letters on windows before sending to extension.Omer Ben-Amram2019-12-151-0/+34
|
* rename ra_ide_api -> ra_ideAleksey Kladov2019-11-271-1/+1
|
* 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.
* fixup folding ranges for "lineFoldingOnly" clients #2033Alex Zatelepin2019-10-211-0/+1
|
* use slightly more idiomatic api for cfgAleksey Kladov2019-10-081-2/+6
|
* Read default cfgs from rustcuHOOCCOOHu2019-10-021-2/+6
|
* Added test for check doc strings in crates.Alexander Andreev2019-09-301-0/+2
| | | | #1856
* introduce hir debugging infraAleksey Kladov2019-09-091-1/+6
| | | | | | | | | | | | This is to make debugging rust-analyzer easier. The idea is that `dbg!(krate.debug(db))` will print the actual, fuzzy crate name, instead of precise ID. Debug printing infra is a separate thing, to make sure that the actual hir doesn't have access to global information. Do not use `.debug` for `log::` logging: debugging executes queries, and might introduce unneded dependencies to the crate graph
* add option to disable notifyAleksey Kladov2019-09-061-2/+3
|
* cleanup main loopAleksey Kladov2019-08-311-1/+2
|
* move lsp-server to a separate repositoryAleksey Kladov2019-08-301-1/+1
|
* :arrow_up: vfsAleksey Kladov2019-08-251-3/+7
|
* implement feature flagsAleksey Kladov2019-08-221-3/+12
|
* translate \n -> \r\n on the way outAleksey Kladov2019-08-201-1/+5
|
* allow to exclude certain files and directoriesAleksey Kladov2019-08-061-11/+13
|
* introduce ra_vfs_glob crateAleksey Kladov2019-08-061-4/+16
| | | | It manages exclusion rules for the vfs crate
* cleanupAleksey Kladov2019-08-061-1/+1
|
* Make Analysis api cancellableKirill Bulatov2019-07-251-1/+6
|
* don't send LocationLink unless the client opts-inAleksey Kladov2019-07-081-0/+12
| | | | closes #1474
* allow rustfmt to reorder importsAleksey Kladov2019-07-041-6/+4
| | | | | | This wasn't a right decision in the first place, the feature flag was broken in the last rustfmt release, and syntax highlighting of imports is more important anyway
* Get rid of failure: ra_lsp_server & ra_project_modelMuhammad Mominul Huque2019-06-141-6/+5
|
* make LRU cache configurableAleksey Kladov2019-06-121-2/+6
|
* Fix clippy::identity_conversionAlan Du2019-06-041-17/+12
|
* renameAleksey Kladov2019-06-011-0/+218