mirror of
https://github.com/c-cube/moonpool.git
synced 2025-12-06 03:05:30 -05:00
* feat: depend on picos, use picos.exn_bt * refactor: remove dla * non optional dependency on thread-local-storage it's a dep of picos anyway * wip: use picos computations * disable t_fib1 test, way too flaky * feat `fut`: wrap picos computations * detail in fut * gitignore * 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 * github actions * feat fut: add `on_result_ignore` * details * wip: port to picos * test: wip porting tests * fix fut: trigger failing to attach doesn't signal it * fix pool: only return No_more_tasks when local and global q empty * format * chore: fix CI by installing picos first * more CI * test: re-enable t_fib1 but with a single core fifo pool it should be deterministic now! * fixes after reviews * bump minimal OCaml version to 4.13 * use `exn_bt`, not `picos.exn_bt` * feat: optional dep on hmap, for inheritable FLS data * format * chore: depend on picos explicitly * feat: move hmap-fls to Fiber.Fls * change API for local FLS hmap * refactor: move optional hmap FLS stuff into core/task_local_storage * add Task_local_storage.remove_in_local_hmap * chore: try to fix CI * format * chore: CI * fix * feat: add `Fls.with_in_local_hmap` * chore: depend on hmap for tests * fix test for FLS use the inheritable keys * chore: CI * require OCaml 4.14 :/ * feat: add `moonpool.sync` with await-friendly abstractions based on picos_sync * fix: catch TLS.Not_set * fix: `LS.get` shouldn't raise * fix * update to merged picos PR * chore: CI * fix dep * feat: add `Event.of_fut` * chore: CI * remove dep on now defunct `exn_bt` * feat: add moonpool-io * chore: CI * version constraint on moonpool-io * add Event.Infix * move to picos_io
66 lines
1.4 KiB
Text
66 lines
1.4 KiB
Text
(lang dune 3.0)
|
|
(using mdx 0.2)
|
|
|
|
(name moonpool)
|
|
(version 0.6)
|
|
(generate_opam_files true)
|
|
(source
|
|
(github c-cube/moonpool))
|
|
(authors "Simon Cruanes")
|
|
(maintainers "Simon Cruanes")
|
|
(license MIT)
|
|
|
|
;(documentation https://url/to/documentation)
|
|
|
|
(package
|
|
(name moonpool)
|
|
(synopsis "Pools of threads supported by a pool of domains")
|
|
(depends
|
|
(ocaml (>= 4.14))
|
|
dune
|
|
(either (>= 1.0))
|
|
(trace :with-test)
|
|
(trace-tef :with-test)
|
|
(qcheck-core (and :with-test (>= 0.19)))
|
|
(thread-local-storage (and (>= 0.2) (< 0.3)))
|
|
(odoc :with-doc)
|
|
(hmap :with-test)
|
|
(picos (and (>= 0.5) (< 0.6)))
|
|
(picos_std (and (>= 0.5) (< 0.6)))
|
|
(mdx
|
|
(and
|
|
(>= 1.9.0)
|
|
:with-test)))
|
|
(depopts
|
|
hmap
|
|
(trace (>= 0.6)))
|
|
(tags
|
|
(thread pool domain futures fork-join)))
|
|
|
|
(package
|
|
(name moonpool-lwt)
|
|
(synopsis "Event loop for moonpool based on Lwt-engine (experimental)")
|
|
(allow_empty) ; on < 5.0
|
|
(depends
|
|
(moonpool (= :version))
|
|
(ocaml (>= 5.0))
|
|
lwt
|
|
base-unix
|
|
(trace :with-test)
|
|
(trace-tef :with-test)
|
|
(odoc :with-doc)))
|
|
|
|
(package
|
|
(name moonpool-io)
|
|
(synopsis "Async IO for moonpool, relying on picos")
|
|
(allow_empty) ; on < 5.0
|
|
(depends
|
|
(moonpool (= :version))
|
|
(picos_io (and (>= 0.5) (< 0.6)))
|
|
(ocaml (>= 5.0))
|
|
(trace :with-test)
|
|
(trace-tef :with-test)
|
|
(odoc :with-doc)))
|
|
|
|
|
|
; See the complete stanza docs at https://dune.readthedocs.io/en/stable/dune-files.html#dune-project
|