Thank you, dear sponsors for your continued support. This months update on what I did/tried for Reason/OCaml OSS
opam package base failure on Windows and Macos
While upgrading esy's dependencies, I noticed the version released on
opam did not build on macos anymore.
unsupported option '-mpopcnt' for target 'arm64-apple-darwin24.3.0'
Luckily, someone already fixed
discover.ml for macos, but it didn't work on Windows.
I patched it and shared it with the author.
(As I was writing this, interesting another PR#180 was raised. Yet to try it on Windows )
exploring Flambda2 on Windows
I wanted to see if Flamba2 would build on Windows. I feel I got to a promising stage, but can't prioritise working on it as of now. You can find my hacks in the footnote
esy: Upgrading vendored cmdliner
Because of commands like,
esy --help
esy dune --help
...we need cmdliner to stop parsing options that belong to sandbox commands as main command's options.
@andreypopp introduced a ~stop_on_pos argument in cmdliner. For many months now, I couldn't port the patch to newer cmdliner versions. But looking at the newer features (shell completions), I couldn't resist. You can find the patch at the end of this post.
esy: Improving error messages
There were cases were messages were a bit cluttered - ("error: error: fetch failed ..") etc. I started a PR to declutter them. Next step would be to add more information so that error messages can be more informative. For instance, if misconfiguration could be reported with file-context-printer. Last step would be to make the messages prettier with colours.
A small improvement already towards this is differentiating between root project's build failure and a dependency build failure. It's present in the same PR - hope it clarifies things.
esy-opam-override: conf-gmp
A new version of conf-gmp needed an override.