Jeremy Kolb
666302f007
cargo update
2021-05-02 15:17:04 -04:00
Jeremy Kolb
36c20dc23d
Return ServerNotInitialized according to the spec
...
According to the spec we should return ServerNotInitialized if the server is waiting for an initialize request and something else comes in.
Upgrading to lsp-server 0.5.1 will do this and retry until the initialize request comes in.
Fixes #8581
2021-04-27 07:47:06 -04:00
Jeremy Kolb
321aa9eb92
Update deps
2021-04-25 15:43:42 -04:00
bors[bot]
e529f73355
Merge #8627
...
8627: Add profiling spans under cargo_to_crate_graph r=lnicola a=lnicola
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-04-22 18:26:09 +00:00
Laurențiu Nicola
6b187af337
Add profiling spans under cargo_to_crate_graph
2021-04-22 21:25:29 +03:00
bors[bot]
32491c0978
Merge #8570
...
8570: Flycheck tries to parse both Cargo and Rustc messages. r=rickvanprim a=rickvanprim
This change allows non-Cargo build systems to be used for Flycheck provided they call `rustc` with `--error-format=json` and emit those JSON messages to `stdout`.
Co-authored-by: James Leitch <rickvanprim@gmail.com>
2021-04-21 21:56:54 +00:00
Laurențiu Nicola
81054a2581
Bump other deps
2021-04-21 19:20:18 +03:00
Laurențiu Nicola
27c5e2da48
Bump chalk
2021-04-21 19:20:01 +03:00
Laurențiu Nicola
e50ca6b067
Bump rustc_lexer
2021-04-21 19:19:27 +03:00
Aleksey Kladov
1772eb0f1a
fix: no longer get stuck on windows
...
reading both stdout & stderr is a common gotcha, you need to drain them
concurrently to avoid deadlocks. Not sure why I didn't do the right
thing from the start. Seems like I assumed the stderr is short? That's
not the case when cargo spams `compiling xyz` messages
2021-04-20 18:02:54 +03:00
James Leitch
b5c194f3f7
Flycheck tries to parse both Cargo and Rustc messages.
2021-04-18 16:36:29 -07:00
kjeremy
7091082f38
notify 5.0.0.pre7
...
Fixes windows leak: https://github.com/notify-rs/notify/pull/298
2021-04-15 11:51:32 -04:00
kjeremy
9b673aa9d8
crossbeam-channel 0.5.1
...
Fixes a potential memory leak in unbound channels.
2021-04-13 08:19:47 -04:00
kjeremy
3634b2145c
Bump lsp-types and syn
...
This lsp-types now supports a default InsertTextMode for completion and a per-completion item commit_characters
2021-04-08 10:57:47 -04:00
kjeremy
761a81822a
Update crates
2021-04-07 11:39:33 -04:00
Alexandru Macovei
4e2a6ac7ea
Avoid duplicating VfsPath in vfs::path_interner::PathInterner by using an IndexSet
2021-04-06 16:03:57 +03:00
kjeremy
b246f57fad
Use arrayvec 0.7 to avoid perf regression in 0.6.1
...
See: https://github.com/bluss/arrayvec/issues/182
2021-04-05 12:58:35 -04:00
Aleksey Kladov
d1474ae518
Check if bitflags deps pulls its weight
...
Bitflags is generally a good dependency -- it's lightweight, well
maintained and embraced by the ecosystem.
I wonder, however, do we really need it? Doesn't feel like it adds much
to be honest.
2021-04-04 12:06:01 +03:00
Jonas Schievink
ee4b5a34d8
Use bitflags to compress function properties
...
Very minor savings, only 1 MB or so
2021-04-03 20:58:42 +02:00
Jeremy Kolb
c7a664c2ea
cargo update
2021-04-03 12:18:00 -04:00
Jonas Schievink
b00266b79f
Global TypeRef/TraitRef interning
2021-04-01 19:46:43 +02:00
Laurențiu Nicola
9787bddac5
Use arrayvec 0.6
2021-03-25 21:03:20 +02:00
kjeremy
0630ff5de5
cargo update
...
Removes dependency on socket2
2021-03-23 14:44:26 -04:00
Aleksey Kladov
48b534ceb8
⬆️ rowan
2021-03-22 20:26:59 +03:00
Lukas Wirth
4771a56791
Parse extended_key_value_attributes
2021-03-19 02:13:46 +01:00
Aleksey Kladov
f5a81ec468
Upgrade rowan
...
Notably, new rowan comes with support for mutable syntax trees.
2021-03-16 16:10:49 +03:00
Edwin Cheng
8e07b23b84
Fix macro expansion for statements w/o semicolon
2021-03-16 13:44:50 +08:00
Lukas Wirth
2e3c156b0e
Return multiple modules in parent_module
2021-03-15 15:15:40 +01:00
Jonas Schievink
bc4ecb199b
Use expect-test for builtin macro/derive tests
2021-03-10 21:05:02 +01:00
bors[bot]
6c32e2d8a0
Merge #7965
...
7965: cargo update and lexer r=kjeremy a=kjeremy
Co-authored-by: kjeremy <kjeremy@gmail.com>
2021-03-10 18:59:19 +00:00
kjeremy
08e0e9976d
cargo update and lexer
2021-03-10 13:47:12 -05:00
Jonas Schievink
2b8674b37e
Implement builtin cfg!
macro
2021-03-10 19:43:03 +01:00
bors[bot]
654313dbc7
Merge #6822
...
6822: Read version of rustc that compiled proc macro r=edwin0cheng a=jsomedon
Signed-off-by: Jay Somedon <jay.somedon@outlook.com>
This PR is to fix #6174 .
I basically
* added two methods, `read_version` and `read_section`(used by `read_version`)
* two new crates `snap` and `object` to be used by those two methods
I just noticed that some part of code were auto-reformatted by rust-analyzer on file save. Does it matter?
Co-authored-by: Jay Somedon <jay.somedon@outlook.com>
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
2021-03-09 20:57:04 +00:00
Laurențiu Nicola
fc9eed4836
Use upstream cov-mark
2021-03-08 22:19:44 +02:00
Aleksey Kladov
da73c93c7f
Don't punish every crate with serde-json
2021-03-08 20:37:20 +03:00
kjeremy
e13ac349b5
Cargo update
...
Chalk changes just a version # bump. There are no actual commits.
2021-03-08 10:39:11 -05:00
Aleksey Kladov
0296cd590e
⬆️ xflags
2021-03-07 11:12:59 +03:00
kjeremy
124c9fe006
cargo update
2021-03-05 13:14:29 -05:00
Aleksey Kladov
142f9a03fd
Cleanup install command
2021-03-05 11:51:32 +03:00
Jay Somedon
55d73bc675
Fix multiple issues from code review
...
* check metadata version
* use memmap
* use Result instead of unwrap
with Jay Somedon <jay.somedon@outlook.com>
2021-03-04 09:11:33 +08:00
Jay Somedon
6608acef71
Read version of rustc that compiled proc macro
...
With Jay Somedon <jay.somedon@outlook.com>
2021-03-04 09:05:23 +08:00
kjeremy
41d1b4cd26
Update lexer
2021-03-02 15:33:22 -05:00
kjeremy
58697afca4
bump once_cell
2021-03-02 12:41:20 -05:00
bors[bot]
91bf5fa827
Merge #7513
...
7513: NFA parser for mbe matcher r=matklad a=edwin0cheng
Almost straight porting from rustc one, but a little bit slow :(
```
rust-analyzer analysis-stats -q .
```
From:
```log
Database loaded: 636.11ms, 277minstr
crates: 36, mods: 594, decls: 11527, fns: 9017
Item Collection: 10.99s, 60ginstr
exprs: 249618, ??ty: 2699 (1%), ?ty: 2101 (0%), !ty: 932
Inference: 28.94s, 123ginstr
Total: 39.93s, 184ginstr
```
To:
```log
Database loaded: 630.90ms, 277minstr
crates: 36, mods: 594, decls: 11528, fns: 9018
Item Collection: 13.70s, 77ginstr
exprs: 249482, ??ty: 2699 (1%), ?ty: 2101 (0%), !ty: 932
Inference: 30.27s, 133ginstr
Total: 43.97s, 211ginstr
```
Fixes #4777
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
2021-03-02 13:20:47 +00:00
bors[bot]
8eee9149e8
Merge #7848
...
7848: Bump cargo_metadata r=matklad a=lnicola
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-03-02 12:31:15 +00:00
Laurențiu Nicola
b20708f6ee
Bump cargo_metadata
2021-03-02 14:27:29 +02:00
Aleksey Kladov
3038579c8e
Switch from pico-args to xflags
2021-03-02 15:08:20 +03:00
bors[bot]
10a57b8109
Merge #7835
...
7835: Use cli parser with auto-generated help r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-03-01 19:57:25 +00:00
Aleksey Kladov
4ce20b80c5
Use cli parser with auto-generated help
2021-03-01 22:12:43 +03:00
Laurențiu Nicola
63e8bdb8a2
Bump chalk
2021-03-01 18:17:03 +02:00
Laurențiu Nicola
8ffd76ddc5
Bump deps
2021-03-01 18:13:08 +02:00
Edwin Cheng
cff2201c30
NFA parser for mbe matcher
2021-03-01 00:11:14 +08:00
bors[bot]
a8cf346b97
Merge #7566
...
7566: Add benchmark tests for mbe r=matklad a=edwin0cheng
This PR add more real world tests dumped from `rust-analyzer analysis-stats .` to benchmark its performance.
cc #7513
r? @matklad
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
2021-02-27 14:39:22 +00:00
kjeremy
d42730b76e
bump crates
2021-02-25 10:34:48 -05:00
Aleksey Kladov
eb7333f0a9
⬆️ crates
2021-02-25 17:55:50 +03:00
Edwin Cheng
23dbf36c7d
Add benchmark test for mbe
2021-02-25 05:47:13 +08:00
kjeremy
722d071dbf
Update mio
2021-02-23 12:16:56 -05:00
Chetan Khilosiya
eb6cfa7f15
7526: Renamed create ssr to ide_ssr.
2021-02-23 00:59:16 +05:30
Chetan Khilosiya
e4756cb4f6
7526: Rename crate assists to ide_assists.
2021-02-23 00:59:16 +05:30
kjeremy
e103ca7d8d
update tracing-tree
2021-02-22 12:03:34 -05:00
bors[bot]
63d61c0c98
Merge #7752
...
7752: up once_cell r=kjeremy a=kjeremy
Co-authored-by: kjeremy <kjeremy@gmail.com>
2021-02-22 13:32:40 +00:00
kjeremy
d51c58e14e
up once_cell
2021-02-22 08:31:33 -05:00
Aleksey Kladov
58be1edfbb
Make more common assist easier to ues
2021-02-22 16:07:08 +03:00
Laurențiu Nicola
6c0f7a2f56
Pin ungrammar
2021-02-21 19:33:55 +02:00
Laurențiu Nicola
48ae948b22
Bump deps
2021-02-21 19:13:11 +02:00
Jeremy Kolb
b43bec380f
Update some crates
2021-02-20 14:15:26 -05:00
Aleksey Kladov
3db64a400c
rename completion -> ide_completion
...
We don't have completion-related PRs in flight, so lets do it
2021-02-17 17:53:31 +03:00
kjeremy
88a5e1d036
Bump lsp-types
2021-02-16 09:21:07 -05:00
kjeremy
2cb0544c20
cargo update
2021-02-15 09:49:36 -05:00
Jeremy Kolb
8105418b25
Start LSP 3.17 support
2021-02-14 14:51:29 -05:00
kjeremy
61092bd900
libloading 0.7
...
See https://docs.rs/libloading/0.7.0/libloading/changelog/r0_7_0/index.html
2021-02-11 10:07:49 -05:00
Aleksey Kladov
4b1279d0b1
Infra for "unit" benchmarking
2021-02-09 20:25:39 +03:00
kjeremy
0c3b38695a
Update crates
...
Pulls in https://github.com/rust-lang/chalk/pull/682
2021-02-08 11:38:51 -05:00
Aleksey Kladov
7022ea52b5
AdtDef -> Adt
2021-02-07 14:15:02 +03:00
kjeremy
c3ddf3e1d6
cargo update
2021-02-05 15:35:45 -05:00
Lukas Wirth
eeb5bfcfab
Cleanup decl_check
2021-02-05 16:09:45 +01:00
kjeremy
4a722a34f9
Update thread_local
...
Pulls in https://github.com/Amanieu/thread_local-rs/pull/30 which fixes
a leak when dropping ThreadLocal.
2021-02-04 14:42:45 -05:00
kjeremy
b9ad1f587d
Update mimalloc
2021-02-02 17:17:49 -05:00
Laurențiu Nicola
6b60206669
Bump rustc_lexer
2021-02-02 17:40:01 +02:00
Laurențiu Nicola
9c4b799dce
Bump chalk
2021-02-02 17:40:01 +02:00
kjeremy
953883ca54
Use non-deprecated memmap2 crate
...
`cargo audit` complains that `memmap` is unmaintained so switch to
RazrFalcon's maintained version.
Removes yet another edge on winapi
2021-02-02 10:25:17 -05:00
kjeremy
1c9e216f69
cargo update
2021-02-02 10:00:34 -05:00
Laurențiu Nicola
7ed80bae92
Reap proc macro server instances
2021-02-01 21:24:09 +02:00
kjeremy
16f40d6e20
cargo update
2021-01-29 10:12:39 -05:00
Aleksey Kladov
921bfc0984
⬆️ rowan
2021-01-29 16:12:41 +03:00
Aleksey Kladov
06b56e720f
⬆️ rowan
2021-01-28 22:27:35 +03:00
bors[bot]
92a6dcc360
Merge #7477
...
7477: ⬆️ cm r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-28 16:00:43 +00:00
Aleksey Kladov
29da27004e
⬆️ cm
2021-01-28 18:59:54 +03:00
kjeremy
ffff827828
cargo update
2021-01-28 09:55:34 -05:00
Laurențiu Nicola
efafcf2428
Bump deps
2021-01-27 14:22:19 +02:00
Aleksey Kladov
b8d50a7414
add more counts
2021-01-27 12:39:19 +03:00
Aleksey Kladov
d35bda6429
Make always-assert crate reusable
2021-01-26 22:13:42 +03:00
Aleksey Kladov
1df711b95c
⬆️ rowan
2021-01-25 12:32:35 +03:00
Jeremy Kolb
ea1683ea96
cargo update
2021-01-23 11:28:59 -05:00
kjeremy
486066417a
Cargo update
2021-01-21 14:00:42 -05:00
Aleksey Kladov
e5c5c0a040
Include countme
crate to count important data structures.
2021-01-21 19:30:52 +03:00
kjeremy
f006517857
Up lexer
2021-01-21 09:31:06 -05:00
Laurențiu Nicola
e42dfd7a40
Bump chalk
2021-01-21 10:29:19 +02:00
kjeremy
1e0b163860
chalk 0.49.0
2021-01-20 12:31:03 -05:00
kjeremy
46359ae841
bump serde
2021-01-20 09:44:48 -05:00
bors[bot]
de5aabd48b
Merge #7350
...
7350: Update pico-args r=matklad a=kjeremy
Should maintain existing behavior
Co-authored-by: kjeremy <kjeremy@gmail.com>
2021-01-20 12:28:10 +00:00
Aleksey Kladov
3429b32ad1
⬆️ rowan
...
It now stores text inline with tokens
2021-01-20 14:04:53 +03:00
Aleksey Kladov
46b4f89c92
.
2021-01-20 01:56:11 +03:00
Aleksey Kladov
cd21b0e9c1
⬆️ rowan
2021-01-19 22:11:42 +03:00
kjeremy
db0aaeca33
Update pico-args
...
Should maintains existing behavior
2021-01-19 11:56:45 -05:00
Aleksey Kladov
4d510dfc56
⬆️ rowan
2021-01-19 12:05:27 +03:00
bors[bot]
342bf41022
Merge #7297 #7338
...
7297: Propose trait associated items and autoimport traits on completion r=matklad a=SomeoneToIgnore
![trait_imports](https://user-images.githubusercontent.com/2690773/104819998-6faeb480-583a-11eb-8b45-b7351b51b90e.gif )
Closes #7248
7338: Parse `impl const Trait` r=Veykril a=Veykril
Closes #7313
bors r+
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-01-18 19:40:11 +00:00
Lukas Wirth
b26002410b
Parse impl const Trait
2021-01-18 20:18:02 +01:00
Jonas Schievink
9b5fa1c61a
Add back jemalloc support
2021-01-18 19:39:46 +01:00
kjeremy
a8b984185b
cargo update
...
Update test_serialize_proc_macro for new serde version
2021-01-18 13:13:24 -05:00
Jonas Schievink
872bf09381
Add MacroType
syntax
2021-01-18 17:56:35 +01:00
bors[bot]
9daba961f2
Merge #7291
...
7291: Wrap remaining self/super/crate in Name{Ref} r=matklad a=Veykril
That should be the remaining special casing for `self` 🎉
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-01-18 16:13:06 +00:00
Aleksey Kladov
e13065b8ac
Add profile call
2021-01-18 13:30:12 +03:00
Aleksey Kladov
1b6b5c9f28
⬆️ rowan
2021-01-17 20:56:37 +03:00
Aleksey Kladov
33cce3d114
⬆️ rowan
...
https://github.com/rust-analyzer/rowan/pull/86 , which speeds up things
visibly
2021-01-17 18:27:29 +03:00
Aleksey Kladov
1c8feac01f
⬆️ arena
2021-01-17 11:43:04 +03:00
bors[bot]
f5f011ba71
Merge #7304
...
7304: Depend on local copy of la-arena instead of crates.io’s r=lnicola a=arzg
This addresses [this comment](https://github.com/rust-analyzer/rust-analyzer/pull/7276#issuecomment-760909936 ). #7275 and #7276 should start compiling if this is merged.
Co-authored-by: Aramis Razzaghipour <aramisnoah@gmail.com>
2021-01-17 07:05:44 +00:00
Aramis Razzaghipour
709034d123
Depend on local copy of la-arena instead of crates.io’s
2021-01-17 17:52:57 +11:00
Aleksey Kladov
b38414c7f4
When building an item-tree, keep fewer nodes in memory
2021-01-16 23:07:28 +03:00
Aleksey Kladov
842ed790ea
Simpler and faster rowan
...
This removes thread-local syntax node caching, which improves perf a
bunch
2021-01-16 21:36:01 +03:00
Lukas Wirth
98718e0544
Wrap remaining self/super/crate in Name{Ref}
2021-01-15 22:18:43 +01:00
bors[bot]
8a869e870a
Merge #7288
...
7288: Handle self/super/crate in PathSegment as NameRef r=matklad a=Veykril
Wrapping self/super/crate in NameRef as per https://github.com/rust-analyzer/rust-analyzer/pull/7261#issuecomment-760023172
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-01-15 18:40:47 +00:00
Lukas Wirth
cb863390f2
Handle self/super/crate in PathSegment as NameRef
2021-01-15 19:21:23 +01:00
bors[bot]
148e3d0f6a
Merge #7287
...
7287: Make SyntaxPtr lookup logarithmic r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-15 17:46:36 +00:00
Aleksey Kladov
26ef7e39f4
Make SyntaxPtr lookup logarithmic
...
closes #3934
cc https://github.com/rust-analyzer/rowan/pull/81
2021-01-15 20:40:40 +03:00
Daiki Ihara
d9b1fa6da3
Upgrade ungrammar to v1.7
2021-01-15 23:35:17 +09:00
Aleksey Kladov
5c66053bd1
bump arena
2021-01-15 11:35:55 +03:00
Aleksey Kladov
4c4e54ac8a
prepare to publish el libro de arena
2021-01-14 19:06:02 +03:00
Aleksey Kladov
865e05b5b4
Make printin the backtrace more convenient
2021-01-14 14:55:13 +03:00
Aleksey Kladov
3d78f502bd
Use upstream TextSize API
2021-01-13 21:32:24 +03:00
kjeremy
d229f0a1b2
cargo update
2021-01-11 09:06:30 -05:00
kjeremy
1da68e87af
Unfreeze cargo_metadata
...
It now pulls in a newer version of semver-parser.
2021-01-11 08:27:16 -05:00
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
Kirill Bulatov
f62e8616c8
Add imports in auto completion
2020-11-16 21:19:05 +02:00
Benjamin Coenen
e73d140b51
add suggestion ..Default::default() for remaining struct fields in a constructor #6492
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2020-11-13 17:17:16 +01:00
kjeremy
3b9d164043
Update crates
2020-11-11 11:17:48 -05:00
kjeremy
f32be79296
Do not use yanked once_cell
2020-11-11 11:02:49 -05:00
Aleksey Kladov
731f7bfc02
Replace RacyFlag with OnceCell
2020-11-11 03:11:40 +01:00
kjeremy
6b9a3504ca
cargo update
2020-11-04 22:01:19 -05:00
kjeremy
0403e82d91
Bump chalk and lexer
2020-11-02 12:00:58 -05:00
Aleksey Kladov
f5e7f07838
Update crates
...
This is to bust the caches
2020-11-02 17:00:05 +01:00
Jeremy Kolb
5fccb72dd5
cargo update
2020-10-31 10:20:25 -04:00
Florian Diebold
bca51e3519
Upgrade Chalk to 0.36
...
Quite a few changes, because Chalk got rid of the `ApplicationTy` nesting.
2020-10-30 18:57:55 +01:00
kjeremy
e7e58b08ac
cargo update
2020-10-28 15:37:40 -04:00
kjeremy
5cb6fafd36
Latest proposed LSP 3.16.0
...
Needs: https://github.com/gluon-lang/lsp-types/pull/183
2020-10-26 09:23:34 -04:00
Florian Diebold
39dfca23f1
Add tracing to main rust-analyzer binary
2020-10-25 13:53:38 +01:00
bors[bot]
bf84e4958e
Merge #6331 #6342
...
6331: correct hover text for items with doc attribute with raw strings r=matklad a=JoshMcguigan
Fixes #6300 by improving the handling of raw string literals in attribute style doc comments.
This still has a bug where it could consume too many `"` at the start or end of the comment text, just as the original code had. Not sure if we want to fix that as part of this PR or not? If so, I think I'd prefer to add a unit test for either the `as_simple_key_value` function (I'm not exactly sure where this would belong / how to set this up) or create a `fn(&SmolStr) -> &SmolStr` to unit test by factoring out the `trim` operations from `as_simple_key_value`. Thoughts on this?
6342: Shorter dependency chain r=matklad a=popzxc
Continuing implementing suggestions from the `Completion refactoring` zulip thread.
This PR does the following:
- Removes dependency of `completions` on `assists` by moving required functionality into `ide_db`.
- Moves completely `call_info` crate into `ide_db` as it looks like it fits perfect there.
- Adds a bunch of new tests and docs.
- Adds the re-export of `base_db` to the `ide_db` and removes direct dependency on `base_db` from other crates.
The last point is controversial, I guess, but I noticed that in places where `ide_db` is used, `base_db` is also *always* used. Thus I think the dependency on the `base_db` is implied by the fact of `ide_db` interfaces, and thus it makes sense to just provide `base_db` out of the box.
Co-authored-by: Josh Mcguigan <joshmcg88@gmail.com>
Co-authored-by: Igor Aleksanov <popzxc@yandex.ru>
2020-10-24 19:08:12 +00:00
Laurențiu Nicola
c81d044622
Bump chalk
2020-10-24 17:14:05 +03:00
Laurențiu Nicola
4834015fd1
Bump rustc_lexer
2020-10-24 17:11:58 +03:00
Laurențiu Nicola
09468ce370
Bump deps
2020-10-24 17:10:36 +03:00
Igor Aleksanov
19cce08662
Re-export base_db from ide_db
2020-10-24 11:39:57 +03:00
Igor Aleksanov
b6ea56ea09
Make call_info a part of ide_db
2020-10-24 11:07:10 +03:00
Igor Aleksanov
8d3d509af7
Remove dependency on 'assists' from 'completion' crate
2020-10-24 10:47:23 +03:00
bors[bot]
2fa942ad30
Merge #6251 #6310
...
6251: Semantic Highlight: Add Callable modifier for variables r=matklad a=GrayJack
This PR added the `HighlightModifier::Callable` variant and assigned it to variables and parameters that are fn pointers, closures and implements FnOnce trait.
This allows to colorize these variables/parameters when used in call expression.
6310: Rewrite algo::diff to support insertion and deletion r=matklad a=Veykril
This in turn also makes `algo::diff` generate finer diffs(maybe even minimal diffs?) as insertions and deletions aren't always represented as as replacements of parent nodes now.
Required for #6287 to go on.
Co-authored-by: GrayJack <gr41.j4ck@gmail.com>
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2020-10-23 22:12:15 +00:00
bors[bot]
81609960fa
Merge #6324
...
6324: Improve #[cfg] diagnostics r=jonas-schievink a=jonas-schievink
Unfortunately I ran into https://github.com/rust-analyzer/rust-analyzer/issues/4058 while testing this on https://github.com/nrf-rs/nrf-hal/ , so I didn't see much of it in action yet, but it does seem to work.
Co-authored-by: Jonas Schievink <jonas.schievink@ferrous-systems.com>
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-10-23 10:38:30 +00:00
Jonas Schievink
68b17986c7
Implement DNF-based #[cfg]
introspection
2020-10-22 17:57:00 +02:00
Lukas Wirth
d86863aeb4
Rewrite algo::diff to support insertion and deletion
2020-10-22 09:51:11 +02:00
Jeremy Kolb
f64f569483
Update crates
...
This brings in a number of new dependencies though.
2020-10-20 17:36:02 -04:00
Aleksey Kladov
c4699819d0
⬆️ crates
2020-10-19 13:57:41 +02:00
Igor Aleksanov
9e7c952bbd
Extract call_info and completion into separate crates
2020-10-18 13:09:00 +03:00
Aleksey Kladov
6c7769a2e3
update deps
2020-10-18 01:53:01 +02:00
Aleksey Kladov
cb63e83237
⬆️ xshell
2020-10-18 01:51:39 +02:00
Aleksey Kladov
0fab08740b
⬆️ xshell
2020-10-17 13:25:22 +02:00
Aleksey Kladov
49a90d4c31
Switch from not_bash to xshell
2020-10-17 02:42:42 +02:00
bors[bot]
3e450cf89f
Merge #6207 #6224 #6226 #6227
...
6207: Extract ImportAssets out of auto_import r=matklad a=Veykril
See https://github.com/rust-analyzer/rust-analyzer/pull/6172#issuecomment-707182140
I couldn't fully pull out `AssistContext` as `find_node_at_offset_with_descend`: 81fa00c5b5/crates/assists/src/assist_context.rs (L90-L92)
requires the `SourceFile` which is private in it and I don't think making it public just for this is the right call?
6224: ⬆️ salsa r=matklad a=matklad
bors r+
🤖
6226: Add reminder to update lsp-extensions.md r=matklad a=matklad
bors r+
🤖
6227: Reduce bors timeout r=matklad a=matklad
bors r+
🤖
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-10-14 11:37:51 +00:00
Aleksey Kladov
41e2639f35
⬆️ salsa
2020-10-14 12:40:48 +02:00
Laurențiu Nicola
e559066bed
Bump pulldown-cmark
2020-10-13 20:41:49 +03:00
Laurențiu Nicola
baf84d4a93
Bump regex
2020-10-13 18:06:40 +03:00
Laurențiu Nicola
9937c0d50a
Bump rustc_lexer
2020-10-13 18:06:23 +03:00
Laurențiu Nicola
017a04f424
Bump crossbeam-channel and lsp-server in rust-analyzer
2020-10-13 18:05:06 +03:00
Laurențiu Nicola
db7813ef2c
Bump crossbeam-channel in crates
2020-10-13 16:57:01 +03:00
Laurențiu Nicola
c6605affe4
Bump some deps
2020-10-13 16:46:36 +03:00
Laurențiu Nicola
852b2481a4
Remove Cargo.lock comment
2020-10-13 16:46:22 +03:00
Jonas Schievink
f8be6c636c
macOS: install GNU tar
2020-10-12 19:51:49 +02:00
kjeremy
a7d6674e4d
Update crates
2020-10-11 18:01:50 -04:00
kjeremy
13bb0404a8
Bump rustc_lexer, cfg-if to 1.0 and add new license to check
2020-10-08 10:39:02 -04:00
Casey Primozic
37df2138ec
Switch from git to latest tagged release of chalk deps
2020-10-07 12:11:22 -07:00
Casey Primozic
56a8a7645f
Bump chalk to use latest git to get fix
...
* Chalk very recently (like an hour ago) merged a fix that prevents rust analyzer from panicking. This allows it to be usable again for code that hits those situations. See #6134 , #6145 , Probably #6120
2020-10-06 15:05:20 -07:00
kjeremy
ff678e1349
Up rustc-ap-rustc_lexer to 681
...
cargo update as well
2020-10-01 15:21:13 -04:00
kjeremy
9b2e38f009
cargo update
2020-09-30 09:49:40 -04:00
Nathan Whitaker
f50458deaf
Update chalk to 0.30.0
2020-09-28 14:24:11 -04:00
Jeremy Kolb
76dfac7894
chalk 0.29.0
2020-09-28 07:44:27 -04:00
Jeremy Kolb
89ac5995e9
Update deps
2020-09-27 18:14:50 -04:00
Bram van den Heuvel
dff6895ce8
Update chalk to 0.28.0
2020-09-25 15:29:31 +02:00
Jean SIMARD
875ad9b5c4
Bump smol_str from 0.1.16 to 0.1.17
2020-09-24 16:39:08 +02:00
kjeremy
95d7e3ce49
lsp-types 0.82
2020-09-23 15:41:55 -04:00
kjeremy
c7243e4a59
Support active parameters at the per-signature level
...
Update crates
2020-09-18 11:39:25 -04:00
Charles Lew
b302f69b7c
Update chalk to 0.27 and adapt to chalk changes.
2020-09-15 22:37:05 +08:00
kjeremy
07110a4472
Update crates
2020-09-14 08:43:26 -04:00
kjeremy
50bbe8bddd
Update serde
2020-09-11 15:07:49 -04:00
kjeremy
b2334d0ecb
cargo update
2020-09-11 11:38:36 -04:00
kjeremy
b74aba4011
Update crates
...
Gets passed pulled crossbeam crate
2020-09-08 08:50:03 -04:00
kjeremy
11758d518a
Up proc-macro2 to 1.20
...
This changes the way Display is implemented
2020-09-03 17:40:12 -04:00
kjeremy
5e4195bb6a
Chalk 0.25
...
Picks up flodiebold's infinite loop fix
2020-09-02 14:07:06 -04:00
bors[bot]
7f79dbc84f
Merge #5930
...
5930: Migrate to the latest Semantic Tokens Proposal for LSP 3.16 r=matklad a=kjeremy
This stabilizes call hierarchy and semantic tokens features on the client side and changes the server-side semantic tokens protocol to match the latest proposal for 3.16.
The server-side change will break clients depending on the earlier semantic tokens draft.
Fixes #4942
Co-authored-by: kjeremy <kjeremy@gmail.com>
2020-09-02 15:11:22 +00:00
kjeremy
b527257330
Move to vscode-languageclient 7.0.0-next.9
...
Stabilizes call hierarchy and semantic tokens features.
2020-09-02 09:40:59 -04:00
kjeremy
62656f09c0
cargo update
2020-09-02 09:36:03 -04:00
Veetaha
4bc56ebd93
Replace custom not_bash::fs2
setup with fs_err crate
2020-08-29 17:47:13 +03:00
Aleksey Kladov
c692b5d76d
⬆️ expect-test
2020-08-28 14:47:14 +02:00
Aleksey Kladov
07da02fc37
⬆️ crates
2020-08-27 19:06:00 +02:00
Aleksey Kladov
f8a59adf5e
Tease apart orthogonal concerns in markdown link rewriting
...
`hir` should know nothing about URLs, markdown and html. It should
only be able to:
* resolve stringy path from documentation
* generate canonical stringy path for a def
In contrast, link rewriting should not care about semantics of paths
and names resolution, and should be concern only with text mangling
bits.
2020-08-26 20:24:00 +02:00
Zac Pullar-Strecker
b835f06cec
Merge remote-tracking branch 'upstream/master' into 503-hover-doc-links
2020-08-25 16:44:36 +12:00
Jonas Schievink
f3ac19e8cd
Support extern types
2020-08-24 22:02:55 +02:00
Zac Pullar-Strecker
7bbca7a1b3
Merge remote-tracking branch 'upstream/master' into 503-hover-doc-links
2020-08-24 21:20:13 +12:00
Zac Pullar-Strecker
4f5f608b49
Reorganise code
2020-08-24 20:26:45 +12:00
Aleksey Kladov
95f33bb5f7
⬆️ autocfg
2020-08-21 19:14:44 +02:00
Aleksey Kladov
863b1fb731
⬆️ ungrammar
2020-08-21 19:14:05 +02:00
bors[bot]
df54561a68
Merge #5835
...
5835: Switch to expect_test from crates.io
r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-08-21 11:21:05 +00:00
Aleksey Kladov
b0fd3faf36
Switch to expect_test from crates.io
2020-08-21 13:19:31 +02:00
kjeremy
41c5d9caaa
Update crates
2020-08-20 12:50:43 -04:00
Aleksey Kladov
6b0b9178b3
⬆️ crates
2020-08-18 23:52:29 +02:00
bors[bot]
a95c5e2121
Merge #5758
...
5758: SSR: Explicitly autoderef and ref placeholders as needed r=matklad a=davidlattimore
Structural search replace now inserts *, & and &mut in the replacement to match any auto[de]ref in the matched code.
e.g. `$a.foo() ==>> bar($a)` might convert `x.foo()` to `bar(&mut x)`
Co-authored-by: David Lattimore <dml@google.com>
2020-08-18 10:52:27 +00:00
David Lattimore
29e6238cb7
SSR: A few small refactorings
2020-08-18 20:39:55 +10:00
Aleksey Kladov
88adca766a
⬆️ crates
2020-08-18 11:20:45 +02:00
Jeremy Kolb
409090e74c
Chalk 0.23
2020-08-16 12:15:44 -04:00
Jeremy Kolb
7819e794db
Bump rustc_lexer
2020-08-16 11:57:10 -04:00
Jeremy Kolb
9aca8d6647
Update chrono
2020-08-16 11:34:13 -04:00
Jonas Schievink
cb816b1ea8
Add a proc_macro_test crate
...
This exports all 3 kinds of proc macros and is useful for testing
2020-08-15 00:27:32 +02:00
Aleksey Kladov
1b0c7701cc
Rename ra_ide -> ide
2020-08-13 17:58:27 +02:00
Aleksey Kladov
fc34403018
Rename ra_assists -> assists
2020-08-13 17:33:38 +02:00
Aleksey Kladov
ae3abd6e57
Rename ra_ssr -> ssr
2020-08-13 17:02:44 +02:00
Aleksey Kladov
bb5c189b7d
Rename ra_ide_db -> ide_db
2020-08-13 16:39:16 +02:00
Aleksey Kladov
ae71a631fd
Rename ra_hir -> hir
2020-08-13 16:36:55 +02:00
Aleksey Kladov
6a77ec7bbe
Rename ra_hir_ty -> hir_ty
2020-08-13 16:35:29 +02:00
Aleksey Kladov
b28c54a2c2
Rename ra_hir_def -> hir_def
2020-08-13 16:29:33 +02:00
Aleksey Kladov
b7aa4898e0
Rename ra_hir_expand -> hir_expand
2020-08-13 16:29:33 +02:00
Aleksey Kladov
ed20a857f4
Rename ra_db -> base_db
2020-08-13 16:29:33 +02:00
Aleksey Kladov
2119dc23e8
Rename ra_proc_macro -> proc_macro_api
2020-08-13 12:39:27 +02:00
bors[bot]
de1d93455f
Merge #5744
...
5744: Rename ra_project_model -> project_model r=matklad a=pksunkara
Co-authored-by: Pavan Kumar Sunkara <pavan.sss1991@gmail.com>
2020-08-13 10:10:03 +00:00
Pavan Kumar Sunkara
eac24d52e6
Rename ra_project_model -> project_model
2020-08-13 12:05:30 +02:00
Aleksey Kladov
c81f6230da
Remove ra_fmt crate
2020-08-13 11:59:42 +02:00
Aleksey Kladov
68c2238725
Rename ra_cfg -> cfg
2020-08-13 10:36:04 +02:00
Aleksey Kladov
2f45cfc415
Rename ra_mbe -> mbe
2020-08-13 10:36:04 +02:00
Aleksey Kladov
d42ba63976
⬆️ crates
2020-08-13 10:36:04 +02:00
Aleksey Kladov
0e6b94de78
Minor
2020-08-13 10:36:04 +02:00
Pavan Kumar Sunkara
349e6c62ad
Rename ra_proc_macro_srv -> proc_macro_srv
2020-08-13 03:18:19 +02:00
Aleksey Kladov
a1c187eef3
Rename ra_syntax -> syntax
2020-08-12 18:30:53 +02:00
Aleksey Kladov
50a02eb359
Rename ra_parser -> parser
2020-08-12 17:14:23 +02:00
Aleksey Kladov
6dafc13f5f
Rename ra_text_edit -> text_edit
2020-08-12 17:03:06 +02:00
Aleksey Kladov
7510048ec0
Cleanup TextEdit API
2020-08-12 16:58:56 +02:00
Aleksey Kladov
8d34262956
Rename ra_toolchain -> toolchain
2020-08-12 16:52:28 +02:00
Aleksey Kladov
550d7fbe3c
Rename ra_tt -> tt
2020-08-12 16:46:54 +02:00
Aleksey Kladov
208b7bd7ba
Rename ra_prof -> profile
2020-08-12 16:35:29 +02:00
Aleksey Kladov
98baa9b569
Rename ra_arena
2020-08-12 16:22:05 +02:00
Jonas Schievink
67b2b3d0ce
Fix build on musl and test it in CI
2020-08-12 12:23:25 +02:00
kjeremy
9842bbfd27
cargo update
2020-08-10 10:56:16 -04:00
Jeremy Kolb
4591bd458d
Update chalk
2020-08-05 22:24:23 -04:00
Aleksey Kladov
edd4a83ee3
Use salsa's purge to account for all memory
2020-08-05 15:28:20 +02:00
Zac Pullar-Strecker
b34ad4bc8a
update & configure cmark to render three backticks
2020-08-02 20:32:09 +12:00
Aleksey Kladov
bff8dd0949
Update grammar
2020-08-01 13:47:19 +02:00
Aleksey Kladov
a015714def
Better JSON serialization in metrics
2020-08-01 04:09:52 +02:00