aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Address commentshi-rustin2021-05-143-3/+25
|
* Apply async semantic token modifier to async/await keywordshi-rustin2021-05-145-0/+17
| | | | Only async semantic token modifier
* Merge #8830bors[bot]2021-05-132-0/+36
|\ | | | | | | | | | | | | | | | | | | 8830: feat: Implement bulitin macro `concat_idents` r=edwin0cheng a=edwin0cheng cc #8828 bors r+ Co-authored-by: Edwin Cheng <[email protected]>
| * Implement `concat_idents`Edwin Cheng2021-05-132-0/+36
| |
* | Merge #8822bors[bot]2021-05-133-6/+12
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | 8822: minor: Cleanup imports r=Veykril a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | Cleanup importsAleksey Kladov2021-05-133-6/+12
| | |
* | | Merge #8814bors[bot]2021-05-131-5/+33
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8814: fix: Keep doc comments and outer attrs on "Move module to file" assist r=Veykril a=Jesse-Bakker Fixes #8804 Co-authored-by: Jesse Bakker <[email protected]>
| * | | fix: Keep doc comments and outer attrs on "Move module to file" assistJesse Bakker2021-05-131-5/+33
| | |/ | |/|
* | | Merge #8820bors[bot]2021-05-132-2/+37
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8820: fix: Return absolute paths in find_path if crate start is ambiguous r=Veykril a=Veykril bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * | | Return absolute paths in find_path if crate start is ambiguousLukas Wirth2021-05-132-2/+37
| | | |
* | | | Merge #8823bors[bot]2021-05-131-4/+4
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8823: Enable OPTION::ENABLE_TASKLISTS in pulldown_cmark r=Veykril a=Veykril Closes #8821 Co-authored-by: Lukas Wirth <[email protected]>
| * | | | Enable OPTION::ENABLE_TASKLISTS in pulldown_cmarkLukas Wirth2021-05-131-4/+4
| |/ / /
* | | | Merge #8825bors[bot]2021-05-131-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8825: Corrected minor typo on line 20 r=lnicola a=mixio Co-authored-by: mixio <[email protected]>
| * | | | Corrected minor typo on line 20mixio2021-05-131-1/+1
|/ / / /
* | | | Merge #8799bors[bot]2021-05-1212-110/+156
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8799: Add basic support for array lengths in types r=flodiebold a=lf- This recognizes `let a = [1u8, 2, 3]` as having type `[u8; 3]` instead of the previous `[u8; _]`. Byte strings and `[0u8; 2]` kinds of range array declarations are unsupported as before. I don't know why a bunch of our rustc tests had single quotes inside strings un-escaped by `UPDATE_EXPECT=1 cargo t`, but I don't think it's bad? Maybe something in a nightly? Co-authored-by: Jade <[email protected]>
| * | | | address review by @eddybJade2021-05-112-2/+3
| | | | |
| * | | | Add basic support for array lengths in typesJade2021-05-1112-110/+155
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This recognizes `let a = [1u8, 2, 3]` as having type `[u8; 3]` instead of the previous `[u8; _]`. Byte strings and `[0u8; 2]` kinds of range array declarations are unsupported as before. I don't know why a bunch of our rustc tests had single quotes inside strings un-escaped by `UPDATE_EXPECT=1 cargo t`, but I don't think it's bad? Maybe something in a nightly?
* | | | Merge #8802bors[bot]2021-05-121-9/+126
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8802: Keep comments and attrs when extracting struct from enum variant r=Veykril a=DropDemBits Fixes #6730 Still unsure if existing visibilities of fields should be forced to pub (which is what was previously done), or if it's okay to keep it in the extracted struct. Co-authored-by: DropDemBits <[email protected]>
| * | | Keep comments and attrs when extracting struct from enum variantDropDemBits2021-05-111-9/+126
| | | |
* | | | Merge #8812bors[bot]2021-05-123-13/+57
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8812: fix: fix dependencies of build scripts r=jonas-schievink a=jonas-schievink Previously, we added a dependency for all targets in a package to the package's library target. This is correct for most targets, except build scripts, which run before the library crate is built. This PR removes the incorrect dependency on the library target. We also used to treat all dependencies the same, which led to build scripts being able to use regular dependencies as well as dev-dependencies. This is also fixed by this PR, and build scripts only depend on build-dependencies. Incorrect dependency graph: ![screenshot-2021-05-11-23:35:01](https://user-images.githubusercontent.com/1786438/117975228-c2066a80-b32e-11eb-8f01-1e3ea904a608.png) Fixed graph after this PR: ![screenshot-2021-05-12-14:29:31](https://user-images.githubusercontent.com/1786438/117975253-c9c60f00-b32e-11eb-8f6c-9e42d4e32468.png) Co-authored-by: Jonas Schievink <[email protected]>
| * | | Fix build script dependenciesJonas Schievink2021-05-123-13/+57
|/ / /
* | | Merge #8808bors[bot]2021-05-122-30/+12
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8808: fix: Fix fn proc macro input again r=jonas-schievink a=jonas-schievink https://github.com/rust-analyzer/rust-analyzer/pull/8806 broke the `TokenMap`, so none of the tokens in fn-like proc macro inputs could be related to the output (presumably this is because of the `clone_for_update`). This PR instead just sets `delimiter = None;` after the `TokenMap` and `Subtree` are already created. We should probably have more tests for fn-like proc macros, and consider making the behavior consistent with MBE (which *require* the delimiters to be present). bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | Remove delimiters from proc macro inputJonas Schievink2021-05-122-1/+14
| | | |
| * | | Revert "Strip delimiter from fn-like proc macro input"Jonas Schievink2021-05-112-33/+2
|/ / / | | | | | | | | | This reverts commit bda68e23328ca62a71da348a13c4d13cc8f991f3.
* | | Merge #8806bors[bot]2021-05-112-2/+33
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8806: fix: Strip delimiter from fn-like macro invocations r=jonas-schievink a=jonas-schievink This broke in https://github.com/rust-analyzer/rust-analyzer/pull/8796 (again), the fix is easy though bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | Strip delimiter from fn-like proc macro inputJonas Schievink2021-05-112-2/+33
| | | |
* | | | Merge #8807bors[bot]2021-05-113-27/+19
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8807: internal: Move `dot` invocation to rust-analyzer crate r=jonas-schievink a=jonas-schievink Addresses https://github.com/rust-analyzer/rust-analyzer/pull/8801#discussion_r630570615 bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | Move `dot` invocation to rust-analyzer crateJonas Schievink2021-05-113-27/+19
|/ / /
* | | Merge #8805bors[bot]2021-05-111-1/+4
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8805: fix: Use Cargo target name as crate name r=jonas-schievink a=jonas-schievink Before: ![screenshot-2021-05-11-23:35:09](https://user-images.githubusercontent.com/1786438/117887823-92654d00-b2b1-11eb-8f3d-0e45f6886a79.png) After: ![screenshot-2021-05-11-23:35:01](https://user-images.githubusercontent.com/1786438/117887836-985b2e00-b2b1-11eb-898a-5f463c4515f6.png) bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | Use Cargo target name as crate nameJonas Schievink2021-05-111-1/+4
|/ / /
* | | Merge #8398bors[bot]2021-05-116-12/+71
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8398: Fix inference with conditionally compiled tails r=flodiebold a=DJMcNab Fixes #8378 Co-authored-by: Daniel McNab <[email protected]>
| * | | Add a test for conditionally compiled tailsDaniel McNab2021-05-031-0/+49
| | | |
| * | | Fix inference with conditionally compiled tailsDaniel McNab2021-05-035-12/+22
| | | | | | | | | | | | | | | | Fixes #8378
* | | | Merge #8801bors[bot]2021-05-1112-1/+166
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8801: feat: Allow viewing the crate graph in a webview r=jonas-schievink a=jonas-schievink This uses `dot` to render the crate graph as an SVD file, and displays it in a VS Code panel. For simple crate graphs, it works quite well: ![screenshot-2021-05-11-16:19:32](https://user-images.githubusercontent.com/1786438/117831361-c4a48980-b274-11eb-9276-240cdf6919aa.png) Unfortunately, on rust-analyzer itself (and most medium-sized dependency graphs), `dot` runs for around a minute and then produces this mess: ![screenshot-2021-05-11-16:41:37](https://user-images.githubusercontent.com/1786438/117834831-c754ae00-b277-11eb-850b-138495dbeba8.png) Co-authored-by: Jonas Schievink <[email protected]>
| * | | | Better node label/shapesJonas Schievink2021-05-111-3/+11
| | | | |
| * | | | Only include workspace cratesJonas Schievink2021-05-111-8/+30
| | | | |
| * | | | Document viewCrateGraph requestJonas Schievink2021-05-111-1/+11
| | | | |
| * | | | Update crates/ide/src/view_crate_graph.rsJonas Schievink2021-05-111-2/+2
| | | | | | | | | | | | | | | Co-authored-by: bjorn3 <[email protected]>
| * | | | Distinguish crates with identical nameJonas Schievink2021-05-111-1/+1
| | | | |
| * | | | Allow viewing the crate graph in a webviewJonas Schievink2021-05-1111-0/+125
| | | | |
* | | | | Merge #8796bors[bot]2021-05-118-175/+205
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8796: internal: rewrite `#[derive]` removal to be based on AST (take 2) r=jonas-schievink a=jonas-schievink Second attempt of https://github.com/rust-analyzer/rust-analyzer/pull/8443, this uses syntactical attribute offsets in `hir_expand`, and changes `attr.rs` to make those easy to derive. This will make it easy to add similar attribute removal for attribute macros, unblocking them. Co-authored-by: Jonas Schievink <[email protected]>
| * | | | Rewrite `#[derive]` removal to be based on ASTJonas Schievink2021-05-104-107/+112
| | | | |
| * | | | Rewrite `attr.rs` to allow using syntax-based indicesJonas Schievink2021-05-102-59/+84
| | | | |
| * | | | Move `AttrId` back into `hir_def`Jonas Schievink2021-05-105-12/+12
| | | | |
* | | | | Merge #8800bors[bot]2021-05-111-16/+34
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8800: feat: Make "pull assignments up" assist work in more cases r=Jesse-Bakker a=Jesse-Bakker Fixes #8771 Co-authored-by: Jesse Bakker <[email protected]>
| * | | | | Make "pull assignments up" assist work in more casesJesse Bakker2021-05-111-16/+34
| | | | | |
* | | | | | Merge #8798bors[bot]2021-05-111-0/+1
|\ \ \ \ \ \ | |_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8798: internal: use modern resolever r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | internal: use modern resoleverAleksey Kladov2021-05-111-0/+1
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | I don't think this affects us, but better to stick to modern practicies.
* | | | | Merge #8794bors[bot]2021-05-109-67/+77
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8794: Give MergeBehaviour variants better names r=Veykril a=Veykril I never really liked the variant names I gave this enum from the beginning and then I found out about rustfmt's `imports_granularity` config: > imports_granularity > > How imports should be grouped into use statements. Imports will be merged or split to the configured level of granularity. > > Default value: Preserve > Possible values: Preserve, Crate, Module, Item > Stable: No I personally prefer using `crate` over `full` and `module` over last, they seem more descriptive. Keeping these similar between tooling also seems like a good plus point to me. We might even wanna take over the entire enum at some point if we have a `format/cleanup imports` assists in the future which would probably want to also have the `preserve` and `item` options. Co-authored-by: Lukas Wirth <[email protected]>
| * | | | Update docsLukas Wirth2021-05-102-3/+3
| | | | |