Commit Graph

885 Commits

Author SHA1 Message Date
kjeremy 0a91f29699 cargo update 2021-01-08 09:37:28 -05:00
Edwin Cheng 54eb87de03 Refactor out JodChild 2021-01-08 01:08:34 +08:00
Jesse Bakker 974313eb87 Replace last usages of difference with dissimilar 2021-01-06 18:13:29 +01:00
Aleksey Kladov f9707cde68 Rename expr -> tail_expr 2021-01-05 15:51:13 +03:00
kjeremy f13ee0a43d Cargo update to remove some dependencies 2021-01-04 17:02:16 -05:00
kjeremy f2d1144b4a Update crates 2021-01-04 11:12:42 -05:00
Jesse Bakker c7e0c7f43a Upgrade expect-test to 1.1 2021-01-03 14:43:29 +01:00
bors[bot] 0a3d08e2e3 Merge #7106
7106: Split textDocument/formatting TextEdit with diff r=matklad a=Jesse-Bakker

#7044 

Co-authored-by: Jesse Bakker <github@jessebakker.com>
2020-12-31 15:11:14 +00:00
Jesse Bakker f355a6d831 Split textDocument/formatting TextEdit with diff 2020-12-31 15:33:20 +01:00
kjeremy dc1396eec7 Update crates 2020-12-30 10:39:50 -05:00
bors[bot] 27ccde9ce9 Merge #7019
7019: Try serde_path_to_error for LSP InitializeParams r=matklad a=lnicola



Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2020-12-23 12:04:32 +00:00
Laurențiu Nicola 4e89c2a664 Try serde_path_to_error for LSP InitializeParams 2020-12-23 13:21:58 +02:00
bors[bot] 4228e826b8 Merge #7016
7016: Bump deps r=flodiebold a=lnicola



Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2020-12-23 11:04:07 +00:00
Laurențiu Nicola 9a14e308b9 Bump deps 2020-12-23 12:58:23 +02:00
Laurențiu Nicola c04406287a Bump chalk 2020-12-23 12:58:23 +02:00
Lukas Wirth bdd8c0b68f Remove local ungrammar dependency 2020-12-23 11:22:36 +01:00
Laurențiu Nicola 18a7b98b2e Bump rustc_lexer 2020-12-23 11:24:52 +02:00
Lukas Wirth be7260485e Update ungrammar for const block patterns 2020-12-23 01:26:31 +01:00
Jeremy Kolb f4df2d164d Update syn and quote 2020-12-20 17:26:44 -05:00
Jeremy Kolb 00d4b156af cargo update 2020-12-19 14:04:31 -05:00
kjeremy d828bd794b LSP 3.16 - Released 2020-12-17 11:33:35 -05:00
Lukas Wirth dd496223f5 Node-ify lifetimes 2020-12-16 14:16:09 +01:00
Jonas Schievink d34611633b Unpatch ungrammar 2020-12-16 12:54:34 +01:00
Jonas Schievink c31c3246a8 Basic support for decl macros 2.0 2020-12-15 18:43:34 +01:00
Jonas Schievink c1cb595382 Move to upstream macro_rules! model 2020-12-15 15:37:37 +01:00
bors[bot] 134c7563be Merge #6817
6817: Replace goblin crate with object r=matklad a=lnicola

Continuation of #4385.

Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2020-12-14 15:04:47 +00:00
Laurențiu Nicola dc519b88af Replace goblin crate with object 2020-12-13 14:08:59 +02:00
kjeremy 8079f5b147 cargo update 2020-12-11 17:00:25 -05:00
Jonas Schievink 4d4b91117a Use itertools 2020-12-10 19:29:11 +01:00
Aleksey Kladov 2544abbf86 Make config.rs a single source of truth for configuration.
Configuration is editor-independent. For this reason, we pick
JSON-schema as the repr of the source of truth. We do specify it using
rust-macros and some quick&dirty hackery though.

The idea for syncing truth with package.json is to just do that
manually, but there's a test to check that they are actually synced.

There's CLI to print config's json schema:

    $ rust-analyzer --print-config-schema

