ocsigen/lwt

Lwt announcements

aantron opened this issue · 6 comments

If you want to be notified of planned and actual Lwt releases, but don't want to receive all the noise from Lwt development, subscribe to this issue instead of watching the repo. Just click this button in the sidebar:




Since breaking changes require a prior release containing warnings, watching this issue is enough to be notified of all breaking changes at least three months ahead of time.

Lwt 3.0.0 became installable from OPAM today. This release makes some minor breaking changes (changelog). These were previously announced in Lwt 2.7.0, which predates this announcement issue, and hence was not announced here.

The non-breaking changes made up to Lwt 3.0.0 are in a separate, preceding 2.7.1 release (changelog), which became installable a few days ago.

See the full announcement on the mailing list.

Enjoy!

Lwt 3.1.0 is now installable from OPAM. This release ports Lwt to Jbuilder, fixes bugs, and adds a few APIs (changelog).

Two breaking changes are scheduled for 4.0.0, which is planned to be released at the end of 2017: deleting package lwt.simple-top and deleting long-deprecated module Lwt_chan.

See the full announcement on Discourse.

Lwt 3.2.0 is now installable from opam. This release adds a new documentation for module Lwt, fixes bugs, and adds new APIs (changelog).

Additional breaking changes are scheduled for 4.0.0, which we now hope to release in March 2018:

  • An adjustment to the semantics of Lwt.bind (#500).
  • Factoring out the PPX, Camlp4, and lwt.log into their own packages.
  • Deprecating lwt.log.
  • Removing >> from the PPX.
  • lwt.preemptive has been merged into lwt.unix, and the separate package name lwt.preemptive will be deleted.

See the full announcement on Discourse.

Enjoy!

Lwt 4.0.0 is now installable from opam (changelog). It commits the breaking changes previously announced in 3.1.0 and 3.2.0, above:

  • lwt.ppx, lwt.syntax, lwt.log are factored out into lwt_ppx, lwt_camlp4, lwt_log.
  • lwt.preemptive has been merged into lwt.unix, and does not exist anymore as a separate ocamlfind package.
  • lwt.simple-top and Lwt_chan had no users and were removed.
  • >> syntax has been removed from the PPX.

See the pre-4.0.0 breaking changes notice for instructions on how to adapt your code, if affected. All of the required changes are minor.

Due to user feedback, we abandoned the plan to change the semantics of Lwt.bind (#500).


In addition, further breaking changes are scheduled for Lwt 5.0.0, to be released no sooner than 11 July 2018 (and probably much later):

  • Lwt.pick [] will raise Invalid_argument rather than returning a promise that is pending forever (#562).
  • Support for [%lwt ...] syntax will be dropped from the PPX (#527).
  • Support for the -no-debug option will be dropped from the PPX (#528).
  • Special support for Lwt_log will be dropped from the PPX (#520).

See the full 4.0.0 announcement on Discourse.


Earlier, the Lwt 3.3.0 release improved stack trace support and fixed a serious bug in the Lwt core.


We are closing this issue to keep the issue tracker organized, but will continue to post announcements in it.


Enjoy!

Lwt 4.1.0 was released a few weeks ago. The main change was the switch to the MIT license.

See the announcement on Discourse.

GitHub has recently added a Watch mode "Releases only," so it is recommended to select that from the "Watch" drop-down to follow Lwt releases.

Monitoring this issue for release notifications is deprecated in favor of watching for "Releases only."