You can clone with
HTTPS or Subversion.
Require Lwt 2.4.6 as 2.4.7 breaks socketpair
IPC.Marshal.Make for automatic string conversions
Add .mli for Release_async and Release_lwt
Rename lib/core to lib/release
Call exit on async_exit to work around Lwt hanging
Remove meaningless comments
Use destructive type substitution
Redesign logging interface
Use only formattable log functions; lose _f prefix
Get rid of Future.Main and Future.IO
Future.Main functions (run and at_exit) now live directly inside Future.
Future.IO is just gone.
Handle Unix_error too
Without this, CPU load goes to 100%.
Disable reexecution before signaling slaves
Handle disabled reexecution
Remove exec call from lstat exception block
Remove ununsed functions
Avoid sharing Future resources when forking
Close file descriptors "manually" on Release_async
Async always calls Unix.shutdown when a socket file descriptor is
closed, and we don't want that.
Fix Future.async in Release_async.
Base IPC around the `connection` type
This type consists of a connected unix socket and a lock. The lock
is used when reading an IPC packet, to ensure that the thread which
reads the header and the thread which reads the payload do so
Remove unecessary type alias
Async threads can't be cancelled.
Introduce `with_timeout` to work around that.
Implement Release_async.Mutex based on Sequencer
This limits the Mutex API to only `create` and `with_lock`.
Fix read and write for async
Model sockets based on Core/Async's types
Add async tests, still nonfunctional