Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Releases: ocsigen/lwt

Lwt 3.1.0

19 Jul 22:26

Choose a tag to compare

Additions

Planned to break in 4.0.0

Fixes

Miscellaneous

  • The Lwt core, lwt.ml, has been thoroughly refactored and commented (#354, reviewed Gabriel Radanne, Edwin Török, Raphaël Proust, Jan Doms, Fabian Hemmer, Sebastien Mondet, Simon Cruanes, Anil Madhavapeddy, Pierre Chambart, and many others).
  • Lots of tests for most of the Lwt core (#339, #389, #392, #440, #448, #450, Joseph Thomas, Ryan Slade).
  • Documentation fixes (including by Joseph Thomas, Raphaël Proust, Richard Degenne, Stavros Polymenis).
  • Contributing documentation (#379).
  • Massively adjust whitespace for legibility (#400, #409, #416, Richard Degenne).
  • Improvements to CI (Etienne Millon, Raphael Rafatpanah, Zack Coker, Yotam Barnoy).
  • The additional packages lwt_ssl, lwt_react, lwt_glib get new minor releases, the change being new Jbuilder build systems (#374, Andrew Ray).

Lwt 3.0.0

11 Apr 04:51

Choose a tag to compare

Breaking

  • These changes were originally announced in release 2.7.0 (#308).
  • Lwt_engine.libev now has an optional argument for selecting the libev back end (#269, #294, Jeremy Yallop).
  • Lwt_io.establish_server has been changed to make it more difficult to leak file descriptors (#258, #260).
  • Lwt_io.shutdown_server now evaluates to a promise, which completes when the listening socket's close(2) operation completes (#259).
  • Lwt_unix.bind now evaluates to a promise, because the bind(2) system call can block for Unix domain sockets (#296, requested David Sheets).
  • ocamlfind packages lwt.react, lwt.ssl, lwt.glib are replaced by lwt_react, lwt_ssl, lwt_glib. These have been separate OPAM packages, under those names, since 2.7.0 (#301).

Lwt 2.7.1

08 Apr 17:27

Choose a tag to compare

Fixes

  • OCaml 4.05 compatibility (Mauricio Fernandez, #322).
  • Give Lwt_unix.file_exists the same semantics as Sys.file_exists, with respect to not raising Unix.Unix_error (Mauricio Fernandez, #316).
  • Improve diagnostics from build scripts (Tim Cuthbertson, #313, #314).

Additions

  • Announce Lwt_result, which was originally released as an experimental module in release 2.6.0 (Simon Cruanes, #320, #247).

Lwt 2.7.0

03 Jan 19:40

Choose a tag to compare

General

  • Values of types 'a Lwt.t are now referred to as promises rather than threads (#300). The manual has not yet been updated.

Breaking

  • After this release, Lwt will switch to semantic versioning. Future breaking changes will first require deprecation, then a major version number increase (#293).
  • Lwt no longer supports OCaml 4.01 (#272).
  • Lwt_unix.fdatasync is no longer available on macOS. It was calling an undocumented system call on that system (#285, Jeremy Yallop).

Planned to break in 3.0.0

Additions

Changes

Deprecations

Bugs fixed

  • Ungraceful failure if directory handle used after Lwt_unix.closedir (#292).
  • Buffer overflow in Lwt_unix.readdir and Lwt_unix.readdir_n (#292).
  • Unnecessary allocations in Lwt_unix.readdir_n (#292, found Jeremly Yallop).

Miscellaneous

  • Annotate existing deprecations with [@@ocaml.deprecated ...] (5737f5b).
  • Improvements to the examples (#288, Rich Neswold).
  • Documentation fixes, including by Rich Neswold.
  • New tests and various minor internal improvements.
  • Run tests in CI with all OCaml warnings enabled (dadb926).
  • Much cleaner build output.
  • Add scratch/ directory for local use by developers.

Lwt 2.6.0

27 Oct 21:13

Choose a tag to compare

Additions

Bugs fixed

  • Memory leak in Lwt_unix.readdir_n (#229, diagnosed Thomas Leonard).
  • Memory leak in Lwt.protected (#56, #181, reported @ygrek, Mauricio Fernandez).
  • Lwt_switch.turn_off hook exception handling (995b704).
  • Handling of ENOTCONN when channels passed to handler of Lwt_io.establish_server are closed (95fb431).
  • Duplicate exceptions on implicit close in Lwt_io.with_connection (b1afe45).
  • Deadlock in Lwt_main.at_exit (#48, #114, reported Jérôme Vouillon, Vincent Bernardoff).
  • Performance of Lwt_preemptive.detach (#218, #219, Mauricio Fernandez).
  • Bad hash functions for libev loops (#146, reported Mark Christiaens).
  • Hash of uninitialized data in Lwt_io (#217, reported Jeremy Yallop).
  • Update log sections after Lwt_log.load_rules (#188, reported @rand00).
  • Print three digits for milliseconds in Lwt_log (#264, Fabian Hemmer).
  • Do not truncate Unix job notification ids in C (#277, diagnosed @stijn-devriendt).

Deprecations

  • Lwt_stream.on_termination: bind on Lwt_stream.closed instead.
  • Lwt.make_value, Lwt.make_error: use result's Ok and Error constructors.
  • Lwt_pqueue, Lwt_sequence: use min-heaps and linked lists from another library (#135).
  • Pa_lwt, Pa_lwt_log: use Ppx_lwt.

Miscellaneous

  • Update examples to use PPX syntax instead of Camlp4 (#108, Peter Zotov).
  • Set up Travis, AppVeyor for testing on Linux, OS X, Cygwin, and MinGW. MSVC also planned.
  • Large amount of local documentation fixes (including by Hezekiah Carty, Etienne Millon, Leo Wzukw, Sebastien Mondet).
  • A bunch of new tests.

Lwt 2.5.2

25 Apr 14:10

Choose a tag to compare

  • Fix compatibility for 4.03 (#227)
  • Various documentation fixes (#199,#200,#210)
  • Improve wildcard detection in the ppx (#198)
  • Fix Lwt_stream: bounded_push#close wake the reader (#201)
  • Fix infinite loop with Lwt_stream.choose (#214)
  • Fix lazyness failure with Lwt_io.common#close (#207)

Lwt 2.5.1

08 Dec 10:33

Choose a tag to compare

  • Lwt_stream.on_terminate -> Lwt_stream.on_termination
  • Lwt_unix: handle O_CLOEXEC
  • Lwt_log: add OSX syslog path
  • Ppx: Improve lwt%match, improve catchall detection
  • Add Lwt_unix.file_exists and Lwt_unix.Large_file.file_exists
  • Build fixes

Lwt 2.5.0

03 Jul 12:25

Choose a tag to compare

  • API CHANGE: Functions in Lwt_io that were previously using a
    ~buffer_size argument now takes a ~buffer argument.
  • Accept ?buffer argument in Lwt_ssl.{in,out}_channel_of_descr.
  • Use newer Ssl bigarray read/write functionality to avoid
    allocation in Lwt_ssl.
  • Fix non-reentrant function calls (#136)
  • IPv4 multicast support.
  • Add support for if%lwt in ppx extension.
  • Add Lwt.return_some.
  • Disable log syntax extension by default in ppx.
    Give [-log] as ppx argument to enable it.
  • Nanosecond precision for Lwt_unix.stat.
  • Minor fixes + documentation improvements.

Lwt 2.4.8

11 Mar 09:27

Choose a tag to compare

Bug fix release:

  • fix compilation under Windows;
  • fix Lwt_engine.on_timer.

Lwt 2.4.3

19 May 07:49

Choose a tag to compare

  • Fix Lwt_ssl.{in,out}_channel_of_descr: shutdown and close the socket when the channel is closed.