Commit graph

49 commits

Author SHA1 Message Date
ForLoveOfCats
8ba2f77148 One big cleanup pass of clippy lints
Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-10 16:51:01 -07:00
Isaac Clayton
8bb8e851df Remove epoch-based metering 2022-07-13 18:03:14 +02:00
Isaac Clayton
a6edf85078 Use enum to differentiate between normal and precompiled plugins 2022-07-13 14:26:52 +02:00
Isaac Clayton
daf1674ca6 Fix failing test 2022-07-13 13:27:31 +02:00
Isaac Clayton
c956a8866e Quick documentation fix 2022-07-13 13:21:45 +02:00
Isaac Clayton
b3e1fd0740 Rename a few items and add documentation 2022-07-13 13:19:51 +02:00
Isaac Clayton
8b376dd613 Fix resulting errors and introduce functional executor callback 2022-07-13 13:15:12 +02:00
Isaac Clayton
8974b0c490 Work on supporting both epoch and fuel 2022-07-13 12:41:47 +02:00
Isaac Clayton
10670dba70 Add support for configuring plugin yield mechanism, stashing 2022-07-13 11:57:00 +02:00
Isaac Clayton
d04c3388b4 Switch from epoch to fuel 2022-07-13 11:09:06 +02:00
Isaac Clayton
7f11a32364 Implement periodic yielding using epoch_deadline_async_yield_and_update 2022-07-12 17:07:33 +02:00
Isaac Clayton
170d27b04c Start working on plugin epoch async yield 2022-07-12 16:32:41 +02:00
Isaac Clayton
38f8191ce8 Add comment linking engine creating code together 2022-07-11 18:20:50 +02:00
Isaac Clayton
be41ad44a7 Fix minor issues in plugin and project raised during review 2022-07-11 16:40:12 +02:00
Isaac Clayton
ec327a30c3 Fix minor issues pointed out in the review 2022-07-11 15:54:03 +02:00
Isaac Clayton
14bccb4a90 More cleanup during review 2022-07-11 10:56:21 +02:00
Isaac Clayton
5ec828a3e2 Remove unused struct fields 2022-07-11 10:39:14 +02:00
Isaac Clayton
8931218dc6 Remove debug statements 2022-07-08 21:28:35 +02:00
Isaac Clayton
a16fc2ba0c Add basic support for precompiling plugins 2022-07-07 16:21:27 +02:00
Isaac Clayton
895747476f Done! Finish transition to async, very close to merging 2022-07-07 16:21:20 +02:00
Isaac Clayton
f4b4212932 More work on transitioning to async, need to figure out when to stop 2022-07-07 15:38:28 +02:00
Isaac Clayton
feb6cf6789 Allow async to infect some more functions 2022-07-07 15:34:27 +02:00
Isaac Clayton
61f5326033 Add timing instrumentation 2022-07-07 15:32:43 +02:00
Isaac Clayton
2c637b83bf Work on updating code to be async 2022-07-07 15:32:41 +02:00
Isaac Clayton
92c4552146 Isolate smol::Command hang as a test, does not hang 2022-07-07 15:23:27 +02:00
Isaac Clayton
e5481e2e65 Switch from std::process::Command to smol::process::Command 2022-07-07 15:22:17 +02:00
Isaac Clayton
f61ef446d3 Documentation pass 2022-07-07 15:22:17 +02:00
Isaac Clayton
4565f1a976 Add async host functions 2022-07-07 15:22:17 +02:00
Isaac Clayton
018fd46901 Rename WasiPlugin -> Plugin, etc. 2022-07-07 15:22:17 +02:00
Isaac Clayton
31e3a4d208 WIP: wrap async closures host-side 2022-07-07 15:22:17 +02:00
Isaac Clayton
f110945fd6 Add functions with multiple arguments to import macro, add test cases 2022-07-07 15:22:17 +02:00
Isaac Clayton
28f071e50d Split out lifecycle of serialization, buffer is freed now 2022-07-07 15:22:17 +02:00
Isaac Clayton
8aef8ab259 Add build.rs to rebuild plugins, and a test plugin 2022-07-07 15:22:17 +02:00
Isaac Clayton
5b40734f80 Change ABI from pair of u32s to single u64 2022-07-07 15:22:17 +02:00
Isaac Clayton
7edcf7c423 Factor out serialization code 2022-07-07 15:22:17 +02:00
Isaac Clayton
1f5903d16d Add allocator to store so that it can be used by host functions 2022-07-07 15:22:17 +02:00
Isaac Clayton
47520f0ca1 Remove dependency on self in call-related functions 2022-07-07 15:22:17 +02:00
Isaac Clayton
7266dff537 Fix issue with host function binding 2022-07-07 15:22:17 +02:00
Isaac Clayton
96c2559d2c Work on plugin builder 2022-07-07 15:22:17 +02:00
Isaac Clayton
53e56f1284 Start working on host-side functions 2022-07-07 15:22:17 +02:00
Isaac Clayton
71e0555763 Add JSON LSP plugin 2022-07-07 15:22:16 +02:00
Isaac Clayton
8bce35d1e9 Move Wasi to async, validate timeslicing, using async in traits still WIP 2022-07-07 15:20:27 +02:00
Isaac Clayton
e9b87f3dc3 Factor out buffer code 2022-07-07 15:20:27 +02:00
Isaac Clayton
fbaff615a3 Get JSON LSP running, still work to be done 2022-07-07 15:20:27 +02:00
Isaac Clayton
38d7321511 Remove non-WASI code 2022-07-07 15:20:25 +02:00
Isaac Clayton
17d15b2f08 Get Wasi working 2022-07-07 15:19:02 +02:00
Isaac Clayton
7dd3114a7a Start switching JSON LSP adapter to plugin (take 2) 2022-07-07 15:16:59 +02:00
Isaac Clayton
0cf64d6fba Clean up impl a bit 2022-07-07 15:11:51 +02:00
Isaac Clayton
f6a9558c5c Work on macro binding generation, some cleanup needed, rename runner to plugin 2022-07-07 15:11:51 +02:00