aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | Parse default unsafe & default constAvi Dessauer2020-06-042-15/+45
| |/ / / /
* | | | | 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`
* | | | | | Merge #4741bors[bot]2020-06-041-1/+1
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4741: Fix type inference failure when built with log/kv_unstable r=flodiebold a=dtolnay 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. ```console $ 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<(), _> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ``` https://github.com/rust-lang/log/issues/397 Co-authored-by: David Tolnay <[email protected]>
| * | | | | 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<(), _> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
* | | | | Merge #4736bors[bot]2020-06-041-3/+3
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4736: Bugfix r=kjeremy a=Veetaha Co-authored-by: Veetaha <[email protected]>
| * | | | BufgixVeetaha2020-06-031-3/+3
|/ / / /
* | | | Merge #4717bors[bot]2020-06-0314-85/+210
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | 4717: Implementation of lazy assits r=matklad a=mcrakhman Co-authored-by: Mikhail Rakhmanov <[email protected]>
| * | | Fix more commentsMikhail Rakhmanov2020-06-031-5/+4
| | | |
| * | | Merge branch 'master' into compute-lazy-assitsMikhail Rakhmanov2020-06-0350-1829/+1191
| |\ \ \ | |/ / / |/| | | | | | | | | | | | | | | # Conflicts: # crates/rust-analyzer/src/main_loop/handlers.rs # crates/rust-analyzer/src/to_proto.rs
* | | | Merge #4734bors[bot]2020-06-038-1328/+16
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4734: Don't store generated docs in the repo r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | Don't store generated docs in the repoAleksey Kladov2020-06-038-1328/+16
|/ / / /
* | | | Merge #4733bors[bot]2020-06-031-14/+14
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4733: Cargo update r=kjeremy a=kjeremy Co-authored-by: kjeremy <[email protected]>
| * | | | Cargo updatekjeremy2020-06-031-14/+14
| | | | |
* | | | | 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-035-20/+118
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4730: Document rust-project.json r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | Document rust-project.jsonAleksey Kladov2020-06-035-20/+118
| | | | |
* | | | | Merge #4678bors[bot]2020-06-035-8/+20
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-035-11/+12
| | | | | |
| * | | | | Unsquish parameter types in tooltips for macro-generated functionsAaron Loucks2020-05-311-1/+12
| | | | | |
* | | | | | Merge #4660bors[bot]2020-06-037-19/+260
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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]>
| * | | | | | Update generated feature docsAaron Loucks2020-06-031-1/+1
| | | | | | |
| * | | | | | 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
| | | | | | |
* | | | | | | Merge #4727bors[bot]2020-06-031-2/+0
|\ \ \ \ \ \ \ | |/ / / / / / |/| | / / / / | | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4727: Drop test for old format r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | Drop test for old formatAleksey Kladov2020-06-031-2/+0
| | | | | |
* | | | | | Merge #4726bors[bot]2020-06-036-65/+110
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4726: Groundwork for specifying the set of projects via config r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | 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
|/ / / / /
* | | | | Merge #4724bors[bot]2020-06-037-273/+291
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4724: Rename WorldState -> GlobalState r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | Rename WorldState -> GlobalStateAleksey Kladov2020-06-037-273/+291
|/ / / / /
* | | | | Merge #4723bors[bot]2020-06-034-67/+21
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4723: Derive local roots from Workspaces r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | 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 #4715bors[bot]2020-06-031-9/+7
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4715: Don't exclude dirs that appear in project root parent path r=matklad a=Veetaha Co-authored-by: veetaha <[email protected]>
| * | | | | | Don't exclude dirs that appear in project root parent pathveetaha2020-06-021-9/+7
| | | | | | |
* | | | | | | 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 #4703bors[bot]2020-06-031-1/+104
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4703: Start documenting review process r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | | | | Start documenting review processAleksey Kladov2020-06-031-1/+104
| | | | | | | | |
* | | | | | | | | 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
| | | | | | | | | |