[ocaml-platform] OPAM -- why does it remove packages?

Thomas Gazagnaire thomas at gazagnaire.org
Thu Feb 26 16:57:06 GMT 2015


Hi,

> I would like some help in figuring out why opam wants to remove a given package. What is the preferred debugging loop people use to figure out this sort of "package conflict" problem? I could not find anything on the website about this and it seems like it would be a common problem so I am emailing you all.

The best way to debug this is to add version constraints to your queries. For instance:

$ opam install piqi.0.7.1 cohttp.0.15.2

The solver returns some information about the conflicts that opam tries to pretty print as well as possible (it's not always very clear, though, but usually it helps to understand what happens).

Thomas

> 
> Example: I currently have piqi version 0.7.1 installed. I would like to install cohttp 0.15.2 with async support. When I try to do this opam wants to remove both piqi and piqilib.
> 
> In debugging this I just sort of floundered around a bit -- I started by seeing if any older versions of cohttp with async work. Sure enough, version 0.14.0 works but 0.15.0 seems to have introduced this desire to remove piqi dependency. Upon further inspection, it looks like base64 2.0.0 (a dependency of cohttp with async v 0.15.0) is what is causing opam to want to remove piqi. However, I could not yet find anywhere that will explain to me _why this is the case_.
> 
> Thoughts? Thank you.
> 
> Trevor
> _______________________________________________
> Platform mailing list
> Platform at lists.ocaml.org
> http://lists.ocaml.org/listinfo/platform



More information about the Platform mailing list