Commit graph

7671 commits

Author SHA1 Message Date
Jonas Schievink
dce9987436 Check that visibility upgrade path is hit 2020-07-22 14:01:50 +02:00
Aleksey Kladov
9ad41eb908 Setup global allocator in the correct crate
It worked before, but was roundabout
2020-07-22 13:42:53 +02:00
Aleksey Kladov
deed44a472 Remove support for jemalloc
We only used it for measuring memory usage, but now we can use glibc's
allocator for that just fine
2020-07-22 13:40:45 +02:00
bors[bot]
26932e0060
Merge #5478
5478: Replace existing visibility modifier in fix_visibility r=matklad a=TimoFreiberg

Fixes #4636

I would have liked to do something about the `// FIXME: this really should be a fix for diagnostic, rather than an assist.`, but that would take a while and there's no reason not to fix this immediately.

Co-authored-by: Timo Freiberg <timo.freiberg@gmail.com>
2020-07-22 11:11:36 +00:00
kjeremy
79a3dd085c Clear diagnostics for known file version on close 2020-07-21 14:18:22 -04:00
kjeremy
97927146db Store document version and pass back to the client 2020-07-21 14:07:42 -04:00
Jonas Schievink
56c090d0d0 Allow gathering memory stats on non-jemalloc Linux 2020-07-21 19:55:54 +02:00
Timo Freiberg
3d9c123104 Replace existing visibility modifier in fix_visibility 2020-07-21 18:58:00 +02:00
bors[bot]
a3ff2751b4
Merge #5476
5476: Cleanup extact variable r=matklad a=matklad



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-07-21 16:10:29 +00:00
Aleksey Kladov
be8a7048df Cleanup extact variable 2020-07-21 18:10:03 +02:00
Jonas Schievink
c07eaf868d Support Trait as _ imports 2020-07-21 17:55:17 +02:00
Aleksey Kladov
3bb1b3070a minor 2020-07-21 17:50:19 +02:00
Aleksey Kladov
b68ef1231d More Rustic API for Env 2020-07-21 17:17:21 +02:00
Aleksey Kladov
b48336bf94 Replace OUT_DIR in project.json with general env
OUT_DIR doesn't make sense here, as this is a cargo-specific concept
2020-07-21 15:12:12 +02:00
Aleksey Kladov
fe87aec7b6 Replace roots with include/exclude directories 2020-07-21 14:57:20 +02:00
Aleksey Kladov
39a2bc5e3c Expose package roots more directly 2020-07-21 12:52:51 +02:00
Laurențiu Nicola
daab8b2fd0 Remove insta dep 2020-07-21 13:11:51 +03:00
Laurențiu Nicola
f7e4b99d15 Replace remaining insta uses 2020-07-21 13:11:46 +03:00
bors[bot]
9518e2f9d6
Merge #5451 #5463 #5465 #5466
5451: Highlight more cases of SyntaxKind when it is a punctuation r=matklad a=GrayJack

This maybe closes #5406
Closes  #5453

Separate what one expect to be a punctuation semantic token (like `,`, `;`, `(`, etc), and what is not (`&`, `::`, `+`, etc)

5463: Bump lexer r=matklad a=kjeremy

Since we're now on rust 1.45

5465: Bump chalk r=matklad a=kjeremy



5466: Do not show default types in function and closure return values r=matklad a=SomeoneToIgnore

Avoid things like 
<img width="522" alt="image" src="https://user-images.githubusercontent.com/2690773/87985936-1bbe4f80-cae5-11ea-9b8a-5383d896c296.png">


Co-authored-by: GrayJack <gr41.j4ck@gmail.com>
Co-authored-by: kjeremy <kjeremy@gmail.com>
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
2020-07-21 09:57:46 +00:00
bors[bot]
818aeb8a24
Merge #5467
5467: Allow null or empty values for configuration r=matklad a=kjeremy

Allow the client to respond to `workspace/configuration` with `null` values. This is allowed per the spec if the client doesn't know about the configuration we've requested.

This also protects against `null` or `{}` during initialize. I'm not sure if we want to interpret `{}` as "don't change anything" but I think that's a reasonable approach to take.

