graphviz 2999.12.0.2 → 2999.12.0.3
raw patch · 11 files changed
+62/−44 lines, 11 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- Changelog +7/−0
- Data/GraphViz.hs +7/−6
- Data/GraphViz/Attributes.hs +1/−1
- Data/GraphViz/Attributes/ColorScheme.hs +3/−4
- Data/GraphViz/Attributes/Colors.hs +3/−3
- Data/GraphViz/Commands/IO.hs +1/−1
- Data/GraphViz/PreProcessing.hs +3/−3
- Data/GraphViz/Printing.hs +6/−3
- Data/GraphViz/Types/Canonical.hs +1/−1
- Data/GraphViz/Types/Graph.hs +29/−21
- graphviz.cabal +1/−1
Changelog view
@@ -7,6 +7,13 @@ The following is information about what major changes have gone into each release. +Changes in 2999.12.0.3+----------------------++* Fixes various mistakes in the Haddock documentation that slipped+ through (either in the `String -> Text` conversion or adding new+ modules and not checking their documentation thoroughly enough).+ Changes in 2999.12.0.2 ----------------------
Data/GraphViz.hs view
@@ -128,17 +128,17 @@ > checkDirectednessVis :: (Graph gr, Ord el) => gr nl el -> DotGraph Node > checkDirectednessVis = setDirectedness graphToDot nonClusteredParams - * Clustering nodes based upon whether they are even or odd. We have- the option of either constructing a @GraphvizParams@ directly, or- using @'blankParams'@. Going with the latter to avoid setting- @'isDirected'@.+ * Clustering nodes based upon whether they are even or odd. We+ have the option of either constructing a @GraphvizParams@+ directly, or using @'blankParams'@. Using the latter to avoid+ setting @'isDirected'@: > evenOdd :: (Graph gr, Ord el) => gr Int el -> DotGraph Node > evenOdd = setDirectedness graphToDot params > where > params = blankParams { globalAttributes = [] > , clusterBy = clustBy- > , clusterID = Just . Int+ > , clusterID = Int > , fmtCluster = clFmt > , fmtNode = const [] > , fmtEdge = const []@@ -158,9 +158,10 @@ -- after clustering the nodes have a label of type @l@ (which may or -- may not be the same as @nl@). ----- The tuples ins the function types represent labelled nodes (for+-- The tuples in the function types represent labelled nodes (for -- @(n,nl)@ and @(n,l)@) and labelled edges (@(n,n,el)@; the value -- @(f,t,ftl)@ is an edge from @f@ to @l@ with a label of @ftl@).+-- These correspond to 'LNode' and 'LEdge' in FGL graphs. -- -- The clustering in 'clusterBy' can be to arbitrary depth. data GraphvizParams n nl el cl l
Data/GraphViz/Attributes.hs view
@@ -291,7 +291,7 @@ arrowTo = ArrowHead -- | How to draw the arrow at the node the edge is coming from.--- Requires either @'edgeEnds' 'Back'@ or @'EdgeEnds' 'Both'@.+-- Requires either @'edgeEnds' 'Back'@ or @'edgeEnds' 'Both'@. arrowFrom :: Arrow -> Attribute arrowFrom = ArrowTail
Data/GraphViz/Attributes/ColorScheme.hs view
@@ -16,14 +16,13 @@ -- ----------------------------------------------------------------------------- --- | This represents the color schemes that Graphviz accepts. As--- mentioned above, these are /not/ used for actual parsing or--- printing.+-- | This represents the color schemes that Graphviz accepts. data ColorScheme = X11 | Brewer BrewerScheme deriving (Eq, Ord, Show, Read) --- | The value of the depends on the name.+-- | Specify which colour pallete and how many colours it has. Note+-- the allowed values for the different 'BrewerName's. data BrewerScheme = BScheme BrewerName Word8 deriving (Eq, Ord, Show, Read)
Data/GraphViz/Attributes/Colors.hs view
@@ -1973,9 +1973,9 @@ ] -- | Attempt to convert a 'Color' into a 'Colour' value with an alpha--- channel. The use of 'Maybe' is because 'BrewerColor' values--- cannot be converted without knowing which actual 'BrewerName' and--- level color scheme is being used.+-- channel. The use of 'Maybe' is because the RGB values of the+-- 'BrewerColor's haven't been stored here (primarily for licensing+-- reasons). toColour :: Color -> Maybe (AlphaColour Double) toColour (RGB r g b) = Just . opaque $ sRGB24 r g b toColour (RGBA r g b a) = Just . withOpacity (sRGB24 r g b) $ toOpacity a
Data/GraphViz/Commands/IO.hs view
@@ -136,7 +136,7 @@ runCommand :: (PrintDotRepr dg n) => String -- ^ Command to run -> [String] -- ^ Command-line arguments- -> (Handle -> IO a) -- ^ Obtaining the output+ -> (Handle -> IO a) -- ^ Obtaining the output; should be strict. -> dg n -> IO a runCommand cmd args hf dg
Data/GraphViz/PreProcessing.hs view
@@ -5,7 +5,7 @@ License : 3-Clause BSD-style Maintainer : Ivan.Miljenovic@gmail.com - "Real life" Dot code contains various items that are not directly+ \"Real life\" Dot code contains various items that are not directly parseable by this library. This module defines the 'preProcess' function to remove these components, which include: @@ -16,8 +16,8 @@ * Split lines (by inserting a @\\@ the rest of that \"line\" is continued on the next line). - * 'String's concatenated together using @\"...\" + \"...\"@;- these are concatenated into one big 'String'.+ * 'Text's concatenated together using @\"...\" + \"...\"@; these+ are concatenated into one big 'Text'. -} module Data.GraphViz.PreProcessing(preProcess) where
Data/GraphViz/Printing.hs view
@@ -22,13 +22,16 @@ The Dot language specification specifies that any identifier is in one of four forms: - * Any string of alphabetic ([a-zA-Z\200-\377]) characters, underscores ('_') or digits ([0-9]), not beginning with a digit;+ * Any string of alphabetic ([a-zA-Z\\200-\\377]) characters,+ underscores ('_') or digits ([0-9]), not beginning with a+ digit; * a number [-]?(.[0-9]+ | [0-9]+(.[0-9]*)? ); - * any double-quoted string (\"...\") possibly containing escaped quotes (\\\");+ * any double-quoted string (\"...\") possibly containing+ escaped quotes (\\\"); - * an HTML string (<...>).+ * an HTML string (\<...\>). (Note that the first restriction is referring to a byte-by-byte comparison using octal values; when using UTF-8 this corresponds to
Data/GraphViz/Types/Canonical.hs view
@@ -37,7 +37,7 @@ > , color LightGray > , textLabel "process #1"] > , NodeAttrs [style filled, color White]]}- > , subGraphs = []+ > , subGraphs = [] > , nodeStmts = [ DotNode "a0" [] > , DotNode "a1" [] > , DotNode "a2" []
Data/GraphViz/Types/Graph.hs view
@@ -32,21 +32,21 @@ converting existing Dot graphs (via 'fromDotRepr'). However, one way of constructing the sample graph would be: -setID (Str "G")-. setStrictness False-. setIsDirected True-. setClusterAttributes (Int 0) [GraphAttrs [style filled, color LightGray, textLabel "process #1"], NodeAttrs [style filled, color White]]-. setClusterAttributes (Int 1) [ GraphAttrs [textLabel "process #2", color Blue], NodeAttrs [style filled]]-$ composeList [ Cntxt "a0" (Just $ Int 0) [] [("a3",[]),("start",[])] [("a1",[])]- , Cntxt "a1" (Just $ Int 0) [] [] [("a2",[]),("b3",[])]- , Cntxt "a2" (Just $ Int 0) [] [] [("a3",[])]- , Cntxt "a3" (Just $ Int 0) [] [("b2",[])] [("end",[])]- , Cntxt "b0" (Just $ Int 1) [] [("start",[])] [("b1",[])]- , Cntxt "b1" (Just $ Int 1) [] [] [("b2",[])]- , Cntxt "b2" (Just $ Int 1) [] [] [("b3",[])]- , Cntxt "b3" (Just $ Int 1) [] [] [("end",[])]- , Cntxt "end" Nothing [shape MSquare] [] []- , Cntxt "start" Nothing [shape MDiamond] [] []]+ > setID (Str "G")+ > . setStrictness False+ > . setIsDirected True+ > . setClusterAttributes (Int 0) [GraphAttrs [style filled, color LightGray, textLabel "process #1"], NodeAttrs [style filled, color White]]+ > . setClusterAttributes (Int 1) [ GraphAttrs [textLabel "process #2", color Blue], NodeAttrs [style filled]]+ > $ composeList [ Cntxt "a0" (Just $ Int 0) [] [("a3",[]),("start",[])] [("a1",[])]+ > , Cntxt "a1" (Just $ Int 0) [] [] [("a2",[]),("b3",[])]+ > , Cntxt "a2" (Just $ Int 0) [] [] [("a3",[])]+ > , Cntxt "a3" (Just $ Int 0) [] [("b2",[])] [("end",[])]+ > , Cntxt "b0" (Just $ Int 1) [] [("start",[])] [("b1",[])]+ > , Cntxt "b1" (Just $ Int 1) [] [] [("b2",[])]+ > , Cntxt "b2" (Just $ Int 1) [] [] [("b3",[])]+ > , Cntxt "b3" (Just $ Int 1) [] [] [("end",[])]+ > , Cntxt "end" Nothing [shape MSquare] [] []+ > , Cntxt "start" Nothing [shape MDiamond] [] []] -} module Data.GraphViz.Types.Graph@@ -593,13 +593,21 @@ -- | Convert a canonical Dot graph to a graph-based one. This assumes -- that the canonical graph is the same format as returned by--- 'toCanonical'. The \"unsafeness\" is that all nodes are assumed--- to be explicitly listed precisely once, and that only edges found--- in the root graph are considered. If this isn't the case, use--- 'fromCanonical' instead.+-- 'toCanonical'. The \"unsafeness\" is that: ----- The 'graphToDot' function from "Data.GraphViz" produces output--- suitable for this function.+-- * All clusters must have a unique identifier ('unAnonymise' can+-- be used to make sure all clusters /have/ an identifier, but it+-- doesn't ensure uniqueness).+--+-- * All nodes are assumed to be explicitly listed precisely once+--+-- * Only edges found in the root graph are considered.+--+-- If this isn't the case, use 'fromCanonical' instead.+--+-- The 'graphToDot' and 'graphElemsToDot' functions from+-- "Data.GraphViz" produces output suitable for this function+-- (assuming all clusters are provided with a unique identifier). unsafeFromCanonical :: (Ord n) => C.DotGraph n -> DotGraph n unsafeFromCanonical dg = DG { strictGraph = C.strictGraph dg , directedGraph = dirGraph
graphviz.cabal view
@@ -1,5 +1,5 @@ Name: graphviz-Version: 2999.12.0.2+Version: 2999.12.0.3 Stability: Beta Synopsis: Bindings to Graphviz for graph visualisation. Description: {