aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge #6706bors[bot]2020-12-0817-118/+565
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6706: Move import text edit calculation into a completion resolve request r=matklad a=SomeoneToIgnore Part of https://github.com/rust-analyzer/rust-analyzer/issues/6612 (presumably fixing it) Part of https://github.com/rust-analyzer/rust-analyzer/issues/6366 (does not cover all possible resolve capabilities we can do) Closes https://github.com/rust-analyzer/rust-analyzer/issues/6594 Further improves imports on completion performance by deferring the computations for import inserts. To use the new mode, you have to have the experimental completions enabled and use the LSP 3.16-compliant client that reports `additionalTextEdits` in its `CompletionItemCapabilityResolveSupport` field in the client capabilities. rust-analyzer VSCode extension does this already hence picks up the changes completely. Performance implications are descrbed in: https://github.com/rust-analyzer/rust-analyzer/issues/6633#issuecomment-737295182 Co-authored-by: Kirill Bulatov <[email protected]>
| * Tweak the search query params for better lookup speedKirill Bulatov2020-12-082-32/+38
| |
| * Better config nameKirill Bulatov2020-12-086-16/+19
| |
| * Disable the completion for no corresponding client resolve capabilitiesKirill Bulatov2020-12-0712-163/+87
| |
| * Document the featureKirill Bulatov2020-12-071-0/+43
| |
| * SimplifyKirill Bulatov2020-12-074-36/+35
| |
| * Check lsp completions' edits for disjointnessKirill Bulatov2020-12-072-1/+176
| |
| * Less panic, more testsKirill Bulatov2020-12-073-11/+62
| |
| * Fix the profiling labelKirill Bulatov2020-12-071-1/+1
| |
| * Use stateless completion resolveKirill Bulatov2020-12-076-71/+124
| |
| * Remove the stateKirill Bulatov2020-12-077-107/+37
| |
| * Make completion resolve asyncKirill Bulatov2020-12-077-53/+116
| |
| * Simplify import edit calculationKirill Bulatov2020-12-0712-111/+114
| |
| * Remove redundant codeKirill Bulatov2020-12-078-103/+80
| |
| * Refactor the codeKirill Bulatov2020-12-0711-34/+48
| |
| * Add eager resolve capabilityKirill Bulatov2020-12-078-13/+43
| |
| * Better support client completion resolve capsKirill Bulatov2020-12-075-105/+120
| |
| * Properly fill client completion resolve capabilities dataKirill Bulatov2020-12-075-5/+56
| |
| * Resolve import inserts betterKirill Bulatov2020-12-072-38/+91
| |
| * Remove unnecessary leftoversKirill Bulatov2020-12-072-3/+0
| |
| * Working resolve completion imports prototypeKirill Bulatov2020-12-079-46/+78
| |
| * Draft the new lsp handlerKirill Bulatov2020-12-075-24/+52
| |
* | Merge #6759bors[bot]2020-12-081-4/+1
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | 6759: Remove workaround & fix fetch$1 is not a function r=lnicola a=kafji Remove workaround for https://github.com/rollup/plugins/issues/491 because it's fixed in 15.0 https://github.com/rollup/plugins/blob/master/packages/commonjs/CHANGELOG.md#v1500. Also fix fetch$1 is not a function error https://github.com/rust-analyzer/rust-analyzer/issues/6757. Co-authored-by: Kafji <[email protected]>
| * Remove workaround & fix fetch$1 is not a functionKafji2020-12-081-4/+1
|/ | | | | | | | | Remove workaround for https://github.com/rollup/plugins/issues/491 because it's fixed in 15.0 https://github.com/rollup/plugins/blob/master/packages/commonjs/CHANGELOG.md#v1500. Also fix fetch$1 is not a function error https://github.com/rust-analyzer/rust-analyzer/issues/6757.
* Merge #6754bors[bot]2020-12-072-2/+20
|\ | | | | | | | | | | | | | | | | | | 6754: Apply environment set by build scripts r=jonas-schievink a=jonas-schievink Fixes inclusion of generated files in typenum/heapless/defmt etc. bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * Apply environment set by build scriptsJonas Schievink2020-12-072-2/+20
|/
* Merge #6752bors[bot]2020-12-071-0/+5
|\ | | | | | | | | | | | | | | 6752: Pass `--target` when loading out dirs from check r=jonas-schievink a=jonas-schievink bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * Pass `--target` when loading out dirs from checkJonas Schievink2020-12-071-0/+5
| |
* | Merge #6749bors[bot]2020-12-072-30/+19
|\ \ | | | | | | | | | | | | | | | | | | | | | 6749: cargo update r=lnicola a=kjeremy Co-authored-by: kjeremy <[email protected]>
| * | Update expect-test and remove outdated licensekjeremy2020-12-072-5/+4
| | |
| * | cargo updatekjeremy2020-12-071-25/+15
| | |
* | | Merge #6719bors[bot]2020-12-075-23/+23
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | 6719: Use items can also have doc comments r=matklad a=Veykril Prior to this change modules show more docs than they have cause they inherit the docs from documented use items inside of them. Co-authored-by: Lukas Wirth <[email protected]>
| * | Use items can also have doc commentsLukas Wirth2020-12-045-23/+23
| | |
* | | Merge #6751bors[bot]2020-12-071-1/+1
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6751: Use the right `def_crate` for builtin macros r=jonas-schievink a=jonas-schievink Fixes the incorrect macro resolution in https://github.com/rust-analyzer/rust-analyzer/issues/6716 No test, because diagnostics do not get remapped correctly for some reason. I've checked manually that this fixes the resolution errors. bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | Use the right `def_crate` for builtin macrosJonas Schievink2020-12-071-1/+1
|/ /
* | Merge #6748bors[bot]2020-12-072-691/+579
|\ \ | | | | | | | | | | | | | | | | | | | | | 6748: Update npm packages r=kjeremy a=kjeremy Co-authored-by: kjeremy <[email protected]>
| * | Update npm packageskjeremy2020-12-072-691/+579
|/ /
* | Merge #6745bors[bot]2020-12-0712-99/+84
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6745: Some more proc macro cleanups r=jonas-schievink a=jonas-schievink * Remove `ProcMacroClient::dummy` and just use `Option<ProcMacroClient>` instead * Remember the type of proc macros (later allows us to reject using an incorrect macro type) * Prepare a few internals for procedural attribute macros bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | Remove resolved FIXMEJonas Schievink2020-12-071-1/+0
| | |
| * | Remove dummy ProcMacroClient in favor of OptionJonas Schievink2020-12-075-71/+59
| | |
| * | Retain types of proc macros and allow attr. macrosJonas Schievink2020-12-076-22/+30
| | |
| * | Make `ProcMacroProcessExpander` privateJonas Schievink2020-12-071-1/+1
| | |
| * | ProcMacroProcessExpander: support attribute macrosJonas Schievink2020-12-072-21/+11
| | |
* | | Merge #6743bors[bot]2020-12-072-13/+11
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6743: Don't insert blank lines between doc attributes r=Veykril a=Veykril Fixes #6742. Doc attributes should be concatenated via a single linebreak as written in the [rustdoc book](https://doc.rust-lang.org/nightly/rustdoc/the-doc-attribute.html). Also changed the loop to use an iterator to get rid of the `docs.trim_end_matches("\n\n").to_owned()` part using `Itertools::intersperse`. Co-authored-by: Lukas Wirth <[email protected]>
| * | | Don't insert blank lines between doc attributesLukas Wirth2020-12-072-13/+11
| | | |
* | | | Merge #6731bors[bot]2020-12-077-5/+319
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6731: Add replace_match_with_if_let assist r=matklad a=Veykril Basically the counterpart to `replace_if_let_with_match`, I personally sometimes want to replace matches like ```rust match foo { pat => expr, _ => (), } ``` into the corresponding ```rust if let pat = foo { expr } ``` which is the main reasoning behind this. I put this into the same file as `replace_if_let_with_match` because the are complementing each other and I would probably rename the file to something like `replace_if_let_match` but I didn't do that for now because I was unsure whether git would still view this as a rename or not due to the amount of changes in the file so that the diff is still properly visible for now. Co-authored-by: Lukas Wirth <[email protected]>
| * | | Add replace_match_with_if_let assistLukas Wirth2020-12-057-5/+319
| | |/ | |/|
* | | Merge #6597bors[bot]2020-12-078-25/+137
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6597: Upgrade Chalk r=flodiebold a=flodiebold Also make overflow depth and max type size configurable through env variables. This can be helpful at least for debugging. Tests currently fail because of rust-lang/chalk#656, so we'll need to wait for the next update to merge this. Co-authored-by: Florian Diebold <[email protected]>
| * | | Upgrade ChalkFlorian Diebold2020-12-078-25/+137
|/ / / | | | | | | | | | | | | | | | | | | Also make overflow depth and max type size configurable through env variables. This can be helpful at least for debugging. Fixes #6628.
* | | Merge #6733bors[bot]2020-12-061-3/+39
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | 6733: Update attributes completion list r=jonas-schievink a=Veykril Might be nice to have them grouped for readability/maintainability similar to how the [reference](https://doc.rust-lang.org/reference/attributes.html#built-in-attributes-index) does it but that would require the use of a `OnceCell` for sorting the entries back after construction. Co-authored-by: Lukas Wirth <[email protected]>