Commit graph

277 commits

Author SHA1 Message Date
Simon Cruanes
76a881ebc9
fix: LS.get shouldn't raise 2024-08-30 13:28:54 -04:00
Simon Cruanes
3193a259ad
fix: catch TLS.Not_set 2024-08-30 13:27:04 -04:00
Simon Cruanes
704ebdae58
feat: add moonpool.sync with await-friendly abstractions
based on picos_sync
2024-08-30 13:18:06 -04:00
Simon Cruanes
164440fdd9
feat: add Fls.with_in_local_hmap 2024-08-30 12:51:16 -04:00
Simon Cruanes
940ab83dd6
fix 2024-08-30 12:42:02 -04:00
Simon Cruanes
5d731a9b73
format 2024-08-30 12:35:49 -04:00
Simon Cruanes
0545a39aff
add Task_local_storage.remove_in_local_hmap 2024-08-30 09:46:49 -04:00
Simon Cruanes
7df8c069ed
refactor: move optional hmap FLS stuff into core/task_local_storage 2024-08-30 09:43:41 -04:00
Simon Cruanes
328ecf4ea5
change API for local FLS hmap 2024-08-29 16:07:27 -04:00
Simon Cruanes
44e335e0b0
feat: move hmap-fls to Fiber.Fls 2024-08-29 16:05:01 -04:00
Simon Cruanes
cdb80c8ed5
format 2024-08-29 15:55:54 -04:00
Simon Cruanes
e53986d7b4
feat: optional dep on hmap, for inheritable FLS data 2024-08-29 15:55:31 -04:00
Simon Cruanes
8712fc5b51
use exn_bt, not picos.exn_bt 2024-08-29 15:43:50 -04:00
Simon Cruanes
21f34473b0
fixes after reviews 2024-08-29 13:08:43 -04:00
Simon Cruanes
a36342dce2
fix pool: only return No_more_tasks when local and global q empty 2024-08-29 09:36:13 -04:00
Simon Cruanes
b0e4fa4563
fix fut: trigger failing to attach doesn't signal it 2024-08-29 09:36:13 -04:00
Simon Cruanes
07a7fc3a1c
wip: port to picos 2024-08-29 09:36:12 -04:00
Simon Cruanes
a0068b09b3
details 2024-08-29 09:35:16 -04:00
Simon Cruanes
e1105f4a88
feat fut: add on_result_ignore 2024-08-29 09:35:16 -04:00
Simon Cruanes
9fb23bed4c
refactor core: use picos for schedulers; add Worker_loop_
we factor most of the thread workers' logic in `Worker_loop_`,
which is now shared between Ws_pool and Fifo_pool
2024-08-29 09:35:16 -04:00
Simon Cruanes
2780b156eb
detail in fut 2024-08-29 09:35:16 -04:00
Simon Cruanes
b9c3e1fc7e
feat fut: wrap picos computations 2024-08-29 09:35:16 -04:00
Simon Cruanes
f93248a867
wip: use picos computations 2024-08-29 09:35:16 -04:00
Simon Cruanes
465919ae34
non optional dependency on thread-local-storage
it's a dep of picos anyway
2024-08-29 09:35:16 -04:00
Simon Cruanes
dd60666676
refactor: remove dla 2024-08-29 09:35:16 -04:00
Simon Cruanes
f1ff17dbd6
feat: depend on picos, use picos.exn_bt 2024-08-29 09:35:16 -04:00
Simon Cruanes
e3f11be0b3
fix related to TLS 2024-08-27 10:15:40 -04:00
Simon Cruanes
14fdee0593
compat 2024-08-26 11:23:54 -04:00
Simon Cruanes
444f8a3acc
fix with actual TLS release 2024-08-26 11:20:27 -04:00
Simon Cruanes
265d4f73dd
move to thread-local-storage 0.2 with get/set API 2024-08-16 10:07:51 -04:00
Simon Cruanes
a4db1e67be
chore: use 5.2 in CI (#28)
chore: use 5.2 in CI
2024-05-20 16:26:33 -04:00
Simon Cruanes
0750e6af41
prepare for 0.6 2024-04-02 12:51:57 -04:00
Simon Cruanes
a99c0775e2
format dune files 2024-04-02 12:51:57 -04:00
Simon Cruanes
ac851a6d81
fix: in Fut.await, upon failure, use resume
otherwise a fairly vicious bug happens: the await-er is resumed on the
current runner, not its native one, which can cause deadlocks as it
breaks the executors' dependency DAG. When using `resume` there is no
bug since `resume` is designed to always schedule on the correct runner.
2024-04-02 12:51:57 -04:00
Simon Cruanes
0d325741f4
add Exn_bt.pp 2024-04-02 12:51:57 -04:00
Simon Cruanes
53ed71db99
fix: make Fiber.check_if_cancelled fail if the fiber is not done 2024-03-14 23:47:26 -04:00
Simon Cruanes
f9aea68d61
add ?on param to Fiber.spawn 2024-03-05 09:47:31 -05:00
Simon Cruanes
f798420423
doc 2024-03-04 22:56:41 -05:00
Simon Cruanes
867444d975
perf: add Fut.raise_if_failed, use it in Fiber.check_if_cancelled 2024-03-04 22:05:47 -05:00
Simon Cruanes
86c6edffca
doc 2024-03-04 21:51:36 -05:00
Simon Cruanes
9cb10a79e6
renaming 2024-03-04 21:38:50 -05:00
Simon Cruanes
533b6e5ce2
docs 2024-03-04 21:22:41 -05:00
Simon Cruanes
3bdd269ca3
more docs, rename a function 2024-03-04 21:02:23 -05:00
Simon Cruanes
ad4ddc6816
refactor: split off domain pool to moonpool.dpool 2024-03-04 20:57:49 -05:00
Simon Cruanes
48fbf876dc feat: add Moonpool_fib.main
this is a convenient entrypoint for programs that use fibers. The main
thread can thus await fibers that run in the background.
2024-03-04 20:49:34 -05:00
Simon Cruanes
9df848cd17 breaking: remove Immediate_runner
it never really supported all that a runner should (effects, scheduling
other tasks, etc.)
2024-03-04 20:49:34 -05:00
Simon Cruanes
25104ce3b7 feat fifo: expose private interface for the main runner threads 2024-03-04 20:49:34 -05:00
Simon Cruanes
51459f9b0b feat: add Runner.dummy 2024-03-04 20:49:34 -05:00
Simon Cruanes
66f95df3b4 add Fiber.{return,fail} 2024-03-04 20:49:34 -05:00
Simon Cruanes
5817a8aee7 revert nurseries 2024-03-04 20:49:34 -05:00