aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Prepare for pat_field_shorthandAleksey Kladov2020-10-151-5/+13
|
* Merge #6240bors[bot]2020-10-151-0/+55
|\ | | | | | | | | | | | | | | 6240: Document auto_import as a feature r=Veykril a=Veykril Closes #6225 Co-authored-by: Lukas Wirth <[email protected]>
| * Document auto_import as a featureLukas Wirth2020-10-151-0/+55
| |
* | Merge #6236bors[bot]2020-10-151-2/+4
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 6236: Code: Insert a ZWNJ before `after` type hints r=matklad a=lnicola to prevent the editor from displaying a ligature there. Fixes #6235 Co-authored-by: Laurențiu Nicola <[email protected]>
| * | Insert a ZWNJ before type hintsLaurențiu Nicola2020-10-151-2/+4
| | |
* | | Merge #6239bors[bot]2020-10-151-0/+7
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | 6239: Cleanup alloc advice r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | Cleanup alloc adviceAleksey Kladov2020-10-151-0/+7
|/ /
* | Merge #6231bors[bot]2020-10-143-190/+231
|\ \ | | | | | | | | | | | | | | | | | | | | | 6231: Factor macro_rules and format-string highlighting out into submodules r=Veykril a=Veykril This moves `format`-like macro string highlighting and macro_rules highlight skipping out of the main module. Co-authored-by: Lukas Wirth <[email protected]>
| * | Default::default the highlightersLukas Wirth2020-10-143-18/+7
| | |
| * | Factor macro_rules! highlighting outLukas Wirth2020-10-142-117/+154
| | |
| * | Factor format string highlighting outLukas Wirth2020-10-142-75/+90
| | |
* | | Merge #6233bors[bot]2020-10-141-0/+25
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6233: Style: default over new r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | Style: default over newAleksey Kladov2020-10-141-0/+25
|/ / /
* | | Merge #6230bors[bot]2020-10-141-0/+4
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6230: Log around sysroot discovery r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | Log around sysroot discoveryAleksey Kladov2020-10-141-0/+4
|/ / /
* | | Merge #6229bors[bot]2020-10-141-0/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6229: Add docs for dbgr and call r=matklad a=lnicola Co-authored-by: Laurențiu Nicola <[email protected]>
| * | | Add docs for dbgr and callLaurențiu Nicola2020-10-141-0/+2
| | |/ | |/|
* | | Merge #6228bors[bot]2020-10-141-1/+6
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | 6228: Introduce S-actionable and S-unactionable labels r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | Introduce S-actionable and S-unactionable labelsAleksey Kladov2020-10-141-1/+6
|/ / | | | | | | | | | | | | | | | | | | I've noticed that a significant fraction of issues are inert. They are valid, acknowledged and useful, but effectively can't be fixed for variety of reasons (no reproduction, dependencies on some other issues, no review capacity, etc). Marking issues that can be fixed by just applying some elbow grease seems useful!
| |
| \
| \
| \
| \
| \
*-----. \ Merge #6207 #6224 #6226 #6227bors[bot]2020-10-148-247/+359
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6207: Extract ImportAssets out of auto_import r=matklad a=Veykril See https://github.com/rust-analyzer/rust-analyzer/pull/6172#issuecomment-707182140 I couldn't fully pull out `AssistContext` as `find_node_at_offset_with_descend`: https://github.com/rust-analyzer/rust-analyzer/blob/81fa00c5b5d5ffb559a39c7ff5190a2519a8ea61/crates/assists/src/assist_context.rs#L90-L92 requires the `SourceFile` which is private in it and I don't think making it public just for this is the right call? 6224: :arrow_up: salsa r=matklad a=matklad bors r+ 🤖 6226: Add reminder to update lsp-extensions.md r=matklad a=matklad bors r+ 🤖 6227: Reduce bors timeout r=matklad a=matklad bors r+ 🤖 Co-authored-by: Lukas Wirth <[email protected]> Co-authored-by: Aleksey Kladov <[email protected]>
| | | | * | Reduce bors timeoutAleksey Kladov2020-10-141-0/+1
| |_|_|/ / |/| | | |
| | | * | Add reminder to update lsp-extensions.mdAleksey Kladov2020-10-142-0/+55
| |_|/ / |/| | |
* | | | Merge #6217bors[bot]2020-10-143-17/+20
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6217: Bump pulldown-cmark r=matklad a=lnicola Co-authored-by: Laurențiu Nicola <[email protected]>
| * | | | Bump pulldown-cmarkLaurențiu Nicola2020-10-133-17/+20
| | |_|/ | |/| |
* | | | Merge #6222bors[bot]2020-10-143-2/+53
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6222: Fix stackoverflow in insert_use::recursive_merge r=matklad a=Veykril Fixes #6221. #6108 shouldn't be related to this as autocompletion doesn't depend on this code. Co-authored-by: Lukas Wirth <[email protected]>
| * | | Fix stackoverflow in insert_use::recursive_mergeLukas Wirth2020-10-143-2/+53
|/ / /
| | * :arrow_up: salsaAleksey Kladov2020-10-142-6/+6
| |/ |/|
* | Merge #6216bors[bot]2020-10-136-31/+58
|\ \ | | | | | | | | | | | | | | | | | | | | | 6216: Bump deps r=matklad a=lnicola Co-authored-by: Laurențiu Nicola <[email protected]>
| * | Bump regexLaurențiu Nicola2020-10-131-4/+4
| | |
| * | Bump rustc_lexerLaurențiu Nicola2020-10-132-3/+3
| | |
| * | Bump crossbeam-channel and lsp-server in rust-analyzerLaurențiu Nicola2020-10-132-6/+6
| | |
| * | Bump crossbeam-channel in cratesLaurențiu Nicola2020-10-134-15/+43
| | |
| * | Bump some depsLaurențiu Nicola2020-10-131-8/+8
| | |
| * | Remove Cargo.lock commentLaurențiu Nicola2020-10-131-1/+0
| | |
* | | Merge #6209bors[bot]2020-10-132-4/+33
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6209: Fix MergeBehaviour::Full/Last not working when merging nested long paths r=matklad a=Veykril Prior to this inserting `std::foo::bar::Baz` with a nested import containing a multi segment path like `use std::{foo::bar::Qux};` present would result in `use std::{foo::bar::Baz, foo::bar::Qux};` with Full/Last Mergebehaviour. Co-authored-by: Lukas Wirth <[email protected]>
| * | | Fix MergeBehaviour::Full not working when merging nested long pathsLukas Wirth2020-10-132-4/+33
| |/ /
* | | Merge #6213bors[bot]2020-10-131-2/+2
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 6213: Fix resolveCodeAction request r=SomeoneToIgnore a=lnicola Fixes #6204 Co-authored-by: Laurențiu Nicola <[email protected]>
| * | Fix resolveCodeAction requestLaurențiu Nicola2020-10-131-2/+2
|/ /
| * Slightly cleanup import_assets moduleLukas Wirth2020-10-132-62/+84
| |
| * Adhere to style guidelines in import_assetsLukas Wirth2020-10-132-43/+45
| |
| * Extract ImportAssets out of auto_importLukas Wirth2020-10-133-241/+273
|/
* Merge #6208bors[bot]2020-10-123-1/+10
|\ | | | | | | | | | | | | | | | | 6208: macOS: install GNU tar r=jonas-schievink a=jonas-schievink CI runs on macOS have started to fail due to https://github.com/actions/cache/issues/403. Use GNU tar instead of BSD tar to work around that. Co-authored-by: Jonas Schievink <[email protected]> Co-authored-by: Jonas Schievink <[email protected]>
| * Remove disabled builderJonas Schievink2020-10-121-1/+0
| |
| * Add comment and link to upstream issueJonas Schievink2020-10-121-0/+2
| |
| * Reenable bors gate for macOSJonas Schievink2020-10-121-1/+2
| |
| * macOS: install GNU tarJonas Schievink2020-10-122-0/+7
|/
*-. Merge #6130 #6135bors[bot]2020-10-1215-84/+1407
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6130: Items case quick fix (snake_case / UPPER_SNAKE_CASE / CamelCase) r=matklad a=popzxc Resolves #4598. After a third try, it finally works. Boy, it appeared tougher than it seemed. Initially I thought like "Ha, `rustc` already tells us where idents are named incorrectly. It shouldn't be that hard, should it?". Well, the problems with the information provided by `rustc` appeared shortly: - `rustc` warnings are `flycheck` warnings, which are slightly aside from our diagnostics with fixes. When we map flycheck diagnostic to LSP, we can convert it into a fix, but only if it's marked as `Applicability::MachineApplicable`. Name case fix is marked `Applicability::MaybeIncorrect`, and for a reason: it only suggest to rename symbol under cursor, without tracking any references. - Warning spawned by `rustc` are identified by string labels rather than enum. It means that if one day the diagnostic will be renamed in `rustc`, `rust-analyzer` code will still compile, but won't find the required diagnostic by name anymore. If by chance this will happen when some unlucky guy will decide to create their first pull request, they'll be confused by suddenly failing tests (likely) not related to their changes. - Even if we'll try to build fixes atop of `rustc` warnings, we'll have to do it in the `rust_analyzer::diagnostics::to_proto` module, which is far less convenient for that matter than `ide` crate. That's why I decided that it's worth a separate `rust-analyzer` diagnostic, which will implement `DiagnosticWithFix` trait. After that, I discovered that currently `hir_ty::diagnostics` only check `DefWithBody` types, like function bodies. I had to add support for diagnostics which look at any `ModuleDef`. And of course, since I'd added a lot of new functionality, it required extensive testing. That explains why the diff is so big for a (looking) relatively small feature. I hope that this PR doesn't only add a small feature, but also creates a base for building another features. ## Example: ![case_quick_fix](https://user-images.githubusercontent.com/12111581/95008475-e07ee780-0622-11eb-9978-62a9ea0e7782.gif) P.S. My eyes were bleeding when I had to write the code for the example... 6135: when generating new function, focus on return type instead of body r=matklad a=bnjjj I made a little change when we use the assist to generate a new function, instead of focusing on the function body, it will focus on return type Co-authored-by: Igor Aleksanov <[email protected]> Co-authored-by: Benjamin Coenen <[email protected]>
| | * when generating new function, focus on return type instead of bodyBenjamin Coenen2020-10-083-68/+80
| | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | Use TextRange::contains_inclusive in fixes checkIgor Aleksanov2020-10-122-5/+4
| | |
| * | Keep SyntaxNodePtr::range privateIgor Aleksanov2020-10-124-9/+17
| | |