Lukas Wirth
dd4b53402d
Regenrate docs and package.json
2022-01-06 13:50:24 +01:00
Lukas Wirth
aecf26d09b
feat: Add config to replace specific proc-macros with dummy expanders
2022-01-06 13:50:18 +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
David Hotham
b7cabf1e44
fix: don't panic on seeing an unexpected offset
2022-01-03 14:49:47 +00:00
Lukas Wirth
3a525c831f
internal: Handle macro calls better in highlighting
2022-01-02 19:10:10 +01:00
Laurențiu Nicola
53ddf48df4
Avoid collect_vec from itertools
2022-01-02 12:06:14 +02:00
Aleksey Kladov
b9417f3483
feat: correctly fallback to notify if the clinet-side file watching is not supported
2022-01-01 17:26:54 +03: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
Lukas Wirth
4a5c8c6ad2
fix: Fix windows not finding the pdb file
2021-12-20 19:17:31 +01:00
Lukas Wirth
9fe0f0d1d9
Add a few default snippets for VSCode
2021-12-17 16:24:29 +01:00
Jonas Schievink
deb5c1426d
internal: add "Shuffle Crate Graph" command
2021-12-07 16:37:19 +01:00
Laurențiu Nicola
3678cbd12e
Bump tracing
2021-12-06 20:54:45 +02:00
bors[bot]
8a084e6aca
Merge #10902
...
10902: Handle multiple cargo check quick fix spans r=Veykril a=brandondong
Resolves https://github.com/rust-analyzer/rust-analyzer/issues/10705 .
**Cause:**
- For a cargo check diagnostic with multiple spans, only a single quick fix action would be created at the location of `spans[0]`. Additionally, the hover window details would only show the location of `spans[0]` next to the message.
**Fix:**
- Allow cargo check quick fix actions to be triggerable from multiple selection ranges. Specifically, if the selection intersects with any of the replacement spans, the quick fix action is shown.
- No change in behavior for the hover window details. It's pretty minor and I think showing multiple locations next to the message may be more confusing anyways.
Co-authored-by: Brandon <brandondong604@hotmail.com>
2021-12-05 10:52:54 +00:00
Brandon
fa2818551e
Update expected test results
2021-12-04 21:42:13 -08:00
Brandon
0d1910c6fb
Handle multiple cargo check quick fix spans
2021-12-04 21:41:56 -08:00
Brandon
de05c3d406
Refactor away unnecessary Vec
2021-12-04 19:59:05 -08:00
Lukas Wirth
e4f2d0e3a8
Introduce SymbolKind::Derive
2021-12-04 18:18:09 +01:00
Lukas Wirth
642c1eb720
Introduce SymbolKind::Attribute
2021-12-04 18:01:22 +01:00
Lukas Wirth
d174158abc
Rename things: Tool -> ToolModule
2021-12-03 17:15:19 +01:00
Lukas Wirth
d1677f3286
Remove syntax highlighting hack for builtin attrs
2021-12-03 16:54:34 +01:00
bors[bot]
393cbd0982
Merge #10841
...
10841: Emit moniker in lsif r=Veykril a=HKalbasi
fix #10559
Co-authored-by: hkalbasi <hamidrezakalbasi@protonmail.com>
Co-authored-by: HKalbasi <45197576+HKalbasi@users.noreply.github.com>
2021-11-29 11:13:39 +00:00
hkalbasi
30ed7fac27
Emit moniker in lsif
2021-11-22 21:29:05 +03:30
Emil Gardström
3dc898389f
Make lint groups work correctly with warningsAsInfo
and warningsAsHint
2021-11-22 18:38:28 +01:00
Laurențiu Nicola
a68ce62f6a
Add toggle to disable cache priming
2021-11-19 19:30:11 +02:00
Florian-Schoenherr
7e25f1b7e2
fix: show custom check-command
2021-11-19 16:22:39 +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
Florian-Schoenherr
4fb76743ca
fix: show the right check-command
...
Signed-off-by: Florian-Schoenherr <florian.schoenherr99@gmail.com>
2021-11-09 21:52:55 +01:00
Laurențiu Nicola
d18a379c7b
Bump deps
2021-11-06 17:40:38 +02:00
bors[bot]
53b5b2fdaa
Merge #10596
...
10596: internal: Set server status to warning when proc-macro sources change r=Veykril a=Veykril
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/10027

