[ocaml-platform] Does Core change too often?

Pietro Abate Pietro.Abate at pps.univ-paris-diderot.fr
Mon Feb 18 18:08:49 GMT 2013


On 15/02/13 11:31, Sylvain Le Gall wrote:
> > I have no obvious ideas as to how to solve this.  Does anyone else
> > have ideas?  Should we simply encourage packagers to specify a
> > lower-bound constraint on the Core libraries?
> 
> AFAIU, OPAM constraint model is inspired by Debian constraints
> model... Although this is a very complex model, that can probably
> express a lot of stuff, but it most often ends up by creating a new
> problem (like SAT solving for 350+ packages).

>From a SAT solver prospective, 350+ packages are peanuts. Dose, the
library used by opam, can easily manage repositories of about 100K
packages with constraints and all. In this framework, you can also
express ranges (for example) to declare that your library will work
with all the core releases from 1.1 to 1.5 (this is possible as a
package repository, from the solver prospective is a closed repository
and all versions are known). Soft constraints can be used as easily.

However consider that in order to fully exploit the dependency model
supported by opam it would be necessary a stronger policy on versions
(all these tools work with the underlying assumption that versions can
be compared using a canonical function) and some QA tool to routinely
check the health of the repository. This is already all available and
used in Debian and the related know-how can be easily ported to opam
repositories. I definitely see a future where with constraints (and
not only on the core library), but with greater powers, come even
greater responsibilities, and we should plan ahead establishing a
clear packaging policy to avoid problems along the track.

pietro


More information about the Platform mailing list