Commit Graph

10547 Commits

Author SHA1 Message Date
Aleksey Kladov
ea3e84f21d
Merge pull request #4590 from Julian-Wollersberger/update_unescape
Update to rustc_lexer version 660
2020-05-24 15:27:58 +02:00
Mikhail Rakhmanov
08aa8e1de7 Further refactoring under review comments 2020-05-24 14:53:12 +02:00
Benjamin Coenen
27ed376bc4 add support of feature flag for runnables #4464
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2020-05-24 13:34:34 +02:00
Julian Wollersberger
ff9d553fe3 Some FIXMEs were outdated:
* Done at line 243: "Add validation of `crate` keyword not appearing in the middle of the symbol path"
* Already happened: "Remove validation of unterminated literals (it is already implemented in `tokenize()`)"
* Happens in `unescape()`: "Add validation of character literal containing only a single char"
* Missing: "raw string literals and raw byte string literals"
2020-05-24 13:17:16 +02:00
Julian Wollersberger
cd4ffc1945 Update to rustc_lexer version 660.
Change `unescape_*()` to `unescape_literal()`.
2020-05-24 13:12:16 +02:00
Benjamin Coenen
48d7c61e26 add support of feature flag for runnables #4464
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2020-05-23 20:59:18 +02:00
Aleksey Kladov
f4f5fca101
Merge pull request #4538 from vsrs/vscode_tests
vscode client side tests
2020-05-23 16:39:04 +02:00
vsrs
1797b665a4
vscode tests configuration for more verbose output 2020-05-23 17:07:25 +03:00
vsrs
e3223a7fd3
OS matrix for TypeScript 2020-05-23 16:39:30 +03:00
vsrs
a09b308b4e
xvfb-action fix 2020-05-23 16:24:21 +03:00
vsrs
12ea4a2ba2
Try GabrielBB/xvfb to run vscode tests 2020-05-23 16:13:47 +03:00
vsrs
bddbe16d93
Start xvfb manually on ubuntu 2020-05-23 16:04:14 +03:00
vsrs
ca230627c6
try to run TypeScript CI on windows 2020-05-23 15:37:07 +03:00
vsrs
1739a542f8 Add npm test to CI 2020-05-23 15:20:46 +03:00
bors[bot]
4cc2ff6e39
Merge #4555 #4575
4555: VSCode: added patchelf after download for NixOS support r=matklad a=cab404

This adds Nix support, and fixes #4542 

4575: Use Chalk's built-in representations for fn items and pointers r=matklad a=flodiebold

The `TypeName::FnDef` was just added; the function pointer variant has existed for a while, I just forgot about it because it's special (because fn pointers can be higher-ranked over lifetimes).

We *could* also make `FnPtr` a separate `Ty` variant instead of a `TypeCtor` variant, which would make the conversion code a bit less special-casey, but it doesn't seem worth doing right now.

Co-authored-by: Vladimir Serov <me@cab404.ru>
Co-authored-by: Cabia Rangris <me@cab404.ru>
Co-authored-by: Florian Diebold <florian.diebold@freiheit.com>
2020-05-23 11:32:26 +00:00
bors[bot]
ca5e4596a0
Merge #4578
4578: Remove unnecessary clone that prevented clippy from moving on r=matklad a=kjeremy



Co-authored-by: kjeremy <kjeremy@gmail.com>
2020-05-23 11:24:28 +00:00
bors[bot]
88c292b1c2
Merge #4559
4559: Module name on hover shows another newline after it r=matklad a=Arthamys

This changes the display of hover information to add a newline between the module path of the item and the signature of the item, as suggested in #3813 

**Before**

