Laurențiu Nicola
0182f74516
Fix server path on NixOS
2021-12-30 14:50:54 +02: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
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
Jonas Schievink
deb5c1426d
internal: add "Shuffle Crate Graph" command
2021-12-07 16:37:19 +01:00
Laurențiu Nicola
725b3fdd65
Fix HttpsProxyAgent creation and avoid deprecated call
2021-12-05 14:11:49 +02:00
Laurențiu Nicola
29682445ac
Bump node-fetch
2021-12-04 14:26:37 +02:00
Laurențiu Nicola
157056db22
Fix proxyStrictSSL check
2021-12-02 15:46:23 +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
Jake Heinz
d3d768de0d
inlay hints: add the option to always show constructor inlay hints
2021-11-13 23:12:29 +00: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
rainy-me
59c755227d
Provide navigations to parent modules
2021-10-14 07:16:42 +09: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
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
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
=
e3dd43ceba
remove workaround from old node versions
2021-08-27 11:31:25 +02: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
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
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
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
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
b75e0e7bb1
Initial commit of highlight related configuration w/ implementation.
2021-07-22 19:35:47 -06:00
Laurențiu Nicola
cfaf186d02
Rename the old server before update
2021-07-13 09:10:25 +03:00
Jonas Schievink
5f13fb9db9
Add "View Crate Graph (Full)"
2021-07-02 00:10:33 +02: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
wxb1ank
7a8a72c38f
Use Uri.toString()
for URLs
2021-06-14 23:29:38 -04: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
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
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
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
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
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
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
Jonas Schievink
271ec6b990
Add a "Debug ItemTree" LSP request
2021-05-21 23:59:52 +02:00
Jonas Schievink
a85a2c4d15
Allow viewing the crate graph in a webview
2021-05-11 16:15:31 +02:00
bors[bot]
fb45d2adec
Merge #8624
...
8624: Automatically detect rust library source file map r=vsrs a=vsrs
This PR adds a new possible `rust-analyzer.debug.sourceFileMap` value:
```json
{
"rust-analyzer.debug.sourceFileMap": "auto"
}
```
I did not make it the default because it uses two shell calls (`rustc --print sysroot` and `rustc -V -v`). First one can be slow (https://github.com/rust-lang/rustup/issues/783 )
Fixes #8619
Co-authored-by: vsrs <vit@conrlab.com>
2021-04-27 20:41:35 +00:00
Jorge Mederos Alvarado
0230f22d2a
Fix how and when old inlay hint decorations are disposed
2021-04-26 20:29:54 -04:00
Jorge Mederos Alvarado
9e5ef0ce72
Add option to opt out from smaller inlay hints font size
2021-04-26 20:29:54 -04:00
vsrs
1b4197cb35
Use explicit rustc commit-hash
...
Required for lldb on mac
2021-04-22 18:59:03 +03:00
vsrs
1ebfe11730
Add special auto
value for debug.sourceFileMap
2021-04-22 16:09:46 +03:00
vsrs
8f781e782c
Autodetect rust library source file map
2021-04-22 15:27:56 +03:00
Jonas Schievink
30aae2cefb
Move cursor position when using item movers
2021-04-14 00:03:04 +02:00
Aleksey Kladov
ad02bfe58f
Sacrifice for the semicolon god
2021-04-06 15:50:02 +03:00
Aleksey Kladov
8fe20b19d4
More robust status notifications
2021-04-06 15:45:31 +03:00
Jonas Schievink
e6580aa380
Use const
instead of let
2021-03-27 19:02:08 +01:00
Jonas Schievink
201fbac8a9
Fix handling of multi-cursor snippets
...
This allows one snippet per TextEdit, multiple in the same TextEdit
are still broken
2021-03-27 18:50:55 +01:00
ivan770
236abe2e60
Improve cursor positioning after moving
2021-03-18 11:22:28 +02:00
ivan770
5f5a3e6eae
Fix tsfmt and eslint warnings
2021-03-18 11:22:27 +02:00
ivan770
a154ef7ca1
Remove movable array, improve client code
2021-03-18 11:22:27 +02:00
ivan770
7d60458495
Item up and down movers
2021-03-18 11:22:27 +02:00
Lukas Wirth
f05fef7063
Support multiple parents in parentModule in vscode-client
2021-03-15 15:50:55 +01:00
bors[bot]
7accf6bc37
Merge #7799
...
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 <vit@conrlab.com>
2021-03-13 13:50:35 +00:00
Laurențiu Nicola
88ef0541a5
Improve version display
2021-03-12 19:49:00 +02:00
vsrs
daa2637486
Apply review suggestions
2021-03-11 17:39:41 +03:00
Kam Y. Tse
77b7c96aea
Make extension respect http proxy settings
2021-03-07 18:21:48 +08:00
vsrs
f234b80520
Remove erroneous comment
2021-02-27 21:59:53 +03:00
vsrs
45d4e6b639
Add progress reporting
2021-02-27 21:07:23 +03:00
vsrs
669e117644
Add LSP request and VSCode command
2021-02-27 20:04:43 +03:00
Laurențiu Nicola
23a8fc5284
Try to detect musl distros in the Code extension
2021-02-20 18:44:28 +02:00
kjeremy
a403be6456
Remove Semantic Tokens flicker workaround
...
https://github.com/microsoft/vscode-languageserver-node/issues/576 has been closed with
the latest vscode-languageclient release.
2021-02-16 16:27:30 -05:00
Jeremy Kolb
8105418b25
Start LSP 3.17 support
2021-02-14 14:51:29 -05:00
Yaroslav Bolyukin
471795b019
fix: tolerate spaces in nix binary patching
...
If path to original file contains space (I.e on code insiders, where
default data directory is ~/Code - Insiders/), then there is syntax
error evaluating src arg.
Instead pass path as str, and coerce to path back in nix expression
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
2021-02-13 23:11:00 +03:00
bors[bot]
82a1b91f20
Merge #7625
...
7625: Add **Copy Run Command Line** command for vscode r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-02-10 11:38:56 +00:00
Aleksey Kladov
97166e2ad9
Add **Copy Run Command Line** command for vscode
...
This is useful when you want to, e.g., run a specific test in a terminal
with `--release`.
2021-02-10 14:37:27 +03:00
Sahandevs
91dd61b9a6
use await instead
2021-02-09 17:42:46 +03:30
Sahandevs
2f82a84d2a
fix errors
2021-02-07 22:06:16 +03:30
Sahandevs
3a0234d60f
format
2021-02-07 21:59:06 +03:30
Sahandevs
1bb4e973ff
handle Thenable type rejects
2021-02-07 21:52:32 +03:30
Sahandevs
1d0e93b58e
handle promise catches
2021-02-07 21:27:21 +03:30
Sahandevs
06c02021a3
remove unnecessary
2021-02-07 21:15:13 +03:30
Lukas Wirth
fb2b1f5ea6
Fix resolveCodeAction trying to edit files before creating them
2021-02-05 21:33:37 +01:00
Edwin Cheng
35310f1032
Update vscode for new status
2021-01-29 01:04:14 +08:00
Laurențiu Nicola
03a1da9d46
Simplify file download code
2021-01-25 19:12:54 +02:00
bors[bot]
83231dd987
Merge #7409 #7421
...
7409: Add References CodeLens. r=matklad a=vsrs
Closes #5836
7421: Fix RA_LOG example in dev docs r=lnicola a=lnicola
bors r+
Co-authored-by: vsrs <vit@conrlab.com>
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-01-25 11:18:58 +00:00
Laurențiu Nicola
5bd84716ed
Code: reduce progress notification spam
2021-01-25 10:05:38 +02:00
vsrs
3618c4e0d3
Add References code lens.
...
For Struct, Enum, Union and Trait symbols.
2021-01-23 16:56:20 +03:00
Laurențiu Nicola
a19728604f
Download aarch64-unknown-linux-gnu from GitHub
2021-01-17 16:35:57 +02:00
Laurențiu Nicola
1749a78ada
Fix server path comparison
2021-01-14 15:38:57 +02:00
Laurențiu Nicola
c547ec1cd6
Don't update the server if managed by the user
2021-01-07 16:37:08 +02:00
Aleksey Kladov
01a5b83562
Rename extension config
2021-01-04 18:41:24 +03:00
Laurențiu Nicola
9decc4c0a3
Allow download of aarch64-pc-windows-msvc binaries
2021-01-04 16:32:46 +02:00
bors[bot]
1cc73d60bb
Merge #7068
...
7068: Add VSCode command to view the hir of a function body r=theotherphil a=theotherphil
Will fix https://github.com/rust-analyzer/rust-analyzer/issues/7061 . Very rough initial version just to work out where I needed to wire everything up.
@matklad would you be happy merging a hir visualiser of some kind? If so, do you have any thoughts on what you'd like it show, and how?
I've spent very little time on this thus far, so I'm fine with throwing away the contents of this PR, but I want to avoid taking the time to make this more polished/interactive/useful only to discover that no-one else has any interest in this functionality.
![image](https://user-images.githubusercontent.com/1974256/103236081-bb58f700-493b-11eb-9d12-55ae1b870f8f.png )
Co-authored-by: Phil Ellison <phil.j.ellison@gmail.com>
2021-01-03 09:03:15 +00:00
Phil Ellison
609a069757
Remove some unnecessary code copied from the Syntax Tree command
2021-01-01 19:35:10 +00:00
lf-
f7f6ac3554
Add an option for extra env vars in the Code extension
2020-12-30 04:51:07 -08:00
Lukas Wirth
689898e4f6
Apply text edits manually in vscode client
2020-12-29 15:43:17 +01:00
Phil Ellison
077592a12f
Initial implementation of view-hir command
2020-12-28 18:29:58 +00:00
bors[bot]
94f661c62a
Merge #7001
...
7001: Add support for downloading aarch64-apple-darwin binaries r=matklad a=lnicola
There's also a slight behavior change here: we no longer download our 64-binaries on 32-bit Darwin and Linux. We still do that on Windows, as I don't know how to detect 32-bit Node on 64 Windows.
But some people install the 32-bit Code by mistake, I doubt 32-bit Windows is that popular in the Rust crowd.
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2020-12-22 16:38:12 +00:00
P. Horban
92b13d2fab
Fix grammar nit
...
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com>
2020-12-22 16:22:33 +01:00