Commit Graph

7041 Commits

Author SHA1 Message Date
Michal Terepeta
d761435ba0 Remove the Default impl for SourceRoot
Let's be always explicit whether we create a library (i.e., an immutable
dependency) or a local `SourceRoot`, since it can have a large impact on
the validation performance in salsa. (we found it the hard way recently,
where the `Default` instance made it quite tricky to spot a bug)

Signed-off-by: Michal Terepeta <michal.terepeta@gmail.com>
2020-01-08 19:42:27 +01:00
bors[bot]
2ffaad10f2
Merge #2769
2769: Update lsp-features.md r=kjeremy a=kjeremy



Co-authored-by: Jeremy Kolb <kjeremy@gmail.com>
2020-01-08 17:00:52 +00:00
Jeremy Kolb
895155de6d
Update lsp-features.md 2020-01-08 11:45:14 -05:00
bors[bot]
2e66bed782
Merge #2698
2698: Call Hierarchy r=kjeremy a=kjeremy

Support experiment incoming and outgoing calls.

Fixes #2546 

Co-authored-by: Jeremy Kolb <kjeremy@gmail.com>
Co-authored-by: kjeremy <kjeremy@gmail.com>
2020-01-08 16:42:56 +00:00
kjeremy
c7b2bc1363 Move private API down 2020-01-08 11:33:04 -05:00
Wilco Kusee
11caebe6ce
Remove unneeded Box::new
Co-Authored-By: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-01-08 17:22:08 +01:00
Wilco Kusee
738d5a7ec2
Derive debug 2020-01-08 17:21:19 +01:00
Jeremy Kolb
1b19a8aa5e Implement proposed CallHierarchy feature
See: https://github.com/microsoft/vscode-languageserver-node/blob/master/protocol/src/protocol.callHierarchy.proposed.ts
2020-01-08 10:15:49 -05:00
bors[bot]
928ecd069a
Merge #2738
2738: [Draft] Adds a way to limits reference search by StructLiteral r=matklad a=mikhail-m1

first draft for #2549 

Co-authored-by: Mikhail Modin <mikhailm1@gmail.com>
2020-01-08 14:33:05 +00:00
Mikhail Modin
fb25c91979 Adds a way to limits reference search by StructLiteral 2020-01-08 15:21:54 +01:00
Wilco Kusee
003620f0d6
Use downcasting for CargoTomlNotFoundError 2020-01-08 14:06:08 +01:00
Giles Cope
f9049d35a2 Relative adderss 2020-01-08 12:36:02 +00:00
Giles Cope
79e1cb9b59 Upload 2020-01-08 12:31:05 +00:00
Giles Cope
dd998d9076 noop 2020-01-08 12:19:27 +00:00
Giles Cope
22a0c9a838 Make artifacts accessible 2020-01-08 12:19:27 +00:00
Aleksey Kladov
5d8f2bd822
Merge pull request #2762 from edwin0cheng/fix-2759
Reject tuple index for missing fields assist
2020-01-08 12:49:54 +01:00
bors[bot]
d5abe4cfdd
Merge #2763
2763: ⬆️ pico-args r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-01-08 10:28:07 +00:00
Aleksey Kladov
ceb8f74901 ⬆️ pico-args 2020-01-08 11:27:31 +01:00
Edwin Cheng
a4c9babedb Proper emit diagnostic without fix 2020-01-08 02:18:43 +08:00
Edwin Cheng
e55e6da13a Reject tuple index for missing fields assist 2020-01-08 02:08:17 +08:00
Aleksey Kladov
8317efa191
Merge pull request #2760 from edwin0cheng/fix-descend-into-macros
Use src node for analyze source in `descend_into_macros`
2020-01-07 18:08:43 +01:00
Aleksey Kladov
5914a93106
Merge pull request #2761 from matklad/caching
Try to restore caching on CI
2020-01-07 18:07:45 +01:00
Aleksey Kladov
817df4571f More tenacious CI networking 2020-01-07 17:52:45 +01:00
Aleksey Kladov
ca2a9b50c0 Try to restore caching on CI 2020-01-07 17:36:56 +01:00
Edwin Cheng
1fdee24608 Use src node for analyze source 2020-01-08 00:23:53 +08:00
bors[bot]
2a8dd492a8
Merge #2758
2758: Add "code-oss" Visual Studio Code binary name r=matklad a=leo-lb

When Visual Studio Code is manually compiled from the upstream
source tree the binary is named "code-oss".

