[Haskell-cafe] ANNOUNCE: graphviz-2999.8.0.0

Ivan Lazar Miljenovic ivan.miljenovic at gmail.com
Sat Dec 26 06:23:13 EST 2009

I am pleased to announce the latest release of my graphviz [1] library,
which provides bindings and helper functions for use with the Graphviz
[2] suite of graph visualisation programs.

[1] http://hackage.haskell.org/package/graphviz
[2] http://www.graphviz.org/

For the most part, this release has a compatible API with the 2999.7.0.0
version; the only exceptions to this are the runGraphviz and
runGraphvizCommand functions in Data.GraphViz.Commands; I released after
the last release that it might be useful to have these return the
filenames of the files created rather than just indicating success,
especially when using addExtension (from the same module) to add the
correct extension to a provided filename.

The rest of the changes to this release are:

* Added support for generalised DotGraphs; this optional
  representation removes the restriction of ordering of Dot
  statements.  This allows for greater flexibility of how to specify
  Dot code.  As an offshoot from this, most relevant functions now
  utilise a new DotRepr class that work with both DotGraphs and the
  new GDotGraphs; this shouldn't affect any code already in use.

* With the prompting of Noam Lewis, the augmentation functions have
  been revamped in two ways:

  - Now contains support for multiple edges.

  - The ability to perform "manual" augmentation if greater control is

* Add a preview function to quickly render and visualise an FGL graph
  using the Xlib canvas.

* Added a pseudo-inverse of the FGL -> Dot functions (a graph is
  created, but the original node and edge labels are unrecoverable).

* The Printing and Parsing modules have been moved (from
  Data.GraphViz.Types to Data.GraphViz).

In the near future, this library is also likely to contain support for
record shapes for graph nodes thanks to Minh Thu.

If you want/require any additional features in graphviz, you too can do
what countless (well, OK, not actually countless per-se) people like
Noam and Thu have done: bug me to do it or send me a patch! ;-)

(I hope that I don't have to make yet another release soon fixing an
obvious flaw as soon as I actually start using this release myself...)

Ivan Lazar Miljenovic
Ivan.Miljenovic at gmail.com

More information about the Haskell-Cafe mailing list