aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | | Merge #5796bors[bot]2020-08-1810-95/+90
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5796: Align diagnostics config with the rest of rust-analyzer r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | | Align diagnostics config with the rest of rust-analyzerAleksey Kladov2020-08-1810-95/+90
| | |_|_|/ / | |/| | | |
* | | | | | Merge #5794bors[bot]2020-08-182-18/+23
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5794: Simplify building a symbol hierarchy r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | Add default names sectionAleksey Kladov2020-08-181-2/+7
| | | | | |
| * | | | | Simplify building a symbol hierarchyAleksey Kladov2020-08-181-16/+16
| | | | | |
* | | | | | Merge #5682bors[bot]2020-08-1810-15/+155
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5682: Add an option to disable diagnostics r=matklad a=popzxc As far as I know, currently it's not possible to disable a selected type of diagnostics provided by `rust-analyzer`. This causes an inconvenient situation with a false-positive warnings: you either have to disable all the diagnostics, or you have to ignore these warnings. There are some open issues related to this problem, e.g.: https://github.com/rust-analyzer/rust-analyzer/issues/5412, https://github.com/rust-analyzer/rust-analyzer/issues/5502 This PR attempts to make it possible to selectively disable some diagnostics on per-project basis. Co-authored-by: Igor Aleksanov <[email protected]>
| * | | | | Move analysis config structure to the config.rsIgor Aleksanov2020-08-182-7/+7
| | | | | |
| * | | | | Make disabled diagnostics an argument of corresponding functionIgor Aleksanov2020-08-187-39/+43
| | | | | |
| * | | | | Merge branch 'master' into add-disable-diagnosticsIgor Aleksanov2020-08-141402-96474/+96443
| |\ \ \ \ \
| * | | | | | Restore final newline in package.jsonIgor Aleksanov2020-08-131-1/+1
| | | | | | |
| * | | | | | Merge branch 'master' into add-disable-diagnosticsIgor Aleksanov2020-08-12134-1282/+1907
| |\ \ \ \ \ \
| * | | | | | | Add a configuration option for the vscode extensionIgor Aleksanov2020-08-121-1/+10
| | | | | | | |
| * | | | | | | Update crates/ra_ide/src/diagnostics.rsIgor Aleksanov2020-08-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Co-authored-by: Jonas Schievink <[email protected]>
| * | | | | | | Replace String with &'static strIgor Aleksanov2020-08-124-33/+31
| | | | | | | |
| * | | | | | | Fix failing testIgor Aleksanov2020-08-071-0/+3
| | | | | | | |
| * | | | | | | Add a test for disabled diagnosticsIgor Aleksanov2020-08-071-1/+57
| | | | | | | |
| * | | | | | | Add an AnalysisConfig structure and use it to configure diagnostics runIgor Aleksanov2020-08-075-26/+57
| | | | | | | |
| * | | | | | | Add names for diagnostics and add a possibility to disable themIgor Aleksanov2020-08-073-2/+44
| | | | | | | |
* | | | | | | | Merge #5687bors[bot]2020-08-181-5/+10
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5687: Fix document symbols order r=matklad a=magurotuna Resolves #5655 And adds tests for `handle_document_symbol`, both with `hierarchical_symbols` enabled and with it disabled. Previously document symbols were displayed in reverse order in sublime text with its LSP plugin, but this patch fixes it like this: ![image](https://user-images.githubusercontent.com/23649474/89709020-fbccce00-d9b6-11ea-83b0-c88dc9f7977f.png) Co-authored-by: Yusuke Tanaka <[email protected]>
| * | | | | | | | Remove test for `handle_document_symbol`Yusuke Tanaka2020-08-161-317/+4
| | | | | | | | |
| * | | | | | | | Add test for `handle_document_symbol` (#5655)Yusuke Tanaka2020-08-081-4/+317
| | | | | | | | |
| * | | | | | | | Reverse document symbols for each scope (#5655)Yusuke Tanaka2020-08-081-5/+10
| | | | | | | | |
* | | | | | | | | Merge #5793bors[bot]2020-08-181-1/+1
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5793: Minor r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | | | | | MinorAleksey Kladov2020-08-181-1/+1
|/ / / / / / / / /
* | | | | | | | | Merge #5758bors[bot]2020-08-187-38/+247
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5758: SSR: Explicitly autoderef and ref placeholders as needed r=matklad a=davidlattimore Structural search replace now inserts *, & and &mut in the replacement to match any auto[de]ref in the matched code. e.g. `$a.foo() ==>> bar($a)` might convert `x.foo()` to `bar(&mut x)` Co-authored-by: David Lattimore <[email protected]>
| * | | | | | | | | SSR: A few small refactoringsDavid Lattimore2020-08-184-6/+10
| | | | | | | | | |
| * | | | | | | | | SSR: Explicitly autoderef and ref placeholders as neededDavid Lattimore2020-08-144-25/+222
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Structured search replace now inserts *, & and &mut in the replacement to match any auto[de]ref in the matched code.
| * | | | | | | | | Refactor SSR so that placeholders store a VarDavid Lattimore2020-08-144-18/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows lookup of placeholder bindings given a placeholder without needing to create a Var instance.
* | | | | | | | | | Merge #5791bors[bot]2020-08-182-9/+9
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5791: :arrow_up: crates r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | | | | | | :arrow_up: cratesAleksey Kladov2020-08-182-9/+9
|/ / / / / / / / / /
* | | | | | | | | | Remove usless pre-cache taskAleksey Kladov2020-08-181-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We are not cleaning the rest of xtask artifacts, so this effectively does nothing. xtask is small and changes rarely, so this shouldn't really matter.
* | | | | | | | | | Merge #5790bors[bot]2020-08-186-42/+98
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5790: Revive cache cleaning r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | | | | | | Revive cache cleaningAleksey Kladov2020-08-186-42/+98
|/ / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The idea here is that, on CI, we only want to cache crates.io dependencies, and not local crates. This keeps the size of the cache low, and also improves performance, as network and moving files on disk (on Windows) can be slow.
* | | | | | | | | | Re-enable mac buildAleksey Kladov2020-08-181-1/+1
| | | | | | | | | |
* | | | | | | | | | Merge #5787bors[bot]2020-08-182-2/+19
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5787: Fix missing match arm false positive r=matklad a=CAD97 If the type of the match expression is `{unknown}`, don't do exhaustiveness checks, as it could be an uninhabited type. Co-authored-by: CAD97 <[email protected]>
| * | | | | | | | | | Fix missing match arm false error on unknown typeCAD972020-08-172-4/+2
| | | | | | | | | | |
| * | | | | | | | | | Document missing match arm false positiveCAD972020-08-171-0/+19
|/ / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This should already be guarded against (https://github.com/rust-analyzer/rust-analyzer/blob/d2212a49f6d447a14cdc87a9de2a4844e78b6905/crates/hir_ty/src/diagnostics/expr.rs#L225-L230) but it isn't preventing this false positive for some reason.
| | | | | | | | | |
| \ \ \ \ \ \ \ \ \
*-. \ \ \ \ \ \ \ \ \ Merge #5776 #5780bors[bot]2020-08-174-9/+89
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5776: Fix eslint errors on .eslintrc.js and rollup.config.js r=matklad a=fuafa Eslint complains if these two files does not include in the `tsconfig.json`. ``` Parsing error: "parserOptions.project" has been set for @typescript-eslint/parser. The file does not match your project config: .eslintrc.js. The file must be included in at least one of the projects provided.eslint ``` ![image](https://user-images.githubusercontent.com/20750310/90338269-176d4f80-e01b-11ea-8710-3ea817b235d2.png) 5780: Fixup whitespace when adding missing impl items r=matklad a=jDomantas Generate properly formatted whitespace when adding impl items - with an empty line between items and removing extra whitespace that often appears at the end. This is my first time working on rust analyzer so I'm not very familiar with its internal APIs. If there's a better way to do such syntax tree editing I'd be glad to hear it. Co-authored-by: xiaofa <[email protected]> Co-authored-by: jDomantas <[email protected]>
| | * | | | | | | | | | formatjDomantas2020-08-171-13/+9
| | | | | | | | | | | |
| | * | | | | | | | | | update generated testsjDomantas2020-08-171-2/+1
| | | | | | | | | | | |
| | * | | | | | | | | | fixup whitespace when adding missing impl itemsjDomantas2020-08-142-7/+89
| | | | | | | | | | | |
| * | | | | | | | | | | Fix eslint errors on .eslintrc.js and rollup.config.jsxiaofa2020-08-161-0/+3
| | |_|_|_|_|_|_|_|_|/ | |/| | | | | | | | |
* | | | | | | | | | | Merge #5782bors[bot]2020-08-175-5/+22
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5782: Fix StatusNotification r=matklad a=vsrs This PR fixes the following: As per specification `params` property in [NotificationMessage ](https://microsoft.github.io/language-server-protocol/specifications/specification-current/#notificationMessage) should be `array | object` while RA uses `"loading" | "ready" | "invalid" | "needsReload"`. Co-authored-by: vsrs <[email protected]>
| * | | | | | | | | | | Fix StatusNotificationvsrs2020-08-175-5/+22
| | | | | | | | | | | |
* | | | | | | | | | | | Merge #5785bors[bot]2020-08-174-33/+45
|\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5785: Don't make fields private unless you have to r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | | | | | | | | Don't make fields private unless you have toAleksey Kladov2020-08-174-33/+45
| | | | | | | | | | | | |
* | | | | | | | | | | | | Merge #5784bors[bot]2020-08-175-21/+26
|\ \ \ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5784: Mention that generated .adocs are generaterd r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | | | | | | | | Mention that generated .adocs are generaterdAleksey Kladov2020-08-175-21/+26
|/ / / / / / / / / / / /
* | | | | | | | | | | | Merge #5766bors[bot]2020-08-161-3/+3
|\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5766: Hacky support for fn-like proc macros r=matklad a=jonas-schievink It turns out that this is all that's needed to get something like this working: ```rust #[proc_macro] pub fn function_like_macro(_args: TokenStream) -> TokenStream { TokenStream::from_str("fn fn_success() {}").unwrap() } ``` ```rust function_like_macro!(); fn f() { fn_success(); } ``` The drawback is that it also makes this work, because there is no distinction between different proc macro kinds in the rest of r-a: ```rust #[derive(function_like_macro)] struct S {} fn f() { fn_success(); } ``` Another issue is that it seems to panic, and then panic, when using this on the rustc code base, due to some issue in the inscrutable proc macro bridge code. Co-authored-by: Jonas Schievink <[email protected]>
| * | | | | | | | | | | | Hacky support for fn-like proc macrosJonas Schievink2020-08-151-3/+3
| | | | | | | | | | | | |