Lukas Wirth
ecf2c98859
fix: Fix lifetime elision hint configuration key
2022-03-22 16:28:36 +01:00
bors[bot]
966b692422
Merge #11771
...
11771: feat: Visualize compiler inserted reborrows via inlay hints r=Veykril a=Veykril
Disabled by default.
![image](https://user-images.githubusercontent.com/3757771/159165178-baaf968a-4381-468e-933f-5326ca1b203d.png )
Closes https://github.com/rust-analyzer/rust-analyzer/issues/11275
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2022-03-20 13:47:16 +00:00
Lukas Wirth
37b48ceb8f
feat: Visualize compiler inserted reborrows via inlay hints
2022-03-20 14:38:16 +01:00
bors[bot]
7315d97347
Merge #11755
...
11755: feat: Implement lifetime elision hints r=Veykril a=Veykril
With names on:
![Code_erl26zKvuf](https://user-images.githubusercontent.com/3757771/159134856-e2c75d2d-f17c-45c7-9a78-3da5ee8b1acd.png )
With names off:
![Code_MRP1Pbfe9d](https://user-images.githubusercontent.com/3757771/159134857-30fac3a1-825e-4f49-ba9b-9fa0bb215694.png )
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2022-03-19 19:15:06 +00:00
Lukas Wirth
7da5b80f25
Change skip trivial behaviour
2022-03-19 20:12:14 +01:00
Lukas Wirth
7ab0aaa82a
Add option to skip trivial cases
2022-03-19 19:01:19 +01:00
Laurențiu Nicola
031967383e
Remove Update GitHub API token command
2022-03-18 09:19:02 +02:00
Lukas Wirth
bd17933c31
feat: Add return type hints for closures with block bodies
2022-03-16 21:25:03 +01:00
Vladimir Serov
f7cf3b5503
editors/code: fix crash due to missing ID= field
...
Assuming ID=linux in isNixOs by default. You can get away with
default "", but why do that if there's a default value in spec?)
Also removed toLowerCase — it really shouldn't be needed.
Fixes #11709
2022-03-15 07:11:24 +03:00
Vladimir Serov
ce4b61003d
editors/code: fix nixos detection
...
Problem: NixOS started using quotes around it's id field in /etc/os-release
Solution: Parially parsing os-release, and detecting, whether `nixos` appears anywhere in "ID=" field\
See https://github.com/rust-analyzer/rust-analyzer/issues/11695
Closes #11695
2022-03-13 00:38:41 +03:00
Lukas Wirth
62265ee9cb
fix: Allow configuration of colons in inlay-hints
2022-03-11 21:15:36 +01:00
bors[bot]
49646b71d4
Merge #11445
...
11445: Upstream inlay hints r=lnicola a=lnicola
Closes https://github.com/rust-analyzer/rust-analyzer/issues/2797
Closes https://github.com/rust-analyzer/rust-analyzer/issues/3394 (since now resolve the hints for the range given only, not for the whole document. We don't actually resolve anything due to [hard requirement](https://github.com/rust-analyzer/rust-analyzer/pull/11445#issuecomment-1035227434 ) on label being immutable. Any further heavy actions could go to the `resolve` method that's now available via the official Code API for hints)
Based on `@SomeoneToIgnore's` branch, with a couple of updates:
- I squashed, more or less successfully, the commits on that branch
- downloading the `.d.ts` no longer works, but you can get it manually from https://raw.githubusercontent.com/microsoft/vscode/release/1.64/src/vscode-dts/vscode.proposed.inlayHints.d.ts
- you might need to pass `--enable-proposed-api matklad.rust-analyzer`
- if I'm reading the definition right, `InlayHintKind` needs to be serialized as a number, not string
- this doesn't work anyway -- the client-side gets the hints, but they don't display
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2022-03-07 16:49:12 +00:00
Laurențiu Nicola
97109d73f8
Add missing parameter
2022-03-07 15:42:20 +02:00
Laurențiu Nicola
04128de553
Bump esbuild
2022-03-07 15:24:42 +02:00
Laurențiu Nicola
b9d74fe2ed
Update LSP docs
2022-03-07 15:09:31 +02:00
Lukas Wirth
e5bb661b7a
Highlight Self
as a keyword by default
2022-03-06 00:13:45 +01:00
Lukas Wirth
5c0aee013e
Fix highlighting of Self
2022-03-05 23:34:37 +01:00
Laurențiu Nicola
9d43291533
Drop hint conversion
2022-03-04 08:08:59 +02:00
Laurențiu Nicola
8454358ba4
Bump vscode
2022-03-04 08:08:59 +02:00
Kirill Bulatov
9c0c199e96
Clean up the redundant hints code and config
2022-03-04 07:45:51 +02:00
Laurențiu Nicola
0b69717ab6
Fixes
2022-03-04 07:45:51 +02:00
Laurențiu Nicola
2ae8248cee
Add log messages
2022-03-04 07:45:51 +02:00
Laurențiu Nicola
0f396d670b
Bump deps
2022-03-04 07:45:51 +02:00
Kirill Bulatov
55371be807
Add experimental VSCode api
2022-03-04 07:45:51 +02:00
Lukas Wirth
2a7793d912
feat: Make private editable completions configurable, disable by default
2022-02-25 22:16:40 +01:00
Laurențiu Nicola
6e7b17374c
Remove reference to updates.channel from settings
2022-02-23 06:38:01 +02:00
bors[bot]
ba33054802
Merge #11416
...
11416: Fix eslint language server not working r=Veykril a=jackos
Allows the language server for eslint to work inside VS Code.
Before change:
![image](https://user-images.githubusercontent.com/77730378/152661637-c5d90678-39dc-4018-b884-fc4b6135368e.png )
After change:
![image](https://user-images.githubusercontent.com/77730378/152661647-164c0655-aa6a-4c50-b49d-49cda112d149.png )
Co-authored-by: Jack Clayton <jackclayto@gmail.com>
2022-02-06 14:42:01 +00:00
Moritz Vetter
9f6c206ea0
fix two vulneabilities (moderate: 1, high: 1) by running npm audit
2022-02-06 15:23:48 +01:00
Jack Clayton
76ecf9a17d
Fix eslint errors
2022-02-06 06:52:51 +08:00
Florian Diebold
b36c83032b
Update README.md
...
I'm not currently sponsored anymore.
2022-01-30 14:21:52 +01:00
Andrew Onyshchuk
a05e09acbe
Support <code> blocks from Rust docs
2022-01-27 11:46:04 -08:00
bors[bot]
2cb85c14b6
Merge #11281
...
11281: ide: parallel prime caches r=jonas-schievink a=jhgg
cache priming goes brrrr... the successor to #10149
---
this PR implements a parallel cache priming strategy that uses a topological work queue to feed a pool of worker threads the crates to index in parallel.
## todo
- [x] should we keep the old prime caches?
- [x] we should use num_cpus to detect how many cpus to use to prime caches. should we also expose a config for # of worker CPU threads to use?
- [x] something is wonky with cancellation, need to figure it out before this can merge.
Co-authored-by: Jake Heinz <jh@discordapp.com>
2022-01-25 16:03:35 +00:00
Laurențiu Nicola
cd50c71631
Bump npm deps
2022-01-22 11:59:45 +02:00
Chris Price
c18ee35ce8
fix: remove pipe from surroundingPairs
...
Closes https://github.com/rust-analyzer/rust-analyzer/issues/11192
2022-01-17 20:08:39 +00:00
Jake Heinz
25f67b6939
make it a config
2022-01-15 02:47:47 +00:00
bors[bot]
40009e07d0
Merge #11145
...
11145: feat: add config to use reasonable default expression instead of todo! when filling missing fields r=Veykril a=bnjjj
Use `Default::default()` in struct fields when we ask to fill it instead of putting `todo!()` for every fields
before:
```rust
pub enum Other {
One,
Two,
}
pub struct Test {
text: String,
num: usize,
other: Other,
}
fn t_test() {
let test = Test {<|>};
}
```
after:
```rust
pub enum Other {
One,
Two,
}
pub struct Test {
text: String,
num: usize,
other: Other,
}
fn t_test() {
let test = Test {
text: String::new(),
num: 0,
other: todo!(),
};
}
```
Co-authored-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
Co-authored-by: Coenen Benjamin <benjamin.coenen@hotmail.com>
2022-01-07 14:10:11 +00:00
Benjamin Coenen
8e0a05eb70
feat(diagnostics): use default expression instead of todo! when missing fields
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2022-01-07 15:01:37 +01:00
Benjamin Coenen
b60a29ca94
feat(diagnostics): use default expression instead of todo! when missing fields
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2022-01-07 14:13:34 +01:00
Lukas Wirth
f6eba28ef8
Adjust config name
2022-01-06 13:50:35 +01:00
Lukas Wirth
dd4b53402d
Regenrate docs and package.json
2022-01-06 13:50:24 +01:00
Benjamin Coenen
336c899a07
add better default behavior on fill struct fields diagnostic
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2022-01-04 15:59:00 +01:00
Lukas Wirth
3a525c831f
internal: Handle macro calls better in highlighting
2022-01-02 19:10:10 +01:00
Benjamin Coenen
df6fa50f92
feat(diagnostics): add new config to fill default expression
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2021-12-31 16:29:08 +01:00
Laurențiu Nicola
0182f74516
Fix server path on NixOS
2021-12-30 14:50:54 +02:00
Nixon Enraght-Moony
6ebb9ffd2a
Remove note about alpha status from vscode extension descritpion
...
See https://github.com/rust-analyzer/rust-analyzer.github.io/pull/156 and https://github.com/rust-analyzer/rust-analyzer/pull/8237
2021-12-27 01:26:25 +00:00
Laurențiu Nicola
af2bbce8d9
Spelling fix
2021-12-23 14:04:46 +02:00
Laurențiu Nicola
5bed9d6188
Simplify conflict check
2021-12-23 14:04:15 +02:00
Laurențiu Nicola
f872419847
Drop kalitaalexey.vscode-rust check
2021-12-23 14:04:15 +02:00
Laurențiu Nicola
c0d0ceefb2
Don't check for platform details
2021-12-23 14:04:15 +02:00
Laurențiu Nicola
8b304a72f6
Remove ETXTBUSY check, we don't overwrite binaries
2021-12-23 13:10:50 +02:00
Laurențiu Nicola
3835b3790e
Improve NixOS handling
2021-12-23 13:10:50 +02:00
Laurențiu Nicola
e97569c998
Drop extensionUri copy
2021-12-23 09:36:55 +02:00
Laurențiu Nicola
f63690c058
Remove proxy settings
2021-12-23 09:23:56 +02:00
Laurențiu Nicola
650ec14e4f
Remove channel and ask before download prefs
2021-12-23 09:23:56 +02:00
Laurențiu Nicola
c68dbc16f8
Remove node-fetch and https-proxy-agent deps
2021-12-23 09:23:56 +02:00
Laurențiu Nicola
53c183cc13
Remove network functions
2021-12-23 09:23:56 +02:00
Laurențiu Nicola
d5b4aa3037
Remove server download and update checks
2021-12-23 08:24:58 +02:00
Laurențiu Nicola
89cecff2bd
Bump vscode in package.json
2021-12-20 20:58:09 +02:00
Laurențiu Nicola
9c74f646f4
Publish platform-specific Code VSIXes
2021-12-18 22:49:11 +02:00
Laurențiu Nicola
262a698875
Prepare Code extension for bundling
2021-12-18 17:44:16 +02:00
Lukas Wirth
9fe0f0d1d9
Add a few default snippets for VSCode
2021-12-17 16:24:29 +01:00
bors[bot]
6df9bd42f4
Merge #10972
...
10972: minor: Bump vscode to 1.62 r=lnicola a=lnicola
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-12-09 15:18:41 +00:00
Laurențiu Nicola
19c774b4c4
Bump eslint
2021-12-09 17:16:30 +02:00
Laurențiu Nicola
c1fc774b6e
Bump vscode
2021-12-09 17:15:21 +02:00
Jonas Schievink
deb5c1426d
internal: add "Shuffle Crate Graph" command
2021-12-07 16:37:19 +01:00
bors[bot]
b519a179b4
Merge #10940
...
10940: minor: Fix HttpsProxyAgent creation and avoid deprecated call r=lnicola a=lnicola
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-12-05 12:12:44 +00:00
Laurențiu Nicola
725b3fdd65
Fix HttpsProxyAgent creation and avoid deprecated call
2021-12-05 14:11:49 +02:00
bors[bot]
396f864134
Merge #10938
...
10938: minor: Bump d3 r=lnicola a=lnicola
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-12-05 11:40:23 +00:00
Laurențiu Nicola
6300d03acd
Bump d3
2021-12-05 13:38:31 +02:00
bors[bot]
372a7cf981
Merge #10929
...
10929: internal: Split up macro/attribute semantic tokens a bit more r=Veykril a=Veykril
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/9172
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-12-04 17:33:16 +00:00
Lukas Wirth
3472105ad9
Update semantic token docs
2021-12-04 18:23:25 +01:00
Laurențiu Nicola
341e3773c3
Bump rest of the npm deps
2021-12-04 14:28:48 +02:00
Laurențiu Nicola
29682445ac
Bump node-fetch
2021-12-04 14:26:37 +02:00
Laurențiu Nicola
c3a97a9a9c
Bump vsce
2021-12-04 14:26:14 +02:00
Laurențiu Nicola
98697b61b5
Bump eslint
2021-12-04 14:26:14 +02:00
Laurențiu Nicola
0cf031a18a
Bump engine in lockfile
2021-12-04 14:26:14 +02:00
Laurențiu Nicola
65cdced805
Simplify .vscodeignore
2021-12-04 14:16:10 +02:00
Laurențiu Nicola
acd5c1f19b
Add LICENSE file to make vsce happy
2021-12-04 12:29:27 +02:00
bors[bot]
348110dcd9
Merge #10919
...
10919: internal: Define missing semantic token hierarchies in package.json r=Veykril a=Veykril
Closes https://github.com/rust-analyzer/rust-analyzer/issues/10077
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-12-03 22:53:32 +00:00
Lukas Wirth
d74894abe2
Add some more semantic token to textmate grammar mapping
2021-12-03 22:17:56 +01:00
Lukas Wirth
90e9a49cb9
Define missing semantic token hierarchies in package.json
2021-12-03 21:59:34 +01:00
Laurențiu Nicola
3ed0f349f2
Bump engine
2021-12-03 20:53:46 +02:00
Laurențiu Nicola
51426c4299
Bump esbuild
2021-12-03 20:53:43 +02:00
Laurențiu Nicola
d790a6b991
Bump typescript
2021-12-03 20:49:38 +02:00
Laurențiu Nicola
c6a35531f3
Bump @types/vscode
2021-12-03 20:48:15 +02:00
Laurențiu Nicola
278e435d93
Bump eslint
2021-12-03 20:46:19 +02:00
Laurențiu Nicola
effe112130
Bump vscode-test
2021-12-03 20:40:29 +02:00
Laurențiu Nicola
300e4dfbcc
Bump tslib
2021-12-03 20:35:22 +02:00
Laurențiu Nicola
f547d52d75
Bump node-fetch and @types/node-fetch
2021-12-03 20:33:14 +02:00
Laurențiu Nicola
37b60e5d2b
Bump @types/node
2021-12-03 20:30:26 +02:00
Laurențiu Nicola
b236ce83bb
Bump d3
2021-12-03 20:29:30 +02:00
bors[bot]
3b02aec0cc
Merge #10903
...
10903: internal: Replace `mocha` with a custom test runner r=Aloso a=lnicola
Closes #10723
r? `@Aloso`
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-12-02 17:37:56 +00:00
Laurențiu Nicola
157056db22
Fix proxyStrictSSL check
2021-12-02 15:46:23 +02:00
Laurențiu Nicola
76b3d437d3
Replace mocha with a custom test runner
2021-12-02 13:05:50 +02:00
Laurențiu Nicola
a59c1a0af0
Try to fix Code tests
2021-12-01 12:22:34 +02:00
Laurențiu Nicola
7d815b862f
Refactor proxy settings
2021-11-28 10:54:35 +02:00
Laurențiu Nicola
2f5149886d
Respect http.proxyStrictSSL
2021-11-27 07:29:44 +02:00
Laurențiu Nicola
a68ce62f6a
Add toggle to disable cache priming
2021-11-19 19:30:11 +02:00
Paul Horn
553bb7f50a
Allow clients to configure the global workspace search limit
2021-11-18 17:52:02 +01:00
Jake Heinz
520ff62f4e
flip the default
2021-11-13 23:39:34 +00:00
Jake Heinz
d3d768de0d
inlay hints: add the option to always show constructor inlay hints
2021-11-13 23:12:29 +00:00
bors[bot]
f48b2622d8
Merge #10688
...
10688: internal: Type-check TS on CI and also turn off the strict setting `useUnknownInCatchVariables` r=lnicola a=ChayimFriedman2
We don't follow it and I found that turning it on will have little benefit.
I'm not sure if we should also type-check when building in launch.json.
Co-authored-by: Chayim Refael Friedman <chayimfr@gmail.com>
2021-11-08 13:37:34 +00:00
Laurențiu Nicola
1fe48a7184
Avoid deprecated methods in client-side tests
2021-11-07 10:00:58 +02:00
Chayim Refael Friedman
36bdb5c94d
Type-check TS on CI and also turn off the strict setting useUnknownInCatchVariables
...
We don't follow it and I found that turning it on will have little benefit.
2021-11-04 01:23:45 +02:00
bors[bot]
057558b756
Merge #10595
...
10595: internal: Fix a format error r=Veykril a=dzvon
Fixes #10581
Co-authored-by: Dezhi Wu <wu543065657@163.com>
2021-10-29 10:40:43 +00:00
Dezhi Wu
74396d27c0
Fix: correct markdown link form.
2021-10-29 18:25:32 +08:00
Dezhi Wu
ffc6cdd871
Fix: transform the asciidoc form link to markdown style when generating the package.json
2021-10-28 10:13:43 +08:00
Lukas Wirth
4c582ffe9f
Don't ask the user to reload when chaning HoverAction configs in VSCode
2021-10-25 14:48:36 +02:00
Dezhi Wu
1a24ee9a1b
Fix a format error
2021-10-20 20:13:03 +08:00
bors[bot]
f87debcf87
Merge #10434
...
10434: Allow `Locate parent module` command in Cargo.toml r=Veykril a=rainy-me
close #10355
Co-authored-by: rainy-me <github@rainy.me>
Co-authored-by: rainy-me <github@yue.coffee>
2021-10-14 10:56:08 +00:00
Laurențiu Nicola
e43e1240a7
Document rustc source auto-discovery
2021-10-14 08:57:07 +03:00
rainy-me
59c755227d
Provide navigations to parent modules
2021-10-14 07:16:42 +09:00
bors[bot]
5ff992465e
Merge #10447
...
10447: Add enum variant references CodeLens. r=Veykril a=ericsampson
Co-authored-by: Eric Sampson <esampson@eaze.com>
2021-10-05 22:03:23 +00:00
Lukas Wirth
041cfbe0f4
Render the expansion of snippets as their docs
2021-10-05 18:11:22 +02:00
Lukas Wirth
ca1fdd75f1
Regen docs
2021-10-04 22:13:12 +02:00
Eric Sampson
99dd8066d9
need to update some generated files.
2021-10-04 02:30:46 -05:00
Eric Sampson
a0bb31587e
Add enum variant references CodeLens.
2021-10-04 02:18:31 -05:00
Laurențiu Nicola
f5c9204ff2
Limit depth to 1 when searching for Cargo.toml
2021-10-03 17:58:03 +03:00
rainy-me
39044fe39c
Allow locate parent module action in cargo toml
2021-10-03 11:58:10 +09:00
bors[bot]
c88277f676
Merge #10421
...
10421: minor: Bump npm non-dev deps r=lnicola a=lnicola
Fixes #10407
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-10-02 16:43:24 +00:00
Laurențiu Nicola
502fa1755a
Remove temporary file on exception
2021-10-02 10:07:50 +03:00
Laurențiu Nicola
2c7b50217e
Overwrite file when running patchelf
2021-10-02 10:05:39 +03:00
Laurențiu Nicola
aa88d7e0d6
Bump npm non-dev deps
2021-10-02 07:38:44 +03:00
hamidreza kalbasi
0dbaf64b12
add vscode native onEnterRules
2021-09-28 20:23:25 +03:30
Laurențiu Nicola
81891f7abe
Enable attribute proc macros by default
2021-09-27 18:11:31 +03:00
Lukas Wirth
b24c8d5c89
Update semanticTokenModifiers
in package.json
2021-09-25 14:10:46 +02:00
Carlos Menezes
8ad484b341
Add missing files
2021-09-24 14:53:11 +01:00
Laurențiu Nicola
db5e01189a
Change the global setting when toggling inlay hints
2021-09-23 20:45:45 +03:00
Laurențiu Nicola
8522b4aece
Add workaround for rename error reporting
2021-09-13 14:52:03 +03:00
IceSentry
d9e4b231c7
configure colorizedBracketPairs
2021-09-09 00:25:38 -04:00
Oliver Cooper
d246a5f58b
Undefined scope comment
2021-09-09 08:50:24 +12:00
Oliver Cooper
001608914b
Removed deprecated Task constructor
2021-09-08 10:46:31 +12:00
Oliver Cooper
0517247bbc
Don't filter cargo tasks by scope
...
Fixes #9093
2021-08-31 20:35:22 +12:00
Fumiaki MATSUSHIMA
7bbca5d6f3
Set esbuild target as node14
2021-08-28 14:43:44 +00:00
=
e3dd43ceba
remove workaround from old node versions
2021-08-27 11:31:25 +02:00
unexge
3a9ba0e506
feat: join lines merges assignments
2021-08-22 21:28:39 +03:00
bors[bot]
19348bc478
Merge #9908
...
9908: fix check of the toolchain's path r=lnicola a=gfreezy
fixed #9907
Co-authored-by: Alex.F <gfreezy@gmail.com>
2021-08-21 13:41:09 +00:00
Alex.F
8e4039c7d7
inline await statement
2021-08-17 15:24:13 +08:00
Alex.F
635b89fdaa
clean imports
2021-08-16 10:35:27 +08:00
Alex.F
6b3a6ddb39
fix lint
2021-08-16 00:21:12 +08:00
Alex.F
d13f6ba750
use async version
2021-08-16 00:19:45 +08:00
Laurențiu Nicola
743b016313
Don't call deprecated compile regex method
2021-08-13 14:16:33 +03:00
André Oliveira
25e1ca38ab
Update 'package-lock.json'
2021-08-10 13:46:44 +00:00
André Oliveira
7666eb1fb8
Embed the scripts in the html template
2021-08-10 13:43:58 +00:00
André Oliveira
51a6d2204e
Remove unecessary joinPaths
2021-08-10 13:43:58 +00:00
André Oliveira
f4a60e2af3
Include the needed node_modules files in the final extension bundle
2021-08-10 13:43:58 +00:00
André Oliveira
11bbaecca0
Formatting issues
2021-08-10 13:43:57 +00:00
André Oliveira
5e571a375b
replace let by const
2021-08-10 13:43:57 +00:00
André Oliveira
b29508949d
Remove debug logs
2021-08-10 13:43:57 +00:00
André Oliveira
6d59219d26
Reduce path handling code
2021-08-10 13:43:57 +00:00
André Oliveira
1039acb10a
Add more features to the rendering
...
- Allow the zoom to go further than 10x
- Adapt css to dark and high constrast themess
- Use 'javascript/worker' for the wasm graphviz
- Add Ctrl + LeftMouseClick to reset zoom
2021-08-10 13:43:55 +00:00
André Oliveira
8a563e4a46
Use local node_modules to allow the graph to load offline
...
- Fix some warnings
2021-08-10 13:43:08 +00:00
André Oliveira
f4f68e62c2
Use d3-graphviz for rendering crates graph on the extension side
2021-08-10 13:40:49 +00:00
Mukund Lakshman
463860439f
vscode extension: use esbuild instead of rollup.
2021-08-10 10:18:08 +01:00
Aleksey Kladov
bb8607434d
internal: remove client-side support for latest requests
...
Companion for #9826
2021-08-09 19:24:43 +03:00
Ryan Levick
ac50e35325
Give better error message when the rust-analyzer binar path was set in the user's config but the binary is invalid
2021-08-03 14:03:49 +02:00
Gianluca Recchia
93433364ab
Exclude rust-analyzer.server.path
from VS Code's sync feature
...
By changing the scope of this configuration to `machine-overridible`,
this setting becomes fully local for the VS Code instance the user is
running.
Having this setting excluded from syncing should help avoid
inconveniences for users who have VS Code installed on two different
operating systems, where the paths to the language server binary would
very likely mismatch.
2021-08-01 12:00:41 +02:00
Aleksey Kladov
be84f85c1d
feat: gate custom clint-side commands behind capabilities
...
Some features of rust-analyzer requires support for custom commands on
the client side. Specifically, hover & code lens need this.
Stock LSP doesn't have a way for the server to know which client-side
commands are available. For that reason, we historically were just
sending the commands, not worrying whether the client supports then or
not.
That's not really great though, so in this PR we add infrastructure for
the client to explicitly opt-into custom commands, via `extensions`
field of the ClientCapabilities.
To preserve backwards compatability, if the client doesn't set the
field, we assume that it does support all custom commands. In the
future, we'll start treating that case as if the client doesn't support
commands.
So, if you maintain a rust-analyzer client and implement
`rust-analyzer/runSingle` and such, please also advertise this via a
capability.
2021-07-30 19:16:33 +03:00
Alexander Gonzalez
cff2a0fe32
lint: Format the typescript files properly
2021-07-27 18:31:21 -04:00
Alexander Gonzalez
ca85185bc6
docs: Update the lsp-extensions.md with the Hover Range capability
2021-07-27 18:31:21 -04:00
Alexander Gonzalez
1a0a5da1a4
refactor: Make handle_hover handle ranges too
2021-07-27 18:29:22 -04:00
Alexander Gonzalez
2b5798e927
fix: Unregister the removed command
2021-07-27 18:29:22 -04:00
Alexander Gonzalez
9f21891950
refactor: Remove unnecessary command
2021-07-27 18:29:22 -04:00
Alexander Gonzalez
18644720eb
feat: Completed the client side implementation of rust-analyzer/hoverRange
2021-07-27 18:29:22 -04:00
Kevin DeLorey
5b9f173254
Removed all dead config accessors.
2021-07-23 07:50:37 -06:00
Kevin DeLorey
d8f0213316
removed dead code
2021-07-23 07:41:55 -06:00
Kevin DeLorey
7797c59f18
Updated docs.
2021-07-22 19:35:47 -06:00
Kevin DeLorey
b75e0e7bb1
Initial commit of highlight related configuration w/ implementation.
2021-07-22 19:35:47 -06:00
Damien Elmes
d22b830ed1
mention files.watcherExclude
...
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
2021-07-22 21:25:23 +10:00
Damien Elmes
106ea7ad85
minor update to excludeDirs doc
...
I saw reference to globs in #7755 , but it doesn't look like they're
actually supported, and I had to dig through the source to discover
that the folders are relative to the workspace root. Further digging
was required to get VS Code from hanging for long periods trying to
watch giant Bazel folders that had already been excluded from Rust
Analyzer. Hopefully this tweak will save others the confusion :-)
2021-07-19 23:30:00 +10:00
Laurențiu Nicola
cfaf186d02
Rename the old server before update
2021-07-13 09:10:25 +03:00
Laurențiu Nicola
dfb666f9ec
Remove unnecessary .vscodeignore entry
2021-07-10 18:37:19 +03:00
Laurențiu Nicola
5749c4d1ac
Update eslint
2021-07-10 18:34:48 +03:00
Laurențiu Nicola
713ff1890d
Update vsce
2021-07-10 18:32:34 +03:00
Laurențiu Nicola
8f05aceeed
Update vscode
2021-07-10 18:31:42 +03:00
Laurențiu Nicola
27f55daf05
Update @types/node
2021-07-10 18:31:33 +03:00
Laurențiu Nicola
e965d46a97
Update @types/node-fetch
2021-07-10 18:29:07 +03:00
Laurențiu Nicola
45a3130fb2
Update tslib
2021-07-10 18:29:07 +03:00
Laurențiu Nicola
533b498cb7
Update typescript
2021-07-10 18:29:07 +03:00
Laurențiu Nicola
8eb79ef41c
Update mocha
2021-07-10 18:29:07 +03:00
Laurențiu Nicola
461a44bf37
Update npm packages
2021-07-10 18:29:07 +03:00
Laurențiu Nicola
eff09e89fe
Update vsce
2021-07-10 18:29:07 +03:00
Laurențiu Nicola
23d688b4c8
Make .vscodeignore more strict
2021-07-10 18:29:07 +03:00
Laurențiu Nicola
ea3a756d1a
Set output.exports to make rollup happy
2021-07-10 18:29:07 +03:00
Laurențiu Nicola
f86e6a1c03
Update vsce a little
2021-07-10 18:29:07 +03:00
Laurențiu Nicola
a2ecc5c1ca
Update plugin-node-resolve
2021-07-10 18:29:07 +03:00
Laurențiu Nicola
b65ddf03c7
Update typescript
2021-07-10 18:29:07 +03:00
Laurențiu Nicola
fed134f574
Update eslint some more
2021-07-10 18:29:07 +03:00
Laurențiu Nicola
d96c26eb16
Update rollup
2021-07-10 18:29:07 +03:00
Laurențiu Nicola
f6b216681d
Update eslint plugins
2021-07-10 18:29:06 +03:00
Laurențiu Nicola
f97c86501d
Update eslint
2021-07-10 18:29:06 +03:00
Laurențiu Nicola
7df4bdb873
Update @types/node
2021-07-10 18:29:06 +03:00
Aleksey Kladov
b8a6ea5ab5
feat: make join lines behavior configurable
...
closes #9492
2021-07-05 23:47:20 +03:00
Jonas Schievink
5f13fb9db9
Add "View Crate Graph (Full)"
2021-07-02 00:10:33 +02:00
kjeremy
b88019c610
Update vscode-languageclient
2021-06-21 11:39:13 -04:00
bors[bot]
25bf451c84
Merge #9264
...
9264: feat: Make documentation on hover configurable r=Veykril a=Veykril
This also implements deprecation support for config options as this renames `hoverActions_linksInHover` to `hover_linksInHover`.
Fixes #9232
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-06-21 14:15:49 +00:00
Lukas Wirth
43098d99ae
Remove deprecation support in config
2021-06-21 16:15:25 +02:00
Jade
8b77e2692c
Implement a config override for the default #[cfg(test)] in cargo crates
...
Fixes crates which vanish when the 'test' cfg atom is set.
Fix #7243 .
Fix #9203 .
Fix #7225 .
2021-06-19 01:09:19 -07:00
bors[bot]
d9666ce509
Merge #9334
...
9334: feat: Allow to disable import insertion on single path glob imports r=Veykril a=Veykril
On by default as I feel like this is something the majority would prefer.
Closes #8490
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-06-18 21:23:22 +00:00
Lukas Wirth
2ee090faaf
Allow to disable import insertion on single path glob imports
2021-06-18 23:11:56 +02:00
kjeremy
e66dd9c85f
Update css-what
...
npm audit flagged out version of css-what
2021-06-18 13:57:48 -04:00
bors[bot]
f6e73d510d
Merge #9258
...
9258: minor: Give `ImportPrefix` variants better config names r=matklad a=Veykril
I feel like `crate` and `self` work better than `by_crate` and `by_self`. The only reason for the current names were that `Self` doesn't work for the variant name on the rust side so I forgot about setting proper config names on serde layer.
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-06-16 14:53:06 +00:00
bors[bot]
2980fd430d
Merge #9267 #9279
...
9267: fix: Code: update the LSP server without asking r=matklad a=lnicola
Most LSP extensions seem to do the same thing, and this is causing some
confusion for users who don't notice the update prompt before Code hides
it.
9279: minor: Document installation via Homebrew r=matklad a=Svetlitski
`rust-analyzer` can be installed via [Homebrew](https://brew.sh ) (AKA`brew`) on macOS. I've added instructions on how to do so to the documentation. Additionally, I added a `.gitignore` rule to ignore the HTML documentation produced by `asciidoctor manual.adoc` so that it is not accidentally checked into `git`.
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Co-authored-by: Kevin Svetlitski <kevin_svetlitski@berkeley.edu>
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-06-15 20:45:54 +00:00
bors[bot]
d0f2bc3b87
Merge #9292
...
9292: fix: Code: clean-up #8951 r=wxb1ank a=wxb1ank
#8951 was a major change in the VS Code extension and caused quite a few problems. This PR is a catch-all for bugs and improvements in the new code.
This should fix:
- #9284
- [this unreported bug](https://github.com/rust-analyzer/rust-analyzer/pull/8951/files#r651570446 )
- ...and one or two uncaught exceptions I just found
The original lack of testing was my own fault, but this area of the VS Code API is also tricky for a couple reasons:
- The [FileSystem](https://github.com/rust-analyzer/rust-analyzer/pull/8951/files#r651570446 ) API does not list or warn about any exceptions, but [FileSystemProvider](https://github.com/rust-analyzer/rust-analyzer/pull/8951/files#r651570446 ) (which `FileSystem` is a wrapper of, AFAICT) does.
- At first glance, [Uri.path](https://github.com/rust-analyzer/rust-analyzer/pull/8951/files#r651570446 ) *looks* like it works for FS operations. It does not, at least, on Windows. You need to use `Uri.fsPath`.
I only use Windows, so I need people on macOS, Linux, and (possibly) NixOS to test this.
Co-authored-by: wxb1ank <wxblank@gmail.com>
2021-06-15 20:05:07 +00:00
wxb1ank
a6b0c056de
Use .then()
for Thenable
2021-06-15 14:03:34 -04:00
wxb1ank
56e128a979
fix: clean-up #8951
2021-06-15 13:29:02 -04:00
bors[bot]
7d363755a2
Merge #9282
...
9282: fix: Use objects instead of bools for markers in package.json r=lnicola a=lnicola
Addresses https://github.com/rust-analyzer/rust-analyzer/issues/9174#issue-913980665 .
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-06-15 06:47:33 +00:00
Laurențiu Nicola
41949748a6
Use objects instead of bools for markers in package.json
2021-06-15 09:40:43 +03:00
wxb1ank
7a8a72c38f
Use Uri.toString()
for URLs
2021-06-14 23:29:38 -04:00
Laurențiu Nicola
6cbb18e570
Code: automatically update the LSP server
...
Most LSP extensions seem to do the same thing, and this is causing some
confusion for users who don't notice the update prompt before Code hides
it.
2021-06-14 17:44:29 +03:00
Lukas Wirth
178b5ffba3
Add configuration deprecation
2021-06-14 15:49:57 +02:00
Lukas Wirth
a93d166f0f
Make documentation on hover configurable
2021-06-14 15:25:10 +02:00
bors[bot]
388a91c8a8
Merge #8951
...
8951: internal: migrate to vscode.FileSystem API r=matklad a=wxb1ank
I encountered an error where `bootstrap()` attempts to create a directory with the path `C:\C:\...`. I couldn't find this reported anywhere else. Using the `vscode.FileSystem` API instead of the `fs` one works here. I assume the latter automatically prepends `C:\` to paths whereas the former does not. I don't know if this suggests `vscode.FileSystem` should be used in more places for consistency.
Co-authored-by: wxb1ank <wxblank@gmail.com>
2021-06-14 10:30:10 +00:00
Lukas Wirth
b58c1c9eb2
Give ImportPrefix variants better config names
2021-06-13 22:00:39 +02:00
Aleksey Kladov
16e142cd39
Revert "Merge #9177 "
...
This reverts commit f1818cb7ba
, reversing
changes made to 6c9362d61b
.
This broke things
2021-06-08 15:31:36 +03:00
bors[bot]
f1818cb7ba
Merge #9177
...
9177: ⬆️ npm packages r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-06-08 11:00:19 +00:00
Aleksey Kladov
6d2cfb1bdc
⬆️ npm packages
2021-06-08 13:55:20 +03:00
Milo
b8eeef4dfa
fix
2021-06-07 17:56:40 +01:00
Milo
42e5e5b458
fix
2021-06-06 00:21:50 +01:00
Milo
ab57c25d1e
when you click status bar icon it now restarts server
2021-06-06 00:17:16 +01:00
Lukas Wirth
07394316ff
Add function references hover action
2021-06-04 15:54:55 +02:00
Jonas Schievink
9fdb8f9037
Make it opt-in
2021-06-03 18:09:21 +02:00
Lukas Wirth
d304352407
Document that addCallArgumentSnippets
requires `addCallParenthesis
2021-06-02 22:10:09 +02:00
wxb1ank
388a1945ac
Lint toolchain.ts
2021-06-02 13:58:14 -04:00
wxb1ank
0448b73646
migrate from fs
to vscode.FileSystem
API
2021-06-02 12:11:32 -04:00
wxb1ank
3ca7f61a8d
internal: use vscode.FileSystem API in main.ts
2021-06-02 12:07:13 -04:00
Kirill Bulatov
60e7817e9c
Fix opening single files
2021-05-31 21:37:08 +03:00
Aleksey Kladov
ee995dbfd4
fix: fix shell injection in task spawning
...
closes #9058
2021-05-31 20:11:36 +03:00
Lukas Wirth
fb7105a580
Add config setting for self-on-the-fly
2021-05-31 15:14:56 +02:00
Lucas Schwiderski
9a057c0ff4
Fix incorrect setting descriptions
...
Descriptions for diagnostic warning hint and info display were swapped.
Fixes #8485 .
Signed-off-by: Lucas Schwiderski <lucas@lschwiderski.de>
2021-05-29 18:08:14 +02:00
bors[bot]
b4015b6aaa
Merge #8995
...
8995: fix: Create tasks for all workspaces r=matklad a=SomeoneToIgnore
Follow-up of https://github.com/rust-analyzer/rust-analyzer/pull/8955#discussion_r637897170
Before:
<img width="593" alt="image" src="https://user-images.githubusercontent.com/2690773/119575267-712b5300-bdbf-11eb-833c-f688f7a7dd0f.png ">
After:
<img width="643" alt="image" src="https://user-images.githubusercontent.com/2690773/119575273-74264380-bdbf-11eb-8283-a78bbcb7346e.png ">
This is the first time I've used multiple workspaces feature in VSCode, but so far looks like
* opening detached files works
* run and debug lens work
* Rust Analyzer: Run action works
* run task works and now shows tasks for all workspaces
* there are no platform-specific changes involved
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
2021-05-26 20:58:07 +00:00
bors[bot]
8c80a21772
Merge #9001
...
9001: minor: explicitly set the focus to false r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-05-26 10:04:37 +00:00
Aleksey Kladov
249e22b325
minor: explicitly set the focus to false
2021-05-26 13:04:01 +03:00
Kirill Bulatov
a05163db14
Create tasks for all workspaces
2021-05-26 01:11:52 +03:00
bors[bot]
835cf55887
Merge #8767
...
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 <arussell123@gmail.com>
2021-05-25 12:15:48 +00:00
Eduardo Canellas
3dce8a3924
fix: cursor position after item move command
...
closes Item movers need some fixes #8492
2021-05-24 13:17:28 -03:00
bors[bot]
05fc97e31b
Merge #8955
...
8955: feature: Support standalone Rust files r=matklad a=SomeoneToIgnore
![standalone](https://user-images.githubusercontent.com/2690773/119277037-0b579380-bc26-11eb-8d77-20d46ab4916a.gif )
Closes https://github.com/rust-analyzer/rust-analyzer/issues/6388
Caveats:
* I've decided to support multiple detached files in the code (anticipating the scratch files), but I found no way to open multiple files in VSCode at once: running `code *.rs` makes the plugin to register in the `vscode.workspace.textDocuments` only the first file, while code actually displays all files later.
Apparently what happens is the same as when you have VSCode open at some workplace already and then run `code some_other_file.rs`: it gets opened in the same workspace of the same VSCode with no server to support it.
If there's a way to override it, I'd appreciate the pointer.
* No way to toggle inlay hints, since the setting is updated for the workspace (which does not exist for a single file opened)
> [2021-05-24 00:22:49.100] [exthost] [error] Error: Unable to write to Workspace Settings because no workspace is opened. Please open a workspace first and try again.
* No runners/lens to run or check the code are implemented for this mode.
In theory, we can detect `rustc`, run it on a file and run the resulting binary, but not sure if worth doing it at this stage.
Otherwise imports, hints, completion and other features work.
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
2021-05-24 12:40:25 +00:00
Aleksey Kladov
df146341c5
fix: can download server binary on windows again
...
Closes #8956
See https://github.com/rust-analyzer/rust-analyzer/pull/8951#issuecomment-846716999
2021-05-24 11:52:25 +03:00
Kirill Bulatov
c1f6a5a0b0
Fix ts lint errors
2021-05-23 23:47:58 +03:00
Aleksey Kladov
a6633a88a8
fix: reveal snippets
2021-05-23 23:40:19 +03:00
Andy Russell
a90b9a5872
implement range formatting
2021-05-23 15:50:36 -04:00
Kirill Bulatov
b3383b0661
Send detached files info to server via init params
2021-05-23 22:46:20 +03:00
Kirill Bulatov
d9a5490646
Start rust-analyzer server for arbitrary rust files
2021-05-23 22:46:20 +03:00
Kirill Bulatov
daedcc2b77
More style fixes
2021-05-23 13:57:04 +03:00
Kirill Bulatov
223dbd2187
Style fix
2021-05-23 13:43:06 +03:00
Kirill Bulatov
95c51d8f1d
Don't use a deprecated accessor
2021-05-23 11:54:03 +03:00
Kirill Bulatov
230ed3304a
Better releaseId naming
2021-05-23 11:51:35 +03:00
Kirill Bulatov
be3e997ddf
Remove nightly release id from local storage for stable extensions
2021-05-23 11:49:34 +03:00
Kirill Bulatov
b8635a8e60
Download nightly extension when configured and run from stable extension version
2021-05-23 11:28:06 +03:00
Jonas Schievink
463ecefc64
Use .rs
file ending to get syntax highlighting
2021-05-22 00:11:54 +02:00