aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | Merge #4740bors[bot]2020-06-041-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4740: Remove unneeded "./" prefix affecting error messages r=kjeremy a=dtolnay I noticed this in the error in the commit message of https://github.com/rust-analyzer/rust-analyzer/pull/4739. Before: ```console error[E0599]: no method named `initialize_finish` found for struct `lsp_server::Connection` in the current scope --> crates/rust-analyzer/./src/bin/main.rs:99:16 | 99 | connection.initialize_finish(initialize_id, initialize_result)?; | ^^^^^^^^^^^^^^^^^ method not found in `lsp_server::Connection` ``` After: ```console error[E0599]: no method named `initialize_finish` found for struct `lsp_server::Connection` in the current scope --> crates/rust-analyzer/src/bin/main.rs:99:16 | 99 | connection.initialize_finish(initialize_id, initialize_result)?; | ^^^^^^^^^^^^^^^^^ method not found in `lsp_server::Connection` ``` ```diff - --> crates/rust-analyzer/./src/bin/main.rs:99:16 + --> crates/rust-analyzer/src/bin/main.rs:99:16 ``` Co-authored-by: David Tolnay <[email protected]>
| * | | | | Remove unneeded "./" prefix affecting error messagesDavid Tolnay2020-06-041-1/+1
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before: error[E0599]: no method named `initialize_finish` found for struct `lsp_server::Connection` in the current scope --> crates/rust-analyzer/./src/bin/main.rs:99:16 | 99 | connection.initialize_finish(initialize_id, initialize_result)?; | ^^^^^^^^^^^^^^^^^ method not found in `lsp_server::Connection` After: error[E0599]: no method named `initialize_finish` found for struct `lsp_server::Connection` in the current scope --> crates/rust-analyzer/src/bin/main.rs:99:16 | 99 | connection.initialize_finish(initialize_id, initialize_result)?; | ^^^^^^^^^^^^^^^^^ method not found in `lsp_server::Connection`
* | | | | Merge #4739bors[bot]2020-06-041-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4739: Declare required lsp-server dependency of rust-analyzer crate r=jonas-schievink a=dtolnay My codebase already depended on lsp-server and introducing a dependency on rust-analyzer failed at first because it assumes some functions that were first present in lsp-server 0.3.2. Without this change: ```console error[E0599]: no method named `initialize_start` found for struct `lsp_server::Connection` in the current scope --> crates/rust-analyzer/./src/bin/main.rs:83:57 | 83 | let (initialize_id, initialize_params) = connection.initialize_start()?; | ^^^^^^^^^^^^^^^^ method not found in `lsp_server::Connection` error[E0599]: no method named `initialize_finish` found for struct `lsp_server::Connection` in the current scope --> crates/rust-analyzer/./src/bin/main.rs:99:16 | 99 | connection.initialize_finish(initialize_id, initialize_result)?; | ^^^^^^^^^^^^^^^^^ method not found in `lsp_server::Connection` ``` Co-authored-by: David Tolnay <[email protected]>
| * | | | | Declare required lsp-server dependency of rust-analyzer crateDavid Tolnay2020-06-041-1/+1
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | My codebase already depended on lsp-server and introducing a dependency on rust-analyzer failed at first because it assumes some functions that were first present in lsp-server 0.3.2. Without this change: error[E0599]: no method named `initialize_start` found for struct `lsp_server::Connection` in the current scope --> crates/rust-analyzer/./src/bin/main.rs:83:57 | 83 | let (initialize_id, initialize_params) = connection.initialize_start()?; | ^^^^^^^^^^^^^^^^ method not found in `lsp_server::Connection` error[E0599]: no method named `initialize_finish` found for struct `lsp_server::Connection` in the current scope --> crates/rust-analyzer/./src/bin/main.rs:99:16 | 99 | connection.initialize_finish(initialize_id, initialize_result)?; | ^^^^^^^^^^^^^^^^^ method not found in `lsp_server::Connection`
* / / / / Fix type inference failure when built with log/kv_unstableDavid Tolnay2020-06-041-1/+1
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This code is broken by an `impl From<kv::Error> for fmt::Error` in the log crate when building in a codebase that has the log/kv_unstable feature enabled. $ cargo check --manifest-path crates/ra_hir_def/Cargo.toml Checking ra_hir_def v0.1.0 Finished dev [unoptimized] target(s) in 0.75s $ cargo check --manifest-path crates/ra_hir_def/Cargo.toml --features log/kv_unstable Checking ra_hir_def v0.1.0 error[E0282]: type annotations needed for the closure `fn(&str) -> std::result::Result<(), _>` --> crates/ra_hir_def/src/path.rs:278:17 | 278 | f.write_str("::")?; | ^^^^^^^^^^^^^^^^^^ cannot infer type | help: give this closure an explicit return type without `_` placeholders | 276 | let mut add_segment = |s| -> std::result::Result<(), _> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
* | | | Fix more commentsMikhail Rakhmanov2020-06-031-5/+4
| | | |
* | | | Merge branch 'master' into compute-lazy-assitsMikhail Rakhmanov2020-06-0338-477/+979
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | # Conflicts: # crates/rust-analyzer/src/main_loop/handlers.rs # crates/rust-analyzer/src/to_proto.rs
| * | | Merge #4502bors[bot]2020-06-032-2/+9
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4502: Mark fixes from diagnostics as quick fixes r=kjeremy a=kjeremy Populates the diagnostic UI with fixes: Before: ![quickfix-before](https://user-images.githubusercontent.com/4325700/82165183-0e38df00-9882-11ea-96cf-7dab5faec4d4.PNG) After: ![image](https://user-images.githubusercontent.com/4325700/82165193-1a24a100-9882-11ea-97d7-be1b64b135e0.png) Co-authored-by: Jeremy Kolb <[email protected]>
| | * | | Mark fixes from diagnostics as quick fixesJeremy Kolb2020-06-032-2/+9
| | | | |
| * | | | Merge #4730bors[bot]2020-06-033-20/+48
| |\ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4730: Document rust-project.json r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| | * | | Document rust-project.jsonAleksey Kladov2020-06-033-20/+48
| | | | |
| * | | | Merge #4678bors[bot]2020-06-034-8/+19
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4678: Unsquish parameter types in tooltips for macro-generated functions r=aloucks a=aloucks Note the missing whitespace between `:` and the parameter type. Before: ![image](https://user-images.githubusercontent.com/221559/83364680-faf13d80-a370-11ea-96b7-a041969a4954.png) After: ![image](https://user-images.githubusercontent.com/221559/83364685-03e20f00-a371-11ea-9668-4e6ebcb81947.png) Co-authored-by: Aaron Loucks <[email protected]>
| | * | | | Use split1 when formatting function signature paramsAaron Loucks2020-06-034-11/+11
| | | | | |
| | * | | | Unsquish parameter types in tooltips for macro-generated functionsAaron Loucks2020-05-311-1/+12
| | | | | |
| * | | | | Merge #4660bors[bot]2020-06-036-18/+259
| |\ \ \ \ \ | | |_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4660: Enable hover and autocomplete docs on macro generated items r=aloucks a=aloucks Enable hover and autocomplete docs on macro generated items. This de-sugars doc comments into `doc` attributes in some cases, but not all. Comments and `doc` attributes are then merged together. This PR is essentially a partial implementation of what's being suggested #3182, but it's not all the way there yet. ~I still need to add unit tests~, but I wanted to first get feedback on whether or not this was an acceptable path forward. Fixes #4564 Fixes #3984 Fixes #3180 Related #3182 ![macro_item_docs](https://user-images.githubusercontent.com/221559/83336760-15012200-a284-11ea-8d0d-b6a615850044.gif) Co-authored-by: Aaron Loucks <[email protected]>
| | * | | | Consolidate documentation expansion and mergingAaron Loucks2020-06-032-53/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removes the duplicated `expand_doc_attrs` and `merge_doc_comments_and_attrs` functions from `ra_ide` and exposes the same functionality via `ra_hir::Documentation::from_ast`.
| | * | | | Add basic hover and completion doc tests for macro generated itemsAaron Loucks2020-06-033-2/+182
| | | | | |
| | * | | | Enable hover and autocomplete docs on macro generated itemsAaron Loucks2020-06-035-10/+110
| | | | | |
| * | | | | Drop test for old formatAleksey Kladov2020-06-031-2/+0
| |/ / / /
| * | | | Groundwork for specifying the set of projects via configAleksey Kladov2020-06-035-46/+83
| | | | |
| * | | | Rename ProjectRoot -> ProjectManifestAleksey Kladov2020-06-033-19/+19
| | | | |
| * | | | Move project discoveryAleksey Kladov2020-06-032-8/+16
| | | | |
| * | | | Rename WorldState -> GlobalStateAleksey Kladov2020-06-037-273/+291
| | | | |
| * | | | Drop no-project testAleksey Kladov2020-06-031-49/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Eventually, we should support "just open random rust file" use case, we don't really do this now, so let's avoid spending time on it until we fix it properly.
| * | | | Derive local roots from WorkspacesAleksey Kladov2020-06-032-11/+14
| | | | |
| * | | | Put important things on topAleksey Kladov2020-06-031-7/+7
| | | | |
| * | | | Merge pull request #4382 from woody77/json_cfgsAleksey Kladov2020-06-033-2/+92
| |\ \ \ \ | | | | | | | | | | | | Begin transition to new fields for JsonProject crate cfgs
| | * | | | Begin transition to new fields for JsonProject crate cfgsAaron Wood2020-05-093-2/+92
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This starts the transition to a new method of documenting the cfgs that are enabled for a given crate in the json file. This is changing from a list of atoms and a dict of key:value pairs, to a list of strings that is equivalent to that returned by `rustc --print cfg ..`, and parsed in the same manner by rust-analyzer. This is the first of two changes, which adds the new field that contains the list of strings. Next change will complete the transition and remove the previous fields.
| * | | | | Merge #4679bors[bot]2020-06-031-3/+4
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4679: Update a comment for the new source organization r=matklad a=nelhage Co-authored-by: Nelson Elhage <[email protected]>
| | * | | | | Update a comment for the new source organizationNelson Elhage2020-06-011-3/+4
| | | | | | |
| * | | | | | Merge #4721bors[bot]2020-06-032-2/+3
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4721: Hide squiggly for unused and unnecessary diagnostics r=matklad a=GabbeV Fixes #4229 When working with JavaScript or TypeScript in VSCode unused valiables are faded but don't have a squiggle. This PR makes rust-analyzer work similarly by setting the severity to hint when applying the unnecessary tag. VSCode usually shows a squiggle for error, warning and information and shows three dots for hint. When the unnecessary tag is present the squiggles will still show up but the three dots will not. This is my first contribution to open source. Please tell me if i need to do anything more to get this PR considered. Co-authored-by: Gabriel Valfridsson <[email protected]>
| | * | | | | | Hide squiggly for unused and unnecessaryGabriel Valfridsson2020-06-032-2/+3
| | | | | | | |
| * | | | | | | Add highlight support for unsafe fn calls and raw ptr derefPaul Daniel Faria2020-06-0211-6/+125
| |/ / / / / /
* | | | | | | Fix review commentsMikhail Rakhmanov2020-06-033-38/+24
| | | | | | |
* | | | | | | Merge remote-tracking branch 'upstream/master' into compute-lazy-assitsMikhail Rakhmanov2020-06-0210-284/+471
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | # Conflicts: # crates/rust-analyzer/src/to_proto.rs
| * | | | | | Merge #4710bors[bot]2020-06-027-168/+354
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4710: New runnables r=matklad a=matklad bors d=@vsrs Co-authored-by: Aleksey Kladov <[email protected]>
| | * | | | | | Fix testsAleksey Kladov2020-06-023-69/+270
| | | | | | | |
| | * | | | | | Spec better runnablesAleksey Kladov2020-06-022-1/+4
| | | | | | | |
| | * | | | | | New runnables APIAleksey Kladov2020-06-025-98/+80
| | | | | | | |
| * | | | | | | Merge #4711bors[bot]2020-06-022-2/+2
| |\ \ \ \ \ \ \ | | |/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4711: Disable rust-analyzer.{cargo,checkOnSave}.allFeatures by default r=matklad a=lnicola Co-authored-by: LaurenČ›iu Nicola <[email protected]>
| | * | | | | | Disable rust-analyzer.{cargo,checkOnSave}.allFeatures by defaultLaurențiu Nicola2020-06-022-2/+2
| | | | | | | |
| * | | | | | | MinorAleksey Kladov2020-06-023-124/+125
| | | | | | | |
* | | | | | | | Preliminary implementation of lazy CodeAssitsMikhail Rakhmanov2020-06-029-47/+150
|/ / / / / / /
* | | | | | | Merge #4658bors[bot]2020-06-023-5/+2
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4658: Fix problem with format string tokenization r=matklad a=ruabmbua Fixed by just not handling closing curlybrace escaping. Closes https://github.com/rust-analyzer/rust-analyzer/issues/4637 Co-authored-by: Roland Ruckerbauer <[email protected]>
| * | | | | | | Test case for format string highlighting of closing curlybraceRoland Ruckerbauer2020-05-302-0/+2
| | | | | | | |
| * | | | | | | Fix problem with format string tokenizationRoland Ruckerbauer2020-05-301-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed by just not handling closing curlybrace escaping.
* | | | | | | | Merge #4580bors[bot]2020-06-025-11/+21
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4580: Fix invoking cargo without consulting CARGO env var or standard installation paths r=matklad a=Veetaha Followup for #4329 The pr essentially fixes [this bug](https://youtu.be/EzQ7YIIo1rY?t=2189) cc @lefticus Co-authored-by: veetaha <[email protected]>
| * | | | | | | Change Runnable.bin -> Runnable.kindveetaha2020-05-314-22/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As per matklad, we now pass the responsibility for finding the binary to the frontend. Also, added caching for finding the binary path to reduce the amount of filesystem interactions.
| * | | | | | | Fix tests, apply code review proposalsveetaha2020-05-314-14/+21
| | | | | | | |
| * | | | | | | Fix invoking cargo without consulting CARGO or standard installation pathsveetaha2020-05-312-1/+8
| |/ / / / / /