aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Merge #4921bors[bot]2020-06-2210-555/+1480
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4921: Allow SSR to match type references, items, paths and patterns r=davidlattimore a=davidlattimore Part of #3186 Co-authored-by: David Lattimore <[email protected]>
| * | | Allow SSR to match type references, items, paths and patternsDavid Lattimore2020-06-2210-555/+1480
| | |/ | |/| | | | | | | Part of #3186
* | | Merge #4928bors[bot]2020-06-221-48/+139
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 4928: Fix renaming mod in use tree r=matklad a=unexge Fixes #4825 Co-authored-by: unexge <[email protected]>
| * | Merge branch 'fix_renaming_mod_in_use_tree' of ↵unexge2020-06-170-0/+0
| |\ \ | | | | | | | | | | | | https://github.com/unexge/rust-analyzer into fix_renaming_mod_in_use_tree
| | * | Fix renaming mod in use treeunexge2020-06-111-55/+146
| | | |
| * | | Fix renaming mod in use treeunexge2020-06-171-48/+139
| | | |
* | | | Merge #4971bors[bot]2020-06-212-22/+28
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4971: cargo update r=kjeremy a=kjeremy Co-authored-by: Jeremy Kolb <[email protected]>
| * | | | Update test for new serdeJeremy Kolb2020-06-211-1/+1
| | | | |
| * | | | cargo updateJeremy Kolb2020-06-211-21/+27
|/ / / /
* | | | Merge #4969bors[bot]2020-06-211-10/+24
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4969: Handle bindings after @ in patterns r=flodiebold a=jonas-schievink This is unstable, behind the `bindings_after_at` feature gate, but the semantics are fairly clear, and this is used at lot in rustc. Co-authored-by: Jonas Schievink <[email protected]>
| * | | | Handle bindings after @ in patternsJonas Schievink2020-06-211-10/+24
|/ / / /
* | | | Merge #4962bors[bot]2020-06-2129-1/+222
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4962: Implement APIs for parsing expressions, types, paths, patterns and items r=davidlattimore a=davidlattimore Co-authored-by: David Lattimore <[email protected]>
| * | | | Implement APIs for parsing expressions, types, paths, patterns and itemsDavid Lattimore2020-06-2129-1/+222
| | | | |
* | | | | Merge #4959bors[bot]2020-06-213-2/+19
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4959: Syntax highlighting for documentation comments on macro definitions r=matklad a=ltentrup Two minor changes with regards to syntax highlighting of comments attached to macro definitions. Before <img width="290" alt="Bildschirmfoto 2020-06-20 um 00 05 19" src="https://user-images.githubusercontent.com/201808/85182705-c561b500-b289-11ea-944e-0bdf6508a44f.png"> After <img width="288" alt="Bildschirmfoto 2020-06-20 um 00 03 36" src="https://user-images.githubusercontent.com/201808/85182727-d90d1b80-b289-11ea-9d2d-234731f19302.png"> Fixes #4949 Co-authored-by: Leander Tentrup <[email protected]>
| * | | | | Syntax highlighting for documentation comments on macro definitionsLeander Tentrup2020-06-193-2/+19
| | | | | |
* | | | | | Merge #4963bors[bot]2020-06-212-11/+60
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4963: Download artifacts into tmp dir r=matklad a=Veetaha This should prevent partially downloaded files in cases when the user closes vsode before the download is complete. There is also a new more descriptive error message when the user has multiple vscode windows open and tries to download the server. Related: https://github.com/rust-analyzer/rust-analyzer/issues/4938#issuecomment-646738360 Co-authored-by: Veetaha <[email protected]>
| * | | | | | Download artifacts into tmp dirVeetaha2020-06-202-11/+60
| | | | | | |
* | | | | | | Merge #4947bors[bot]2020-06-207-59/+90
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4947: Replace `impls_in_trait` query with smarter use of `CrateImplDefs` r=matklad a=jonas-schievink `impls_in_trait` was allocating a whopping ~400 MB of RAM when running analysis-stats on r-a itself. Remove it, instead adding a query that computes a summary `CrateImplDefs` map for all transitive dependencies. This can probably still be made more efficient, but this already reduces the peak memory usage by 25% without much performance impact on analysis-stats. **Before**: ``` Total: 34.962107188s, 2083mb allocated 2141mb resident 422mb ImplsForTraitQuery (deps) 250mb CrateDefMapQueryQuery 147mb MacroArgQuery 140mb TraitSolveQuery (deps) 68mb InferQueryQuery (deps) 62mb ImplDatumQuery (deps) ``` **After**: ``` Total: 35.261100358s, 1520mb allocated 1569mb resident 250mb CrateDefMapQueryQuery 147mb MacroArgQuery 144mb TraitSolveQuery (deps) 68mb InferQueryQuery (deps) 61mb ImplDatumQuery (deps) 45mb BodyQuery 45mb ImplDatumQuery ``` Co-authored-by: Jonas Schievink <[email protected]>
| * | | | | | | Recursively compute impl setsJonas Schievink2020-06-191-13/+26
| | | | | | | |
| * | | | | | | Add new query to statsJonas Schievink2020-06-192-4/+5
| | | | | | | |
| * | | | | | | Don't include downstream crate in queryJonas Schievink2020-06-191-1/+2
| | | | | | | |
| * | | | | | | Replace `impls_in_trait` with `CrateImplDefs`Jonas Schievink2020-06-197-63/+79
| | |_|/ / / / | |/| | | | |
* | | | | | | Merge #4964bors[bot]2020-06-207-192/+109
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4964: Move ReqQueue to lsp-server r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | | | Move ReqQueue to lsp-serverAleksey Kladov2020-06-207-192/+109
|/ / / / / / /
* | | | | | | Merge #4961bors[bot]2020-06-204-170/+188
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4961: Centralize handing of in-flight requests r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | | | Centralize handing of in-flight requestsAleksey Kladov2020-06-204-170/+188
| | |/ / / / / | |/| | | | |
* | | | | | | Merge #4958bors[bot]2020-06-204-24/+312
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4958: Infer FnSig via Fn traits r=flodiebold a=adamrk Addresses https://github.com/rust-analyzer/rust-analyzer/issues/4481. When inferring types check if the callee implements one of the builtin `Fn` traits. Also autoderef the callee before trying to figure out it's `FnSig`. Co-authored-by: adamrk <[email protected]>
| * | | | | | Push obligation instead of matching on solutionadamrk2020-06-202-45/+40
| | | | | | |
| * | | | | | Get Output assoc type by nameadamrk2020-06-201-13/+3
| | | | | | |
| * | | | | | Add test for dyn Fn Outputadamrk2020-06-201-0/+68
| | | | | | |
| * | | | | | move tests to ra_hir_tyadamrk2020-06-202-104/+155
| | | | | | |
| * | | | | | Fixes to callable_sig_from_fn_traitadamrk2020-06-202-67/+72
| | | | | | |
| * | | | | | Make get_fn_trait a method of FnTraitadamrk2020-06-203-21/+21
| | | | | | |
| * | | | | | Switch back callable_sig for known fn typesadamrk2020-06-202-4/+4
| | | | | | |
| * | | | | | Infer FnSig from Fn traitsadamrk2020-06-195-18/+197
| | | | | | |
* | | | | | | Merge #4952bors[bot]2020-06-192-0/+94
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4952: Shift bound variables correctly when using assoc type shorthand r=matklad a=flodiebold Fixes #4885. Fixes #4800. Co-authored-by: Florian Diebold <[email protected]>
| * | | | | | | Shift bound variables correctly when using assoc type shorthandFlorian Diebold2020-06-192-0/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #4885. Fixes #4800.
* | | | | | | | Merge #4951bors[bot]2020-06-192-6/+31
|\ \ \ \ \ \ \ \ | |_|_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4951: Don't panic on crates depending on themselves r=matklad a=flodiebold Fixes #3883. Co-authored-by: Florian Diebold <[email protected]>
| * | | | | | | Don't panic on crates depending on themselvesFlorian Diebold2020-06-192-6/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #3883.
* | | | | | | | Merge #4955bors[bot]2020-06-191-3/+2
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4955: Update workaround comment r=matklad a=Veetaha Co-authored-by: Veetaha <[email protected]>
| * | | | | | | Update workaround commentVeetaha2020-06-191-3/+2
| |/ / / / / /
* | | | | | | Merge #4950bors[bot]2020-06-193-17/+47
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4950: Use correct substs for super trait assoc types r=matklad a=flodiebold When referring to an associated type of a super trait, we used the substs of the subtrait. That led to the #4931 crash if the subtrait had less parameters, but it could also lead to other incorrectness if just the order was different. Fixes #4931. Co-authored-by: Florian Diebold <[email protected]>
| * | | | | | Use correct substs for super trait assoc typesFlorian Diebold2020-06-193-17/+47
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When referring to an associated type of a super trait, we used the substs of the subtrait. That led to the #4931 crash if the subtrait had less parameters, but it could also lead to other incorrectness if just the order was different. Fixes #4931.
* | | | | | Merge #4957bors[bot]2020-06-192-1/+33
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4957: Fix substs in resolve_value_path for ImplSelf r=flodiebold a=Speedy37 Fixes #4953. This is the first fix I do in hir_ty, I hope I got it right :) Co-authored-by: Vincent RouillĂ© <[email protected]>
| * | | | | Fix substs in resolve_value_path for ImplSelfVincent Rouillé2020-06-192-1/+33
|/ / / / / | | | | | | | | | | | | | | | Fixes #4953.
* | | | | Merge #4851bors[bot]2020-06-195-5/+134
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4851: Add quickfix to add a struct field r=TimoFreiberg a=TimoFreiberg Related to #4563 I created a quickfix for record literals first because the NoSuchField diagnostic was already there. To offer that quickfix for FieldExprs with unknown fields I'd need to add a new diagnostic (or create a `NoSuchField` diagnostic for those cases) I think it'd make sense to make this a snippet completion (to select the generated type), but this would require changing the `Analysis` API and I'd like some feedback before I touch that. Co-authored-by: Timo Freiberg <[email protected]>
| * | | | | Add quickfix to add a struct fieldTimo Freiberg2020-06-125-5/+134
| | | | | |
* | | | | | Merge #4937bors[bot]2020-06-191-1/+4
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4937: Allow overriding rust-analyzer display version r=matklad a=oxalica The build script invokes `git` for version information which is displayed when rust-analyzer is called with `--version`. But in build environment without `git` or when the source code is not a git repo, there's no way to manually specify the version information. This patch respects environment variable ~`REV`~ `RUST_ANALYZER_REV` in compile time for overriding. Related: https://github.com/NixOS/nixpkgs/pull/90976 Co-authored-by: oxalica <[email protected]>
| * | | | | | Fix fmtoxalica2020-06-181-1/+2
| | | | | | |
| * | | | | | Allow overriding rust-analyzer display revisionoxalica2020-06-181-1/+3
| | | | | | |