Co-authored-by: leo-lb <lle-bout@zaclys.net>
2020-01-07 16:18:07 +00:00
Aleksey Kladov
b8ca479a2e
Merge pull request #2756 from matklad/retasks
⬆️ crates
2020-01-07 17:17:31 +01:00
Aleksey Kladov
072f0d323b Fix back compat 2020-01-07 16:45:57 +01:00
Aleksey Kladov
82ba5eaa19 ⬆️ crates 2020-01-07 16:45:57 +01:00
Aleksey Kladov
6a7db8c701 Share cache cleaning logic between OSes 2020-01-07 16:45:57 +01:00
leo-lb
e34c5d0f06
Add "code-oss" Visual Studio Code binary name
When Visual Studio Code is manually compiled from the upstream
source tree the binary is named "code-oss".
2020-01-07 16:42:45 +01:00
bors[bot]
9df1663c12
Merge #2755
2755: Cleanup r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-01-07 14:37:27 +00:00
Aleksey Kladov
5e7995eeb7 Cleanup 2020-01-07 15:36:43 +01:00
Aleksey Kladov
64f0510d18 Move cmd to a separate dir 2020-01-07 15:33:09 +01:00
bors[bot]
6c1401404b
Merge #2754
2754: Fix panic in tuple fields r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-01-07 13:50:17 +00:00
Aleksey Kladov
4d66f5d7d2 Fix panic in tuple fields 2020-01-07 14:49:42 +01:00
Aleksey Kladov
91f9bc2b86 Refactor xtasks 2020-01-07 14:42:56 +01:00
Aleksey Kladov
b02576d562 Simplify
help for internal tools does not worth the duplication
2020-01-07 14:11:18 +01:00
Aleksey Kladov
8f1792fde2
Merge pull request #2725 from kiljacken/actions-matrix
Run tests on ubuntu, windows and macos
2020-01-07 10:54:11 +01:00
bors[bot]
7b9df1062d
Merge #2724
2724: Improve const generic parsing r=matklad a=mchesser

Add support for generic arguments in:

`impl` type parameters:

```rust
impl<const N: u32> Bar<N> {}
```

type args:

```rust
type A = B<1, { 2 }>;
test::<10>();
```

Co-authored-by: Michael Chesser <michaelchesser@outlook.com>
2020-01-06 23:43:24 +00:00
Michael Chesser
ce1b34fd59 Improve const generics parsing
- Handle const generics type args
- Fix issue with const generic as first parameter in trait impl
2020-01-07 09:29:03 +10:30
bors[bot]
c92a090f49
Merge #2753
2753: Fix a problem with `Durability` of libraries r=matklad a=michalt

When processing a change with added libraries, we used
`Default::default` for `SourceRoot` which sets `is_library` to false.
Since we use `is_library` to decide whether to use low or high
durability, I believe that this caused us to mark many library
dependencies as having low durability and thus increased the size of the
graph that salsa needed to verify on every change.

Based on my initial tests this speeds up the `CrateDefMapQuery` on
rust-analyzer from about ~64ms to ~14ms and reduces the number of
validations for the query from over 60k to about 7k.

Signed-off-by: Michal Terepeta <michal.terepeta@gmail.com>

Co-authored-by: Michal Terepeta <michal.terepeta@gmail.com>
2020-01-06 21:25:13 +00:00
Michal Terepeta
be967b94e1 Fix a problem with Durability of libraries
When processing a change with added libraries, we used
`Default::default` for `SourceRoot` which sets `is_library` to false.
Since we use `is_library` to decide whether to use low or high
durability, I believe that this caused us to mark many library
dependencies as having low durability and thus increased the size of the
graph that salsa needed to verify on every change.

Based on my initial tests this speeds up the `CrateDefMapQuery` on
rust-analyzer from about ~64ms to ~14ms and reduces the number of
validations for the query from over 60k to about 7k.

Signed-off-by: Michal Terepeta <michal.terepeta@gmail.com>
2020-01-06 22:21:56 +01:00
bors[bot]
07340a62cc
Merge #2750
2750: add note in vscode instructions for vim plugin users r=matklad a=guswynn

Fixes #2746 

As the issue mentions, this is already mentioned below in the setting docs. However, it ended up taking me a long time to figure this out, so a note in the instructions for Vscode specifically is helpful

Co-authored-by: Gus Wynn <guswynn@gmail.com>
2020-01-06 14:14:58 +00:00
bors[bot]
1953ac17fd
Merge #2714
2714: Sanity check for missing server binary r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-01-06 11:39:41 +00:00
bors[bot]
010d902021
Merge #2726
2726: Improve profiling output when duration filter is specified r=matklad a=michalt

In particular:

  - Use strict inequality for comparisons, since that's what the filter
    syntax supports.

  - Convert to millis for comparisons, since that's the unit used both
    for the filter and when printing.

Now something like `RA_PROFILE='*>0'` will only print things that took
at least 1ms (when rounded to millis).

Signed-off-by: Michal Terepeta <michal.terepeta@gmail.com>

Co-authored-by: Michal Terepeta <michal.terepeta@gmail.com>
2020-01-06 09:41:14 +00:00
bors[bot]
b86ab5257e
Merge #2751
2751: Crates up r=kjeremy a=kjeremy



Co-authored-by: Jeremy Kolb <kjeremy@gmail.com>
2020-01-06 03:13:33 +00:00
Jeremy Kolb
051a2d869e Crates up 2020-01-05 22:12:26 -05:00
Emil Lauridsen
0de029c466 Add missing comma and use double-quotes to bors.toml 2020-01-05 19:58:54 +01:00
Gus Wynn
218d211f48 add note in vscode instructions for vim plugin users 2020-01-05 07:37:58 -08:00