lwt.6.0.0-beta01 has been released!
With this release comes a change in the title of this thread:
- [ANN] Lwt.6.0.0~beta (direct-style, multi-domain parallelism)
+ [ANN] Lwt.6.0.0~beta (direct-style, runtime-event tracing)
This is likely the last beta before the release of Lwt.6.0.0, please test and share your feedback. The highlights are
- (compared to previous beta) no more multidomain-multischeduler parallelism
- it was too buggy,
- you can still use
Lwt_domain
- (compared to previous beta) runtime-events produce a trace of execution of your lwt program for better debugging
- only if
lwt_runtime_eventsis installed, - tracing instructions added by ppx,
- example producing a trace of recent events in case of crash in lwt/examples/tracing at 6.0.0-beta01 · ocsigen/lwt · GitHub
- example live monitoring the events to send signal in case of stall in lwt/examples/stall_detection at 6.0.0-beta01 · ocsigen/lwt · GitHub
- only if
- (compared to Lwt.5.9) direct-style with
Lwt_direct-
you can write direct-style lwt (within a given scope)
-
e.g., you can interact with libraries that only provide
iter : ('a -> unit) -> 'a -> unitsuch aslet iter_s f h = Lwt_direct.spawn @@ fun () -> Hashtbl.iter (fun k v -> Lwt_direct.await (f k v)) h
-
Once again, thanks to @c-cube for the direct-style feature which makes it possible to use Lwt in conjunction with libraries even if they don’t include special amenities for it.
Thanks again for @edwin for the bug report on multi-scheduler-related failures.