aboutsummaryrefslogtreecommitdiff
path: root/crates/rust-analyzer/src/main_loop.rs
Commit message (Collapse)AuthorAgeFilesLines
* clippy::useless_returnMaan20032021-06-131-1/+1
|
* clippy::redudant_borrowMaan20032021-06-131-1/+1
|
* Update salsaJonas Schievink2021-05-271-2/+2
|
* Merge #8767bors[bot]2021-05-251-0/+1
|\ | | | | | | | | | | | | | | | | | | | | | | 8767: implement range formatting r=matklad a=euclio Fixes #7580. This PR implements the `textDocument/rangeFormatting` request using `rustfmt`'s `--file-lines` option. Still needs some tests. What I want to know is how I should handle the instability of the `--file-lines` option. It's still unstable in rustfmt, so it's only available on nightly, and needs a special flag to enable. Is there a way for `rust-analyzer` to detect if it's using nightly rustfmt, or for users to opt-in? Co-authored-by: Andy Russell <[email protected]>
| * implement range formattingAndy Russell2021-05-231-0/+1
| |
* | Draft detached files retrievalKirill Bulatov2021-05-231-0/+1
|/
* Add a "Debug ItemTree" LSP requestJonas Schievink2021-05-211-0/+1
|
* Add new LSP extension for workspace symbol lookupalcroito2021-05-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new extension allows filtering of workspace symbool lookup results by search scope or search kind. Filtering can be configured in 3 different ways: - The '#' or '*' markers can be added inline with the symbol lookup query. The '#' marker means symbols should be looked up in the current workspace and any dependencies. If not specified, only current workspace is considered. The '*' marker means all kinds of symbols should be looked up (types, functions, etc). If not specified, only type symbols are returned. - Each LSP request can take an optional search_scope or search_kind argument query parameter. - Finally there are 2 global config options that can be set for all requests served by the active RA instance. Add support for setting the global config options to the VSCode extension. The extension does not use the per-request way, but it's useful for other IDEs. The latest version of VSCode filters out the inline markers, so currently the only reasonable way to use the new functionality is via the global config.
* Allow viewing the crate graph in a webviewJonas Schievink2021-05-111-0/+1
|
* fix: don't duplicate Progerss::Finised for cache primingAleksey Kladov2021-05-021-20/+10
|
* Ensure that only one cache priming task can run at a timeBoris-Chengbiao Zhou2021-04-301-0/+16
| | | | Fixes #8632.
* fix: don't show error message for a valid notificationAleksey Kladov2021-04-271-0/+6
| | | | Closes #6782, #6772
* change grammarMilo2021-04-151-4/+4
|
* feat: avoid checking the whole project during initial loadingAleksey Kladov2021-04-121-1/+2
|
* Return a better error message for when we are waiting for cargo.Manuel Ceron2021-04-071-1/+1
|
* More robust status notificationsAleksey Kladov2021-04-061-11/+13
|
* Prepare for more stateless status reportingAleksey Kladov2021-04-061-25/+18
|
* Use autoreload config to gate execution rather that stalenessAleksey Kladov2021-04-061-2/+7
|
* Avoid duplicate `cargo check`sAleksey Kladov2021-04-061-1/+12
|
* internal: do not drop errors from cargo metadata/checkAleksey Kladov2021-04-061-7/+13
| | | | Work towards #3155
* Merge #8054bors[bot]2021-03-221-0/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | 8054: Item movers r=matklad a=ivan770 Closes #6823 https://user-images.githubusercontent.com/14003886/111331579-b4f43480-8679-11eb-9af0-e4dabacc4923.mp4 Implementation issues: - [ ] Most of items are non-movable, since _movability_ of any item has to be determined manually. Common ones are movable though - [x] Cursor should move with the item Co-authored-by: ivan770 <[email protected]>
| * Item up and down moversivan7702021-03-181-0/+1
| |
* | a lot of clippy::style fixesMatthias Krüger2021-03-211-5/+2
|/
* Merge #7799bors[bot]2021-03-131-0/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | 7799: Related tests r=matklad a=vsrs ![tests](https://user-images.githubusercontent.com/62505555/109397453-a9013680-7947-11eb-8b11-ac03079f7645.gif) This adds an ability to look for tests for the item under the cursor: function, constant, data type, etc The LSP part is bound to change. But the feature itself already works and I'm looking for a feedback :) Co-authored-by: vsrs <[email protected]>
| * Add LSP request and VSCode commandvsrs2021-02-271-0/+1
| |
* | Migrate to user-centric config name for `cargo check` stuffAleksey Kladov2021-03-041-1/+1
|/
* Fix slow tests sometimes failingFlorian Diebold2021-02-121-7/+13
| | | | | | | | | | In some situations we reloaded the workspace in the tests after having reported to be ready. There's two fixes here: 1. Add a version to the VFS config and include that version in progress reports, so that we don't think we're done prematurely; 2. Delay status transitions until after changes are applied. Otherwise the last change during loading can potentially trigger a workspace reload, if it contains interesting changes.
* Pin Rust to 1.49.0 on CIJonas Schievink2021-02-121-1/+1
|
* Async Loading outdir and proc-macroEdwin Cheng2021-01-281-5/+33
|
* Honor client's dynamic registration capsAleksey Kladov2021-01-101-32/+34
| | | | cc https://github.com/rust-analyzer/rust-analyzer/pull/5516#issuecomment-757520828
* Fix progress token is already registered crashAleksey Kladov2021-01-101-6/+10
| | | | | | | | | | | | | | | After we started reporting progress when running cargo check during loading, it is possible to crash the client with two identical progress tokens. This points to a deeper issue: we might be running several cargo checks concurrently, which doesn't make sense. This commit linearizes all workspace fetches, making sure no updates are lost. As an additional touch, it also normalizes progress & result reporting, to make sure they stand in sync.
* Report progress for cargo metadata and output-dirEdwin Cheng2021-01-071-0/+12
|
* Speed up snapshotingAleksey Kladov2021-01-061-1/+1
| | | | Config can be fairly big, no need to deep clone it frequently
* More maintainable configAleksey Kladov2021-01-061-5/+6
| | | | | | | Rather than eagerly converting JSON, we losslessly keep it as is, and change the shape of user-submitted data at the last moment. This also allows us to remove a bunch of wrong Defaults
* Initial implementation of view-hir commandPhil Ellison2020-12-281-0/+1
|
* Implement workspace/willRenameFiles for single-level file movesJeremy Kolb2020-12-231-0/+1
| | | | Renames modules during file rename if they're in the same directory.
* Remove some redundant allocationsJeremy Kolb2020-12-121-1/+0
|
* Send a CodeLensRefresh when we reloadkjeremy2020-12-091-0/+5
|
* Fix "no value set for FileTextQuery(FileId(..))"Jonas Schievink2020-12-091-3/+13
|
* Remove the stateKirill Bulatov2020-12-071-2/+2
|
* Make completion resolve asyncKirill Bulatov2020-12-071-3/+1
|
* Simplify import edit calculationKirill Bulatov2020-12-071-1/+1
|
* Working resolve completion imports prototypeKirill Bulatov2020-12-071-2/+4
|
* Draft the new lsp handlerKirill Bulatov2020-12-071-0/+1
|
* Don't prime caches when just opening a fileJonas Schievink2020-12-021-15/+18
|
* Coalesce flycheck eventsJonas Schievink2020-11-271-45/+59
|
* Remove unused importLaurențiu Nicola2020-11-261-1/+1
|
* Publish diagnostics on file openJonas Schievink2020-11-261-8/+9
| | | | | Diagnostics are sometimes only showing up when typing. This should fix that.
* Don't assume DidChangeTextDocument paths existMatt Jibson2020-11-231-1/+7
| | | | Fixes #5933
* Latest LSP 3.16 protocolkjeremy2020-11-161-2/+2
| | | | Pulls in https://github.com/gluon-lang/lsp-types/pull/186