[opam-devel] printing detailed dependency analysis

Pietro Abate Pietro.Abate at pps.univ-paris-diderot.fr
Wed Mar 27 16:03:12 GMT 2013


On 27/03/13 11:32, Ashish Agarwal wrote:
> We have a package Flow (pinned to a local copy), which when I try to
> install it, I'm told requires downgrading lwt to 2.4.2. I see no reason why
> this should be, so I tried running your command to investigate:
> 
> $ opam upgrade --cudf=flow flow
> flow is not installed.
> Already up-to-date.
> 
> $ dot -Tpng flow.dot > flow.png

Maybe you can use ceve (part of dose3) to generate nice graphs ...

I think opam has a switch to generate the cudf file of your
repository. Once you have this file, it is easy to use ceve to obtain
the dependency tree (or reverse dependency tree) of a specific
package.

ex : 
./ceve.native -tcudf opam-reposiotry.cudf -r cstruct -Tdot > cstruct-reverse.dot

./ceve.native -tcudf opam-reposiotry.cudf -c cstruct -Tdot > cstruct-direct.dot

I've attached to this message the two dot files.

ceve is a pretty versatile tool able to generate different type of
graphs from the repository. I advice you to get the latest git
snapshot from out git repo : 

git clone git://scm.gforge.inria.fr/dose/dose.git

> On Wed, Mar 27, 2013 at 10:50 AM, Thomas Gazagnaire <thomas at ocamlpro.com>wrote:
> 
> > Remark: this is really just a hack, I agree it would be good to move that
> > thing into a proper command later.
> >
> > We've discussed about creating 'opam-check' which will do this kind of
> > computations using opam-lib, but we've never really had the time to do this
> > properly. As always, contributions are welcome as this is quite distinct
> > from the core of OPAM (eg. the mechanics of installing/removing packages).

Dose3 already provides all the necessary bricks to do all kind of
analysis. If you can put down a list of desiderata for 'opam-check',
I'll be happy to point you in the right direction.

pp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: cstruct-reverse.dot
Type: application/msword
Size: 2218 bytes
Desc: not available
URL: <http://lists.ocaml.org/pipermail/opam-devel/attachments/20130327/72d06e38/attachment-0002.dot>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cstruct-cone.dot
Type: application/msword
Size: 7104 bytes
Desc: not available
URL: <http://lists.ocaml.org/pipermail/opam-devel/attachments/20130327/72d06e38/attachment-0003.dot>


More information about the opam-devel mailing list