On behalf of the opam maintainers, I’d like to announce the first release of opam-compiler, a plugin to work with compiler variants, branches and forks.
This can cover a pretty wide range of use cases, so the first version is starting small with a single command to create a switch from a branch or github PR:
% opam compiler create '#9921' Opam plugin "compiler" is not installed. Install it on the current switch? [Y/n] y ... <><> Carrying on to "opam compiler create #9921" ><><><><><><><><><><><><><><><> [ocaml-variants.4.12.0+trunk+no-flat-float-array] synchronised from git+https://github.com/gasche/ocaml#Atomic.create ocaml-variants is now pinned to git+https://github.com/gasche/ocaml#Atomic.create (version 4.12.0+trunk) % opam switch ... → ocaml-ocaml-9921 [opam-compiler] ocaml/ocaml#9921 - stdlib: rename Atomic.make into Atomic.create
You can also override the arguments passed to
As you can see in the above snippet, it’s an opam plugin so it will auto-install if needed (assuming you ran
opam update recently) and will be available across all switches. Its sources and issue tracker are available here.
For the next releases, our plan is to add a user-friendly way to setup a switch based on a local git clone, so that it’s easy to test your compiler fork with opam packages. You can find the other features we’d like to add in the future in the relevant part of the opam roadmap.
Thanks and have fun compiling compilers!