aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #5716 from jonas-schievink/muslJonas Schievink2020-08-123-8/+16
|\ | | | | Fix build on musl and test it in CI
| * Fix build on musl and test it in CIJonas Schievink2020-08-123-8/+16
| |
* | Merge #5711bors[bot]2020-08-121-4/+4
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5711: Display snippet in the completion label r=matklad a=SomeoneToIgnore Before, the completion did not show the actual snippet and it was hard to understand what to input to get the right snippet: <img width="467" alt="image" src="https://user-images.githubusercontent.com/2690773/89941040-21f6a600-dc23-11ea-94b8-61f77f88feaf.png"> <img width="367" alt="image" src="https://user-images.githubusercontent.com/2690773/89941046-23c06980-dc23-11ea-8034-6c4e14357c94.png"> Now it's more clear: <img width="315" alt="image" src="https://user-images.githubusercontent.com/2690773/89941124-42befb80-dc23-11ea-9fcc-5fd49cc92b74.png"> <img width="210" alt="image" src="https://user-images.githubusercontent.com/2690773/89941132-4488bf00-dc23-11ea-99c2-12ec66e0a044.png"> Co-authored-by: Kirill Bulatov <[email protected]>
| * Display snippet in the completion labelKirill Bulatov2020-08-111-4/+4
| |
* | Merge #5715bors[bot]2020-08-121-8/+8
|\ \ | |/ |/| | | | | | | | | | | | | | | | | 5715: Simplify r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * SimplifyAleksey Kladov2020-08-121-8/+8
|/
* Merge #5708bors[bot]2020-08-111-5/+5
|\ | | | | | | | | | | | | | | 5708: Use Hygiene in completion r=jonas-schievink a=lnicola Co-authored-by: LaurenÈ›iu Nicola <[email protected]>
| * Use Hygiene in completionLaurențiu Nicola2020-08-111-5/+5
| |
* | Merge #5707bors[bot]2020-08-117-14/+30
|\ \ | | | | | | | | | | | | | | | | | | | | | 5707: Address some FIXMEs for ra_assists r=jonas-schievink a=JmPotato Signed-off-by: JmPotato <[email protected]> Co-authored-by: JmPotato <[email protected]>
| * | Revert some FIXMEsJmPotato2020-08-112-4/+9
| | | | | | | | | | | | Signed-off-by: JmPotato <[email protected]>
| * | Typo fixJmPotato2020-08-112-2/+2
| | | | | | | | | | | | Signed-off-by: JmPotato <[email protected]>
| * | Remove redundant dependenciesJmPotato2020-08-113-5/+2
| | | | | | | | | | | | Signed-off-by: JmPotato <[email protected]>
| * | Typo fixJmPotato2020-08-111-1/+1
| | | | | | | | | | | | Signed-off-by: JmPotato <[email protected]>
| * | Address some FIXMEsJmPotato2020-08-116-18/+32
| |/ | | | | | | Signed-off-by: JmPotato <[email protected]>
* | Merge #5705bors[bot]2020-08-111-2/+8
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5705: Log the command flycheck runs to debug misconfigurations r=jonas-schievink a=Veetaha Without this users have no clue why flycheck fails to run. This is what is printed to the output channel: ``` [ERROR rust_analyzer::main_loop] cargo check failed: Cargo watcher failed,the command produced no valid metadata (exit code: ExitStatus(ExitStatus(25856))) ``` I stumbled with this figuring out that rust-analyzer adds `--all-features` which is not intended for some crates in the workspace (i.e. they have mutually-exclusive features). Having the command rust-analyzer ran should help a lot Co-authored-by: Veetaha <[email protected]>
| * | Log the command flycheck runs to debug misconfigurationsVeetaha2020-08-111-2/+8
| |/ | | | | | | | | | | | | | | | | | | | | | | Without this users have no clue why flycheck fails to run. This is what is printed to the output channel: ``` [ERROR rust_analyzer::main_loop] cargo check failed: Cargo watcher failed,the command produced no valid metadata (exit code: ExitStatus(ExitStatus(25856))) ``` I stumbled with this figuring out that rust-analyzer adds `--all-features` which is not intended for some crates in the workspace (e.g. they have mutually-exclusive features. Having the command rust-analyzer ran should help a lot
* | Merge #5704bors[bot]2020-08-111-3/+3
|\ \ | |/ |/| | | | | | | | | | | 5704: Update README.md r=jonas-schievink a=tim-weis Fixed formatting. Co-authored-by: Tim Weis <[email protected]>
| * Update README.mdTim Weis2020-08-111-3/+3
|/ | | Fixed formatting.
* Merge #5703bors[bot]2020-08-101-1/+1
|\ | | | | | | | | | | | | | | 5703: Fix typos in syntax.md r=kjeremy a=lnicola Closes #5700 Co-authored-by: LaurenÈ›iu Nicola <[email protected]>
| * Fix typos in syntax.mdLaurențiu Nicola2020-08-101-1/+1
| |
* | Merge #5701bors[bot]2020-08-101-8/+8
|\ \ | | | | | | | | | | | | | | | | | | | | | 5701: cargo update r=kjeremy a=kjeremy Co-authored-by: kjeremy <[email protected]>
| * | cargo updatekjeremy2020-08-101-8/+8
| |/
* | Merge #5696bors[bot]2020-08-102-1/+16
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 5696: Return InvalidRequest if Shutdown has been requested r=kjeremy a=kjeremy From the LSP 3.16 spec: "If a server receives requests after a shutdown request those requests should error with InvalidRequest." Realized this behavior was missing while looking at #5693. Question on notification behavior is tracked at https://github.com/microsoft/language-server-protocol/issues/1066 Co-authored-by: Jeremy Kolb <[email protected]>
| * | Return InvalidRequest if Shutdown has been requestedJeremy Kolb2020-08-102-1/+16
|/ / | | | | | | From the LSP 3.16 spec: "If a server receives requests after a shutdown request those requests should error with InvalidRequest."
* | Merge #5697bors[bot]2020-08-101-8/+2
|\ \ | |/ |/| | | | | | | | | | | | | | | 5697: Remove workaround for semantic token flickering r=jonas-schievink a=kjeremy See: https://github.com/microsoft/vscode-languageserver-node/issues/576#issuecomment-593384479 This has been fixed since vscode 1.44 Co-authored-by: Jeremy Kolb <[email protected]>
| * Remove 'as any'Jeremy Kolb2020-08-091-1/+1
| |
| * Remove workaround for semantic token flickeringJeremy Kolb2020-08-091-7/+1
| | | | | | | | | | | | See: https://github.com/microsoft/vscode-languageserver-node/issues/576#issuecomment-593384479 This has been fixed since vscode 1.44
* | Merge #5698bors[bot]2020-08-102-5/+9
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5698: Display the value of a const on the hover r=jonas-schievink a=JmPotato Signed-off-by: JmPotato <[email protected]> Close #4051 To display the value of a const, I modified the implementation of `ShortLabel` for `ast::Const`. Co-authored-by: JmPotato <[email protected]>
| * | Better codesJmPotato2020-08-101-8/+4
| | | | | | | | | | | | Signed-off-by: JmPotato <[email protected]>
| * | Show const body in short_labelJmPotato2020-08-102-5/+13
|/ / | | | | | | Signed-off-by: JmPotato <[email protected]>
* | Merge #5692bors[bot]2020-08-1015-59/+224
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 5692: Add support for extern crate r=jonas-schievink a=Nashenas88 This adds syntax highlighting, hover and goto def functionality for extern crate. Fixes #5690 Co-authored-by: Paul Daniel Faria <[email protected]>
| * | Remove Option<...> from result of Crate::root_modulePaul Daniel Faria2020-08-098-23/+22
| | | | | | | | | | | | | | | There doesn't seem to be any need for it, and removing it simplies several paths of code that depend on it.
| * | Add support for extern cratePaul Daniel Faria2020-08-0811-59/+225
| | | | | | | | | | | | | | | This adds syntax highlighting, hover and goto def functionality for extern crate
* | | Merge #5693bors[bot]2020-08-092-3/+13
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5693: Fix no inlay hints / unresolved tokens until manual edit to refresh r=jonas-schievink a=Veetaha Fixes https://github.com/rust-analyzer/rust-analyzer/issues/5349 Now we return ContentModified during the workspace loading. This signifies the language client to retry the operation (i.e. the client will continue polling the server while it returns ContentModified). I believe that there might be cases of overly big projects where the backoff logic we have setup in `sendRequestWithRetry` (which we use for inlay hints) might bail too early (currently the largest retry standby time is 10 seconds). However, I've tried on one of my project with 500+ dependencies and it is still enough. Here are the examples before/after the change (the gifs are quite lengthy because they show testing rather large cargo workspace). <details> <summary>Before</summary> Here you can see that the client receives empty array of inlay hints and does nothing more. Same applies to semantic tokens. The client receives unresolved tokens and does nothing more. The user needs to do a manual edit to refresh the editor. ![prev-demo](https://user-images.githubusercontent.com/36276403/89717721-e4471280-d9c1-11ea-89ce-7dc3e83d9768.gif) </details> <details> <summary>After</summary> Here the server returns ContentModified, so the client periodically retries the requests and eventually receives the wellformed response. ![new-demo](https://user-images.githubusercontent.com/36276403/89717725-eb6e2080-d9c1-11ea-84c9-796bb2b22cec.gif) </details> Co-authored-by: Veetaha <[email protected]>
| * | Let shutdown request to pass through when status == LoadingVeetaha2020-08-091-1/+1
| | |
| * | Fix no inlay hints / unresolved tokens until manual editVeetaha2020-08-082-3/+13
| |/ | | | | | | | | | | | | | | | | | | No we return ContentModified during the workspace loading. This signifies the language client to retry the operation (i.e. the client will continue polling the server while it returns ContentModified). I believe that there might be cases of overly big projects where the backoff logic we have setup in `sendRequestWithRetry` (which we use for inlay hints) might bail too early (currently the largest retry standby time is 10 seconds). However, I've tried on one of my project with 500+ dependencies and it is still enough.
* | Merge #5414bors[bot]2020-08-091-1/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5414: Fix test code lens r=jonas-schievink a=avrong Closes #5217 The implementation is quite similar to #4821. Maybe we should somehow deal with duplicated code. Also, both of these requests introduce some unclear behavior. I'm not sure how to process this, therefore asking for advice. Examples are below. <img width="286" alt="image" src="https://user-images.githubusercontent.com/6342851/87713209-83595f80-c7b2-11ea-8c0f-a12e7571e7df.png"> Co-authored-by: Aleksei Trifonov <[email protected]>
| * | Fix test code lensAleksei Trifonov2020-08-021-1/+1
| | |
* | | Merge #5694bors[bot]2020-08-092-1/+33
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5694: Format docs in to_proto::markup_content r=jonas-schievink a=JmPotato Signed-off-by: JmPotato <[email protected]> Close #5442 Removing # was handled in rust_analyzer::markdown::format_docs(). However, this function is no longer called in rust_analyzer::handlers::handle_hover() since commit e8bb153 (PR #5273). This pr add this formatting function back. Co-authored-by: JmPotato <[email protected]>
| * | | format in to_proto::markup_contentJmPotato2020-08-092-1/+33
|/ / / | | | | | | | | | Signed-off-by: JmPotato <[email protected]>
* | | Merge #5684bors[bot]2020-08-086-20/+122
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5684: Semantic highlighting for unsafe union field access r=jonas-schievink a=Nashenas88 This change adds support for unions in inference and lowering, then extends on that to add the unsafe semantic modifier on field access only. The `is_possibly_unsafe` function in `syntax_highlighting.rs` could be extended to support fns and static muts so that their definitions are not highlighted as unsafe, but only their usage. Also, each commit of this PR updates the tests. By reviewing the files by commit, it's easy to see how the changes in the code affected the tests. Co-authored-by: Paul Daniel Faria <[email protected]>
| * | | Apply unsafe semantic highlighting to union field accessPaul Daniel Faria2020-08-082-13/+59
| | | |
| * | | Add support for unions in inference and loweringPaul Daniel Faria2020-08-084-11/+17
| | | |
| * | | Add additional checks for union inference testsPaul Daniel Faria2020-08-081-5/+33
| | | |
| * | | Add test for unsafe union field access highlightingPaul Daniel Faria2020-08-072-0/+22
| | | |
* | | | Merge #5689bors[bot]2020-08-081-1/+1
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | 5689: Remove clone r=kjeremy a=Veetaha Co-authored-by: Veetaha <[email protected]>
| * | | Remove cloneVeetaha2020-08-081-1/+1
|/ / /
* | | Merge #5686bors[bot]2020-08-081-1/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5686: Fix typo in settings description r=kjeremy a=rherrmann Remove a duplicate word from the description of the `warningsAsHint` setting. Co-authored-by: Rüdiger Herrmann <[email protected]>
| * | | Fix typo in settings descriptionRüdiger Herrmann2020-08-081-1/+1
|/ / / | | | | | | Remove a duplicate word from the description of the `warningsAsHint` setting.
* | | Merge #5679bors[bot]2020-08-071-3/+35
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5679: Account for static mut in missing unsafe diagnostic r=jonas-schievink a=Nashenas88 Accessing or modifying a static mut is an unsafe operation. The "missing unsafe" diagnostic now tracks this. Co-authored-by: Paul Daniel Faria <[email protected]>