Skip to content

Instantly share code, notes, and snippets.

@aaronc
Last active May 10, 2022 23:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save aaronc/6880ed1bb0ce4cefc359569a045b806d to your computer and use it in GitHub Desktop.
Save aaronc/6880ed1bb0ce4cefc359569a045b806d to your computer and use it in GitHub Desktop.
good container graphviz output
digraph "" {
graph [bb="0,0,1990.1,405.6"];
node [color=black,
label="\N",
shape=ellipse
];
subgraph cluster_b {
graph [bb="1075.8,136,1473.8,212.8",
label="Module: b",
lheight=0.23,
lp="1274.8,200.4",
lwidth=0.80
];
"github.com/cosmos/cosmos-sdk/container_test.ModuleB.Provide" [height=0.5,
pos="1274.8,162",
shape=box,
width=5.2932];
}
subgraph cluster_a {
graph [bb="546.8,136,944.8,212.8",
label="Module: a",
lheight=0.23,
lp="745.8,200.4",
lwidth=0.79
];
"github.com/cosmos/cosmos-sdk/container_test.ModuleA.Provide" [color=lightgrey,
height=0.5,
pos="745.8,162",
shape=box,
width=5.3039];
}
subgraph cluster_runtime {
graph [bb="811.8,284.8,1225.8,361.6",
label="Module: runtime",
lheight=0.23,
lp="1018.8,349.2",
lwidth=1.31
];
"github.com/cosmos/cosmos-sdk/container_test.ProvideKVStoreKey" [height=0.5,
pos="1018.8,310.8",
shape=box,
width=5.5251];
}
"github.com/cosmos/cosmos-sdk/container_test.ProvideMsgClientA" [height=0.5,
pos="1477.8,310.8",
shape=box,
width=5.4715];
"github.com/cosmos/cosmos-sdk/container_test.MsgClientA" [height=0.5,
pos="1513.8,238.8",
width=6.7138];
"github.com/cosmos/cosmos-sdk/container_test.ProvideMsgClientA" -> "github.com/cosmos/cosmos-sdk/container_test.MsgClientA" [pos="e,1504.6,257.21 1486.9,292.63 1490.9,284.68 1495.6,275.17 1500,266.37"];
"github.com/cosmos/cosmos-sdk/container.ModuleKey" [height=0.5,
pos="1247.8,387.6",
width=6.1622];
"github.com/cosmos/cosmos-sdk/container.ModuleKey" -> "github.com/cosmos/cosmos-sdk/container_test.ProvideMsgClientA" [pos="e,1423.5,328.92 1300.3,370.08 1334,358.83 1377.9,344.14 1413.7,332.2"];
"github.com/cosmos/cosmos-sdk/container.ModuleKey" -> "github.com/cosmos/cosmos-sdk/container_test.ProvideKVStoreKey" [pos="e,1072.8,328.92 1195.5,370.08 1162,358.83 1118.2,344.14 1082.6,332.2"];
"github.com/cosmos/cosmos-sdk/container_test.MsgClientA" -> "github.com/cosmos/cosmos-sdk/container_test.ModuleB.Provide" [pos="e,1331,180.07 1459,221.18 1423.8,209.88 1377.9,195.14 1340.8,183.2"];
"github.com/cosmos/cosmos-sdk/container_test.KVStoreKey" [height=0.5,
pos="1009.8,238.8",
width=6.7879];
"github.com/cosmos/cosmos-sdk/container_test.ProvideKVStoreKey" -> "github.com/cosmos/cosmos-sdk/container_test.KVStoreKey" [pos="e,1012.1,257.21 1016.5,292.63 1015.6,284.93 1014.4,275.77 1013.3,267.22"];
"github.com/cosmos/cosmos-sdk/container_test.KVStoreKey" -> "github.com/cosmos/cosmos-sdk/container_test.ModuleA.Provide" [pos="e,808.07,180.12 949.56,221.28 910.4,209.88 859.12,194.97 817.8,182.95"];
"github.com/cosmos/cosmos-sdk/container_test.KVStoreKey" -> "github.com/cosmos/cosmos-sdk/container_test.ModuleB.Provide" [pos="e,1212.3,180.12 1070.3,221.28 1109.6,209.88 1161,194.97 1202.5,182.95"];
"github.com/cosmos/cosmos-sdk/container_test.KeeperA" [color=lightgrey,
height=0.5,
pos="228.8,90",
width=6.3555];
"github.com/cosmos/cosmos-sdk/container_test.ModuleA.Provide" -> "github.com/cosmos/cosmos-sdk/container_test.KeeperA" [pos="e,341.66,105.72 616.34,143.97 535.31,132.69 431.53,118.23 351.76,107.12"];
"map[string]github.com/cosmos/cosmos-sdk/container_test.Handler" [color=lightgrey,
comment="one-per-module",
height=0.5,
pos="745.8,90",
width=7.5029];
"github.com/cosmos/cosmos-sdk/container_test.ModuleA.Provide" -> "map[string]github.com/cosmos/cosmos-sdk/container_test.Handler" [pos="e,745.8,108.41 745.8,143.83 745.8,136.13 745.8,126.97 745.8,118.42"];
"[]github.com/cosmos/cosmos-sdk/container_test.Command" [color=lightgrey,
comment="auto-group",
height=0.5,
pos="1274.8,90",
width=6.6838];
"github.com/cosmos/cosmos-sdk/container_test.ModuleA.Provide" -> "[]github.com/cosmos/cosmos-sdk/container_test.Command" [pos="e,1158.9,105.78 878.26,143.97 961.03,132.71 1067,118.28 1148.6,107.18"];
"github.com/cosmos/cosmos-sdk/container.OwnModuleKey" [color=lightgrey,
height=0.5,
pos="506.8,238.8",
width=6.6836];
"github.com/cosmos/cosmos-sdk/container.OwnModuleKey" -> "github.com/cosmos/cosmos-sdk/container_test.ModuleA.Provide" [pos="e,689.56,180.07 561.63,221.18 596.8,209.88 642.66,195.14 679.82,183.2"];
"github.com/cosmos/cosmos-sdk/container_test.ModuleB.Provide" -> "map[string]github.com/cosmos/cosmos-sdk/container_test.Handler" [pos="e,864.81,106.2 1142.3,143.97 1060.6,132.85 956.23,118.64 875.09,107.6"];
"github.com/cosmos/cosmos-sdk/container_test.ModuleB.Provide" -> "[]github.com/cosmos/cosmos-sdk/container_test.Command" [pos="e,1274.8,108.41 1274.8,143.83 1274.8,136.13 1274.8,126.97 1274.8,118.42"];
"github.com/cosmos/cosmos-sdk/container_test.KeeperB" [height=0.5,
pos="1761.8,90",
width=6.3407];
"github.com/cosmos/cosmos-sdk/container_test.ModuleB.Provide" -> "github.com/cosmos/cosmos-sdk/container_test.KeeperB" [pos="e,1654.3,105.9 1396.7,143.97 1472.5,132.77 1569.4,118.44 1644.3,107.37"];
"github.com/cosmos/cosmos-sdk/container_test.TestLogging" [height=0.5,
pos="1761.8,18",
shape=box,
width=4.8989];
"github.com/cosmos/cosmos-sdk/container_test.KeeperB" -> "github.com/cosmos/cosmos-sdk/container_test.TestLogging" [pos="e,1761.8,36.413 1761.8,71.831 1761.8,64.131 1761.8,54.974 1761.8,46.417"];
}
digraph {
subgraph s7 {
label="Module: a";
n8[color="lightgrey",label="github.com/cosmos/cosmos-sdk/container_test.ModuleA.Provide",shape="box"];
}
subgraph s13 {
label="Module: b";
n14[color="black",label="github.com/cosmos/cosmos-sdk/container_test.ModuleB.Provide",shape="box"];
n17[color="black",label="github.com/cosmos/cosmos-sdk/container_test.ProvideKVStoreKey",shape="box"];
}
subgraph s4 {
label="Module: runtime";
n5[color="lightgrey",label="github.com/cosmos/cosmos-sdk/container_test.ProvideKVStoreKey",shape="box"];
}
n12[color="lightgrey",comment="auto-group",label="[]github.com/cosmos/cosmos-sdk/container_test.Command"];
n2[color="black",label="github.com/cosmos/cosmos-sdk/container.ModuleKey"];
n9[color="lightgrey",label="github.com/cosmos/cosmos-sdk/container.OwnModuleKey"];
n6[color="black",label="github.com/cosmos/cosmos-sdk/container_test.KVStoreKey"];
n10[color="lightgrey",label="github.com/cosmos/cosmos-sdk/container_test.KeeperA"];
n15[color="black",label="github.com/cosmos/cosmos-sdk/container_test.KeeperB"];
n3[color="black",label="github.com/cosmos/cosmos-sdk/container_test.MsgClientA"];
n1[color="black",label="github.com/cosmos/cosmos-sdk/container_test.ProvideMsgClientA",shape="box"];
n16[color="black",label="github.com/cosmos/cosmos-sdk/container_test.TestLogging",shape="box"];
n11[color="lightgrey",comment="one-per-module",label="map[string]github.com/cosmos/cosmos-sdk/container_test.Handler"];
n2->n1;
n2->n5;
n9->n8;
n6->n8;
n6->n14;
n15->n16;
n8->n10;
n8->n11;
n8->n12;
n14->n15;
n14->n12;
n14->n11;
n3->n14;
n5->n6;
n1->n3;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment