[Haskell-cafe] ANNOUNCE: graphviz-2999.15.0.0

Ivan Lazar Miljenovic ivan.miljenovic at gmail.com
Mon Dec 31 23:15:45 CET 2012


After much prodding and poking by end-users for the past few months,
I'm finally able to announce a GHC-7.6.1 compatible release of my
Haskell bindings to the Graphviz graph visualisation toolkit:
http://hackage.haskell.org/package/graphviz-2999.15.0.0

(It took me so long to release a version that allowed
bytestring-0.10.* as I was waiting for upstream to get back to me
about an inconsistency I found; in the end I decided to just try and
cope with how it seems to work.)

The list of changes since the last release are:

* The repository is now hosted at
  http://hub.darcs.net/ivanm/graphviz, and using the bug-tracker
  there.

* Updates to various `Attribute` definitions:

    - The list of available shapes has been expanded to take into
      account the new synthetic biology shapes.

    - The `Size` and `FontNames` attributes now have specified data types.

    - The optional start and end points for `Spline`s were previously
      the wrong way round; this has now been fixed.

    - Explicitly only print 2-dimensional `Point` values for `Rect`
      and `DPoint` (previously only 2-dimensional values where parsed,
      but it was possible to print a 3-dimensional value).

    - HTML-like labels previously disallowed empty textual label
      components when parsing; spotted by Daniel Hummel.

* `GraphvizParams` now lets you specify whether a "cluster" is
  actually a cluster or a sub-graph.  Requested by Gabor Greif.

* Fixed an error where printing edges whose attributes contained a
  `ColorScheme` attribute, that attribute would stay in the state and
  the old color scheme would override the _parent's_ state.

* Previously, some malformed attributes were accepted when being
  parsed as they silently became parsed as an `UnknownAttribute`.
  Now, attributes where the attribute name and the equal sign are
  successfully parsed **but** the value of the attribute is _not_
  successfully parse will throw an unrecoverable error.

    **Note**: this does mean that some Dot graphs that are accepted by
    Graphviz (as they separate tokenizing from parsing; as such
    something like `"0.1"` is successfully accepted as an integer,
    specifically `0`) are no longer accepted when parsing them in.

* Miscellaneous parsing improvements:

    - Whilst not specified anywhere, Graphviz seems to treat empty
      quotes as values for attributes expecting a number as their
      default; as such, this is now taken into account when parsing.

    - `DPoint` values can now parse an optional `+` prefix.

    - Whitespaces after commas in HSV colors are now accepted.

* Error messages from parsing are improved to help you track down
  where the parsing error occurred (in that it's easier to find which
  attribute failed to parse, etc.).


-- 
Ivan Lazar Miljenovic
Ivan.Miljenovic at gmail.com
http://IvanMiljenovic.wordpress.com



More information about the Haskell-Cafe mailing list