Edwin Cheng
9358eecc04
Async Loading outdir and proc-macro
2021-01-29 01:04:14 +08:00
Aleksey Kladov
2ed258ba42
Fix progress token is already registered crash
...
After we started reporting progress when running cargo check during
loading, it is possible to crash the client with two identical progress
tokens.
This points to a deeper issue: we might be running several cargo checks
concurrently, which doesn't make sense.
This commit linearizes all workspace fetches, making sure no updates are
lost.
As an additional touch, it also normalizes progress & result reporting,
to make sure they stand in sync.
2021-01-10 18:02:02 +03:00
Aleksey Kladov
66ed821e18
Speed up snapshoting
...
Config can be fairly big, no need to deep clone it frequently
2021-01-06 15:46:31 +03:00
Aleksey Kladov
f7a15b5cd1
More maintainable config
...
Rather than eagerly converting JSON, we losslessly keep it as is, and
change the shape of user-submitted data at the last moment.
This also allows us to remove a bunch of wrong Defaults
2021-01-06 15:39:28 +03:00
Aleksey Kladov
6e24321e45
Introduce anchored_path
...
They allow to represent paths like `#[path = "C:\path.rs"] mod foo;`
in a lossless cross-platform & network-transparent way.
2020-12-09 19:07:05 +03:00
Jonas Schievink
2b2318e695
Remove dummy ProcMacroClient in favor of Option
2020-12-07 17:16:50 +01:00
kjeremy
233fdb12ce
Latest LSP 3.16 protocol
...
Pulls in https://github.com/gluon-lang/lsp-types/pull/186
2020-11-16 15:10:13 -05:00
Aleksey Kladov
ba8d6d1e4e
Remove more unreachable pubs
2020-11-02 16:58:33 +01:00
Igor Aleksanov
19cce08662
Re-export base_db from ide_db
2020-10-24 11:39:57 +03:00
Aleksey Kladov
8716c4cec3
Move ide::AnalysisChange -> base_db::Change
...
This seems like a better factoring logically; ideally, clients shouldn't touch
`set_` methods of the database directly. Additionally, I think this
should remove the unfortunate duplication in fixture code.
2020-10-02 16:45:08 +02:00
Jonas Schievink
1a28f30ba4
Spawn a flycheck instance per workspace
2020-09-27 19:41:54 +02:00
Aleksey Kladov
1b0c7701cc
Rename ra_ide -> ide
2020-08-13 17:58:27 +02:00
Aleksey Kladov
ed20a857f4
Rename ra_db -> base_db
2020-08-13 16:29:33 +02:00
Pavan Kumar Sunkara
eac24d52e6
Rename ra_project_model -> project_model
2020-08-13 12:05:30 +02:00
Aleksey Kladov
208b7bd7ba
Rename ra_prof -> profile
2020-08-12 16:35:29 +02:00
Jeremy Kolb
cf6d14cee7
Return InvalidRequest if Shutdown has been requested
...
From the LSP 3.16 spec: "If a server receives requests after a shutdown request those requests should error with InvalidRequest."
2020-08-10 11:03:08 -04:00
Jeremy Kolb
195111d769
Address PR comments
2020-08-05 21:35:35 -04:00
kjeremy
fcfd7cb1e3
Handle semantic token deltas
2020-07-31 20:57:53 -04:00
kjeremy
48da2d4c16
Add DocumentData to represent in-memory document with LSP info
2020-07-24 09:02:57 -04:00
kjeremy
97927146db
Store document version and pass back to the client
2020-07-21 14:07:42 -04:00
Aleksey Kladov
a40e05dd5d
Don't drop flycheck messages during restart
...
closes #5386
2020-07-15 14:37:44 +02:00
Aleksey Kladov
be679a02ab
Add profiling calls
2020-07-10 22:30:24 +02:00
Aleksey Kladov
86bc4d20b3
Also reload when adding new examples, tests, etc
2020-07-10 22:30:24 +02:00
kjeremy
4b7f473223
Clippy perf warnings
2020-07-08 09:45:29 -04:00
Aleksey Kladov
4f26a3734e
Indicate when project needs a reload
2020-07-02 15:34:12 +02:00
Aleksey Kladov
3ef7676076
Implement StatusBar
2020-07-02 15:32:14 +02:00
Aleksey Kladov
298adb27b9
Better account for project reload
2020-07-01 16:01:03 +02:00
Aleksey Kladov
91453e796b
Set corret request method
2020-06-26 17:55:20 +02:00
bors[bot]
a0a475546b
Merge #5078
...
5078: Minor r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-06-26 15:18:04 +00:00
Aleksey Kladov
de7b248227
Minor
2020-06-26 17:17:38 +02:00
bors[bot]
d86a2426a2
Merge #5077
...
5077: Type safer requests r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-06-26 15:08:58 +00:00
Aleksey Kladov
9d15e8fc4f
Type safer requests
2020-06-26 17:07:14 +02:00
bors[bot]
fa70882418
Merge #5075
...
5075: Be more precise about flycheck status r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-06-26 15:02:00 +00:00
bors[bot]
4f60b4f2a3
Merge #5076
...
5076: Make VFS join methods fallible r=matklad a=jonas-schievink
Co-authored-by: Jonas Schievink <jonas.schievink@ferrous-systems.com>
2020-06-26 14:37:15 +00:00
Aleksey Kladov
1893289e5c
Move progress reporting to utils
2020-06-26 16:33:57 +02:00
Jonas Schievink
72fe70f2f8
Make VFS join methods fallible
2020-06-26 16:30:50 +02:00
Aleksey Kladov
12831b74af
Cleanup
2020-06-26 12:06:08 +02:00
Aleksey Kladov
b039f0d1ba
Simplify
2020-06-26 11:44:46 +02:00
Aleksey Kladov
751b8792a2
Simplify
2020-06-26 11:43:07 +02:00
Aleksey Kladov
34118779ec
Workaround use Trait as _ bug in rust-analyzer
2020-06-26 11:39:27 +02:00
Aleksey Kladov
1272e6cb88
minor
2020-06-26 11:21:21 +02:00
Aleksey Kladov
5f6f994256
Simplify
2020-06-26 00:54:41 +02:00
Aleksey Kladov
e70f7dc10c
Minor
2020-06-26 00:27:57 +02:00
Aleksey Kladov
72fb712dff
Add new module for project loading stuff
2020-06-26 00:27:57 +02:00
Aleksey Kladov
3d0f782138
Prep dynamic workspace loading
2020-06-26 00:27:57 +02:00
Aleksey Kladov
73d73077fe
Separate creation and initialization of global state
2020-06-26 00:27:57 +02:00
Aleksey Kladov
86a4d4cb9c
Simplify
2020-06-25 19:23:52 +02:00
Aleksey Kladov
379a096de9
Refactor main_loop
2020-06-25 17:14:11 +02:00
Aleksey Kladov
dd20c2ec5b
Move TaskPool into GlobalState
2020-06-25 15:35:42 +02:00
Aleksey Kladov
5d401092f0
Minor rename
2020-06-25 09:19:01 +02:00