This should help with LSP clients working out of the box.

Fixes #5464 

Co-authored-by: kjeremy <kjeremy@gmail.com>
2020-07-21 09:41:54 +00:00
bors[bot]
2ad5bf8d17
Merge #5471
5471: Typo r=matklad a=matklad



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-07-21 08:50:47 +00:00
Aleksey Kladov
8f3fdf3315 Typo 2020-07-21 10:50:24 +02:00
bors[bot]
99b8140d91
Merge #5470
5470: Propagate cargo.target to checkOnSave r=matklad a=matklad



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-07-21 08:31:27 +00:00
Aleksey Kladov
a20b8d751b Propagate cargo.target to checkOnSave 2020-07-21 10:30:54 +02:00
bors[bot]
57664369af
Merge #5458
5458: Use expect in some ra_hir_ty tests r=flodiebold a=lnicola



Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2020-07-21 07:11:55 +00:00
GrayJack
5ca3855c06
On second thought, we want to preserve the textMate here where all punctuation that are from a Attr be highlited as Attribute 2020-07-20 23:37:31 -03:00
GrayJack
04d8dc4a10
# as Attribute
- Issue  #5453
2020-07-20 23:19:29 -03:00
GrayJack
462e0158da
@ as operator 2020-07-20 23:00:13 -03:00
kjeremy
a32dd9c478 Protect against {} 2020-07-20 18:11:32 -04:00
kjeremy
adc4bb5406 Allow client to respond to workspace/configuration with null values
This is allowed per the spec if the client doesn't know about the configuration
we've requested.
2020-07-20 17:42:48 -04:00
Kirill Bulatov
54cc3fee45 Do not show default types in closures 2020-07-20 23:50:41 +03:00
kjeremy
9cfb373665 Bump chalk 2020-07-20 15:50:35 -04:00
kjeremy
d8eec71dc9 Bump lexer 2020-07-20 15:37:50 -04:00
Laurențiu Nicola
b8e09b7f4e Inline lang items in coercion tests 2020-07-20 22:01:09 +03:00
bors[bot]
21b4e9178f
Merge #5440
5440: Minor perf tweaks per clippy r=matklad a=kjeremy



Co-authored-by: Jeremy Kolb <kjeremy@gmail.com>
2020-07-20 16:54:57 +00:00
Laurențiu Nicola
3b6979be77 Use expect in never_type tests 2020-07-20 19:38:52 +03:00
Laurențiu Nicola
b82899ad76 Use expect in coercion tests 2020-07-20 19:30:47 +03:00
Aleksey Kladov
3e688d2a93 Simplify 2020-07-20 18:01:42 +02:00
Aleksey Kladov
bc4d047267 Add is_workspace_member for rust-project.json
It is currently unused, but, in the future, it will be used to:

* drive certain UX (symbols search by default will look only in the
members)
* improve performance (rust-analyzer will assume that non-members
change rarely)

If not specified, is_workspace member is inferred from the path
2020-07-20 17:57:10 +02:00
Aleksey Kladov
c7ccfb072c Simplify 2020-07-20 17:44:44 +02:00
GrayJack
a662228de4
Assingment semantic highlight 2020-07-20 12:36:23 -03:00
GrayJack
54ebb2ce30
Handle semantic highlight when STAR is part of the *{const, mut} 2020-07-20 11:21:40 -03:00
GrayJack
73bab32aef
Highlight more cases of SyntaxKind when it is a punctuation 2020-07-20 09:46:50 -03:00
Jeremy Kolb
17f4d27f12 Minor perf tweaks per clippy 2020-07-19 14:26:24 -04:00
Pascal Hertleif
5516476a86
Fix a typo in completion docs 2020-07-19 18:25:19 +02:00
Wilco Kusee
e11006986a
Specify default adt representation for chalk integration 2020-07-19 15:26:51 +02:00
Aleksey Kladov
46ac9ff5e3 Simplify exclusion logic 2020-07-18 16:40:10 +02:00
Aleksey Kladov
b38f6b3c41 Don't show docs in concise signature help 2020-07-18 15:14:44 +02:00
Aleksey Kladov
a28aa175d4 Add turbo-fish works after () 2020-07-18 14:48:28 +02:00
bors[bot]
2777f8c295
Merge #5423
5423: Correctly resolve assoc. types in path bindings r=matklad a=jonas-schievink

