6990: Allow code extension to download binary in apple arm r=lnicola a=phungleson
Apple chip has a new `arch`. It subsequently downloads Intel version of `rust-analyzer` but it works regardless.
Co-authored-by: Son <leson.phung@gmail.com>
6985: Use /etc/os-release to check for NixOS r=matklad a=lnicola
Closes#5641
The motivation in #5641 isn't too strong, but /etc/os-release exists on pretty much every Linux distro, while /etc/nixos sounds like an implementation detail.
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
6987: Delete related whitespace when removing unused param r=matklad a=rherrmann
Include adjacent whitespace in the text edits to remove the
parameter declaration and its occurences in calling code.
https://github.com/rust-analyzer/rust-analyzer/issues/6663
Co-authored-by: Rüdiger Herrmann <ruediger.herrmann@gmx.de>
The motivation in #5641 isn't too strong, but /etc/os-release exists on
pretty much every Linux distro, while /etc/nixos sounds like an
implementation detail.
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>