]>
git.lizzy.rs Git - rust.git/log
bors[bot] [Mon, 31 May 2021 15:34:04 +0000 (15:34 +0000)]
Merge #9083
9083: internal: Simplify proc_macro_srv tests r=jonas-schievink a=jonas-schievink
Removes `serde_derive`, instead using `proc_macro_test` macros.
Should fix https://github.com/rust-analyzer/rust-analyzer/issues/9067
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Mon, 31 May 2021 15:32:56 +0000 (17:32 +0200)]
Simplify proc_macro_srv tests
bors[bot] [Mon, 31 May 2021 14:28:03 +0000 (14:28 +0000)]
Merge #9081
9081: minor: expand docs a tiny bit r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Mon, 31 May 2021 14:27:27 +0000 (17:27 +0300)]
minor: expand docs a tiny bit
bors[bot] [Mon, 31 May 2021 13:38:32 +0000 (13:38 +0000)]
Merge #9079
9079: Don't take the parent kind of trailing attributes in attr completion r=Veykril a=Veykril
bors r+
fixes https://github.com/rust-analyzer/rust-analyzer/issues/9076
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Mon, 31 May 2021 13:35:22 +0000 (15:35 +0200)]
Don't take the parent kind of trailing attributes in attr completion
bors[bot] [Mon, 31 May 2021 13:21:31 +0000 (13:21 +0000)]
Merge #9039
9039: feat: Complete fields and methods with `self.` prefixed when inside methods r=matklad a=Veykril
![w65NbjkZiG](https://user-images.githubusercontent.com/
3757771 /
119984385 -
a0111700 -bfc1-11eb-9dbf-
52fdaa4d72b5 .gif)
Closes #7173
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Sun, 30 May 2021 14:41:33 +0000 (16:41 +0200)]
Add config setting for self-on-the-fly
Lukas Wirth [Fri, 28 May 2021 13:09:10 +0000 (15:09 +0200)]
Move unprefixed field/method completion to `dot`
Lukas Wirth [Fri, 28 May 2021 12:38:09 +0000 (14:38 +0200)]
Less strings, more hir::Names
Lukas Wirth [Fri, 28 May 2021 12:02:53 +0000 (14:02 +0200)]
Complete `self.` prefixed fields and methods inside methods
bors[bot] [Mon, 31 May 2021 12:42:32 +0000 (12:42 +0000)]
Merge #8866
8866: Update salsa r=matklad a=jonas-schievink
This updates salsa to include https://github.com/salsa-rs/salsa/pull/265, and removes all cancellation-related code from rust-analyzer
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
bors[bot] [Mon, 31 May 2021 12:34:01 +0000 (12:34 +0000)]
Merge #9060
9060: feat: Diagnose unimplemented built-in macros r=matklad a=jonas-schievink
A number of built-in attribute macros are unsupported, I thought it might be useful to put a diagnostic on their definition in libcore. Not sure.
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
bors[bot] [Mon, 31 May 2021 12:16:44 +0000 (12:16 +0000)]
Merge #9077
9077: internal: Use `Name`s instead of Strings in the completion rendering api r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Mon, 31 May 2021 12:13:09 +0000 (14:13 +0200)]
Use `Name`s instead of Strings in the completion rendering api
bors[bot] [Mon, 31 May 2021 08:20:28 +0000 (08:20 +0000)]
Merge #9025
9025: internal: Display unknown types in `analysis-stats` r=flodiebold a=lnicola
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
bors[bot] [Mon, 31 May 2021 07:20:18 +0000 (07:20 +0000)]
Merge #9072
9072: minor: reenable incremental test builds r=lnicola a=iDawer
Co-authored-by: Dawer <7803845+iDawer@users.noreply.github.com>
Dawer [Mon, 31 May 2021 07:15:40 +0000 (12:15 +0500)]
minor: reenable incremental test builds
bors[bot] [Sun, 30 May 2021 23:52:53 +0000 (23:52 +0000)]
Merge #9071
9071: minor: reenable incremental release builds r=jonas-schievink a=jonas-schievink
forgot to turn this back on in https://github.com/rust-analyzer/rust-analyzer/pull/9069
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Sun, 30 May 2021 23:12:11 +0000 (01:12 +0200)]
reenable incremental release builds
bors[bot] [Sun, 30 May 2021 21:48:43 +0000 (21:48 +0000)]
Merge #9069
9069: minor: Don't force-disable incremental r=jonas-schievink a=jonas-schievink
1.52.1 turns incremental off regardless of this setting, so this is unnecessary. Removing this allow manually overriding Cargo to enable incremental.
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Sun, 30 May 2021 21:46:39 +0000 (23:46 +0200)]
Don't force-disable incremental
bors[bot] [Sun, 30 May 2021 19:37:29 +0000 (19:37 +0000)]
Merge #9068
9068: Move more `CompletinoContext` fields to `ImmediateLocation` r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Sun, 30 May 2021 19:23:42 +0000 (21:23 +0200)]
Move more fields to `ImmediateLocation`
bors[bot] [Sun, 30 May 2021 17:28:52 +0000 (17:28 +0000)]
Merge #9065
9065: hir_ty: don't pass where clauses of associated types down to chalk r=cynecx a=cynecx
See #9052.
Co-authored-by: cynecx <me@cynecx.net>
cynecx [Sun, 30 May 2021 16:37:02 +0000 (18:37 +0200)]
hir_ty: don't pass where clauses of associated types down to chalk (temp. fix #9052)
bors[bot] [Sun, 30 May 2021 15:13:29 +0000 (15:13 +0000)]
Merge #9064
9064: Fix incorrect prefer_inner calls on some attribute completions r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Sun, 30 May 2021 15:10:42 +0000 (17:10 +0200)]
Fix incorrect prefer_inner calls on some attribute completions
bors[bot] [Sun, 30 May 2021 11:48:59 +0000 (11:48 +0000)]
Merge #9062
9062: internal: Bump deps r=lnicola a=lnicola
Fixes #9061
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Laurențiu Nicola [Sun, 30 May 2021 11:48:10 +0000 (14:48 +0300)]
Bump deps
Jonas Schievink [Sun, 30 May 2021 02:19:47 +0000 (04:19 +0200)]
Diagnose unimplemented built-in macros
bors[bot] [Sat, 29 May 2021 19:19:24 +0000 (19:19 +0000)]
Merge #9059
9059: fix: Only complete derive proc macros in `#[derive]` r=jonas-schievink a=jonas-schievink
HIR now gives them `MacroKind::Derive` instead of `MacroKind::ProcMacro`
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Sat, 29 May 2021 19:18:14 +0000 (21:18 +0200)]
Only complete derive proc macros in `#[derive]`
Jonas Schievink [Sat, 29 May 2021 19:10:00 +0000 (21:10 +0200)]
Update to prerelease
bors[bot] [Sat, 29 May 2021 18:33:49 +0000 (18:33 +0000)]
Merge #9057
9057: internal: Thread proc-macro types through the HIR r=jonas-schievink a=jonas-schievink
Should help with completion of derives. cc @Veykril
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Sat, 29 May 2021 18:32:57 +0000 (20:32 +0200)]
Thread proc-macro types through the HIR
bors[bot] [Sat, 29 May 2021 17:39:15 +0000 (17:39 +0000)]
Merge #9050
9050: hir_ty: use async ret type for inference inside async bodies r=flodiebold a=cynecx
Fixes #9004.
Co-authored-by: cynecx <me@cynecx.net>
bors[bot] [Sat, 29 May 2021 16:33:20 +0000 (16:33 +0000)]
Merge #9054
9054: fix: fix `matches!` macro on nightly toolchains r=jonas-schievink a=jonas-schievink
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/9043
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Sat, 29 May 2021 16:32:32 +0000 (18:32 +0200)]
Treat `pat_param` like `pat` fragments
bors[bot] [Sat, 29 May 2021 16:23:59 +0000 (16:23 +0000)]
Merge #9051
9051: Fix incorrect setting descriptions r=lnicola a=sclu1034
Descriptions for diagnostic warning hint and info display were swapped.
Fixes #8485.
Co-authored-by: Lucas Schwiderski <lucas@lschwiderski.de>
cynecx [Sat, 29 May 2021 16:16:20 +0000 (18:16 +0200)]
hir_ty: use async ret type for inference inside async bodies
Lucas Schwiderski [Sat, 29 May 2021 16:08:14 +0000 (18:08 +0200)]
Fix incorrect setting descriptions
Descriptions for diagnostic warning hint and info display were swapped.
Fixes #8485.
Signed-off-by: Lucas Schwiderski <lucas@lschwiderski.de>
bors[bot] [Sat, 29 May 2021 15:33:57 +0000 (15:33 +0000)]
Merge #9048
9048: Add some lint completion tests r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Sat, 29 May 2021 15:19:49 +0000 (17:19 +0200)]
Add some lint completion tests
bors[bot] [Sat, 29 May 2021 15:19:44 +0000 (15:19 +0000)]
Merge #9046
9046: fix: make `include!` etc. work in expression position r=jonas-schievink a=jonas-schievink
This PR removes determination of fragment kinds from the eager macro implementations. The fragment kind is always determined by the syntax position in which a macro is invoked, not by the macro implementation, even for eager macros.
This makes `include!` work in expression position, and should have the same effect for all macros that may be used in different positions.
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Sat, 29 May 2021 15:17:08 +0000 (17:17 +0200)]
Remove fragment kind knowledge from builtin macros
bors[bot] [Sat, 29 May 2021 12:14:16 +0000 (12:14 +0000)]
Merge #9027
9027: feat: Attribute completion is context aware r=Veykril a=Veykril
This splits off the `lint` and `derive` completions into their own submodules of `attribute`.
The idea is to create a lazy global hashmap that maps `SyntaxKind` to attribute names(`&[&str]`) in which we index with the syntax kind of the "thing" we are attributing giving us the attributes back that are valid for this kind. Then we use this name to do a binary search on the attribute list to fetch and build the corresponding completion item.
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Sat, 29 May 2021 12:02:06 +0000 (14:02 +0200)]
simplify
bors[bot] [Fri, 28 May 2021 21:21:37 +0000 (21:21 +0000)]
Merge #9041
9041: internal: Implement prev sibling determination for `CompletionContext ` r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Fri, 28 May 2021 20:18:52 +0000 (22:18 +0200)]
More completion pattern tests
Lukas Wirth [Fri, 28 May 2021 20:03:31 +0000 (22:03 +0200)]
Implement prev sibling determination for `CompletionContext`
Lukas Wirth [Fri, 28 May 2021 18:46:09 +0000 (20:46 +0200)]
simplify
bors[bot] [Fri, 28 May 2021 15:26:20 +0000 (15:26 +0000)]
Merge #9028
9028: only advertise range formatting support if enabled r=Veykril a=euclio
Fixes #9009.
Co-authored-by: Andy Russell <arussell123@gmail.com>
bors[bot] [Fri, 28 May 2021 12:59:54 +0000 (12:59 +0000)]
Merge #9040
9040: Don't label derive macros with their banged_name r=Veykril a=Veykril
cc https://github.com/rust-analyzer/rust-analyzer/issues/7072#issuecomment-
850396203
This doesn't fix it non builtin derives yet I think cause of a FIXME somewhere that doesn't categorize proc-macro derives as derives yet
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Fri, 28 May 2021 12:55:12 +0000 (14:55 +0200)]
Don't label derive macros with their banged_name
bors[bot] [Fri, 28 May 2021 12:16:18 +0000 (12:16 +0000)]
Merge #9038
9038: Folding range for return types r=Veykril a=MozarellaMan
For issue #8957
![return type fold](https://user-images.githubusercontent.com/
48062697 /
119979082 -
5c62e100 -bfb2-11eb-9729-
1dea1ce74de1 .gif)
Co-authored-by: Ayomide Bamidele <48062697+MozarellaMan@users.noreply.github.com>
Ayomide Bamidele [Fri, 28 May 2021 12:10:41 +0000 (13:10 +0100)]
Test for correct amount of emitted folds
Ayomide Bamidele [Fri, 28 May 2021 11:39:02 +0000 (12:39 +0100)]
Folding range for return types
bors[bot] [Fri, 28 May 2021 11:03:18 +0000 (11:03 +0000)]
Merge #9037
9037: minor: Move runnable lenses below attributes r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Fri, 28 May 2021 10:55:07 +0000 (12:55 +0200)]
Move runnable lenses below attributes
bors[bot] [Fri, 28 May 2021 10:36:13 +0000 (10:36 +0000)]
Merge #9036
9036: Remove undocumented `TextDocumentSyncKind::Full` support r=matklad a=lnicola
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Laurențiu Nicola [Fri, 28 May 2021 10:01:04 +0000 (13:01 +0300)]
Remove undocumented `TextDocumentSyncKind::Full` support
bors[bot] [Fri, 28 May 2021 01:21:45 +0000 (01:21 +0000)]
Merge #9033
9033: Complete keywords in (Assoc)ItemList with leading attribute r=Veykril a=Veykril
Fixes #7673
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Fri, 28 May 2021 01:20:55 +0000 (03:20 +0200)]
Complete keywords in (Assoc)ItemList with leading attribute
bors[bot] [Fri, 28 May 2021 00:43:16 +0000 (00:43 +0000)]
Merge #9032
9032: Only complete modules in empty use-statements r=Veykril a=Veykril
bors r+
Part of #8518
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Fri, 28 May 2021 00:40:40 +0000 (02:40 +0200)]
Only complete modules in empty use-statements
Lukas Wirth [Thu, 27 May 2021 23:09:22 +0000 (01:09 +0200)]
Add another attribute completion test
Lukas Wirth [Thu, 27 May 2021 22:54:52 +0000 (00:54 +0200)]
Add attribute completion tests
bors[bot] [Thu, 27 May 2021 22:47:04 +0000 (22:47 +0000)]
Merge #9029
9029: minor: test that `ItemTree` makes `hir_def` queries syntax-independent r=jonas-schievink a=jonas-schievink
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Thu, 27 May 2021 22:46:05 +0000 (00:46 +0200)]
Test that `ItemTree` works as intended
Lukas Wirth [Thu, 27 May 2021 22:35:21 +0000 (00:35 +0200)]
tt muncher time
Lukas Wirth [Thu, 27 May 2021 21:40:33 +0000 (23:40 +0200)]
Split attribute completion module into attribute, derive and lint modules
Andy Russell [Thu, 27 May 2021 21:36:13 +0000 (17:36 -0400)]
only advertise range formatting support if enabled
Lukas Wirth [Thu, 27 May 2021 21:28:14 +0000 (23:28 +0200)]
Attribute completion is context aware
bors[bot] [Thu, 27 May 2021 19:13:34 +0000 (19:13 +0000)]
Merge #9026
9026: Complete modules in assoc item lists r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Thu, 27 May 2021 19:12:50 +0000 (21:12 +0200)]
Complete modules in item lists
Lukas Wirth [Thu, 27 May 2021 18:53:38 +0000 (20:53 +0200)]
Complete modules in assoc item lists
Jonas Schievink [Thu, 27 May 2021 18:21:52 +0000 (20:21 +0200)]
Move hir_ty incremental test to its own file
bors[bot] [Thu, 27 May 2021 16:34:46 +0000 (16:34 +0000)]
Merge #9020
9020: fix: Don't complete non-macro item paths in impls and modules r=Veykril a=Veykril
Part of #8518
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Laurențiu Nicola [Thu, 27 May 2021 16:30:28 +0000 (19:30 +0300)]
Display unknown types in analysis-stats
Lukas Wirth [Thu, 27 May 2021 16:15:18 +0000 (18:15 +0200)]
Cleanup `ImmediateLocation` determination
bors[bot] [Thu, 27 May 2021 14:27:56 +0000 (14:27 +0000)]
Merge #9024
9024: internal: Don't store supertraits in ItemTree r=jonas-schievink a=lnicola
Closes #9010
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Laurențiu Nicola [Thu, 27 May 2021 13:52:15 +0000 (16:52 +0300)]
Don't store supertraits in ItemTree
Jonas Schievink [Mon, 17 May 2021 17:07:10 +0000 (19:07 +0200)]
Update salsa
bors[bot] [Thu, 27 May 2021 11:56:26 +0000 (11:56 +0000)]
Merge #8997
8997: internal: stop expanding UseTrees during ItemTree lowering r=jonas-schievink a=jonas-schievink
Closes https://github.com/rust-analyzer/rust-analyzer/issues/8908
Messy diff, but `ItemTree` lowering got simpler, since we now have a strict 1-to-1 mapping between `ast::Item` and `ModItem`.
The most messy part is mapping a single `UseTree` back to its `ast::UseTree` counterpart for diagnostics, but I think the ad-hoc source map built during lowering does the job.
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Thu, 27 May 2021 11:55:31 +0000 (13:55 +0200)]
Drop `ignore` from doctests
Lukas Wirth [Thu, 27 May 2021 02:34:21 +0000 (04:34 +0200)]
Don't complete non-macro item paths in impls and modules
bors[bot] [Thu, 27 May 2021 08:59:53 +0000 (08:59 +0000)]
Merge #9022
9022: internal: disable debuginfo afterall r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Thu, 27 May 2021 08:53:33 +0000 (11:53 +0300)]
internal: disable debuginfo afterall
bors[bot] [Thu, 27 May 2021 08:17:10 +0000 (08:17 +0000)]
Merge #9021
9021: internal: explain the motivation behind early configuration r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Thu, 27 May 2021 08:16:14 +0000 (11:16 +0300)]
internal: explain the motivation behind early configuration
bors[bot] [Thu, 27 May 2021 07:04:15 +0000 (07:04 +0000)]
Merge #9005
9005: internal: Document semantic token tags r=matklad a=Veykril
Closes #6457
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
bors[bot] [Thu, 27 May 2021 01:48:36 +0000 (01:48 +0000)]
Merge #9019
9019: internal: simplify r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Thu, 27 May 2021 01:47:20 +0000 (03:47 +0200)]
simplify
bors[bot] [Thu, 27 May 2021 01:22:28 +0000 (01:22 +0000)]
Merge #9018
9018: Collapse more CompletionContext booleans into enums r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Thu, 27 May 2021 01:01:46 +0000 (03:01 +0200)]
simplify
Lukas Wirth [Thu, 27 May 2021 00:54:49 +0000 (02:54 +0200)]
Collapse more CompletionContext booleans into enums
bors[bot] [Wed, 26 May 2021 23:06:59 +0000 (23:06 +0000)]
Merge #9017
9017: internal: Reduce the number of traits passed through chalk during applicable trait lookup r=SomeoneToIgnore a=SomeoneToIgnore
Inherent traits can be omitted before trait solving, presumably slightly helping https://github.com/rust-analyzer/rust-analyzer/issues/7542 and slightly simplifying the code.
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Kirill Bulatov [Wed, 26 May 2021 23:00:23 +0000 (02:00 +0300)]
Exclude inherent traits more eagerly
bors[bot] [Wed, 26 May 2021 21:49:06 +0000 (21:49 +0000)]
Merge #9016
9016: Set `record_pat_syntax` more precisely in CompletionContext r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>