Previously invoking goto def on `impl Iterator<Item<|> = ()>` would go to `Iterator`, not `Item`. This fixes that.

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-07-17 17:02:28 +00:00
Aleksey Kladov
7c082dcf0f More precise ranges in remove hashes assist 2020-07-17 16:39:03 +02:00
Aleksey Kladov
19e78020bd Remove insta for ra_hir_def 2020-07-17 15:54:40 +02:00
Aleksey Kladov
798f43da50 Fix out of bounds panic in active parameter 2020-07-17 15:44:37 +02:00
Jonas Schievink
cab360fe31 Correctly resolve assoc. types in path bindings 2020-07-17 14:58:49 +02:00
Aleksey Kladov
fcdac03033 Rewrite def map tests from insta to expect
Those indentation markers are annoying...
2020-07-17 14:37:51 +02:00
Aleksey Kladov
2c268b9a5f Move tests 2020-07-17 13:37:41 +02:00
bors[bot]
2ca0e9e00e
Merge #5327
5327: Mark fixes from check as preferred r=matklad a=kjeremy

This allows us to run the auto fix command from vscode to automatically fix diagnostics in the file.

They are also distinguished in the UI.

Co-authored-by: Jeremy Kolb <kjeremy@gmail.com>
2020-07-17 11:12:40 +00:00
bors[bot]
9b5ac1d82f
Merge #5417
5417: Mismatched arg count works for lambdas r=jonas-schievink a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-07-17 11:01:52 +00:00
Aleksey Kladov
d7548a36a7 Unclutter NavigationTarget API 2020-07-17 12:42:48 +02:00
Aleksey Kladov
393b7119bd Add test for fn pointers 2020-07-17 12:04:12 +02:00
Aleksey Kladov
371c5aec1c call_info works with closures 2020-07-17 12:04:10 +02:00
Aleksey Kladov
2729665235 Continue non-doc comments with trailing space 2020-07-17 11:20:28 +02:00
Aleksey Kladov
f88a737a43 Mismatched arg count works for lambdas 2020-07-17 10:52:18 +02:00
Aleksey Kladov
3823c2dc19 Remove FunctionSignature 2020-07-16 22:17:49 +02:00
Aleksey Kladov
a5ae8b8b92 Inlay hints use callables 2020-07-16 21:51:44 +02:00
Aleksey Kladov
edc0190f7a Rename 2020-07-16 21:33:11 +02:00
Aleksey Kladov
0265778e86 Don't use function signature for Display 2020-07-16 21:32:20 +02:00
Aleksey Kladov
e1e79cf064 Take label offets client capability into account 2020-07-16 18:48:02 +02:00
Aleksey Kladov
6da22ed975 Redner self as param for call infor for assoc fn call 2020-07-16 18:24:26 +02:00
Aleksey Kladov
a4e9681c79 Better module structure 2020-07-16 18:13:43 +02:00
Aleksey Kladov
29832b8c3d Reduce visibility 2020-07-16 18:07:53 +02:00
Aleksey Kladov
ff0312fa32 Semantical call info 2020-07-16 18:03:04 +02:00
Jeremy Kolb
d7cd88b1a2 Mark machine applicable fixes as preferred
This allows us to run the auto fix command from vscode to automatically
fix all diagnostics in the file.

They are also distinguished in the UI.
2020-07-16 10:51:25 -04:00
bors[bot]
9210fcc076
Merge #4676
4676: proc_macro: fix current nightly/future stable ABI incompatibility r=matklad a=robojumper

With rust-lang/rust#72233, the proc_macro ABI has changed, leading to the `test_derive_serialize_proc_macro` test believing that `serde` wants to pass the struct name as a byte string literal instead of a string literal.

Fixes #4866.

