solvuu-build icon indicating copy to clipboard operation
solvuu-build copied to clipboard

Lighter weight package without `ocamlgraph`

Open jordwalke opened this issue 7 years ago • 1 comments

Is there a way to drop the dependency on ocamlgraph? It pulls in a ton of dependencies and as I understand its only purpose is to display a graph? I wouldn't mind a separate optional tool to install. Thoughts?

jordwalke avatar Mar 24 '17 07:03 jordwalke

as I understand its only purpose is to display a graph?

No, the graph operations are used in an important way. We store the dependencies between apps and libs comprising a project, and this is essential to assure that items are compiled in the correct order. We also make sure you didn't inadvertently define cyclic dependencies.

Nonetheless the operations are pretty trivial. We need a DAG with topological sort, and efficiency is irrelevant as the graphs have a handful of nodes and edges even in big projects. So we could provide our own implementation, and drop ocamlgraph. I'd welcome a pull request.

It pulls in a don of dependencies

ocamlgraph itself has no other dependencies, so I don't get this. It does have some optional dependencies (lablgtk | conf-gnomecanvas), but solvuu-build doesn't use the features requiring those, so those shouldn't be required.

agarwal avatar Mar 24 '17 13:03 agarwal