packages feed

graphviz-2999.18.1.2: graphviz.cabal

Name:               graphviz
Version:            2999.18.1.2
Stability:          Beta
Synopsis:           Bindings to Graphviz for graph visualisation.
Description: {
This library provides bindings for the Dot language used by the
Graphviz (<http://graphviz.org/>) suite of programs for visualising
graphs, as well as functions to call those programs.
.
Main features of the graphviz library include:
.
* Almost complete coverage of all Graphviz attributes and syntax.
.
* Support for specifying clusters.
.
* The ability to use a custom node type.
.
* Functions for running a Graphviz layout tool with all specified
  output types.
.
* The ability to not only generate but also parse Dot code with two
  options: strict and liberal (in terms of ordering of statements).
.
* Functions to convert FGL graphs and other graph-like data structures
  to Dot code - including support to group them into clusters - with a
  high degree of customisation by specifying which attributes to use
  and limited support for the inverse operation.
.
* Round-trip support for passing an FGL graph through Graphviz to
  augment node and edge labels with positional information, etc.
}

Homepage:           http://projects.haskell.org/graphviz/
Category:           Graphs, Graphics
License:            BSD3
License-File:       LICENSE.md
Copyright:          Matthew Sackman, Ivan Lazar Miljenovic
Author:             Matthew Sackman, Ivan Lazar Miljenovic
Maintainer:         Ivan.Miljenovic@gmail.com
Build-Type:         Simple
Tested-With:        GHC == 7.4.2, GHC == 7.6.3, GHC == 7.8.4,
                    GHC == 7.10.2, GHC == 8.0.1, GHC == 8.1.*
Cabal-Version:      >= 1.14
Extra-Source-Files: TODO.md
                    Changelog.md
                    README.md
                    FAQ.md
                    utils/AttributeGenerator.hs

Source-Repository head
    Type:         git
    Location:     git://github.com/ivan-m/graphviz.git

Flag test-parsing
     Description: Build a utility to test parsing of available Dot code.
     Default:     False

Library {
        Default-Language:  Haskell2010

        Build-Depends:     base == 4.*,
                           containers,
                           process,
                           directory,
                           temporary >=1.1 && <1.3,
                           fgl >= 5.4 && < 5.6,
                           filepath,
                           polyparse >=1.9 && <1.13,
                           bytestring >= 0.9 && < 0.11,
                           colour == 2.3.*,
                           transformers >= 0.2 && < 0.6,
                           text,
                           wl-pprint-text >= 1.1.0.0 && < 1.2.0.0,
                           dlist >= 0.5 && < 0.9

        Exposed-Modules:   Data.GraphViz
                           Data.GraphViz.Types
                           Data.GraphViz.Types.Canonical
                           Data.GraphViz.Types.Generalised
                           Data.GraphViz.Types.Graph
                           Data.GraphViz.Types.Monadic
                           Data.GraphViz.Parsing
                           Data.GraphViz.Printing
                           Data.GraphViz.Commands
                           Data.GraphViz.Commands.IO
                           Data.GraphViz.Attributes
                           Data.GraphViz.Attributes.Complete
                           Data.GraphViz.Attributes.Colors
                           Data.GraphViz.Attributes.Colors.X11
                           Data.GraphViz.Attributes.Colors.Brewer
                           Data.GraphViz.Attributes.Colors.SVG
                           Data.GraphViz.Attributes.HTML
                           Data.GraphViz.PreProcessing
                           Data.GraphViz.Exception
                           Data.GraphViz.Algorithms

                           Data.GraphViz.Attributes.Internal
                           Data.GraphViz.Internal.Util
                           Data.GraphViz.Internal.State
                           Data.GraphViz.Types.Internal.Common

        Other-Modules:     Data.GraphViz.Algorithms.Clustering
                           Data.GraphViz.Attributes.Arrows
                           Data.GraphViz.Attributes.ColorScheme
                           Data.GraphViz.Attributes.Same
                           Data.GraphViz.Attributes.Values
                           Data.GraphViz.Commands.Available
                           Data.GraphViz.Types.State

        if True
           Ghc-Options: -Wall

        if impl(ghc >= 6.12.1)
           Ghc-Options: -fno-warn-unused-do-bind
}

Test-Suite graphviz-testsuite {
        Default-Language:  Haskell2010

        Type:              exitcode-stdio-1.0

        -- Versions controlled by library section
        Build-Depends:     base,
                           graphviz,
                           containers,
                           fgl,
                           fgl-arbitrary == 0.2.*,
                           filepath,
                           text,
                           QuickCheck >= 2.3 && < 2.10

        hs-Source-Dirs:    tests

        Main-Is:           RunTests.hs


        Other-Modules:       Data.GraphViz.Testing
                             Data.GraphViz.Testing.Instances
                             Data.GraphViz.Testing.Properties
                             Data.GraphViz.Testing.Instances.Helpers
                             Data.GraphViz.Testing.Instances.Attributes
                             Data.GraphViz.Testing.Instances.Common
                             Data.GraphViz.Testing.Instances.Canonical
                             Data.GraphViz.Testing.Instances.Generalised
                             Data.GraphViz.Testing.Instances.Graph

        if True
           Ghc-Options: -O -Wall

        if impl(ghc >= 6.12.1)
           Ghc-Options: -fno-warn-unused-do-bind

        GHC-Prof-Options: -rtsopts
}

Benchmark graphviz-printparse {
        Default-Language: Haskell2010

        Type:             exitcode-stdio-1.0

        Build-Depends:    base,
                          deepseq,
                          text,
                          graphviz,
                          criterion >= 0.5 && < 1.2

        hs-Source-Dirs:   utils

        Main-Is:          Benchmark.hs

        if True
           Ghc-Options: -O -Wall

        if impl(ghc >= 6.12.1)
           Ghc-Options: -fno-warn-unused-do-bind

        GHC-Prof-Options: -rtsopts
}

Executable graphviz-testparsing {
        Default-Language: Haskell2010

        if flag(test-parsing)
           Buildable:     True
        else
           Buildable:     False

        hs-Source-Dirs:   utils

        Main-Is:          TestParsing.hs

        Build-Depends:    base,
                          graphviz,
                          bytestring,
                          directory,
                          filepath,
                          text

        Ghc-Options: -O -Wall

        GHC-Prof-Options: -rtsopts
}