[ocaml-platform] Is it taking too long for OCaml software to become 4.03-compatible? Would release process changes help?

Sylvain Le Gall sylvain+ocaml at le-gall.net
Thu Jun 30 07:36:35 BST 2016

Le mer. 29 juin 2016 à 19:14, Simon Cruanes <simon.cruanes.2007 at m4x.org> a
écrit :

> Le Wed, 29 Jun 2016, Gabriel Scherer a écrit :
> > I'm a bit frustrated with the time it takes for the OCaml ecosystem to
> > catch up with the 4.03 release -- which has been released two months ago
> > now, on April 25.
> >
> >  ...
> >
> > Do you agree that this is a problem? What could we do to fix that?
> I agree, I wanted to update my packages after the release and had to
> wait for oasis to work on 4.03; some other dependencies of projects of
> mine also took some time. Even now, I just stumbled upon Coq 8.5 not
> compiling, so I'd say the problem is real.

Just to be fair to the OASIS release cycle:
- OCaml 4.03 was released 2016-04-26
- OASIS 0.4.6 for OCaml 4.03 was released 2016-04-29

This is only 3 days and this was mainly due to a transitive dependency on
Batteries for the tests. Considering OSS standards, this is not a long time
for a fix.

> >
> > When I started writing this email I intended to send it to Damien
> Doligez,
> > as the release manager of the compiler distribution, with the following
> > suggestion: maybe we could have a *much longer* beta-testing period for
> > OCaml versions that would be used not (only) for finding bugs in the new
> > version, but also to let important pieces of the ecosystem update to the
> > new version. Say, at least a month. We could have a fixed set of software
> > that we monitor, or in fact all of what's in OPAM, and delay the release
> > until they get updated/fixed or their OPAM version bounds get fixed.
> (Aha,
> > a Platform indeed!)
> As usual, the issue is: what set of packages is monitored, and who
> chooses?
> > Does that sound like a reasonable idea to you? Should we monitor all
> > or only a subset?
> I think OWS should be used to see which packages are broken on the new
> release, indeed. I would propose the following workflow:
> - the beta-testing period, feature-frozen, starts (for some time)
> - shortly, maintainers whose package doesn't compile (we know thanks to
>   OWS) are emailed to be informed of the problem
> - if, at the end of the beta-testing period (just before the release) a
>   package that used to build on the previous release, but does not build
>   anymore, is modified by opam-repo maintainers so it gets an upper
>   bound on the OCaml version.
> This means that, if no action is taken, a
> package that does not build on 4.04 would have "ocaml-version < 4.04".
> New releases of this package, that hopefully fix the build on 4.04,
> would lift this barrier. It would also prevent opam from falling back
> to old, incompatible versions of a package in case of conflict with
> some other library.
> New packages are checked for build on most versions of OCaml; I think
> old packages should also be checked for compatibility with newer
> versions of OCaml so that the appropriate bound check is added. I don't
> add those bounds myself on my own packages (too tedious to do it on 15
> old releases), so it should probably be automated.
> Cheers!
> --
> Simon Cruanes
> http://weusepgp.info/
> key 49AA62B6, fingerprint 949F EB87 8F06 59C6 D7D3  7D8D 4AC0 1D08 49AA
> 62B6
> _______________________________________________
> Platform mailing list
> Platform at lists.ocaml.org
> http://lists.ocaml.org/listinfo/platform
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ocaml.org/pipermail/platform/attachments/20160630/a399be44/attachment-0001.html>

More information about the Platform mailing list