[opam-devel] ows reports

Thomas Gazagnaire thomas at gazagnaire.org
Thu Oct 2 17:40:22 BST 2014

> I think the choice is either:
> 1/ to decide that are not going to fix old packages. In this case,
> they should take OWS information as definitive, and mark as
> unavailable for a given OCaml version any package that is red for that
> version.

I have created https://github.com/ocaml/opam-repository/issues/2814 to track that. I won't be able to work on that in the next few days, but I'll fix that before the end of the month unless anyone else wants to contribute. So we will have a full green table on ows and it will be easier to accept/reject new packages.


> 2/ to fix dependencies to be compatible with all OCaml versions that
> they want to support (i.e. that the package says it is available for).
> For example, they could provide several implementations of the same
> module for different versions of OCaml, if the module uses features of
> specific OCaml versions.
> In both case, the result is that the package is either advertised as
> not being available for an OCaml version (an empty box in OWS), or it
> is available with matching dependencies (a green box).
>>>> I guess the goal is to make some changes (the policy, the workflow, ...) to improve the metrics results or at least to propose or explain how it can be improved -- if not, I don't see the point. Currently, it is still unclear to me how we (the repo maintainers) can fix all the "broken" packages on the repo without requiring all packages to compile on all the versions of the compiler (which will never happen) or by duplicate metadata (the transitive closure of the available fields) which will get out-of-sync quickly.
>>> Currently, the field "ocaml-version" is used to tell that the
>>> "content" of the package is incompatible with a given OCaml version.
>>> Maybe there should be another field to say that the package is known
>>> to be incompatible with a given ocaml version, because of missing
>>> dependencies. This way, it would not be printed in the list of
>>> available packages for that version.
>> opam removes the transitive closure of unavailable packages in `opam list --all`.  But yes, maybe we need more meta-data. Is that the solution you recommend?
> Ideally, package maintainers would fix their dependencies to work on
> all supported versions, but in the meantime, yes, such a meta-data
> could help.
> --Fabrice

More information about the opam-devel mailing list