Mercurial > evolve
diff tests/test-tutorial.t @ 2950:1b4c92621e23
doc: integrate graphviz graphs in tutorials
Use the mercurial-graphviz extension
(https://bitbucket.org/octobus/mercurial_graphviz) in tutorials in order to
have some dot graphs in the tutorials .t files.
In order to run the tests, export the GRAPHVIZ_EXTENSION variable which points
to your copy of the extension. Please be aware that pygraphviz should be
installed in your environment.
That should be sufficient for generating dot graphs in text format.
Then generate the doc as usual, the sphinx-graphviz extension (http://www
.sphinx-doc.org/en/stable/ext/graphviz.html) has been added and it should
handle the generation of the graphs. Please be aware that you need the dot
binary installed in your system. Please refer to the extension documentation
for more configuration.
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Tue, 29 Aug 2017 16:42:40 +0200 |
parents | 06844693bb21 |
children | 2ddc63d13af8 |
line wrap: on
line diff
--- a/tests/test-tutorial.t Tue Sep 19 12:52:22 2017 +0200 +++ b/tests/test-tutorial.t Tue Aug 29 16:42:40 2017 +0200 @@ -65,6 +65,8 @@ > rebase = > EOF + $ . "$TESTDIR/testlib/graphviz_setup.sh" #ignore + ----------------------- Single Developer Usage ----------------------- @@ -125,6 +127,47 @@ | o 7e82d3f3c2cb (public): Monthy Python Shopping list + $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore + .. graphviz:: + + strict digraph { + graph [rankdir=LR, + splines=polyline + ]; + node [label="\N"]; + 0 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="0: 7e82d3f3c2cb", + pin=true, + pos="1,0!", + shape=circle, + style=filled, + width=2]; + 1 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="1: 4d5dc8187023", + pin=true, + pos="1,1!", + shape=pentagon, + style=filled, + width=2]; + 0 -> 1; + 2 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="2: d85de4546133", + pin=true, + pos="1,2!", + shape=pentagon, + style=filled, + width=2]; + 1 -> 2; + } But a typo was made in Babanas! @@ -159,6 +202,48 @@ o 7e82d3f3c2cb (public): Monthy Python Shopping list + $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore + .. graphviz:: + + strict digraph { + graph [rankdir=LR, + splines=polyline + ]; + node [label="\N"]; + 0 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="0: 7e82d3f3c2cb", + pin=true, + pos="1,0!", + shape=circle, + style=filled, + width=2]; + 1 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="1: 4d5dc8187023", + pin=true, + pos="1,1!", + shape=pentagon, + style=filled, + width=2]; + 0 -> 1; + 2 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="2: d85de4546133", + pin=true, + pos="1,2!", + shape=pentagon, + style=filled, + width=2]; + 1 -> 2; + } + Hopefully. I can use `hg commit --amend` to rewrite my faulty changeset! $ sed -i'' -e s/Bananos/Banana/ shopping @@ -185,6 +270,48 @@ | o 7e82d3f3c2cb (public): Monthy Python Shopping list + $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore + .. graphviz:: + + strict digraph { + graph [rankdir=LR, + splines=polyline + ]; + node [label="\N"]; + 0 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="0: 7e82d3f3c2cb", + pin=true, + pos="1,0!", + shape=circle, + style=filled, + width=2]; + 1 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="1: 4d5dc8187023", + pin=true, + pos="1,1!", + shape=pentagon, + style=filled, + width=2]; + 0 -> 1; + 4 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="4: 9d0363b81950", + pin=true, + pos="1,4!", + shape=pentagon, + style=filled, + width=2]; + 1 -> 4; + } + $ hg export tip # HG changeset patch # User test @@ -239,6 +366,59 @@ o 7e82d3f3c2cb (public): Monthy Python Shopping list + $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore + .. graphviz:: + + strict digraph { + graph [rankdir=LR, + splines=polyline + ]; + node [label="\N"]; + 0 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="0: 7e82d3f3c2cb", + pin=true, + pos="1,0!", + shape=circle, + style=filled, + width=2]; + 1 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="1: 4d5dc8187023", + pin=true, + pos="1,1!", + shape=pentagon, + style=filled, + width=2]; + 0 -> 1; + 5 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="5: 9ca060c80d74", + pin=true, + pos="1,5!", + shape=circle, + style=filled, + width=2]; + 0 -> 5; + 4 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="4: 9d0363b81950", + pin=true, + pos="1,4!", + shape=pentagon, + style=filled, + width=2]; + 1 -> 4; + } + Instead of merging my head with the new one. I'm going to rebase my work $ hg diff @@ -260,6 +440,58 @@ | o 7e82d3f3c2cb (public): Monthy Python Shopping list + $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore + .. graphviz:: + + strict digraph { + graph [rankdir=LR, + splines=polyline + ]; + node [label="\N"]; + 0 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="0: 7e82d3f3c2cb", + pin=true, + pos="1,0!", + shape=circle, + style=filled, + width=2]; + 5 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="5: 9ca060c80d74", + pin=true, + pos="1,5!", + shape=circle, + style=filled, + width=2]; + 0 -> 5; + 6 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="6: dfd3a2d7691e", + pin=true, + pos="1,6!", + shape=pentagon, + style=filled, + width=2]; + 5 -> 6; + 7 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="7: 41aff6a42b75", + pin=true, + pos="1,7!", + shape=pentagon, + style=filled, + width=2]; + 6 -> 7; + } Removing changesets ------------------------ @@ -305,6 +537,59 @@ o 7e82d3f3c2cb (public): Monthy Python Shopping list + $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore + .. graphviz:: + + strict digraph { + graph [rankdir=LR, + splines=polyline + ]; + node [label="\N"]; + 0 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="0: 7e82d3f3c2cb", + pin=true, + pos="1,0!", + shape=circle, + style=filled, + width=2]; + 5 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="5: 9ca060c80d74", + pin=true, + pos="1,5!", + shape=circle, + style=filled, + width=2]; + 0 -> 5; + 6 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="6: dfd3a2d7691e", + pin=true, + pos="1,6!", + shape=pentagon, + style=filled, + width=2]; + 5 -> 6; + 7 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="7: 41aff6a42b75", + pin=true, + pos="1,7!", + shape=pentagon, + style=filled, + width=2]; + 6 -> 7; + } + Reordering changesets ------------------------ @@ -367,6 +652,81 @@ o 7e82d3f3c2cb (public): Monthy Python Shopping list + $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore + .. graphviz:: + + strict digraph { + graph [rankdir=LR, + splines=polyline + ]; + node [label="\N"]; + 0 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="0: 7e82d3f3c2cb", + pin=true, + pos="1,0!", + shape=circle, + style=filled, + width=2]; + 5 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="5: 9ca060c80d74", + pin=true, + pos="1,5!", + shape=circle, + style=filled, + width=2]; + 0 -> 5; + 6 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="6: dfd3a2d7691e", + pin=true, + pos="1,6!", + shape=pentagon, + style=filled, + width=2]; + 5 -> 6; + 7 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="7: 41aff6a42b75", + pin=true, + pos="1,7!", + shape=pentagon, + style=filled, + width=2]; + 6 -> 7; + 9 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="9: 10b8aeaa8cc8", + pin=true, + pos="1,9!", + shape=pentagon, + style=filled, + width=2]; + 7 -> 9; + 11 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="11: a224f2a4fb9f", + pin=true, + pos="1,11!", + shape=pentagon, + style=filled, + width=2]; + 7 -> 11; + } + We have a new SPAM SPAM version without the bathroom stuff $ grep Spam shopping # enough spam @@ -429,7 +789,80 @@ o 7e82d3f3c2cb (public): Monthy Python Shopping list - + $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore + .. graphviz:: + + strict digraph { + graph [rankdir=LR, + splines=polyline + ]; + node [label="\N"]; + 0 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="0: 7e82d3f3c2cb", + pin=true, + pos="1,0!", + shape=circle, + style=filled, + width=2]; + 5 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="5: 9ca060c80d74", + pin=true, + pos="1,5!", + shape=circle, + style=filled, + width=2]; + 0 -> 5; + 6 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="6: dfd3a2d7691e", + pin=true, + pos="1,6!", + shape=circle, + style=filled, + width=2]; + 5 -> 6; + 7 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="7: 41aff6a42b75", + pin=true, + pos="1,7!", + shape=circle, + style=filled, + width=2]; + 6 -> 7; + 11 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="11: a224f2a4fb9f", + pin=true, + pos="1,11!", + shape=circle, + style=filled, + width=2]; + 7 -> 11; + 12 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="12: 75954b8cd933", + pin=true, + pos="1,12!", + shape=pentagon, + style=filled, + width=2]; + 11 -> 12; + } Splitting change ------------------ @@ -640,6 +1073,81 @@ o 7e82d3f3c2cb (public): Monthy Python Shopping list + $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore + .. graphviz:: + + strict digraph { + graph [rankdir=LR, + splines=polyline + ]; + node [label="\N"]; + 0 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="0: 7e82d3f3c2cb", + pin=true, + pos="1,0!", + shape=circle, + style=filled, + width=2]; + 5 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="5: 9ca060c80d74", + pin=true, + pos="1,5!", + shape=circle, + style=filled, + width=2]; + 0 -> 5; + 6 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="6: dfd3a2d7691e", + pin=true, + pos="1,6!", + shape=circle, + style=filled, + width=2]; + 5 -> 6; + 7 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="7: 41aff6a42b75", + pin=true, + pos="1,7!", + shape=circle, + style=filled, + width=2]; + 6 -> 7; + 11 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="11: a224f2a4fb9f", + pin=true, + pos="1,11!", + shape=circle, + style=filled, + width=2]; + 7 -> 11; + 14 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="14: a44c85f957d3", + pin=true, + pos="1,14!", + shape=pentagon, + style=filled, + width=2]; + 11 -> 14; + } + When we pull from remote again we get an unstable state! $ hg pull remote @@ -674,6 +1182,107 @@ o 7e82d3f3c2cb (public): Monthy Python Shopping list + $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore + .. graphviz:: + + strict digraph { + graph [rankdir=LR, + splines=polyline + ]; + node [label="\N"]; + 0 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="0: 7e82d3f3c2cb", + pin=true, + pos="1,0!", + shape=circle, + style=filled, + width=2]; + 5 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="5: 9ca060c80d74", + pin=true, + pos="1,5!", + shape=circle, + style=filled, + width=2]; + 0 -> 5; + 6 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="6: dfd3a2d7691e", + pin=true, + pos="1,6!", + shape=circle, + style=filled, + width=2]; + 5 -> 6; + 7 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="7: 41aff6a42b75", + pin=true, + pos="1,7!", + shape=circle, + style=filled, + width=2]; + 6 -> 7; + 11 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="11: a224f2a4fb9f", + pin=true, + pos="1,11!", + shape=circle, + style=filled, + width=2]; + 7 -> 11; + 12 [fillcolor="#DFDFFF", + fixedsize=true, + group=default_alt, + height=2, + label="12: 75954b8cd933", + pin=true, + pos="2,12!", + shape=pentagon, + style="dotted, filled", + width=2]; + 11 -> 12; + 14 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="14: a44c85f957d3", + pin=true, + pos="1,14!", + shape=pentagon, + style=filled, + width=2]; + 11 -> 14; + 12 -> 14 [arrowtail=dot, + dir=back, + minlen=0, + style=dotted]; + 15 [fillcolor="#FF3535", + fixedsize=true, + group=default_alt, + height=2, + label="15: bf1b0d202029", + pin=true, + pos="2,15!", + shape=pentagon, + style=filled, + width=2]; + 12 -> 15; + } + The older version 75954b8cd933 never ceased to exist in the local repo. It was just hidden and excluded from pull and push. @@ -726,6 +1335,92 @@ o 7e82d3f3c2cb (public): Monthy Python Shopping list + $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore + .. graphviz:: + + strict digraph { + graph [rankdir=LR, + splines=polyline + ]; + node [label="\N"]; + 0 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="0: 7e82d3f3c2cb", + pin=true, + pos="1,0!", + shape=circle, + style=filled, + width=2]; + 5 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="5: 9ca060c80d74", + pin=true, + pos="1,5!", + shape=circle, + style=filled, + width=2]; + 0 -> 5; + 6 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="6: dfd3a2d7691e", + pin=true, + pos="1,6!", + shape=circle, + style=filled, + width=2]; + 5 -> 6; + 7 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="7: 41aff6a42b75", + pin=true, + pos="1,7!", + shape=circle, + style=filled, + width=2]; + 6 -> 7; + 11 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="11: a224f2a4fb9f", + pin=true, + pos="1,11!", + shape=circle, + style=filled, + width=2]; + 7 -> 11; + 14 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="14: a44c85f957d3", + pin=true, + pos="1,14!", + shape=pentagon, + style=filled, + width=2]; + 11 -> 14; + 16 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="16: ee942144f952", + pin=true, + pos="1,16!", + shape=pentagon, + style=filled, + width=2]; + 14 -> 16; + } + We can push this evolution to remote. $ hg push remote @@ -797,6 +1492,103 @@ o 7e82d3f3c2cb (public): Monthy Python Shopping list + $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore + .. graphviz:: + + strict digraph { + graph [rankdir=LR, + splines=polyline + ]; + node [label="\N"]; + 0 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="0: 7e82d3f3c2cb", + pin=true, + pos="1,0!", + shape=circle, + style=filled, + width=2]; + 5 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="5: 9ca060c80d74", + pin=true, + pos="1,5!", + shape=circle, + style=filled, + width=2]; + 0 -> 5; + 6 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="6: dfd3a2d7691e", + pin=true, + pos="1,6!", + shape=circle, + style=filled, + width=2]; + 5 -> 6; + 7 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="7: 41aff6a42b75", + pin=true, + pos="1,7!", + shape=circle, + style=filled, + width=2]; + 6 -> 7; + 11 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="11: a224f2a4fb9f", + pin=true, + pos="1,11!", + shape=circle, + style=filled, + width=2]; + 7 -> 11; + 14 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="14: a44c85f957d3", + pin=true, + pos="1,14!", + shape=pentagon, + style=filled, + width=2]; + 11 -> 14; + 16 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="16: ee942144f952", + pin=true, + pos="1,16!", + shape=pentagon, + style=filled, + width=2]; + 14 -> 16; + 17 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="17: 99f039c5ec9e", + pin=true, + pos="1,17!", + shape=pentagon, + style=filled, + width=2]; + 16 -> 17; + } + In the mean time I noticed you can't buy animals in a super market and I prune the animal changeset: $ hg prune ee942144f952 @@ -826,9 +1618,127 @@ | o 7e82d3f3c2cb (public): Monthy Python Shopping list + + $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore + .. graphviz:: + + strict digraph { + graph [rankdir=LR, + splines=polyline + ]; + node [label="\N"]; + 0 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="0: 7e82d3f3c2cb", + pin=true, + pos="1,0!", + shape=circle, + style=filled, + width=2]; + 5 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="5: 9ca060c80d74", + pin=true, + pos="1,5!", + shape=circle, + style=filled, + width=2]; + 0 -> 5; + 6 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="6: dfd3a2d7691e", + pin=true, + pos="1,6!", + shape=circle, + style=filled, + width=2]; + 5 -> 6; + 7 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="7: 41aff6a42b75", + pin=true, + pos="1,7!", + shape=circle, + style=filled, + width=2]; + 6 -> 7; + 11 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="11: a224f2a4fb9f", + pin=true, + pos="1,11!", + shape=circle, + style=filled, + width=2]; + 7 -> 11; + 14 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="14: a44c85f957d3", + pin=true, + pos="1,14!", + shape=pentagon, + style=filled, + width=2]; + 11 -> 14; + 16 [fillcolor="#DFDFFF", + fixedsize=true, + group=default_alt, + height=2, + label="16: ee942144f952", + pin=true, + pos="2,16!", + shape=pentagon, + style="dotted, filled", + width=2]; + 14 -> 16; + 17 [fillcolor="#FF3535", + fixedsize=true, + group=default_alt, + height=2, + label="17: 99f039c5ec9e", + pin=true, + pos="2,17!", + shape=pentagon, + style=filled, + width=2]; + 16 -> 17; + } + $ hg log -r "orphan()" 99f039c5ec9e (draft): SPAM SPAM SPAM + $ hg graphviz -r "orphan()" --sphinx-directive --rankdir LR #ignore + .. graphviz:: + + strict digraph { + graph [rankdir=LR, + splines=polyline + ]; + node [label="\N"]; + 17 [fillcolor="#FF3535", + fixedsize=true, + group=default_alt, + height=2, + label="17: 99f039c5ec9e", + pin=true, + pos="1,17!", + shape=pentagon, + style=filled, + width=2]; + } + $ hg evolve move:[15] SPAM SPAM SPAM atop:[12] bathroom stuff @@ -850,6 +1760,93 @@ | o 7e82d3f3c2cb (public): Monthy Python Shopping list + + $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore + .. graphviz:: + + strict digraph { + graph [rankdir=LR, + splines=polyline + ]; + node [label="\N"]; + 0 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="0: 7e82d3f3c2cb", + pin=true, + pos="1,0!", + shape=circle, + style=filled, + width=2]; + 5 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="5: 9ca060c80d74", + pin=true, + pos="1,5!", + shape=circle, + style=filled, + width=2]; + 0 -> 5; + 6 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="6: dfd3a2d7691e", + pin=true, + pos="1,6!", + shape=circle, + style=filled, + width=2]; + 5 -> 6; + 7 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="7: 41aff6a42b75", + pin=true, + pos="1,7!", + shape=circle, + style=filled, + width=2]; + 6 -> 7; + 11 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="11: a224f2a4fb9f", + pin=true, + pos="1,11!", + shape=circle, + style=filled, + width=2]; + 7 -> 11; + 14 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="14: a44c85f957d3", + pin=true, + pos="1,14!", + shape=pentagon, + style=filled, + width=2]; + 11 -> 14; + 18 [fillcolor="#7F7FFF", + fixedsize=true, + group=default, + height=2, + label="18: 40aa40daeefb", + pin=true, + pos="1,18!", + shape=pentagon, + style=filled, + width=2]; + 14 -> 18; + } + Handling Divergent amend ----------------------------------------------