]>
git.lizzy.rs Git - rust.git/log
bors[bot] [Tue, 20 Jul 2021 17:23:18 +0000 (17:23 +0000)]
Merge #9654
9654: minor: remove dead code r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Tue, 20 Jul 2021 17:18:39 +0000 (20:18 +0300)]
minor: remove dead code
It has been living in RootDatabase::apply_change almost a year by now.
bors[bot] [Tue, 20 Jul 2021 17:04:56 +0000 (17:04 +0000)]
Merge #9653
9653: minor: cov-mark r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Tue, 20 Jul 2021 17:00:52 +0000 (19:00 +0200)]
cov-mark
bors[bot] [Tue, 20 Jul 2021 16:58:30 +0000 (16:58 +0000)]
Merge #9652
9652: Don't concat path in replace_qualified assist when they start with a keyword r=Veykril a=Veykril
Also keep the path if we can't find a path to the item instead of becoming non applicable.
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Tue, 20 Jul 2021 16:57:12 +0000 (18:57 +0200)]
Don't concat path in replace_qualified assist when they start with a keyword
bors[bot] [Tue, 20 Jul 2021 16:38:40 +0000 (16:38 +0000)]
Merge #9651
9651: Restrict completions inside visibility modifiers r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Tue, 20 Jul 2021 16:37:52 +0000 (18:37 +0200)]
Restrict completions inside visibility modifiers
bors[bot] [Tue, 20 Jul 2021 16:06:37 +0000 (16:06 +0000)]
Merge #9637
9637: Overhaul doc_links testing infra r=Veykril a=Veykril
and fix several issues with current implementation.
Fixes #9617
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Tue, 20 Jul 2021 16:05:25 +0000 (18:05 +0200)]
More tests
Lukas Wirth [Tue, 20 Jul 2021 15:57:47 +0000 (17:57 +0200)]
Move doc_links tests from hover to doc_links
Lukas Wirth [Tue, 20 Jul 2021 15:41:10 +0000 (17:41 +0200)]
Minor cleanups
Lukas Wirth [Tue, 20 Jul 2021 15:03:39 +0000 (17:03 +0200)]
Some more fragment fixes
bors[bot] [Tue, 20 Jul 2021 14:50:43 +0000 (14:50 +0000)]
Merge #9648
9648: minor: address review comments r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Tue, 20 Jul 2021 14:49:02 +0000 (17:49 +0300)]
minor: address review comments
bors[bot] [Tue, 20 Jul 2021 14:20:31 +0000 (14:20 +0000)]
Merge #9647
9647: internal: remove potentially slow method r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Tue, 20 Jul 2021 14:19:02 +0000 (17:19 +0300)]
internal: remove potentially slow method
Aleksey Kladov [Tue, 20 Jul 2021 14:11:09 +0000 (17:11 +0300)]
internal: remove one usage of a slow method
bors[bot] [Tue, 20 Jul 2021 14:09:24 +0000 (14:09 +0000)]
Merge #9646
9646: add 'use' prefix for any auto-import r=Veykril a=mahdi-frms
Fixes #9643
looks like there was an if condition that had to be removed.
Co-authored-by: mahdi-frms <mahdif1380@outlook.com>
mahdi-frms [Tue, 20 Jul 2021 14:01:35 +0000 (18:31 +0430)]
add 'use' prefix for any auto-import
Aleksey Kladov [Tue, 20 Jul 2021 14:02:16 +0000 (17:02 +0300)]
internal: remove one usage of a slow method
Lukas Wirth [Tue, 20 Jul 2021 14:01:27 +0000 (16:01 +0200)]
Correctly generate link fragments for associated items
Lukas Wirth [Tue, 20 Jul 2021 14:00:44 +0000 (16:00 +0200)]
Cleanup runnables canonical path impl
bors[bot] [Tue, 20 Jul 2021 13:31:11 +0000 (13:31 +0000)]
Merge #9644
9644: internal: add simple smoke test for project model r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Tue, 20 Jul 2021 12:38:20 +0000 (15:38 +0300)]
internal: add simple smoke test for project model
Our project model code is rather complicated -- the logic for lowering
from `cargo metadata` to `CrateGraph` is fiddly and special-case. So
far, we survived without testing this at all, but this increasingly
seems like a poor option.
So this PR introduces a simple tests just to detect the most obvious
failures. The idea here is that, although we rely on external processes
(cargo & rustc), we are actually using their stable interfaces, so we
might just mock out the outputs.
Long term, I would like to try to virtualize IO here, so as to do such
mocking in a more principled way, but lets start simple.
Should we forgo the mocking and just call `cargo metadata` directly
perhaps? Touch question -- I personally feel that fast, in-process tests
are more important in this case than any extra assurance we get from
running the real thing.
Super-long term, we would probably want to extend our heavy tests to
cover more use-cases, but we should figure a way to do that without
slowing the tests down for everyone.
Perhaps we need two-tiered bors system, where we pull from `master` into
`release` branch only when an additional set of tests passes?
bors[bot] [Tue, 20 Jul 2021 12:58:31 +0000 (12:58 +0000)]
Merge #9645
9645: internal: easier to skim CI logs r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Tue, 20 Jul 2021 12:55:44 +0000 (15:55 +0300)]
internal: easier to skim CI logs
bors[bot] [Tue, 20 Jul 2021 11:33:34 +0000 (11:33 +0000)]
Merge #9642
9642: minor: publish la_arena r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Tue, 20 Jul 2021 11:33:08 +0000 (14:33 +0300)]
minor: publish la_arena
bors[bot] [Tue, 20 Jul 2021 09:57:12 +0000 (09:57 +0000)]
Merge #9641
9641: docs: publish Explaining Rust Analyzer series r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Mon, 19 Jul 2021 20:40:20 +0000 (23:40 +0300)]
docs: publish Explaining Rust Analyzer series
Lukas Wirth [Mon, 19 Jul 2021 18:36:44 +0000 (20:36 +0200)]
Resolve paths to assoc items for traits
bors[bot] [Mon, 19 Jul 2021 18:22:30 +0000 (18:22 +0000)]
Merge #9638
9638: internal: replace some unwraps with types r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Mon, 19 Jul 2021 18:21:41 +0000 (21:21 +0300)]
minor: simplify
Aleksey Kladov [Mon, 19 Jul 2021 18:20:10 +0000 (21:20 +0300)]
internal: use types to remove some unwraps
Lukas Wirth [Mon, 19 Jul 2021 17:57:55 +0000 (19:57 +0200)]
Add doc-link resolution test infra
Aleksey Kladov [Mon, 19 Jul 2021 16:18:39 +0000 (19:18 +0300)]
minor: typo
bors[bot] [Mon, 19 Jul 2021 15:28:36 +0000 (15:28 +0000)]
Merge #9625
9625: internal: simplify handling of the build scripts r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
bors[bot] [Mon, 19 Jul 2021 15:18:01 +0000 (15:18 +0000)]
Merge #9635
9635: internal: explain why we avoid serializing everything r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Mon, 19 Jul 2021 14:47:56 +0000 (17:47 +0300)]
internal: explain why we avoid serializing everything
bors[bot] [Mon, 19 Jul 2021 13:39:28 +0000 (13:39 +0000)]
Merge #9631
9631: Added some metadata for rust-analyzer package sufficient to build a package using `cargo deb` r=matklad a=KOLANICH
Co-authored-by: KOLANICH <kolan_n@mail.ru>
Aleksey Kladov [Mon, 19 Jul 2021 13:35:29 +0000 (16:35 +0300)]
remove debug prints
Aleksey Kladov [Mon, 19 Jul 2021 13:24:45 +0000 (16:24 +0300)]
fix tests
KOLANICH [Mon, 19 Jul 2021 12:39:49 +0000 (15:39 +0300)]
Added some metadata for rust-analyser package sufficient to build it using `cargo deb`
Co-authored-by: bjorn3 <bjorn3@users.noreply.github.com>
bors[bot] [Mon, 19 Jul 2021 13:00:57 +0000 (13:00 +0000)]
Merge #9633
9633: internal: Add `TreeId` to identify `ItemTree`s r=jonas-schievink a=jonas-schievink
With per-block `ItemTree`s, the file ID will not be enough to identify an `ItemTree`.
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
Jonas Schievink [Mon, 19 Jul 2021 12:53:18 +0000 (14:53 +0200)]
Add `TreeId` to identify `ItemTree`s
With per-block `ItemTree`s, the file ID is not enough to identify an
`ItemTree`.
bors[bot] [Mon, 19 Jul 2021 02:54:09 +0000 (02:54 +0000)]
Merge #9627
9627: fix: Typo in architecture.md r=lnicola a=alexfertel
Co-authored-by: Alexander Gonzalez <alexfertel97@gmail.com>
Alexander Gonzalez [Mon, 19 Jul 2021 02:17:45 +0000 (22:17 -0400)]
fix: Typo in architecture.md
Aleksey Kladov [Sun, 18 Jul 2021 10:13:03 +0000 (13:13 +0300)]
fix: potential bugs when build scripts do not match the current project
bors[bot] [Sun, 18 Jul 2021 09:10:56 +0000 (09:10 +0000)]
Merge #9619
9619: Support GATs for associated type arg parsing r=Veykril a=Veykril
Fixes #9602
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Sat, 17 Jul 2021 11:47:53 +0000 (13:47 +0200)]
Support GATs for associated type arg parsing
Aleksey Kladov [Sun, 18 Jul 2021 08:29:22 +0000 (11:29 +0300)]
internal: simplify handling of the build scripts
bors[bot] [Sun, 18 Jul 2021 07:26:05 +0000 (07:26 +0000)]
Merge #9624
9624: minor: Fix `AbsPath::ends_with` r=lnicola a=lnicola
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Laurențiu Nicola [Sun, 18 Jul 2021 07:25:14 +0000 (10:25 +0300)]
Fix AbsPath::ends_with
bors[bot] [Sat, 17 Jul 2021 21:16:43 +0000 (21:16 +0000)]
Merge #9623
9623: internal: make it clearer where IO happens r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Sat, 17 Jul 2021 20:43:54 +0000 (23:43 +0300)]
internal: make it clearer where IO happens
bors[bot] [Sat, 17 Jul 2021 19:41:42 +0000 (19:41 +0000)]
Merge #9622
9622: feat: improve parser error recovery for function parameters r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Sat, 17 Jul 2021 19:41:04 +0000 (22:41 +0300)]
feat: improve parser error recovery for function parameters
bors[bot] [Sat, 17 Jul 2021 15:14:02 +0000 (15:14 +0000)]
Merge #9620
9620: internal: don't depend on cwd r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Sat, 17 Jul 2021 14:40:13 +0000 (17:40 +0300)]
internal: a bit more of cwd safety for flycheck
bors[bot] [Sat, 17 Jul 2021 15:04:55 +0000 (15:04 +0000)]
Merge #9621
9621: Remove outdated "(not yet released)" hint r=lnicola a=cakebaker
Neovim 0.5 has been released recently (see http://neovim.io/news/2021/07), hence the "(not yet released)" hint is no longer needed.
Co-authored-by: Daniel Hofstetter <daniel.hofstetter@42dh.com>
Daniel Hofstetter [Sat, 17 Jul 2021 14:56:26 +0000 (16:56 +0200)]
Remove outdated "(not yet released)" hint
Neovim 0.5 has been released recently (see http://neovim.io/news/2021/07), hence the "(not yet released)" hint is no longer needed.
Aleksey Kladov [Sat, 17 Jul 2021 13:54:48 +0000 (16:54 +0300)]
internal: make sure that proc macro machinery doesn't depend on cwd
Aleksey Kladov [Sat, 17 Jul 2021 13:43:33 +0000 (16:43 +0300)]
internal: make it easier to isolate IO
bors[bot] [Fri, 16 Jul 2021 13:48:23 +0000 (13:48 +0000)]
Merge #9614
9614: Parse input expressions for dbg! invocations in remove_dbg r=Veykril a=Veykril
Instead of inspecting the input tokentree manually, parse the input as `,` delimited expressions instead and act on that. This simplifies the assist quite a bit.
Fixes #8455
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Fri, 16 Jul 2021 13:46:29 +0000 (15:46 +0200)]
Cleanup tests
Lukas Wirth [Fri, 16 Jul 2021 13:20:50 +0000 (15:20 +0200)]
Parse input expressions in for dbg! in remove_dbg
bors[bot] [Thu, 15 Jul 2021 21:42:47 +0000 (21:42 +0000)]
Merge #9611
9611: minor: Explicitly connect an ambiguous import path case logic with its test r=SomeoneToIgnore a=SomeoneToIgnore
Follows up https://github.com/rust-analyzer/rust-analyzer/pull/8820/
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Kirill Bulatov [Thu, 15 Jul 2021 21:41:00 +0000 (00:41 +0300)]
Explicitly connect an ambiguous import path case logic with the test on it
bors[bot] [Thu, 15 Jul 2021 20:24:22 +0000 (20:24 +0000)]
Merge #9608
9608: minor: Add regression test fo #7222 r=Veykril a=Veykril
Closes #7222
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Thu, 15 Jul 2021 20:23:34 +0000 (22:23 +0200)]
Add regression test fo #7222
bors[bot] [Thu, 15 Jul 2021 19:29:28 +0000 (19:29 +0000)]
Merge #9607
9607: minor: Simplify r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Thu, 15 Jul 2021 19:28:30 +0000 (21:28 +0200)]
Simplify
bors[bot] [Thu, 15 Jul 2021 15:54:55 +0000 (15:54 +0000)]
Merge #9605
9605: internal: Folding ranges respect item visibilities r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Thu, 15 Jul 2021 15:44:23 +0000 (17:44 +0200)]
Folding ranges respect item visibilities
Lukas Wirth [Thu, 15 Jul 2021 15:02:45 +0000 (17:02 +0200)]
Add nested region folding test
bors[bot] [Thu, 15 Jul 2021 14:36:22 +0000 (14:36 +0000)]
Merge #9604
9604: fix: Don't fold consecutive modules with item lists r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Thu, 15 Jul 2021 14:35:31 +0000 (16:35 +0200)]
Don't fold consecutive modules with item lists
bors[bot] [Thu, 15 Jul 2021 14:27:57 +0000 (14:27 +0000)]
Merge #9603
9603: internal: Move attribute completion tests r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Thu, 15 Jul 2021 14:27:01 +0000 (16:27 +0200)]
Move attribute completion tests
bors[bot] [Thu, 15 Jul 2021 00:45:55 +0000 (00:45 +0000)]
Merge #9600
9600: fix: Single-line and nested blocks in the `unwrap_block` assist r=Veykril a=patrick-gu
Fixes #8411
Rework the system for stripping whitespace and braces in the unwrap_block assist to allow correct unwrapping of blocks such as:
```rust
{ $0 0 }
```
into
```rust
0
```
and nested blocks, such as:
```rust
$0{
{
3
}
}
```
into
```rust
{
3
}
```
This is done by creating the `update_expr_string_with_pat` function (along with `update_expr_string` and `update_expr_string_without_newline`), which strips whitespace and braces in a way that ensures that only whitespace and a maximum of one brace are removed from the start and end of the expression string.
I have also created several tests to ensure that this functionality works correctly.
Co-authored-by: patrick-gu <55641350+patrick-gu@users.noreply.github.com>
bors[bot] [Thu, 15 Jul 2021 00:20:44 +0000 (00:20 +0000)]
Merge #9595
9595: Show test mod runnable in outline modules r=Veykril a=Veykril
This shows a runnable inside outline test modules at the top of its file:
![image](https://user-images.githubusercontent.com/
3757771 /
125494747 -
169c9238 -3faa-4eed-9700-
90bd730b4e3c .png)
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
patrick-gu [Wed, 14 Jul 2021 19:00:48 +0000 (12:00 -0700)]
fix: Single-line and nested blocks in unwrap_block
Rework the system for stripping whitespace and braces in the
unwrap_block assist to allow correct unwrapping of `{$0 { 0 } }`
bors[bot] [Wed, 14 Jul 2021 16:29:25 +0000 (16:29 +0000)]
Merge #9599
9599: Complete true and false keywords r=Veykril a=fabledpig
Closes #9521.
Co-authored-by: Levente Gyozo Lenart <leviiibog@gmail.com>
Levente Gyozo Lenart [Wed, 14 Jul 2021 16:16:18 +0000 (18:16 +0200)]
Update tests
Levente Gyozo Lenart [Wed, 14 Jul 2021 16:15:00 +0000 (18:15 +0200)]
Add true and false as completion suggestions when expecting an expression
Lukas Wirth [Tue, 13 Jul 2021 16:55:06 +0000 (18:55 +0200)]
Show test mod runnable in outline modules
bors[bot] [Tue, 13 Jul 2021 23:43:01 +0000 (23:43 +0000)]
Merge #9597
9597: Use Type::walk for goto_type_definition r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Tue, 13 Jul 2021 23:42:30 +0000 (01:42 +0200)]
Use Type::walk for goto_type_definition
bors[bot] [Tue, 13 Jul 2021 17:25:00 +0000 (17:25 +0000)]
Merge #9596
9596: Return type arguments in goto_type_definition result r=Veykril a=Veykril
Fixes #9586
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Tue, 13 Jul 2021 17:22:44 +0000 (19:22 +0200)]
Return type arguments in goto_type_definition result
bors[bot] [Tue, 13 Jul 2021 16:57:19 +0000 (16:57 +0000)]
Merge #9594
9594: Assign mutable semantic token modifier to assignment operators r=Veykril a=Veykril
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/9578
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Tue, 13 Jul 2021 16:32:02 +0000 (18:32 +0200)]
Assign mutable semantic token modifier to assignment operators
bors[bot] [Tue, 13 Jul 2021 16:30:52 +0000 (16:30 +0000)]
Merge #9592
9592: internal: Split main highlighting function up into a few subfunctions r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Tue, 13 Jul 2021 16:21:20 +0000 (18:21 +0200)]
Split main highlighting function up into a few subfunctions
bors[bot] [Tue, 13 Jul 2021 12:02:52 +0000 (12:02 +0000)]
Merge #9588
9588: minor: make sure that project_root works correctly r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Tue, 13 Jul 2021 12:02:29 +0000 (15:02 +0300)]
minor: make sure that project_root works correctly
bors[bot] [Tue, 13 Jul 2021 10:43:01 +0000 (10:43 +0000)]
Merge #9585
9585: Rename the old server before update r=matklad a=lnicola
Kinda' fixes #6602
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
bors[bot] [Tue, 13 Jul 2021 10:35:20 +0000 (10:35 +0000)]
Merge #9550
9550: Proc macro multi abi proof of concept r=matklad a=alexjg
#8925 was irritating me so I thought I would have a bash at fixing it. What I've done here is copy the `crates/proc_macro_srv/src/proc_macro` code (which is copied from `<RUST>/library/proc_macro`) to `crates/proc_macro_srv/src/proc_macro_nightly` and the modified the nightly version to include the changes from https://github.com/rust-analyzer/rust-analyzer/pull/9047 and https://github.com/yotamofek/rust-analyzer/commit/
aeb7b183a2302af968f1110fb3cbd00c76a34974
This gives us the code to support both stable and nightly ABIs. Then we use the `proc_macro_api::version::read_dylib_info` to determine which version of the ABI to load when creating a `ProcMacroLibraryLibLoading` (which is now an enum).
This seems to work for me. The code could be cleaned up but I wanted to see if the approach makes sense before I spend more time on it.
I've split the change into two commits, the first is just copying and modifying the `proc_macro` crate, the second contains most of the interesting work around figuring out which ABI to use.
Co-authored-by: Alex Good <alex@memoryandthought.me>
Co-authored-by: alexjg <alex@memoryandthought.me>
Laurențiu Nicola [Mon, 12 Jul 2021 19:09:01 +0000 (22:09 +0300)]
Rename the old server before update