aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge #9218bors[bot]2021-06-113-11/+215
|\ | | | | | | | | | | | | | | 9218: Item search now respects trait impl items r=Veykril a=Veykril Fixes #2977 Co-authored-by: Lukas Wirth <[email protected]>
| * Item search now respects trait impl itemsLukas Wirth2021-06-113-11/+215
| |
* | Merge #9217bors[bot]2021-06-1144-680/+819
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 9217: internal: Don't stringify and reparse `cfg_attr`-gated attributes r=jonas-schievink a=jonas-schievink Bumps ungrammar to include https://github.com/rust-analyzer/ungrammar/pull/33 bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | Don't stringify `cfg_attr`-gated attributesJonas Schievink2021-06-111-4/+18
| | | | | | | | | | | | This preserves the assigned `TokenId`s
| * | Update ungrammarJonas Schievink2021-06-1143-676/+801
| | |
* | | Merge #9216bors[bot]2021-06-112-18/+21
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | 9216: fix: Don't allow lookup by self for unprefixed self access completions r=Veykril a=Veykril Fixes #9211 bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * | Don't allow lookup by self for unprefixed self access completionsLukas Wirth2021-06-112-18/+21
| |/
* | Merge #9215bors[bot]2021-06-111-2/+9
|\ \ | | | | | | | | | | | | | | | | | | | | | 9215: change visibility for use and macro items r=jonas-schievink a=Maan2003 Co-authored-by: Maan2003 <[email protected]>
| * | change visibility for use and macro itemsMaan20032021-06-111-2/+9
| | |
* | | Merge #9192bors[bot]2021-06-1110-79/+140
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9192: internal: Build test-macros in a build script r=jonas-schievink a=jonas-schievink This build the test-proc-macros in `proc_macro_test` in a build script, and copies the artifact to `OUT_DIR`. This should make it available throughout all of rust-analyzer at no cost other than depending on `proc_macro_test`, fixing https://github.com/rust-analyzer/rust-analyzer/issues/9067. This hopefully will let us later write inline tests that utilize proc macros, which makes my life fixing proc macro bugs easier. Opening this as a sort of RFC, because I'm not totally sure this approach is the best. Co-authored-by: Jonas Schievink <[email protected]>
| * | | Try to fix unique file names on WindowsJonas Schievink2021-06-091-4/+7
| | | |
| * | | Build test-macros in a build scriptJonas Schievink2021-06-099-75/+133
| | | |
* | | | Merge #9209bors[bot]2021-06-111-1/+29
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | 9209: Don't suggest Remove unused param in trait impls r=Veykril a=Maan2003 See the added test for description Co-authored-by: Maan2003 <[email protected]>
| * | | Don't suggest Remove unused param in trait implsMaan20032021-06-111-1/+29
|/ / /
* | | Merge #9208bors[bot]2021-06-117-14/+32
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9208: minor: Populate import maps eagerly to speed up flyimports r=SomeoneToIgnore a=SomeoneToIgnore Part of #7542 Follow up of https://github.com/rust-analyzer/rust-analyzer/pull/9206#issuecomment-859097783 Reduces `import_on_the_fly @ sel` case in the `integrated_completion_benchmark` by ~300ms. Also enables cache priming for manual workspace loading to reflect the results in the benchmarks. Before: <img width="1198" alt="image" src="https://user-images.githubusercontent.com/2690773/121606148-4a734a80-ca56-11eb-812a-7955e93817f1.png"> After: <img width="1200" alt="image" src="https://user-images.githubusercontent.com/2690773/121606156-4e06d180-ca56-11eb-891b-1ed878b53d7e.png"> Co-authored-by: Kirill Bulatov <[email protected]>
| * | | Only prefill caches in the completion benchmarkKirill Bulatov2021-06-115-5/+21
| | | |
| * | | Fix visibility issuesKirill Bulatov2021-06-111-5/+5
| | | |
| * | | Prime caches on workspace loadKirill Bulatov2021-06-112-2/+3
| | | |
| * | | Populate import maps eagerlyKirill Bulatov2021-06-101-3/+4
|/ / /
* | | Merge #9206bors[bot]2021-06-106-82/+97
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9206: minor: Speed up fst items lookup during completions r=SomeoneToIgnore a=SomeoneToIgnore Part of https://github.com/rust-analyzer/rust-analyzer/issues/7542 A number of profile calls added for `import_on_the_fly` contents. Before: <img width="606" alt="Screenshot 2021-06-11 at 00 19 13" src="https://user-images.githubusercontent.com/2690773/121598998-22321e80-ca4b-11eb-9a3d-dc9cb2936705.png"> After: <img width="859" alt="Screenshot 2021-06-11 at 00 19 27" src="https://user-images.githubusercontent.com/2690773/121599022-2a8a5980-ca4b-11eb-82b6-13ab0ed56d58.png"> As a result, low hanging fruit was spotted: crazy amount of `fst_path` calls. Reducing that won ~200ms in the `import_on_the_fly @ sel` case in the `integrated_completion_benchmark`: <img width="861" alt="Screenshot 2021-06-11 at 00 19 38" src="https://user-images.githubusercontent.com/2690773/121599277-7d641100-ca4b-11eb-8667-53206994de27.png"> I'm not sure how to proceed with the remaining `???` marks in such methods as `collect_import_map` though: there's nothing but library calls in cycles, but maybe I'll come up with something later. Co-authored-by: Kirill Bulatov <[email protected]>
| * | | Reduce fst_path callsKirill Bulatov2021-06-101-11/+5
| | | |
| * | | Add more profiling for flyimportsKirill Bulatov2021-06-106-71/+92
|/ / /
* | | Merge #9202bors[bot]2021-06-103-0/+20
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9202: feat: Make `MemoryUsage` work on Windows r=jonas-schievink a=jonas-schievink Unfortunately there is no convenient API for heap statistics, so this instead uses the Commit Charge value, which is the amount of memory that needs to be allocated either in physical RAM or in the page file. This approximation seems to be good enough to find queries that waste a large amount of memory, but it should generally be expected to be off by several MB. bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | Make `MemoryUsage` work on WindowsJonas Schievink2021-06-103-0/+20
| | | |
* | | | Merge #9196bors[bot]2021-06-092-5/+23
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | 9196: fix: Don't classify attributes on macro-calls are the macro itself r=Veykril a=Veykril Fixes #9184 bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * | | Don't classify attributes on macro-calls are the macro itselfLukas Wirth2021-06-092-5/+23
|/ / /
* | | Merge #9195bors[bot]2021-06-091-208/+178
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 9195: minor: Simplify r=Veykril a=Veykril bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * | SimplifyLukas Wirth2021-06-091-208/+178
| |/
* | Merge #9193bors[bot]2021-06-0910-11/+128
|\ \ | |/ |/| | | | | | | | | | | 9193: Implement dummy expansions for builtin attributes r=jonas-schievink a=Veykril Co-authored-by: Lukas Wirth <[email protected]>
| * Remove unnecessary duplicationLukas Wirth2021-06-091-56/+8
| |
| * Implement dummy expansions for builtin attributesLukas Wirth2021-06-0910-11/+176
|/
* Merge #9191bors[bot]2021-06-093-2/+20
|\ | | | | | | | | | | | | | | 9191: fix: Don't descend MacroCall TokenTree delimiters r=jonas-schievink a=Veykril Fixes #9190 Co-authored-by: Lukas Wirth <[email protected]>
| * Don't descend MacroCall TokenTree delimitersLukas Wirth2021-06-093-2/+20
| |
* | Merge #9186bors[bot]2021-06-081-20/+14
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 9186: fix: Prefer attr macros in "expand macro recursively" r=jonas-schievink a=jonas-schievink This allows expanding attribute macros on fn-like macro invocations bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | Prefer attr macros in "expand macro recursively"Jonas Schievink2021-06-081-20/+14
| | |
* | | Merge #9183bors[bot]2021-06-081-1/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9183: Fix typo r=lnicola a=phynalle Co-authored-by: phynalle <[email protected]>
| * | | Fix typophynalle2021-06-081-1/+1
| | |/ | |/|
* | | Merge #9187bors[bot]2021-06-083-8/+30
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | 9187: fix: Fix edge case for ImportGranularity guessing r=Veykril a=Veykril bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * | Fix edge case for ImportGranularity guessingLukas Wirth2021-06-083-8/+30
| |/
| |
| \
*-. \ Merge #9181 #9182bors[bot]2021-06-0810-59/+219
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9181: Don't complete values in type position r=jonas-schievink a=Veykril Will add some proper tests in a bit 9182: fix: don't complete derive macros as fn-like macros r=jonas-schievink a=jonas-schievink Part of https://github.com/rust-analyzer/rust-analyzer/issues/8518 bors r+ Co-authored-by: Lukas Wirth <[email protected]> Co-authored-by: Jonas Schievink <[email protected]>
| | * | fix: don't complete derive macros as fn-like macrosJonas Schievink2021-06-084-4/+88
| | | |
| * | | Add tests checking no value completion in type posLukas Wirth2021-06-083-0/+55
| | | |
| * | | Don't complete values in type positionLukas Wirth2021-06-088-55/+76
| | |/ | |/|
* | | Merge #9180bors[bot]2021-06-081-50/+56
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9180: fix: fix some IDE functionality inside attribute macros r=jonas-schievink a=jonas-schievink In `SourceToDefCtx::find_container`, we might encounter a container that has an attribute macro. We need to skip that item, instead of bailing out and creating an empty `Resolver`, otherwise all names in the macro stay unresolved. Part of https://github.com/rust-analyzer/rust-analyzer/issues/9142 bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | source_to_def: skip items with no defJonas Schievink2021-06-081-50/+56
|/ /
* | Revert "Merge #9177"Aleksey Kladov2021-06-081-342/+335
| | | | | | | | | | | | | | This reverts commit f1818cb7ba2808cba3fd9bf8f199c382060a1f19, reversing changes made to 6c9362d61b895c11b1d0cf6837ada9f2a0a30eaf. This broke things
* | Merge #9177bors[bot]2021-06-081-335/+342
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | 9177: :arrow_up: npm packages r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | :arrow_up: npm packagesAleksey Kladov2021-06-081-335/+342
| | |
* | | Merge #9153bors[bot]2021-06-081-0/+1
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | 9153: QOL: VSCode status bar icon on click now shows server status r=matklad a=Milo123459 Now, when you click the little status bar text, it will automatically reload the server. I don't think I've ever seen anyone click it randomly, and, it's there to save you a few clicks. Co-authored-by: Milo <[email protected]>
| * | fixMilo2021-06-071-1/+1
| | |