Luv 0.5.1 — a libuv binding — Windows support

I am pleased to announce release 0.5.1 of Luv. The main change is the addition of Windows support, which makes Luv fully cross-platform.

Accordingly, Luv 0.5.1 is now installable from both the main opam repo, and from opam-repository-mingw.

Also, as a side effect of the build system refactoring that was needed to support Windows, Luv’s build system no longer requires Python, and supports cross-compilation.

The other noteworthy change in release 0.5.1 is a routine upgrade of the vendored libuv to its latest version, 1.35.0.


Even though I’m not sure to use it anytime soon, I must say this is always a pleasure to see improvement to the Windows side of the equation. To a more Windows-friendly future, cheers :champagne:


This is a fantastic improvement to an already useful addition to the OCaml ecosystem! Thank you very much @antron

1 Like

This is a clearly high-effort venture, thank you for it!

Could I ask what the motivation behind starting this project was?

Does libuv’s OS interface provide more functionality than the Unix module? Is Luv going to be better prepared, architecturally, for multicore OCaml in ways Lwt (and Async) are not?

Is the multi-platform support in libuv something Lwt can’t match or Async couldn’t match (once the scheduler is ported to Windows)?


@mbacarella the original announcement may answer some of these questions.