It feels wrong using the database in this part of the code, but this was the only way to figure out whether a file belongs to a proc-macro that I could think of.
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-11-03 14:02:10 +00:00
Lukas Wirth
1d80302b76
Set server status to warning when proc-macro sources change
2021-10-30 14:49:32 +02:00
vsrs
2f862cd6fe
Fix Plaintext textDocument/hover
2021-10-29 18:23:47 +03: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
097d527cbd
Fix: use a concise way to change link form when generating package.json
2021-10-29 10:00:10 +08:00
Lukas Wirth
3018ffd85e
Refactor ide handling for paths in derive inputs
2021-10-28 16:47:19 +02: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
bors[bot]
9d1f15086a
Merge #10649
...
10649: internal: Remove `CompletionKind` in favor of `CompletionItemKind` r=Veykril a=Veykril
and move some more tests around
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-10-27 15:38:42 +00:00
Lukas Wirth
0468b11de7
Remove CompletionKind
in favor of CompletionItemKind
2021-10-27 17:23:43 +02:00
bors[bot]
ba2b599131
Merge #10592
...
10592: Fix: only shows one # when we encounter ## r=Veykril a=dzvon
Fixes #10584
Co-authored-by: Dezhi Wu <wu543065657@163.com>
2021-10-26 13:17:13 +00:00
Dezhi Wu
31af94b73a
perf: avoid allocating by just slicing.
...
Signed-off-by: Dezhi Wu <wu543065657@163.com>
2021-10-26 20:59:48 +08:00
Laurențiu Nicola
ca44b6892e
Use array IntoIter
2021-10-22 09:23:29 +03:00
Lukas Wirth
1294bfce86
Migrate to edition 2021
2021-10-21 20:10:40 +02:00
Dezhi Wu
b7b9cd5e67
Fix: only shows one # when we encounter ##
2021-10-20 15:05:32 +08:00
Laurențiu Nicola
29d281e523
Fix tests
2021-10-18 12:03:49 +03:00
Laurențiu Nicola
edb03ad6f1
Pull in new lsp-types for VS compat
2021-10-18 12:03:49 +03:00
Milo
6f28325830
fix
2021-10-16 15:02:56 +01:00
Milo
30be95a821
add a comment
2021-10-16 14:15:17 +01:00
Milo
35e5daacc3
more clippy fixes
2021-10-16 12:32:55 +01:00
bors[bot]
a30941e2a5
Merge #10517
...
10517: Show cargo check failures to the user r=Veykril a=Veykril
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/10515
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-10-14 11:57:16 +00: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
bors[bot]
7d1015b8d1
Merge #10537
...
10537: minor: Document rustc source auto-discovery r=lnicola a=lnicola
CC #10521
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-10-14 05:57:31 +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]
f185d1c533
Merge #10423
...
10423: Internal: refactor for mdbook plugin r=Veykril a=HKalbasi
This PR is for upstreaming changes that I made for mdbook plugin. Changes are adding inlay hints to `StaticIndex` and changing some functions for working around privacy of crates.
Aside this, is it okay if I bring the plugin in tree? It is a simple binary crate. I feel it will better maintained here and become resistant to api changes.
Co-authored-by: hamidreza kalbasi <hamidrezakalbasi@protonmail.com>
2021-10-12 18:35:03 +00:00
hamidreza kalbasi
0f49c97e93
internal changes for mdbook
2021-10-12 11:54:00 +03:30
bors[bot]
098284aec8
Merge #10522
...
10522: fix: make signature info response conform to spec r=lnicola a=muscar
This addreses https://github.com/rust-analyzer/rust-analyzer/issues/10464 .
This patch picks up `lsp-types` 0.90.1, which serialises the `SignatureInformation` and `ParameterInformation` with the right casing. It also adds `activeSignature` field as part of the top-level signature response. It keeps `activeParameter` at the top-level for backwards compatibility.
Co-authored-by: Alex Muscar <alex@muscar.eu>
2021-10-11 19:58:27 +00:00
Alex Muscar
41856e2682
fix: make signature info response conform to spec
...
This addreses
https://github.com/rust-analyzer/rust-analyzer/issues/10464 .
This patch picks up `lsp-types` 0.90.1, which serialises the
`SignatureInformation` and `ParameterInformation` with the right casing.
It also adds `activeSignature` field as part of the top-level signature
response. It keeps `activeParameter` at the top-level for backwards
compatibility.
2021-10-11 20:42:16 +01:00
Quentin Gliech
824b7a8564
Add toolInfo in MetaData vertex in LSIF dumps
...
This helps with uploading LSIF dumps to Sourcegraph without having to
specify an indexer name.
2021-10-11 14:45:58 +02:00
Lukas Wirth
d14c9be321
Show cargo check failures to the user
2021-10-11 14:09:20 +02:00
k-nasa
b50cb5c261
Remove neesless clone
2021-10-10 10:50:51 +09:00
rainy-me
aaa0771719
Fix: compare pkg via manifest
2021-10-07 23:44:25 +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
bors[bot]
c409cf0e26
Merge #10458
...
10458: feat: Implement custom user snippets r=Veykril a=Veykril

