Hi everyone,
As mentioned in our talk at the OCaml Workshop 2024, we decided to switch to a time-based release cycle (every 6 months), starting with opam 2.3.
As promised, we are happy to announce the final release of opam 2.3.0.
What’s new?
-
When loading a repository, opam now ignores files in packages’ files/ directories which aren’t listed in the extra-files field of the opam file. If you maintain an opam repository, please read our blog post to make sure your repository stays compatible.
-
Packages requiring an unsupported version of opam are now marked unavailable, instead of causing a repository error. This means an opam repository can now allow smoother upgrade in the future
-
opam list --latests-only: a new option to list only the latest versions of packages
-
–verbose-on: a new option to enable verbose output for specified package names.
-
opam switch import --deps-only: a new option to install only the dependencies of the root packages listed in the opam switch export file
-
opam switch list-available no longer displays compilers flagged with
avoid-version
/deprecated
unless--all
is given, meaning that pre-release or unreleased OCaml packages no longer appear to be the latest version -
The builtin-0install solver was improved and should now be capable of being your default solver instead of
builtin-mccs+glpk
. If you wish to give it a try, simply callingopam option solver=builtin-0install
(callopam option solver=
restores the default) -
Most of the unhelpful conflict messages were fixed
-
Fix the internal cache of installed packages, which was storing the wrong version of the opam file after a build failure. (#6213)
Various performance and other improvements were made and bugs were fixed.
You can read our blog post for more information about these changes and more, and for even more details you can take a look at the release note or the changelog.
Try it!
The upgrade instructions are unchanged:
For Unix systems
bash -c "sh <(curl -fsSL https://opam.ocaml.org/install.sh)"
or from PowerShell for Windows systems
Invoke-Expression "& { $(Invoke-RestMethod https://opam.ocaml.org/install.ps1) }"
Please report any issues to the bug-tracker.
Happy hacking,
<> <> The opam team <> <>