We go with a CLI rather than LSP request/response to make it easier to
incorporate the thing into extension's static config. This is roughtly
how we put the thing in package.json.
2020-12-08 19:25:41 +03:00
kjeremy d18acb0f65 Update expect-test and remove outdated license 2020-12-07 14:19:10 -05:00
kjeremy 28209ce3f9 cargo update 2020-12-07 13:01:07 -05:00
Jonas Schievink fb21a215be Retain types of proc macros and allow attr. macros 2020-12-07 17:06:14 +01:00
Florian Diebold 78dd548243 Upgrade Chalk
Also make overflow depth and max type size configurable through env variables.
This can be helpful at least for debugging.

Fixes #6628.
2020-12-07 11:48:58 +01:00
kjeremy 1da8726b85 cargo update: bump libloading to fix a double-free 2020-12-03 10:30:28 -05:00
kjeremy 75bd5a5e20 Bump mio for safety goodness 2020-12-02 16:06:36 -05:00
kjeremy e4ffd70c91 Fix OptionalVersionedTextDocumentIdentifier type
Fixes #6654
2020-12-01 08:33:21 -05:00
kjeremy 0a95201243 bump lexer 2020-11-30 09:29:09 -05:00
kjeremy 467a81529a cargo update 2020-11-30 08:44:03 -05:00
Kirill Bulatov 3f612d37c6 Move the helpers into ide_db 2020-11-28 16:30:39 +02:00
Kirill Bulatov f4ae3650d8 Extract the import code into the shared module 2020-11-27 18:28:41 +02:00
Kirill Bulatov b2e6ca46ca Profile completions better 2020-11-27 18:00:03 +02:00
kjeremy 24bbf3b838 cargo update 2020-11-24 09:13:26 -05:00
kjeremy e981485b76 New lsp-types to fix versioning
Fixes #6603
2020-11-24 08:52:24 -05:00
kjeremy 1472ec4c05 cargo update 2020-11-19 15:00:56 -05:00
bors[bot] 99975d08f0 Merge #6577 #6579 #6581
6577: fix typos in syntax.md r=matklad a=jakobhellermann



6579: cargo update and add new license r=matklad a=kjeremy



6581: Use vscode-languageclient 7.0.0-next.14 r=matklad a=kjeremy



Co-authored-by: Jakob Hellermann <jakob.hellermann@protonmail.com>
Co-authored-by: kjeremy <kjeremy@gmail.com>
2020-11-17 18:01:18 +00:00
bors[bot] 156f7d6963 Merge #6553
6553: Auto imports in completion r=matklad a=SomeoneToIgnore

![completion](https://user-images.githubusercontent.com/2690773/99155339-ae4fb380-26bf-11eb-805a-655b1706ce70.gif)

Closes https://github.com/rust-analyzer/rust-analyzer/issues/1062 but does not handle the completion order, since it's a separate task for https://github.com/rust-analyzer/rust-analyzer/issues/4922 , https://github.com/rust-analyzer/rust-analyzer/issues/4922 and maybe something else.

2 quirks in the current implementation:

* traits are not auto imported during method completion

If I understand the current situation right, we cannot search for traits by a **part** of a method name, we need a full name with correct case to get a trait for it.

* VSCode (?) autocompletion is not as rigid as in Intellij Rust as you can notice on the animation.

Intellij is able to refresh the completions on every new symbol added, yet VS Code does not query the completions on every symbol for me.
With a few debug prints placed in RA, I've observed the following behaviour: after the first set of completion suggestions is received, next symbol input does not trigger a server request, if the completions contain this symbol.
When more symbols added, the existing completion suggestions are filtered out until none are left and only then, on the next symbol it queries for completions.
It seems like the only alternative to get an updated set of results is to manually retrigger it with Esc and Ctrl + Space.

Despite the eerie latter bullet, the completion seems to work pretty fine and fast nontheless, but if you have any ideas on how to make it more smooth, I'll gladly try it out.

Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
2020-11-17 17:50:08 +00:00
kjeremy 4e73c8f608 cargo update and add new license 2020-11-17 09:39:25 -05:00
kjeremy 233fdb12ce Latest LSP 3.16 protocol
Pulls in https://github.com/gluon-lang/lsp-types/pull/186
2020-11-16 15:10:13 -05:00
Kirill Bulatov 3b0fc4d7f2 Omit modules during autocompletion 2020-11-16 21:19:06 +02:00