Amos Wenger
b351e115d6
Move cfg attrs up to the mod definitions to disable sourcegen
2022-07-24 10:38:34 +02:00
Amos Wenger
0bffdf2627
Disable all source-gen tests at compile time
2022-07-24 10:38:28 +02:00
Amos Wenger
5f3f4284dd
Don't run slow tests in Rust CI, only RA CI
2022-07-24 10:38:19 +02:00
Ryo Yoshida
fb063d360c
Add ellipsis
to HIR RecordLit
2022-07-24 17:10:31 +09:00
bors
977e12a0bd
Auto merge of #12859 - matklad:dont-color-the-whole-block-red-all-the-time-please, r=Veykril
...
feat: don't highlight the whole fn on return-type mismatch
2022-07-23 21:37:32 +00:00
Aleksey Kladov
5bd84432dd
internal: extract common code for adjusting diagnostic range
2022-07-23 22:24:44 +01:00
Aleksey Kladov
a436be44b2
feat: don't highlight the whole fn on return-type mismatch
2022-07-23 21:16:59 +01:00
Lukas Wirth
50b27e57ba
Better error messages when the proc-macro-server fails to start
2022-07-23 20:24:01 +02:00
Lukas Wirth
aeb07745d5
Spawn a proc-macro-srv instance per workspace
2022-07-23 20:10:10 +02:00
bors
2be00623e4
Auto merge of #12851 - DorianListens:dscheidt/if-completion-match-guard, r=Veykril
...
fix: Don't add braces to 'if' completion in match guard position
fixes #12823
Is this what you were thinking of here, `@Veykril` ? I haven't done any work on completions before, so I could definitely be misunderstanding the issue.
2022-07-23 17:42:59 +00:00
Dorian Scheidt
13c83f90ac
fix: Don't add braces to 'if' completion in match guard position
...
When the cursor is in a match arm, but before the fat arrow (=>) token, don't
add braces when autocompleting "if".
fixes #12823
2022-07-23 12:25:02 -05:00
bors
f3a46f689c
Auto merge of #12854 - RalfJung:generate_new, r=Veykril
...
fix generate_new doc
Looks like this got copied from `generate_impl` without adjusting the description.
2022-07-23 15:18:48 +00:00
Ralf Jung
ff041bfa68
fix generate_new doc
2022-07-23 11:09:01 -04:00
bors
0b131bc78e
Auto merge of #12849 - Veykril:no-parse, r=Veykril
...
internal: Don't parse files unnecessarily in scope_for_offset
2022-07-22 23:00:35 +00:00
bors
fbb1337eb3
Auto merge of #12850 - Veykril:display-fix, r=Veykril
...
fix: Fix error tooltip message for VSCode status bar item
2022-07-22 22:52:53 +00:00
Lukas Wirth
e223d20d97
fix: Fix error tooltip message for VSCode status bar item
2022-07-23 00:52:12 +02:00
Lukas Wirth
cb6703fe06
internal: Don't parse files unnecessarily in scope_for_offset
2022-07-23 00:50:59 +02:00
bors
8272d2a18d
Auto merge of #12847 - Veykril:vscode-downgrade, r=Veykril
...
fix: Fix restart server duplicating language clients
Reverts 03a62c180e
vscode-languageclient@8.0.0-next.15 and beyond changed the behaviour of language clients to be automatically started if a request comes in while they are not running. Currently when we restart the server via the restart command we recreate the language client, which causes VSCode to restart the stopped server, effectively duplicating our language clients...
Reverting the commit is simpler right now, the proper fix would be to only create a language client once and then use the `restart` functionality on it instead.
Fixes https://github.com/rust-lang/rust-analyzer/issues/12836
2022-07-22 22:18:05 +00:00
Lukas Wirth
f1b5e38563
Revert 03a62c180e
2022-07-23 00:14:34 +02:00
bors
d469e0de9a
Auto merge of #12840 - Veykril:be-lazy, r=Veykril
...
internal: Use ItemTree for variant, field and module attribute collection in attrs_query
Less parsing = very good, should speed up lang item collection as that basically probes attributes of all enum variants which currently triggers parsing
Not fond of how this is searching for the correct index, ideally we'd map between HIR and item tree Id here but I am not sure how, storing the item tree ids in the HIR version doesn't work due to the usage of `Trace`...
2022-07-22 20:35:31 +00:00
Lukas Wirth
0081ef3834
Use ItemTree for modules in attrs_query
2022-07-22 22:17:13 +02:00
bors
7e30ca1f2a
Auto merge of #12844 - Veykril:highlight-attr, r=Veykril
...
fix: Improve syntax highlighting in attributes
Fixes https://github.com/rust-lang/rust-analyzer/issues/12842
2022-07-22 15:31:32 +00:00
Lukas Wirth
1ab862a628
fix: Improve syntax highlighting in attributes
2022-07-22 17:29:03 +02:00
bors
cb8a3be2a1
Auto merge of #12835 - fasterthanlime:sysroot-abi, r=fasterthanlime
...
Introduce proc-macro-srv/sysroot-abi
Still a WIP.
This change is tracked by:
* https://github.com/rust-lang/rust-analyzer/issues/12818
2022-07-22 12:28:27 +00:00
Amos Wenger
e591ff3269
Add comment about replacing crossbeam with std scoped threads when they land
2022-07-22 14:23:36 +02:00
Amos Wenger
39db9cdb7d
Use std::panic::resume_unwind
2022-07-21 21:35:15 +02:00
Amos Wenger
48bcc229bf
Move interner methods to Symbol, return SmolStr directly since it's ref-counted
2022-07-21 21:32:46 +02:00
Amos Wenger
246947b779
Fix raw ident handling (a little)
2022-07-21 19:13:44 +02:00
Amos Wenger
941416a1d6
Add test for idents incl. raw idents
2022-07-21 18:48:19 +02:00
Amos Wenger
9cf99a9c71
Stringify literals create client-side properly
2022-07-21 18:44:41 +02:00
Amos Wenger
36d825fd5d
Add test for literals created client-side
2022-07-21 18:29:28 +02:00
Amos Wenger
32ee097580
Run proc macro expansion in a separate thread (for the thread-local interner)
2022-07-21 18:11:50 +02:00
Amos Wenger
05d8f5fee7
Use a thread-local for the symbol interner (1/2)
2022-07-21 14:57:09 +02:00
Amos Wenger
30769598a4
Move version string to RustcInfo, read '.rustc' section only once
2022-07-21 13:57:36 +02:00
Amos Wenger
bbaf4daca0
Pass tidy checks
2022-07-21 13:37:41 +02:00
Amos Wenger
fdddd83224
Assert that sysroot ABI version matches exactly
...
Otherwise, fall back to the multi ABI scheme, except in testing, where
it becomes a hard error.
This should make it possible to use a rustup-provided rust-analyzer with
proc macro dylibs compiled by older rustcs, and it'll also catch changes
to the format of `rustc --version` or the `.rustc` section that would
make them impossible to compare for equality.
2022-07-21 13:13:25 +02:00
bors
84a6fac37a
Auto merge of #12841 - Veykril:query-fix, r=Veykril
...
fix: Fix `trait_impls_in_deps_query` being called directly instead of as a query
Fixes the inlay hint performance regression introdcuced by https://github.com/rust-analyzer/rust-analyzer/issues/12549
2022-07-21 08:23:19 +00:00
Lukas Wirth
cfad882745
fix: Fix trait_impls_in_deps_query
being called directly instead of as a query
2022-07-21 10:23:07 +02:00
Lukas Wirth
5f9a5825e0
Use ItemTree for crate root attr_query collection
2022-07-21 09:23:30 +02:00
Lukas Wirth
1aadd9da92
internal: Use itemtree for variant and field attribute collection
2022-07-21 08:48:13 +02:00
Lukas Wirth
10c7ee7068
Simplify
2022-07-21 08:48:09 +02:00
bors
2f6c39005c
Auto merge of #12827 - Veykril:be-lazy, r=Veykril
...
internal: Construct fewer `AstIdMap`s in lowering
2022-07-21 00:11:18 +00:00
Lukas Wirth
7bd2e305d6
Simplify
2022-07-21 02:06:26 +02:00
Lukas Wirth
c83f14a44a
Remove AstIdMap from Expander as it is seldom needed
2022-07-21 02:01:07 +02:00
Amos Wenger
480f555334
implement literal_from_str (poorly)
2022-07-20 19:23:25 +02:00
Amos Wenger
d25b61030e
Add literal/ident conversion, tests pass
2022-07-20 19:18:39 +02:00
Amos Wenger
191db9fed4
stub missing APIs
2022-07-20 19:18:39 +02:00
Amos Wenger
00bc060ba3
Fix imports, delete removed interfaces
2022-07-20 19:18:39 +02:00
Amos Wenger
e009cdc8d9
Move token_stream to separate module
2022-07-20 19:18:39 +02:00
Amos Wenger
315b0a7254
Add sysroot-abi feature, copy 1.64 ABI fo rnow
2022-07-20 19:18:39 +02:00