6982: Remove parentheses when inverting `!(cond)` r=matklad a=Jesse-Bakker
Followup to #6894
When inverting a composite condition twice, the parentheses were left. This also removes those unnecessary parentheses when applying the invert-if assist.
Co-authored-by: Jesse Bakker <github@jessebakker.com>
6978: Filter out empty rustc spans r=lnicola a=jonas-schievink
Hopefully, this fixes https://github.com/rust-analyzer/rust-analyzer/issues/6892 (I couldn't test it since r-a currently requires a too recent version of VS Code)
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
6974: Stop setting CompletionItem::deprecated r=matklad a=lnicola
Closes#2042
We're now using the `CompletionItem::tags` field to mark `CompletionItem`s as deprecated, and `CompletionItem::deprecated` is gone from LSP.
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
6961: Document the version requirements for building from source r=lnicola a=lnicola
Fixes#6667
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
6921: Higher-ranked trait bounds for where clauses r=flodiebold a=Veykril
There is a slight problem with this which is also noted in a FIXME now but `LifetimeParameters` of these ForLifetime where clauses allocate the lifetimes in the corresponding arena as if they were lifetimes of the item itself and not just the clause they belong to. I wasn't entirely sure what I could do about this but given nothing really uses lifetimes like that currently I figured it might be fine? Open to suggestions for that problem.
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
6946: Better fuzzy heuristics r=matklad a=SomeoneToIgnore
Continuation of the https://github.com/rust-analyzer/rust-analyzer/pull/6922, mainly created for a test.
Turns out our current completions tests were sorting the completions by label, I had to remove that to test the order properly and update this order in a bunch of tests (ergo the changes)
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
6951: Make sure that HighlightModifier::ALL is synchronized with enum r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
6948: Add API for mapping `Attr` back to its syntax node r=jonas-schievink a=jonas-schievink
This will be useful for emitting diagnostics pertaining to a specific attribute
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>