Allows us to address the following issues:
- `.arc / .rc / .pin, similar to .box?` https://github.com/rust-analyzer/rust-analyzer/issues/7033
- `Add unsafe snippet` https://github.com/rust-analyzer/rust-analyzer/issues/10392 , would allow users to have this without the diagnostic)
- `.ok() postfix snippet is annoying` https://github.com/rust-analyzer/rust-analyzer/issues/9636 , allows us to get rid of the `ok` postfix and similar ones
- `Postfix vec completion` https://github.com/rust-analyzer/rust-analyzer/issues/7773
cc https://github.com/rust-analyzer/rust-analyzer/issues/772
Zulipd discussion: https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Frust-analyzer/topic/Custom.20Postfix.20snippets
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-10-05 16:41:11 +00:00
Lukas Wirth
77cbf4adbc
Bring the implementation closer to VSCode snippet definitions
2021-10-05 17:18:40 +02:00
Aramis Razzaghipour
9583dd5725
Replace if let
with match
where appropriate
2021-10-05 09:00:21 +11:00
Lukas Wirth
ca1fdd75f1
Regen docs
2021-10-04 22:13:12 +02:00
Lukas Wirth
454ecd167c
Make multiple import edits work for completions
2021-10-04 21:44:33 +02:00
Lukas Wirth
046c85ef0c
Add custom non-postfix snippets
2021-10-04 19:22:41 +02:00
Lukas Wirth
88f213eadd
Initial implementation of custom postfix snippets
2021-10-04 17:49:21 +02:00
Eric Sampson
a0bb31587e
Add enum variant references CodeLens.
2021-10-04 02:18:31 -05:00
rainy-me
39044fe39c
Allow locate parent module action in cargo toml
2021-10-03 11:58:10 +09:00
Aleksey Kladov
12103b16de
internal: untangle usages of ReferenceCategory somewhat
...
Not everything that can be read or write is a reference, let's try to
use more precise types.
2021-10-02 13:02:06 +03:00
Aleksey Kladov
46eb03d99a
internal: use naming that matches intended use-case
2021-10-02 12:18:18 +03:00
lhvy
dbb02370a4
Add semantic token modifier for crate root
2021-10-01 20:52:13 +10:00
Lukas Wirth
0c7ea0c9a1
Fix add missing semantic token modifier in SUPPORTED_MODIFIERS
2021-09-30 20:38:05 +02:00
lhvy
f713cfb818
Remove unneeded semantic token definition
2021-10-01 01:55:29 +10:00
lhvy
2b3baa8503
Give defaultLibrary semantic token modifier to items from standard library
2021-10-01 01:19:24 +10:00
bors[bot]
ee12b0f173
Merge #10181
...
10181: Begining of lsif r=HKalbasi a=HKalbasi
This PR adds a `lsif` command to cli, which can be used as `rust-analyzer lsif /path/to/project > dump.lsif`. It now generates a valid, but pretty useless lsif (only supports folding ranges). The propose of this PR is to discussing about the structure of lsif generator, before starting anything serious.
cc `@matklad` #8696 #3098
Co-authored-by: hamidreza kalbasi <hamidrezakalbasi@protonmail.com>
2021-09-29 13:13:03 +00:00
hamidreza kalbasi
5bd0f50111
remove glob import and cancellables
2021-09-29 16:25:10 +03:30
Laurențiu Nicola
81891f7abe
Enable attribute proc macros by default
2021-09-27 18:11:31 +03:00
hamidreza kalbasi
48bebeaa32
support goto definition and find references
2021-09-26 10:04:02 +03:30
hamidreza kalbasi
f2775ac2e9
reuse hover results with resultset
2021-09-26 10:04:02 +03:30
hamidreza kalbasi
70061d2b7e
move lsif types to lsp types crate
2021-09-26 10:04:02 +03:30
hamidreza kalbasi
e803bd25c4
add hover
2021-09-26 10:04:02 +03:30
hamidreza kalbasi
1103e390e0
cfg unix for tests with unix path
2021-09-26 10:04:02 +03:30
hamidreza kalbasi
5163201847
use utf16 instead of utf8
2021-09-26 10:04:02 +03:30
hamidreza kalbasi
557210a688
Begining of lsif
2021-09-26 10:04:02 +03:30
Nixon Enraght-Moony
720a3da4ac
Give rustfmt spawn error context.
2021-09-24 17:51:47 +01:00
bors[bot]
377476ac45
Merge #10332
...
10332: minor: Allow overwriting RUST_BACKTRACE for the server manually r=jonas-schievink a=Veykril
Trying to figure out why we aren't getting backtraces for windows builds from CI, this let's one set the backtraces to `FULL`
Might be cc https://github.com/rust-lang/rust/issues/87481
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-09-24 14:59:02 +00:00
Lukas Wirth
983e19c868
Allow setting RUST_BACKTRACE for the server manually
2021-09-24 15:38:00 +02:00
Carlos Menezes
0c49e3883c
Fix link to "Auto Import"
2021-09-24 13:59:44 +01:00
Dawer
0ff271d38f
fix completion handler trying to seek outside of character boundaries.
...
With this patch, in these examples
```rust
fn main() {
"⊞$0";
}
```
```rust
struct S {
д$0 u8
}
```
entering ':' character in `$0` places shouldn't cause panics.
2021-09-17 23:04:20 +05:00
bors[bot]
bcf0072bb4
Merge #10199
...
10199: fix: Fix Cargo.toml change detection r=lnicola a=lnicola
Maybe fixes #9546
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-09-13 18:14:20 +00:00
Laurențiu Nicola
4d7a3bb5c7
Shuffle code around to avoid an allocation
2021-09-13 21:06:31 +03:00
Laurențiu Nicola
8875f2c8aa
Fix Cargo.toml change detection
2021-09-13 19:15:17 +03:00
Jonas Schievink
e241015a75
Rename is_member
to is_local
2021-09-07 17:29:58 +02:00
bors[bot]
5fb2eb2314
Merge #10147
...
10147: fix: don't panic if the client sends invalid request r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-09-04 13:56:47 +00:00
Aleksey Kladov
2d2c4e7c22
internal: deduplicate
2021-09-04 16:56:23 +03:00
Aleksey Kladov
33199b7e43
fix: don't panic if the client sends invalid request
2021-09-04 12:27:27 +03:00