Commit graph

381 commits

Author SHA1 Message Date
Simon Cruanes
953947f694 feat local-storage: expose get/set with explicit storage 2024-03-04 20:49:34 -05:00
Simon Cruanes
4325fda345 update tests 2024-03-04 20:49:34 -05:00
Simon Cruanes
37751c79e4 introduce Fiber.Nursery.t; change local storage accordingly 2024-03-04 20:49:34 -05:00
Simon Cruanes
cec77d2ee9 doc 2024-03-04 20:49:34 -05:00
Simon Cruanes
9d392b1ba6
fix 2024-03-01 14:58:28 -05:00
Simon Cruanes
4195d4d61c
feat: add Task_local_storage.get_opt 2024-02-29 15:29:08 -05:00
Simon Cruanes
7b5ecffc8c
add Fiber.spawn_top_or_link 2024-02-29 15:08:06 -05:00
Simon Cruanes
39cdc37613
feat fiber: expose add_on_cancel/remove_on_cancel
also make it more robust by using a map
2024-02-28 22:50:19 -05:00
Simon Cruanes
62770a87b5
try to make test more deterministic 2024-02-28 00:18:27 -05:00
Simon Cruanes
a2ea24551b
compat 2024-02-27 22:48:23 -05:00
Simon Cruanes
42d16465c3
compat 2024-02-27 22:35:07 -05:00
Simon Cruanes
22f43670a7
update tests 2024-02-27 22:32:14 -05:00
Simon Cruanes
c39435d8eb
fix fifo_pool: resume can be called from another worker
we might schedule on  worker 1, suspend, resume on worker 2,
and resume from there.
2024-02-27 22:31:25 -05:00
Simon Cruanes
c975634837
test: update fiber tests 2024-02-27 22:13:52 -05:00
Simon Cruanes
bfd70dc5c2
fix fiber: spawn sub-fiber with a copy of current local storage 2024-02-27 22:11:50 -05:00
Simon Cruanes
bd7a48a4b4
make test slightly less heavy 2024-02-27 21:30:37 -05:00
Simon Cruanes
dac1450d54
update tests 2024-02-27 21:25:07 -05:00
Simon Cruanes
856dc85d41
refactor ws_pool: do not nest effect handlers; fixes
- we differentiate between starting a task and resuming a task
- we dynamically find if we're on one of the pool's runner
  in `resume`/`run_another_task` in the main suspend handler
  (this way we can use the local work stealing queue
  if we're in the same pool, even if we're not on the
  worker that ran the "suspend" call itself)
2024-02-27 21:23:37 -05:00
Simon Cruanes
b9cf0616b8
fifo pool: format, use with_suspend unconditionally 2024-02-27 21:23:02 -05:00
Simon Cruanes
e94c7999de
suspend: provide dummy with_suspend_handler on 4.xx 2024-02-27 21:22:48 -05:00
Simon Cruanes
55b975017f
hash server test: use artificial, pre-generated data
this way the test won't be broken every time we change the source
code(!)
2024-02-27 21:20:19 -05:00
Simon Cruanes
ed171c1171
fix ws_pool: make sure we capture the current worker before suspend 2024-02-23 20:54:51 -05:00
Simon Cruanes
4cdec87aea
add some tests for fiber 2024-02-21 00:53:24 -05:00
Simon Cruanes
8a7cfb6fb0
feat fiber: add helpers, expose any 2024-02-21 00:53:07 -05:00
Simon Cruanes
cb8668f3dc
simplify test 2024-02-20 22:21:11 -05:00
Simon Cruanes
38df050a13
gh pages 2024-02-20 21:57:15 -05:00
Simon Cruanes
2faf78564d
CI 2024-02-20 21:00:49 -05:00
Simon Cruanes
a6d6eec6c7
CI: make test mroe deterministic, run tests with all depopts 2024-02-20 20:35:54 -05:00
Simon Cruanes
a8f874e4ab
test 2024-02-20 20:26:37 -05:00
Simon Cruanes
101d15f874
fix race conditions in tests 2024-02-20 19:57:58 -05:00
Simon Cruanes
d94a197381
try to fix tests 2024-02-20 18:48:10 -05:00
Simon Cruanes
b58a55536c
do not require libev 2024-02-20 18:43:53 -05:00
Simon Cruanes
fa5ae97b6d
restrict moonpool-lwt tests to 5.0 2024-02-20 18:39:27 -05:00
Simon Cruanes
f68f27a4a4
echo server tests for moonpool-lwt 2024-02-20 18:34:35 -05:00
Simon Cruanes
004f5fc82b
test: add a test for the hash server+client 2024-02-20 18:25:18 -05:00
Simon Cruanes
83ae0e7a4e
do not expose ?ls for Fut.spawn 2024-02-20 13:51:41 -05:00
Simon Cruanes
8614d4be40
simplify implem for background_thread for now 2024-02-20 13:45:05 -05:00
Simon Cruanes
4bf456e1ea
feat: add Background_thread
a version of `Fifo_pool` optimized for a single thread.
2024-02-20 13:43:06 -05:00
Simon Cruanes
df8b284a0d
Merge pull request #22 from c-cube/wip-pool-lwt
moonpool-lwt, for interop with lwt
2024-02-20 12:00:49 -05:00
Simon Cruanes
ed6db54b1a
update tests 2024-02-17 12:40:37 -05:00
Simon Cruanes
8bfe76b3e0
improve docs for moonpool_lwt; fix race condition 2024-02-17 12:40:36 -05:00
Simon Cruanes
283a1cb118
test: add hash server/client
the protocol: send a filename per line over TCP, and the server
replies with the filename and its content's hash
2024-02-17 12:40:36 -05:00
Simon Cruanes
0df0642dd1
lwt: add TCP client/server functions that use lwt channels 2024-02-17 12:40:36 -05:00
Simon Cruanes
e789cbe4f7
fix echo_client to actually do its work 2024-02-17 12:40:36 -05:00
Simon Cruanes
b991a78f3e
lwt: trace the function that performs actions in batch 2024-02-17 12:40:36 -05:00
Simon Cruanes
36c6e8e900
fix build, remove some debug 2024-02-17 12:40:36 -05:00
Simon Cruanes
bd00e0838a
test: use async spans for lwt echo server 2024-02-17 12:40:36 -05:00
Simon Cruanes
6bf58e3e62
perf: quicker check for [] 2024-02-17 12:40:36 -05:00
Simon Cruanes
e0f5b5bbcb
fix build 2024-02-17 12:40:36 -05:00
Simon Cruanes
0605ef4a1e
CI 2024-02-17 12:40:36 -05:00