Co-authored-by: robojumper <robojumper@gmail.com>
2020-07-16 14:29:57 +00:00
Aleksey Kladov
b5ce84b170 Align CallableDefId naming with other ids 2020-07-16 13:16:34 +02:00
Aleksey Kladov
b598ab8be4 Rename CallableDefId -> InternedCallabelDefid 2020-07-16 13:13:17 +02:00
Aleksey Kladov
1d6cf33663 Simplify 2020-07-16 11:37:26 +02:00
Aleksey Kladov
bb2613ed4d Move type 2020-07-16 10:29:21 +02:00
Aleksey Kladov
1d63b3efc9 simplify 2020-07-16 10:25:36 +02:00
bors[bot]
6a74a91713
Merge #5401
5401: Implement Chalk closure support r=matklad a=flodiebold

This makes use of Chalk's closure support, which means we can get rid of our last built-in impls and a bunch of other surrounding stuff.

Co-authored-by: Florian Diebold <flodiebold@gmail.com>
2020-07-16 08:02:39 +00:00
Jeremy Kolb
7fba2274d9 Update lsp-types for HoverOptions 2020-07-15 18:17:46 -04:00
Florian Diebold
2077004463 Remove TypeCtor interning
Our TypeCtor and Chalk's TypeName match now!
2020-07-15 22:07:13 +02:00
Florian Diebold
a48843a16a Use Chalk closure support 2020-07-15 22:04:49 +02:00
bors[bot]
b63e23e98e
Merge #5350
5350: Filter assists r=matklad a=kjeremy

Uses the `CodeActionContext::only` field to compute only those assists the client cares about.

It works but I don't really like the implementation.

Co-authored-by: kjeremy <kjeremy@gmail.com>
Co-authored-by: Jeremy Kolb <kjeremy@gmail.com>
2020-07-15 17:58:46 +00:00
bors[bot]
e30d39d502
Merge #5396
5396: Cap macro expansion depth for IDE features r=matklad a=matklad

closes #4453



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-07-15 15:19:07 +00:00
Aleksey Kladov
6b9c725673 Cap macro expansion depth for IDE features
closes #4453
2020-07-15 17:18:19 +02:00
Leander Tentrup
119e71d9ea Add new Punctuation highlight tag 2020-07-15 16:42:47 +02:00
Leander Tentrup
33832d43fc Highlight punctuation as HighlightTag::Operator 2020-07-15 16:40:38 +02:00
bors[bot]
57652fc9d4
Merge #5395
5395: Show fewer syntax errors r=matklad a=matklad



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-07-15 14:06:28 +00:00
Aleksey Kladov
0908318171 Show fewer syntax errors 2020-07-15 16:06:04 +02:00
bors[bot]
e0ef6d5c09
Merge #5394
5394: Add missing cancellation point r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-07-15 13:54:04 +00:00
Aleksey Kladov
4c08fc9be3 Cleanup limits 2020-07-15 15:53:33 +02:00
Aleksey Kladov
8baa2b727d Check cancellation when updating imports recursively
For winapi, this takes a lot of CPU time without doing queries and
causes the main event loop to stall on cancellation.
2020-07-15 15:49:20 +02:00
Aleksey Kladov
760ee8173c Micro-optimize update 2020-07-15 15:45:34 +02:00
Jeremy Kolb
21c1504ca9 Move allow list into AssistConfig 2020-07-15 09:45:30 -04:00
bors[bot]
fbdc3c7849
Merge #5390
5390: Don't drop flycheck messages during restart r=matklad a=matklad

closes #5386



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-07-15 12:38:24 +00:00
Aleksey Kladov
a40e05dd5d Don't drop flycheck messages during restart
closes #5386
2020-07-15 14:37:44 +02:00
Jeremy Kolb
6a7d1d4412 Invert condition 2020-07-15 08:17:48 -04:00
Jeremy Kolb
26725fcfbb Fix conversion 2020-07-15 08:17:32 -04:00
bors[bot]
2c67ca0146
Merge #5387
5387: Add --memory-usage to analysis-bench r=matklad a=jonas-schievink



Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-07-15 12:07:05 +00:00