Commit graph

420 commits

Author SHA1 Message Date
Aleksey Kladov
36732a42bd move fold conversino to conv.rs 2019-09-19 18:27:47 +03:00
Aleksey Kladov
184e80007b fix typo 2019-09-19 18:18:58 +03:00
Aleksey Kladov
ef2b84ddf1 introduce hir debugging infra
This is to make debugging rust-analyzer easier.

The idea is that `dbg!(krate.debug(db))` will print the actual, fuzzy
crate name, instead of precise ID. Debug printing infra is a separate
thing, to make sure that the actual hir doesn't have access to global
information.

Do not use `.debug` for `log::` logging: debugging executes queries,
and might introduce unneded dependencies to the crate graph
2019-09-09 12:32:16 +03:00
Aleksey Kladov
219287a14c don't deadlock on shutdown
Specifically, when we tear down IO threads, we should take care to
dispose connection.

closes #1775
2019-09-06 20:58:21 +03:00
Aleksey Kladov
28df377759 add option to disable notify 2019-09-06 17:21:29 +03:00
Aleksey Kladov
33965f0f3e fix renaming of modules 2019-09-05 21:36:40 +03:00
kjeremy
cb063a9b30 lsp-types 0.61.0 2019-09-03 10:50:39 -04:00
Aleksey Kladov
4e3f5cc729 cleanup main loop 2019-08-31 14:47:37 +03:00
Aleksey Kladov
983de30a56 inline thread-worker 2019-08-30 20:32:59 +03:00
Aleksey Kladov
7cc14a7596 ⬆️ lsp-server 2019-08-30 20:18:57 +03:00
Aleksey Kladov
72a3722470 move lsp-server to a separate repository 2019-08-30 17:24:11 +03:00
Aleksey Kladov
ee932d464b ⬆️ vfs 2019-08-25 13:13:08 +03:00
Aleksey Kladov
5b18a4eef9 rename struct -> record, pos -> tuple 2019-08-23 16:59:50 +03:00
Aleksey Kladov
69bbe79c50 implement feature flags 2019-08-22 15:07:31 +03:00
Aleksey Kladov
4dd5afb7fe show error to the user when deserializing config 2019-08-22 11:08:22 +03:00
Aleksey Kladov
6ab85cc192 fix default for the exlude key 2019-08-21 17:30:58 +03:00
Aleksey Kladov
77751cfe01 remove debug-print 2019-08-20 19:55:34 +03:00
Aleksey Kladov
bbeb07e5ca switch to upstream ra_vfs 2019-08-20 19:53:05 +03:00
Aleksey Kladov
188c9967c0 Drop unnecessary &'_ from impls 2019-08-20 19:53:05 +03:00
Aleksey Kladov
4753409f86 refactor TryConvWith similar to ConvWith 2019-08-20 19:53:05 +03:00
Aleksey Kladov
6ea4184fd1 translate \n -> \r\n on the way out 2019-08-20 19:53:05 +03:00
Aleksey Kladov
80a6e61446 make CTX type param instead of assoc type
that way, we can implement ConvWith<&'_ CTX> for different lifetimes
2019-08-20 19:53:05 +03:00
Aleksey Kladov
de3f2948ea add tests for crlf 2019-08-20 19:53:05 +03:00
Aleksey Kladov
ccca427ce4 minor 2019-08-20 19:53:05 +03:00
Aleksey Kladov
7cd9b1dd7a don't load sysroot in most heavy tests 2019-08-19 15:41:18 +03:00
Aleksey Kladov
64ecba4f15 update lsp 2019-08-17 22:21:59 +03:00
Aleksey Kladov
343463c824 implement durability 2019-08-15 15:27:00 +03:00
Aleksey Kladov
13eddd7c49 Drop support for old extendSelection API
Emacs now handles this via native LSP request

dc86bbb227
2019-08-12 13:49:28 +03:00
Kirill Bulatov
2c5c35bdae Always set the runnable name 2019-08-09 23:34:14 +03:00
Kirill Bulatov
726535a44e Extract common logic 2019-08-09 22:19:34 +03:00
Kirill Bulatov
918addee23 Show backtraces in lens runnables 2019-08-09 21:42:04 +03:00
bors[bot]
7e12422fa2 Merge #1652
1652: Improve type hints behavior r=matklad a=SomeoneToIgnore

This PR fixed the following type hints issues:

* Restructures the `InlayKind` enum contents based on the discussion here: https://github.com/rust-analyzer/rust-analyzer/pull/1606#issuecomment-515968055
* Races described in #1639 
* Caches the latest decorations received for each file to show them the next time the file is opened (instead of a new server request)

Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
2019-08-06 16:50:49 +00:00
Aleksey Kladov
3d45da9bca fix tests 2019-08-06 14:41:22 +02:00
Aleksey Kladov
deea8f52d9 allow to exclude certain files and directories 2019-08-06 14:28:31 +02:00
Aleksey Kladov
f70b7e1f07 rename config 2019-08-06 14:28:31 +02:00
Aleksey Kladov
34203256bf introduce ra_vfs_glob crate
It manages exclusion rules for the vfs crate
2019-08-06 14:28:31 +02:00
Aleksey Kladov
d751bd08bf cleanup 2019-08-06 10:57:16 +02:00
Aleksey Kladov
0e4a542cfb rename 2019-08-06 10:50:32 +02:00
Aleksey Kladov
27303da419 use Conv for severity 2019-08-06 09:50:00 +02:00
Kirill Bulatov
15411d4474 Use proper inlay kinds 2019-08-05 00:28:36 +03:00
Jeremy Kolb
e99d3da6c2 Add test for #1540 2019-08-03 18:01:48 -04:00
kjeremy
8da8c147ee remove-comment 2019-07-31 11:53:47 -04:00
kjeremy
4fccad9b2c Add explicit newline preserving tests 2019-07-31 10:46:15 -04:00
Roman Stoliar
facc7a35a5 Fixed review comments 2019-07-30 21:25:51 +03:00
Roman Stoliar
1c11d7b1d8 Hide comments in rust section of doc comments 2019-07-30 03:46:38 +03:00
Kirill Bulatov
b8f95f42e1 Support destructuring patterns 2019-07-29 00:33:10 +03:00
Kirill Bulatov
5169a9d498 Improve inlay hinting for types
Add hints for types in for loop expressions.
Resolve types for every tuple parameter.
Refactor the code.
2019-07-26 18:06:31 +03:00
Kirill Bulatov
dbbb0beb3e Make Analysis api cancellable 2019-07-25 20:22:41 +03:00
bors[bot]
5f3ff157e3 Merge #1549
1549: Show type lenses for the resolved let bindings r=matklad a=SomeoneToIgnore

Types that are fully unresolved are not displayed:

<img width="279" alt="image" src="https://user-images.githubusercontent.com/2690773/61518122-8e4ba980-aa11-11e9-9249-6d9f9b202e6a.png">

A few concerns that I have about the current implementation:

* I've adjusted the `file_structure` API method to return the information about the `let` bindings.
Although it works fine, I have a feeling that adding a new API method would be the better way.
But this requires some prior discussion, so I've decided to go for an easy way with an MVP. 
Would be nice to hear your suggestions.

* There's a hardcoded `{undersolved}` check that I was forced to use, since the method that resolves types returns a `String`. 
Is there a better typed API I can use? This will help, for instance, to add an action to the type lenses that will allow us to navigate to the type.

Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
2019-07-23 09:51:40 +00:00
Kirill Bulatov
8f3377d9f9 Code review fixes 2019-07-22 23:25:13 +03:00