|
| 1 | +### v0.5.0 (2025-10-13) |
| 2 | + |
| 3 | +- Use `poll(2)`/`ppoll(2)` instead of `select(3P)` (#75, @dinosaure, @haesbaert, |
| 4 | + @hannesm, @backtracking) |
| 5 | + |
| 6 | + `miou.unix` now uses the `poll(2)` or `ppoll(2)` function if available (the |
| 7 | + choice is determined at compilation). It replaces the use of `select(3P)` and |
| 8 | + improves performance. Miou no longer needs to build lists of file descriptors |
| 9 | + to observe, but instead manipulates a bitv and an array containing these file |
| 10 | + descriptors. |
| 11 | + |
| 12 | + The `bitv` implementation comes from the [bitv][bitv] library written by |
| 13 | + @backtracking, who kindly allowed us to relicense it under MIT. |
| 14 | + |
| 15 | + Finally, a special thanks to @haesbaert, who originally wrote |
| 16 | + [ocaml-iomux][iomux], which provides a portable implementation and an OCaml |
| 17 | + interface for using `poll(2)`/`ppoll(2)`. |
| 18 | + |
| 19 | + The use of `poll(2)`/`ppoll(2)` should improve performance, as noted in the |
| 20 | + PR, particularly with regard to our [httpcats][httpcats] HTTP server. |
| 21 | + |
| 22 | + It should be noted that `dune-configurator` has been added as a new dependency |
| 23 | + for Miou. However, support for `topkg`/`ocamlbuild` is still maintained (and |
| 24 | + it is possible to compile and install Miou with this build system). |
| 25 | + |
| 26 | +- Synchronize `dom0` when one domain receive a signal (#78, @omegametabroccolo, |
| 27 | + @dinosaure, @reynir, partially fix #77) |
| 28 | + |
| 29 | +- Add `Miou.Ownership.release` to disown and release a resource |
| 30 | + (@dinosaure, #79) |
| 31 | + |
1 | 32 | ### v0.4.0 (2025-08-06) |
2 | 33 |
|
3 | 34 | - Fix the suspension mechanism and allow the user to pass a function which will |
|
0 commit comments