Feedback on this post is welcomed on Discuss!

We are happy to announce the first beta release of opam 2.5.0. You can view the full list of changes in the release note.

This version is a beta, we invite users to test it to spot previously unnoticed bugs as we head towards the stable release.

Try it!

The upgrade instructions are unchanged:

  1. Either from binaries: run

For Unix systems

bash -c "sh <(curl -fsSL https://opam.ocaml.org/install.sh) --version 2.5.0~beta1"

or from PowerShell for Windows systems

Invoke-Expression "& { $(Invoke-RestMethod https://opam.ocaml.org/install.ps1) } -Version 2.5.0~beta1"

or download manually from the Github "Releases" page to your PATH.

  1. Or from source, manually: see the instructions in the README.

You should then run:

opam init --reinit -ni

Changes

  • Allow the macOS sandbox to write in the /var/folders/ and /var/db/mds/ directories as it is required by some macOS core tools (#4389, #6460)
  • Stop opam switch create --dry-run from creating any directory. Thanks to @hannesm for this contribution. (#5918)
  • Stop cleaning the build directory when installing packages with --dry-run. Thanks to @hannesm for this contribution. (#6540)

Regression fixes from 2.5.0~alpha1

  • Fixed a bug occurring on version-equivalent package rename (i.e. pkg.00 -> pkg.0) leading to the package being completely removed (#6754)

Build changes

  • opam no longer depends on cmdliner. This change allows cmdliner 2.0.0 to be co-installable with opam-installer and the opam-client library (#6425)
  • Allow building opam using the upcoming OCaml 5.5 (trunk) when using dune's dev profile (#6670)
  • Clean variables before calling make on different projects (e.g. downloaded-if-missing OCaml compiler) to avoid clashes with other variables set by these projects (#6769)

API changes are also denoted in the release note linked above. This release also includes a couple of improvement and extensions to our testsuite.

Please report any issues to the bug-tracker.

Happy hacking!