aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge #9147bors[bot]2021-06-054-22/+21
|\ | | | | | | | | | | | | | | 9147: internal: enable proc macros and build scripts in cli r=flodiebold a=lnicola Co-authored-by: Laurențiu Nicola <[email protected]>
| * Enable proc macros and build scripts by default in CLILaurențiu Nicola2021-06-054-22/+21
| |
* | Merge #9148bors[bot]2021-06-051-1/+32
|\ \ | |/ |/| | | | | | | | | | | | | 9148: minor: Prevent renaming of aliases on usages r=Veykril a=Veykril Otherwise trying to rename a usage that goes through an alias will still rename the aliased item instead, cc https://github.com/rust-analyzer/rust-analyzer/issues/5671 bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * Prevent renaming of aliases on usagesLukas Wirth2021-06-051-1/+32
| |
* | Merge #9146bors[bot]2021-06-051-9/+9
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | 9146: minor: Fix incorrect list nesting in format_like feature description r=Veykril a=Veykril bors r+ Closes #6261 Co-authored-by: Lukas Wirth <[email protected]>
| * | Fix incorrect list nesting in format_like feature descriptionLukas Wirth2021-06-051-9/+9
| |/
* | Merge #9145bors[bot]2021-06-051-0/+3
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9145: internal: Enable attribute macro expansion in `analysis-stats` r=flodiebold a=flodiebold Before: ``` > $ rust-analyzer -q analysis-stats --with-proc-macro --load-output-dirs . Database loaded: 19.08s, 277minstr crates: 34, mods: 688, decls: 13202, fns: 10412 Item Collection: 16.21s, 76ginstr exprs: 290580, ??ty: 2508 (0%), ?ty: 1814 (0%), !ty: 947 Inference: 27.46s, 108ginstr Total: 43.67s, 184ginstr ``` After: ``` > $ ./target/release/rust-analyzer -q analysis-stats --with-proc-macro --load-output-dirs . Database loaded: 1.09s, 277minstr crates: 34, mods: 688, decls: 14790, fns: 11006 Item Collection: 18.20s, 78ginstr exprs: 297826, ??ty: 493 (0%), ?ty: 558 (0%), !ty: 342 Inference: 28.34s, 111ginstr Total: 46.54s, 190ginstr ``` Co-authored-by: Florian Diebold <[email protected]>
| * | Enable attribute macro expansion in `analysis-stats`Florian Diebold2021-06-051-0/+3
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before: ``` > $ rust-analyzer -q analysis-stats --with-proc-macro --load-output-dirs . Database loaded: 19.08s, 277minstr crates: 34, mods: 688, decls: 13202, fns: 10412 Item Collection: 16.21s, 76ginstr exprs: 290580, ??ty: 2508 (0%), ?ty: 1814 (0%), !ty: 947 Inference: 27.46s, 108ginstr Total: 43.67s, 184ginstr ``` After: ``` > $ ./target/release/rust-analyzer -q analysis-stats --with-proc-macro --load-output-dirs . Database loaded: 1.09s, 277minstr crates: 34, mods: 688, decls: 14790, fns: 11006 Item Collection: 18.20s, 78ginstr exprs: 297826, ??ty: 493 (0%), ?ty: 558 (0%), !ty: 342 Inference: 28.34s, 111ginstr Total: 46.54s, 190ginstr ```
* | Merge #9141bors[bot]2021-06-041-0/+17
|\ \ | |/ |/| | | | | | | | | | | 9141: fix: Don't inline mutable locals in 'inline_local_variable' r=Veykril a=Veykril Fixes #9139 Co-authored-by: Lukas Wirth <[email protected]>
| * Don't inline mutable locals in 'inline_local_variable'Lukas Wirth2021-06-041-0/+17
|/
* Merge #9138bors[bot]2021-06-048-3473/+4064
|\ | | | | | | | | | | | | | | | | | | | | | | | | 9138: feat: Implement hover for lints r=Veykril a=Veykril fixes https://github.com/rust-analyzer/rust-analyzer/issues/8857, fixes https://github.com/rust-analyzer/rust-analyzer/issues/3941 ![URXBanNxYe](https://user-images.githubusercontent.com/3757771/120830905-4bd8da80-c55f-11eb-9f55-ff5a321726fa.gif) We also generate the default lints(and lint groups 🎉) instead now by invoking `rustc -W help` and parsing the output from that. Co-authored-by: Lukas Wirth <[email protected]>
| * Exclude `crates/ide_db/src/helpers/generated_lints.rs` from `tidy::check_todo`Lukas Wirth2021-06-041-3/+5
| |
| * Replace `-` with `_` in generated lint namesLukas Wirth2021-06-043-150/+151
| |
| * Generate default lint groupsLukas Wirth2021-06-042-9/+53
| |
| * Generate default lint completionsLukas Wirth2021-06-047-777/+1130
| |
| * Implement hover for lintsLukas Wirth2021-06-045-2835/+3026
| |
* | Merge #9137bors[bot]2021-06-041-0/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9137: fix: fix incorrect "unresolved import" error when using derive helpers r=jonas-schievink a=jonas-schievink Fixes https://github.com/rust-analyzer/rust-analyzer/issues/9133 cursed bug bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | Return `ReachedFixedPoint::No` when resolving derive helperJonas Schievink2021-06-041-0/+1
| | |
* | | Merge #9136bors[bot]2021-06-046-1/+75
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9136: feat: Add function references hover action r=Veykril a=Veykril ![image](https://user-images.githubusercontent.com/3757771/120811670-8422ed80-c54c-11eb-87f5-dd65c1f8ef7d.png) This is off by default as this can slow down hover messages significantly for very big projects I believe. Fixes #6590 bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * | Add function references hover actionLukas Wirth2021-06-046-1/+75
|/ /
* | Merge #9135bors[bot]2021-06-041-540/+492
|\ \ | |/ |/| | | | | | | | | | | 9135: Reorganize inlay_hints tests r=Veykril a=Veykril bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * Cleanup parameter_hint_heuristics inlay hints testLukas Wirth2021-06-041-87/+68
| |
| * Reorganize inlay_hints testsLukas Wirth2021-06-041-522/+493
|/
* Merge #9128bors[bot]2021-06-0317-35/+234
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9128: feat: expand procedural attribute macros r=jonas-schievink a=jonas-schievink This adds experimental support for attribute macros. They can be enabled by setting `rust-analyzer.experimental.procAttrMacros` to `true`. Known issues: * Tokens aren't remapped, presumably because we edit the input syntax tree (this causes IDE features to not work inside items with attribute macros on them) * Macro errors aren't reported correctly Closes https://github.com/rust-analyzer/rust-analyzer/issues/8971 Fixes https://github.com/rust-analyzer/rust-analyzer/issues/8964 / https://github.com/la10736/rstest/issues/120 Fixes https://github.com/rust-analyzer/rust-analyzer/issues/2984 Fixes https://github.com/rust-analyzer/rust-analyzer/issues/5412 Fixes https://github.com/rust-analyzer/rust-analyzer/issues/6029 Fixes https://github.com/rust-analyzer/rust-analyzer/issues/6687 https://github.com/rust-analyzer/rust-analyzer/issues/6740 is still not fixed – we now expand `#[proc_macro_hack]`, but fail to expand the resulting `proc_macro_call!()` macro. Co-authored-by: Jonas Schievink <[email protected]>
| * Set enable_proc_attr_macros in hir_ty TestDBJonas Schievink2021-06-031-1/+9
| |
| * Update list of built-in attributesJonas Schievink2021-06-031-16/+22
| |
| * Make it opt-inJonas Schievink2021-06-039-4/+44
| |
| * Expand procedural attribute macrosJonas Schievink2021-06-037-14/+159
|/
* Merge #9130bors[bot]2021-06-031-70/+57
|\ | | | | | | | | | | | | | | | | | | | | 9130: Prefix/suffix parameter inlay hint hiding heuristic is more strict r=Veykril a=Veykril Instead of just plainly checking prefix/suffix of the argument string to the parameter name we only check for prefixes and suffixes if they are split apart via an underscore meaning, with the argument `foo`, it will be hidden for the parameter name `foo_bar` but not for `foobar`. bors r+ Closes https://github.com/rust-analyzer/rust-analyzer/issues/8878 Co-authored-by: Lukas Wirth <[email protected]>
| * Prefix/suffix parameter inlay hint hiding heuristic is more strictLukas Wirth2021-06-031-70/+57
| |
* | Merge #9129bors[bot]2021-06-035-5/+5
|\ \ | | | | | | | | | | | | | | | | | | | | | 9129: NFC: remove redundant clones (clippy::perf) r=Veykril a=matthiaskrgr Co-authored-by: Matthias Krüger <[email protected]>
| * | NFC: remove redundant clones (clippy::perf)Matthias Krüger2021-06-035-5/+5
|/ /
* | Merge #9127bors[bot]2021-06-032-4/+43
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 9127: internal: make variant fields inherit the enum's visibility in the ItemTree r=jonas-schievink a=jonas-schievink No observable changes from what I can tell, but this is "more correct". bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | ItemTree: make variant fields inherit the enum's visibilityJonas Schievink2021-06-032-4/+43
| | |
* | | Merge #9124bors[bot]2021-06-0313-60/+43
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 9124: Apply a few clippy suggestions r=lnicola a=clemenswasser Co-authored-by: Clemens Wasser <[email protected]>
| * | Use push_strClemens Wasser2021-06-031-2/+2
| | |
| * | Apply more clippy suggestions and update generatedClemens Wasser2021-06-0311-142/+51
| | |
| * | Apply a few clippy suggestionsClemens Wasser2021-06-034-47/+121
| | |
* | | Merge #9104bors[bot]2021-06-033-2/+80
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9104: Implement `#[rustc_skip_array_during_method_dispatch]` r=flodiebold a=jonas-schievink haxx run the world Closes https://github.com/rust-analyzer/rust-analyzer/issues/8552 Part of https://github.com/rust-analyzer/rust-analyzer/issues/9056 Co-authored-by: Jonas Schievink <[email protected]>
| * | | Add commentJonas Schievink2021-06-031-0/+3
| | | |
| * | | Implement `#[rustc_skip_array_during_method_dispatch]`Jonas Schievink2021-06-013-2/+77
| | | |
* | | | Merge #9105bors[bot]2021-06-035-15/+50
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9105: internal: calculate pattern adjustments r=flodiebold a=iDawer This extends `InferenceResult` with `pub pat_adjustments: FxHashMap<PatId, Vec<Ty>>`. Fixes #9095 Co-authored-by: Dawer <[email protected]>
| * | | internal: implement pattern adjustments.Dawer2021-06-013-2/+35
| | | |
| * | | minor: Avoid eprintln on panicDawer2021-06-012-13/+15
| | | |
* | | | Merge #9123bors[bot]2021-06-031-0/+14
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9123: manual.adoc: add Gentoo Linux installation method r=lnicola a=mjkalyan Added installation instructions for the binary ebuild of the "latest" `rust-analyzer` in Gentoo's GURU repository. Co-authored-by: mjkalyan <[email protected]>
| * | | | manual.adoc: add Gentoo Linux installation methodmjkalyan2021-06-031-0/+14
|/ / / / | | | | | | | | Added installation instructions for the binary ebuild of the "latest" `rust-analyzer` in Gentoo's GURU repository.
* | | | Merge #9119bors[bot]2021-06-021-12/+56
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9119: fix: some minor "extract type alias" fixes r=jonas-schievink a=jonas-schievink It now correctly works inside traits, and no longer messes up the indentation of the original node bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | | Preserve indentationJonas Schievink2021-06-021-5/+30
| | | | |
| * | | | Account for traitsJonas Schievink2021-06-021-10/+29
| | | | |
* | | | | Merge #9118bors[bot]2021-06-023-1/+3
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9118: Document that `addCallArgumentSnippets` requires `addCallParenthesis r=Veykril a=Veykril bors r+ Co-authored-by: Lukas Wirth <[email protected]>