Edwin Cheng
84fb9b44c3
Introduce ra_proc_macro_srv
2020-04-03 19:01:44 +08:00
kjeremy
e5cd48940d
filetime and proc-macro-hack
2020-04-01 10:36:00 -04:00
Aleksey Kladov
8d27829781
Reduce deps
2020-03-31 19:29:11 +02:00
Aleksey Kladov
70730d7655
Rename cargo_watch -> flycheck
2020-03-31 17:29:40 +02:00
Edwin Cheng
7f7a16675d
Use jod_thread
2020-03-31 22:20:19 +08:00
Edwin Cheng
fa621f80fa
Fix test
2020-03-31 22:20:18 +08:00
Edwin Cheng
503cbd3f4b
Implement ra_proc_macro client logic
2020-03-31 22:20:18 +08:00
kjeremy
a1c5905d8d
Update deps
2020-03-31 09:09:16 -04:00
Aleksey Kladov
f7df0b56a7
Use automatic thread joining for cargo-watch
2020-03-30 11:33:01 +02:00
Aleksey Kladov
8bea5ace7e
⬆️ jod-thread
2020-03-30 11:33:01 +02:00
Aleksey Kladov
6596e7cddf
Nice string formatting
2020-03-28 12:27:54 +01:00
Aleksey Kladov
b764c38436
Start stdx
...
This crate will hold everything to small to be worth publishing
2020-03-28 11:01:25 +01:00
bors[bot]
b1594f1080
Merge #3727
...
3727: Introduce ra_proc_macro r=matklad a=edwin0cheng
This PR implemented:
1. Reading dylib path of proc-macro crate from cargo check , similar to how `OUTDIR` is obtained.
2. Added a new crate `ra_proc_macro` and implement the foot-work for reading result from external proc-macro expander.
3. Added a struct `ProcMacroClient` , which will be responsible to the client side communication to the External process.
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
2020-03-26 17:09:32 +00:00
Edwin Cheng
db162df264
Remove deps on tt_mbe
2020-03-27 00:46:40 +08:00
kjeremy
49144deb1b
Update deps
2020-03-26 09:41:53 -04:00
Edwin Cheng
d0b6ed4441
Add ProcMacroClient
2020-03-26 03:29:45 +08:00
Edwin Cheng
a617f24eae
Add ra_proc_macro
2020-03-26 01:30:39 +08:00
Kirill Bulatov
944f28fe5b
Use more generic public api
2020-03-24 10:43:22 +02:00
Josh Mcguigan
df58ab8963
update itertools version to 0.9.0
2020-03-23 16:22:46 -07:00
Josh Mcguigan
2afccbe477
implement fill match arm assist for tuple of enums
2020-03-22 23:28:25 -07:00
Jeremy Kolb
d19a5c04ea
Bump proc-macro-hack and syn
2020-03-22 10:39:35 -04:00
CAD97
27d9516105
cargo update
2020-03-18 17:17:45 -04:00
Emil Lauridsen
33c6c7abc6
Support loading OUT_DIR from cargo check at launch
2020-03-17 14:47:05 +01:00
kjeremy
8e6c1087b1
Update dependencies, removing rustc_version
2020-03-16 16:45:32 -04:00
Jeremy Kolb
2107216dd7
Update anyhow
2020-03-15 12:15:58 -04:00
kjeremy
4c1cde7bda
Update deps
2020-03-13 09:50:56 -04:00
Josh Mcguigan
7208498d54
fix issue 3444
2020-03-12 17:16:28 -07:00
Aleksey Kladov
59a3ec5f33
⬆️ fst
2020-03-10 15:03:32 +01:00
kjeremy
ba0cd6edc8
Remove c2-chaha dependency
2020-03-10 09:51:27 -04:00
bors[bot]
530ff9f57f
Merge #3533
...
3533: Updates insta to 0.15.0 and bumps console to 0.10.0 r=matklad a=kjeremy
Co-authored-by: kjeremy <kjeremy@gmail.com>
2020-03-09 14:38:20 +00:00
kjeremy
d1e9f0af04
Updates insta to 0.15.0 and bumps console to 0.10.0
2020-03-09 10:28:30 -04:00
kjeremy
c981c8b0d0
Fix SelectionRange return type
2020-03-09 10:17:16 -04:00
Florian Diebold
24e98121d8
Try to complete within macros
2020-03-07 15:48:06 +01:00
kjeremy
2a8b7bc648
Bump to quote-1.0.3 since 1.0.2 is blacklisted
2020-03-05 15:21:20 -05:00
kjeremy
cae888e926
Update deps
2020-03-04 10:20:03 -05:00
Aleksey Kladov
e839d793ae
Drop one once_cell dep
2020-03-04 12:22:47 +01:00
Aleksey Kladov
f79719b8ae
Move find_refs_to_def
2020-03-04 12:22:47 +01:00
Aleksey Kladov
19115e9fab
Support cross-crate marks
2020-03-04 11:55:25 +01:00
Laurențiu Nicola
91e02ace06
Drop larlpop-intern dep
2020-03-03 07:57:16 +02:00
Laurențiu Nicola
f60cf882a8
Update chalk for Ty interners
2020-03-03 00:02:19 +02:00
Laurențiu Nicola
807a56bebf
Update chalk for RawId removal
2020-03-02 23:30:38 +02:00
kjeremy
92ae17a117
Update deps
2020-03-02 14:47:25 -05:00
kjeremy
c6f4e8de5e
lsp-types 0.72
2020-03-02 11:52:46 -05:00
Shotaro Yamada
33de107ed9
Remove unused dependencies
2020-02-27 14:04:13 +09:00
kjeremy
bc1985037f
Update lsp-types
2020-02-26 16:50:47 -05:00
kjeremy
d90d1e8f8e
Update
2020-02-26 15:33:16 -05:00
Aleksey Kladov
8046622871
Actually drop unicase dependency
2020-02-26 11:38:33 +01:00
Aleksey Kladov
469011169b
⬆️ rowan
2020-02-25 14:44:51 +01:00
Laurențiu Nicola
ed69482d90
Bump chalk and replace TypeFamily with Interner
2020-02-24 22:36:57 +02:00
Jeremy Kolb
0419dbacc9
Update deps
2020-02-24 07:58:54 -05:00
Laurențiu Nicola
9077942212
Bump crossbeam crates
2020-02-22 18:22:09 +02:00
kjeremy
044180847a
Bump lsp-types
2020-02-19 09:14:05 -05:00
Kirill Bulatov
f6816c253b
Update versions
2020-02-18 16:12:40 +02:00
Aleksey Kladov
039f2039a4
Remove unicase dependency
2020-02-18 14:44:52 +01:00
Aleksey Kladov
b643ccfaed
Drop extra deps
2020-02-18 14:44:52 +01:00
Aleksey Kladov
c0fa5e2246
Rename the binary to rust-analyzer
2020-02-18 12:33:16 +01:00
Aleksey Kladov
2c9b91ad32
Merge ra_vfs_glob and ra_lsp_server
2020-02-17 19:07:30 +01:00
Aleksey Kladov
659b0e73cf
Merge cli and ra_lsp_server
2020-02-17 19:03:03 +01:00
Aleksey Kladov
2d1b3da5fb
Use anyhow
2020-02-17 18:19:25 +01:00
Aleksey Kladov
d7be1da8df
Inline ra_batch
2020-02-17 17:32:17 +01:00
Aleksey Kladov
57140f1730
Drop proptest tests
...
It takes waaay to long to compile.
We should add quickcheck tests when we touch the relevant code next
time.
2020-02-17 16:57:06 +01:00
kjeremy
ba9fb8822e
Update deps
2020-02-17 09:19:55 -05:00
bors[bot]
d976772716
Merge #3157
...
3157: Extend analysis-stats a bit r=matklad a=flodiebold
This adds some tools helpful when debugging nondeterminism in analysis-stats:
- a `--randomize` option that analyses everything in random order
- a `-vv` option that prints even more detail
Also add a debug log if Chalk fuel is exhausted (which would be a source of
nondeterminism, but didn't happen in my tests).
I found one source of nondeterminism (rust-lang/chalk#331 ), but there are still
other cases remaining.
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
2020-02-15 22:35:44 +00:00
Aleksey Kladov
11dda31941
Remove extra dep
2020-02-15 23:23:44 +01:00
Florian Diebold
3484d727c3
Extend analysis-stats a bit
...
This adds some tools helpful when debugging nondeterminism in analysis-stats:
- a `--randomize` option that analyses everything in random order
- a `-vv` option that prints even more detail
Also add a debug log if Chalk fuel is exhausted (which would be a source of
nondeterminism, but didn't happen in my tests).
I found one source of nondeterminism (rust-lang/chalk#331 ), but there are still
other cases remaining.
2020-02-15 18:04:01 +01:00
Adam Bratschi-Kaye
6f2cab1368
Add error context to failures in ra_project_model
using anyhow
crate ( #3119 )
...
Add error context to failures in ra_project_model using anyhow crate
2020-02-13 11:10:50 +01:00
bors[bot]
759100fb0d
Merge #3062
...
3062: Implement slice pattern AST > HIR lowering r=jplatte a=jplatte
WIP. The necessary changes for parsing are implemented, but actual inference is not yet. Just wanted to upload what I've got so far so it doesn't get duplicated :)
Will fix #3043
Co-authored-by: Jonas Platte <jplatte+git@posteo.de>
2020-02-11 21:46:36 +00:00
Jonas Platte
a3b104aa6d
Implement slice pattern AST > HIR lowering
2020-02-11 22:33:11 +01:00
kjeremy
f51e3a357e
Update some crates
2020-02-10 10:42:56 -05:00
bors[bot]
895cdb5883
Merge #3034
...
3034: Remove ImportLocator hack r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-02-06 16:50:01 +00:00
kjeremy
6fdbf9038f
Update indexmap and bstr
2020-02-06 10:44:43 -05:00
Aleksey Kladov
a173e31890
Make assists use ImportsLocator directly
2020-02-06 16:40:28 +01:00
bors[bot]
ff2d77bde6
Merge #3029
...
3029: Docs r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-02-06 14:14:47 +00:00
Aleksey Kladov
ec6fb8da7c
Add profiling around add_impl_members
...
This intention is pretty slow for `impl Interator`, because it has a
ton of default methods which need to be substituted.
The proper fix here is to not compute the actual edit until the user
triggers the action, but that's awkward to do in the LSP right now, so
let's just put a profiling code for now.
2020-02-06 14:55:10 +01:00
Aleksey Kladov
939f05f3e3
Move to a crate
2020-02-06 12:43:56 +01:00
kjeremy
793eb51b3b
Update aho-corasick (removes unsafety) and serde_json
2020-02-04 10:37:01 -05:00
kjeremy
0772f76ad0
Update regex
2020-02-01 12:19:02 -05:00
Aleksey Kladov
21950adc94
Switch Cargo.lock to the new format
2020-01-30 18:14:20 +01:00
Jeremy Kolb
a37ee9c8a4
Update crates
2020-01-30 08:07:42 -05:00
Florian Diebold
96ddf2962c
Upgrade Chalk
2020-01-27 21:25:33 +01:00
kjeremy
bcef1ddf63
Update insta
2020-01-27 09:52:34 -05:00
Jeremy Kolb
b89991daed
Update crates
2020-01-26 10:46:45 -05:00
Aleksey Kladov
493a903f22
Bump main thread priority on windows
2020-01-26 14:15:57 +01:00
Aleksey Kladov
f44aee27d3
Disable env_logger humantime feature
...
We rarely care about timings of events, and, when we care, we need
millisecond precision
2020-01-25 11:53:40 +01:00
kjeremy
ee7dd4b9ae
Update crates
2020-01-22 15:40:35 -05:00
kjeremy
c27c480c46
Crates up
2020-01-16 17:34:01 -05:00
bors[bot]
c78d269b66
Merge #2837
...
2837: Accidentally quadratic r=matklad a=matklad
Our syntax highlighting is accdentally quadratic. Current state of the PR fixes it in a pretty crude way, looks like for the proper fix we need to redo how source-analyzer works.
**NB:** don't be scared by diff stats, that's mostly a test-data file
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-01-15 19:38:10 +00:00
Kirill Bulatov
d51cf7794d
itertools::Either -> either::Either
2020-01-15 20:20:20 +02:00
Kirill Bulatov
78a21253b4
Apply the api design suggestions
2020-01-15 20:17:17 +02:00
Aleksey Kladov
5b255b4e6b
⬆️ once_cell
2020-01-15 16:52:28 +01:00
Jeremy Kolb
e1688be1bb
lsp-types 0.69.0
...
Stabilizes most proposed features
2020-01-15 08:05:42 -05:00
kjeremy
f81232ba4c
Update backtrace
2020-01-13 15:08:27 -05:00
Jeremy Kolb
38c3b02f96
Update crates
2020-01-11 20:16:35 -05:00
Florian Diebold
ccb75f7c97
Use FxHashMap
2020-01-11 23:33:04 +01:00
Aleksey Kladov
47785b0cd4
⬆️ rowan
2020-01-09 16:33:02 +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
Aleksey Kladov
ceb8f74901
⬆️ pico-args
2020-01-08 11:27:31 +01:00
Aleksey Kladov
82ba5eaa19
⬆️ crates
2020-01-07 16:45:57 +01:00
Jeremy Kolb
051a2d869e
Crates up
2020-01-05 22:12:26 -05:00
bors[bot]
823c15215e
Merge #2743
...
2743: Switch ast declaration from ron to a macro r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-01-03 20:54:42 +00:00
Aleksey Kladov
084bd304f3
Switch ast declaration from ron to a macro
2020-01-03 21:54:10 +01:00
kjeremy
f2a7a33c25
Update quick-error
2020-01-03 09:41:22 -05:00
Jeremy Kolb
35d72e40e2
Update dependencies
2020-01-01 17:51:48 -05:00
Aleksey Kladov
54b4b7e317
⬆️ lsp-server
2019-12-31 11:45:28 +01:00
bors[bot]
dc48f89581
Merge #2668
...
2668: In-server cargo check watching r=matklad a=kiljacken
Opening a draft now so people can follow the progress, and comment if they spot something stupid.
Things that need doing:
- [x] Running cargo check on save
- [x] Pipe through configuration options from client
- [x] Tests for parsing behavior
- [x] Remove existing cargo watch support from VSCode extension
- [x] Progress notification in VSCode extension using LSP 3.15 `$/progress` notification
- [ ] ~~Rework ra-ide diagnostics to support secondary messages~~
- [ ] ~~Make cargo-check watcher use ra-ide diagnostics~~
~~I'd love some input on whether to try to keep the status bar progress thingy for VSCode? It will require some plumbing, and maintaining yet another rust-analyzer specific LSP notification, which I'm not sure we want to.~~
Fixes #1894
Co-authored-by: Emil Lauridsen <mine809@gmail.com>
2019-12-29 12:57:24 +00:00
Jeremy Kolb
7c855c8271
anyhow and crossbeam-queue
2019-12-27 10:51:30 -05:00
Emil Lauridsen
428a6ff5b8
Move cargo watch functionality to separate crate
2019-12-27 11:10:07 +01:00
Emil Lauridsen
c21fbc3e87
Migrate tests from extension to rust
2019-12-25 17:37:40 +01:00
Emil Lauridsen
66e8ef53a0
Initial implementation of cargo check watching
2019-12-25 17:37:40 +01:00
Jeremy Kolb
9c92f205b1
Update lsp-types and rayon
2019-12-23 18:46:04 -05:00
Jeremy Kolb
019fab2261
lsp-types 0.67
2019-12-23 09:33:49 -05:00
bors[bot]
ce07a2daa9
Merge #2636
...
2636: Chalk update and refactoring r=flodiebold a=flodiebold
This updates the Chalk integration to https://github.com/rust-lang/chalk/pull/311 , which will presumably get merged soon, and refactors it some more, most notably introducing our own `TypeFamily` instead of reusing `ChalkIr`. It's still mostly the same as `ChalkIr` though, except for using Salsa `InternId`s directly.
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
2019-12-23 10:58:06 +00:00
John-John Tedro
700e74df4a
Bump lsp-types to 0.66.0 ( fixes #2651 )
2019-12-23 11:03:41 +01:00
Florian Diebold
67a2555f6d
Update Chalk, clean up Chalk integration a bit
2019-12-23 00:08:03 +01:00
Aleksey Kladov
d4b135f38c
Optimize and profile
2019-12-21 18:46:21 +01:00
Jeremy Kolb
e9ed346968
Update crates
2019-12-21 10:44:02 -05:00
Jeremy Kolb
429199d481
Use SelectionRange from LSP 3.15
2019-12-20 18:57:31 -05:00
Aleksey Kladov
a04177f135
Add local functions to bodies
2019-12-20 11:52:17 +01:00
Aleksey Kladov
932d805062
⬆️ deps
2019-12-19 18:28:57 +01:00
Aleksey Kladov
7b0644d81e
Switch to the new location for impls
2019-12-12 14:25:34 +01:00
Aleksey Kladov
6c6e6978eb
Update lsp-types more
2019-12-11 18:34:36 +01:00
Aleksey Kladov
b0a4765059
Revert "Revert "Support LSP 3.15""
...
This reverts commit 1e0bf205ef
.
2019-12-11 18:34:01 +01:00
Aleksey Kladov
1e0bf205ef
Revert "Support LSP 3.15"
...
This reverts commit 712700d8e0
.
2019-12-11 18:27:34 +01:00
Jeremy Kolb
fcccf8ec59
Support LSP 3.15
...
This merely upgrades our protocol support. It does not add any of the new features.
2019-12-11 09:11:55 -05:00
Laurențiu Nicola
16df4d8fcb
chore: bump deps and use mainline chalk
2019-12-09 22:35:47 +02:00
Aleksey Kladov
b37c6a746b
Remove ty from code_model
2019-12-08 12:44:14 +01:00
Aleksey Kladov
8c86963d47
DynMap
...
This might, or might not help us to reduce boilerplate associated with
plumbing values from analysis to the IDE layer
2019-12-06 21:28:05 +01:00
Aleksey Kladov
46ad914d7d
⬆️ rowan
2019-12-04 23:03:42 +01:00
Aleksey Kladov
193b1a7437
⬆️ rowan
2019-12-04 17:15:55 +01:00
ice1000
009437f5d9
Replace ra_hir_expand::either
with crate
2019-12-03 11:07:56 -05:00
Jeremy Kolb
e6c0ad0d0a
Just update some things
2019-12-01 15:00:34 -05:00
Alexander Ekdahl
3fe539ce51
Remove log dependency from ra_cli
2019-11-29 19:40:59 -05:00
Alexander Ekdahl
eb4e70fc67
Remove flexi_logger from ra_lsp_server
2019-11-29 19:35:03 -05:00
Alexander Ekdahl
9c01c0dcb5
Use env_logger in ra_cli
2019-11-29 19:20:48 -05:00
kjeremy
cf1d7bf5c9
Update mio and anyhow
2019-11-27 18:05:49 -05:00
Aleksey Kladov
757e593b25
rename ra_ide_api -> ra_ide
2019-11-27 21:35:06 +03:00
Aleksey Kladov
47ec2ceb12
prune deps
2019-11-27 21:26:49 +03:00
Aleksey Kladov
a87579500a
Move Ty
2019-11-27 21:16:00 +03:00
Edwin Cheng
5b49ad5bd5
Use a simple progress bar instead of indicatif
2019-11-27 04:09:30 +08:00
Jeremy Kolb
b81548c73a
Fix stale crates that snuck in
2019-11-26 08:20:40 -05:00
bors[bot]
36dca8de93
Merge #2410
...
2410: Introduce hir_ty r=matklad a=matklad
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-11-26 12:42:15 +00:00
Jeremy Kolb
8b1f2cd14e
Update parking_lot and smallvec to drop some dependencies
2019-11-26 07:29:28 -05:00
Aleksey Kladov
4c43631829
Introduce hir_ty
2019-11-26 15:06:06 +03:00
Aleksey Kladov
0a7ef09331
Use chalk fork to paper over #2052
2019-11-26 11:46:09 +03:00
Aleksey Kladov
131c2da6bf
⬆️ salsa
2019-11-26 11:29:20 +03:00
Jeremy Kolb
711c1a3e46
Update crates
2019-11-25 08:12:28 -05:00
Jeremy Kolb
aa20740944
Update crates
2019-11-21 08:40:33 -05:00
Aleksey Kladov
83a8430e0a
⬆️ rowan
2019-11-19 21:13:36 +03:00
Aleksey Kladov
b69dfc163d
⬆️ rowan
2019-11-17 22:21:45 +03:00
Aleksey Kladov
5b54a93fe7
Add ast for plain and raw string literals
2019-11-16 22:50:41 +03:00