[new release] eio_main, eio_luv, eio_linux and eio (0.5) #22032
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Effect-based direct-style IO mainloop for OCaml
CHANGES:
New features:
Add
Eio.Condition
(@TheLortex @talex5 Add Eio.Condition ocaml-multicore/eio#277).Allows a fiber to wait for some condition to become true.
Add
Eio.Net.getaddrinfo
andgetnameinfo
(@bikallem @talex5 Add support for getaddrinfo ocaml-multicore/eio#278 Eio.Net: add getnameinfo ocaml-multicore/eio#288 Add Eio.Net.getaddrinfo_{stream,datagram} ocaml-multicore/eio#291).Convert between host names and addresses.
Add
Eio.Debug
(@talex5 Allow overriding the traceln function ocaml-multicore/eio#276).Currently, this allows overriding the
traceln
function.Buf_write.create
: make switch optional (@talex5 Buf_write.create: make switch optional ocaml-multicore/eio#283).This makes things easier for people porting code from Faraday.
Bug fixes:
Luv doesn't allow two callers to watch the same file handle, so we need to handle that in Eio.
Other changes:
Upgrade to uring 0.4 (@talex5 Upgrade to uring 0.4 ocaml-multicore/eio#290).
Mention
Mutex
,Semaphore
andCondition
in the README (@talex5 Mention Mutex, Semaphore and Condition in the README ocaml-multicore/eio#281).