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.
Changelog:
Planned to break in 5.0.0
For general discussion of breakage in Lwt 5.0.0, see ocsigen/lwt#584. See ocsigen/lwt#293 about how Lwt announces and does breaking changes.
Lwt.async
will change from(unit -> 'a Lwt.t) -> unit
to(unit -> unit Lwt.t) -> unit
(Lwt.async not demandingunit Lwt.t
ocsigen/lwt#603, prompted @cfcs).Lwt_unix.send_msg
andLwt_unix.recv_msg
will be changed to takeLwt_unix.IO_vectors.t
instead ofLwt_unix.io_vector
s (Prepare to use new IO_vectors in Lwt_unix.recv_msg, send_msg ocsigen/lwt#702, prompted Marcello Seri).Lwt_main.run
will be forbidden, and will raise anFailure
. Most programs don't do this (Forbid nesting calls to Lwt_main.run ocsigen/lwt#609, prompted François-René Rideau).configure.ml
will be removed in favor of an improveddiscover.ml
This affects only users who are configuring Lwt as part of a manual installation (i.e., not users of opam or esy). Seediscover.ml
for usage (Remove configure.ml ocsigen/lwt#700).Lwt_unix.async_method
will have no effect. In practice, it already does nothing, and has almost no users (Deprecate the Lwt_unix.async_method machinery and eventually remove it ocsigen/lwt#572).The following planned breaking changes have already been announced:
Lwt.pick
will raiseInvalid_argument
on the empty list, instead of returning a forever-pending promise. Also applies toLwt.choose
,Lwt.npick
,Lwt.nchoose
, andLwt.nchoose_split
([5.0.0] Lwt.pick, etc raise Invalid_argument on empty list ocsigen/lwt#562, Tim Reinke, prompted Hezekiah Carty).[%lwt ...]
toLwt.catch
from the PPX ([easy-ish] PPX: replace [%lwt ...] by [%lwt.catch ...] or remove it ocsigen/lwt#527).-no-debug
option from the PPX (PPX: remove -no-debug option ocsigen/lwt#528).Lwt_log
support from the PPX (Delete logging support from the PPX ocsigen/lwt#520).Additions
Lwt_process
: allow setting working directory for new processes (Allow setting the cwd when spawning a process ocsigen/lwt#694, Thomas Leonard).Lwt_io.NumberIO
: use compiler intrinsics for better performance (Inefficient Lwt_io.NumberIO implementations (int32, int64, float read/write). ocsigen/lwt#178, requested Mauricio Fernandez).Bugs fixed
Lwt_react.S.limit
(ocsigen/lwt@4e592eb).fallback
rule during configuration (Better custom configuration ocsigen/lwt#693, Hongchang Wu).