![before_3813](https://user-images.githubusercontent.com/11710698/82609224-5d517d80-9bbc-11ea-9a08-0a1558409c6b.png)

**After**

![after_3813](https://user-images.githubusercontent.com/11710698/82609208-562a6f80-9bbc-11ea-8cb6-4430269c5800.png)

Co-authored-by: Galilée 'Bill' Enguehard <galilee.enguehard@gmail.com>
2020-05-23 11:09:24 +00:00
Mikhail Rakhmanov
e2974ba8f7 Remove unnecessary set_file and change variable positions for better readability 2020-05-23 11:57:12 +02:00
Mikhail Rakhmanov
3a244e02b5 Remove unwraps where possible 2020-05-23 11:53:02 +02:00
Galilée 'Bill' Enguehard
6197a960df Fix resolve_proc_macro heavy test 2020-05-23 08:59:51 +02:00
Jess Balint
4967b811dd tweak syntax 2020-05-22 19:09:37 -05:00
Mikhail Rakhmanov
6ee1c60c9c Further review fixes 2020-05-23 01:41:08 +02:00
Mikhail Rakhmanov
4984520ef5 Use default instead of new in AssistDirector 2020-05-23 01:27:11 +02:00
Mikhail Rakhmanov
fce10200a0 Better naming and fix some review comments 2020-05-23 01:23:40 +02:00
kjeremy
7a46a99490 And a few drive-bys 2020-05-22 17:26:31 -04:00
kjeremy
d8af45472e Remove unnecessary clone that prevented clippy from moving on 2020-05-22 17:13:14 -04:00
Mikhail Rakhmanov
ef1aaeb595 More formatting 2020-05-22 22:59:17 +02:00
Mikhail Rakhmanov
97ffe3c6e8 Refactor AssistDirector 2020-05-22 22:47:25 +02:00
Mikhail Rakhmanov
04a35784df Formatting and remove unused imports 2020-05-22 22:43:52 +02:00
Mikhail Rakhmanov
5cd4eb6dd6 Add preliminary implementation of extract struct from enum variant 2020-05-22 22:28:30 +02:00
Florian Diebold
194dd9eb0d Use Chalk's Ty::Function for function pointer types
Function pointers can be 'higher-ranked' over lifetimes, which is why they're
not an application type in Chalk, but since we don't model lifetimes it doesn't
matter for us yet.
2020-05-22 21:05:28 +02:00
Florian Diebold
bfbc210bc1 Use Chalk's built-in representation of function item types 2020-05-22 21:05:13 +02:00
bors[bot]
d4daca9f02
Merge #4573
4573: Chalk cleanups r=matklad a=flodiebold

 - split off the `Interner` impl and the conversion code into their own modules
 - use `TypeCtorId` as `AdtId` directly (instead of raw `InternId`s), and rename the type alias `StructId` -> `AdtId`
 - provide missing Chalk debug impls

Co-authored-by: Florian Diebold <florian.diebold@freiheit.com>
2020-05-22 18:16:28 +00:00
Galilée 'Bill' Enguehard
d688215f25 Update tests to accept new hover formatting 2020-05-22 20:11:24 +02:00
Galilée 'Bill' Enguehard
910ac5a213 Fix formatting error when no modpath is present 2020-05-22 20:10:37 +02:00
Florian Diebold
ea265aad64 Provide missing Chalk debug methods 2020-05-22 19:52:06 +02:00
Florian Diebold
27fe68ad5c Use TypeCtorId as AdtId directly, and rename the type alias StructId -> AdtId 2020-05-22 19:52:06 +02:00
Florian Diebold
1d0e27254d Split up chalk module a bit 2020-05-22 19:52:06 +02:00
bors[bot]
b38f9a5810
Merge #4570
4570: Use Chalk's built-in impls r=matklad a=flodiebold

This contains two changes:
 - Chalk has begun adding built-in representations of primitive types; use these in our type conversion logic. There's one somewhat 'iffy' part here, namely references; we don't keep track of lifetimes, but Chalk does, so it will expect a lifetime parameter on references. If we didn't provide that, it could cause crashes in Chalk code that expects the lifetime, so I rather hackily add an (always the same) lifetime placeholder during conversion. I expect that we'll fully switch to using Chalk's types everywhere before we add lifetime support, so I think this is the best solution for now.
 - let Chalk know about well-known traits (from lang items), so it can apply its built-in impls.

Before:
```
Total expressions: 181485
Expressions of unknown type: 2940 (1%)
Expressions of partially unknown type: 2884 (1%)
Type mismatches: 901
Inference: 37.821210245s, 0b allocated 0b resident
Total: 53.399467609s, 0b allocated 0b resident
```

After:
```
Total expressions: 181485
Expressions of unknown type: 2923 (1%)
Expressions of partially unknown type: 2879 (1%)
Type mismatches: 734
Inference: 39.157752509s, 0b allocated 0b resident
Total: 54.110767621s, 0b allocated 0b resident
```

(I will start splitting up `chalk.rs` in a separate PR, since it's getting pretty big...)

Co-authored-by: Florian Diebold <flodiebold@gmail.com>
Co-authored-by: Florian Diebold <florian.diebold@freiheit.com>
2020-05-22 17:31:39 +00:00
bors[bot]
c5a2271580
Merge #4572
4572: Link upstream issues r=matklad a=matklad



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-05-22 17:14:44 +00:00
Aleksey Kladov
9d31b502b5 Link upstream issues 2020-05-22 19:14:14 +02:00
Galilée 'Bill' Enguehard
5043c9ce9c Modify hover info to show module path separated by a line 2020-05-22 19:04:39 +02:00
Florian Diebold
e0f978018a Add some tests for Chalk built-in trait impls 2020-05-22 18:52:07 +02:00
bors[bot]
a95bb1355d
Merge #4571
4571: KISS SourceChange r=matklad a=matklad

The idea behind requiring the label is a noble one, but we are not
really using it consistently anyway, and it should be easy to retrofit
later, should we need it.

bors r+

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-05-22 16:09:37 +00:00
Aleksey Kladov
2c04aad2d2 KISS SourceChange
The idea behind requiring the label is a noble one, but we are not
really using it consistently anyway, and it should be easy to retrofit
later, should we need it.
2020-05-22 18:04:26 +02:00
bors[bot]
2a36a2a3cc
Merge #4569
4569: CodeAction groups r=matklad a=matklad



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-05-22 15:33:12 +00:00
Florian Diebold
02c2beaa8c Provide Chalk well-known traits 2020-05-22 17:32:49 +02:00
Florian Diebold
e81c76a95a Use Chalk's built-in representations of primitive types
For references, we make sure Chalk actually gets a lifetime here.
2020-05-22 17:32:49 +02:00
Aleksey Kladov
2075e77ee5 CodeAction groups 2020-05-22 17:32:46 +02:00
Jess Balint
d42fd8efb6 use char range 2020-05-22 10:15:59 -05:00