// diamond = library
// black line = dependency
// blue line = extension via plugin
+// red line = possibly useful
// dashed = in planning
+// this is what we have...o
digraph dependencies {
splines = true;
+
voting [shape=house];
voting -> consensus;
- voting -> stream;
+ voting -> identity;
+ voting -> cadet;
+ voting -> secretsharing;
+ secretsharing -> consensus;
+
fs [shape=house];
fs -> dht;
fs -> core;
fs -> datastore;
- fs -> stream;
+ fs -> cadet;
fs -> ats;
fs -> block [style=dotted,color=blue];
- exit -> mesh;
+ fs -> identity;
+ exit [shape=box];
+ exit -> cadet;
exit -> tun;
- vpn -> mesh;
+ exit -> dnsstub;
+ vpn -> cadet;
+ vpn -> regex;
vpn -> tun;
pt [shape=house];
- pt -> mesh;
+ pt -> cadet;
pt -> vpn;
pt -> dns;
+ pt -> dnsparser;
dv -> ats;
- dns -> mesh;
dns -> tun;
- gns [shape=house];
- gns -> namestore;
+ dns -> dnsstub;
+ zonemaster [shape=house];
+ zonemaster -> namestore;
+ zonemaster -> dht;
gns -> dns;
gns -> dht;
gns -> block [style=dotted,color=blue];
-// psycd [style=dashed,shape=house];
-// psycd -> mesh [style=dashed];
- stream [shape=diamond];
- stream -> mesh;
- stream -> lockmanager;
+ gns -> revocation;
+ gns -> vpn;
+ gns -> dnsparser;
+ gns -> dnsstub;
+ gns -> identity;
+ revocation -> core;
+ revocation -> set;
+ namestore -> identity;
+ namestore -> gnsrecord;
+ dnsparser -> gnsrecord [style=dotted,color=blue];
+ conversation -> gnsrecord [style=dotted,color=blue];
+ gns -> gnsrecord [style=dotted,color=blue];
dht -> core;
dht -> nse;
dht -> block;
dht -> datacache;
-// dht -> ats [style=dashed];
+ dht -> peerinfo;
+ dht -> hello;
nse -> core;
regex -> block [style=dotted,color=blue];
block [shape=diamond];
datacache [shape=diamond];
- mesh -> core [weight=2];
- mesh -> dht;
- mesh -> regex;
- mesh -> block [style=dotted,color=blue];
-// mesh -> ats [style=dashed];
- regex [shape=diamond];
+ cadet -> core [weight=2];
+ cadet -> dht;
+ cadet -> block [style=dotted,color=blue];
+ conversation [shape=house];
+ conversation -> cadet;
+ conversation -> gns;
+ conversation -> identity;
+ conversation -> speaker;
+ conversation -> microphone;
+ speaker [shape=diamond];
+ microphone [shape=diamond];
regex -> dht;
core -> transport;
- core -> peerinfo;
topology [shape=box];
+ topology -> peerinfo;
topology -> transport;
topology -> core;
topology -> hello;
hostlist -> peerinfo;
hostlist -> hello;
transport -> ats;
- transport -> hello;
+ transport -> hello;
transport -> peerinfo;
transport -> nat;
transport -> fragmentation;
dv [shape=egg];
dv -> transport [color=blue,style=dotted];
dv -> core;
- dv -> consensus;
- consensus -> mesh;
+ dv -> set;
+ consensus -> set;
+ consensus -> cadet;
+ scalarproduct -> set;
+ scalarproduct -> cadet;
+ set -> cadet;
peerinfo -> hello;
fragmentation [shape=diamond];
hello [shape=diamond];
nat [shape=diamond];
tun [shape=diamond];
+ dnsparser [shape=diamond];
+ dnsstub [shape=diamond];
+ secushare [shape=house,style=dashed];
+ multicast [style=dashed];
+ psyc [style=dashed];
+ social -> psyc [style=dashed];
+ social -> gns [style=dashed];
+ psyc -> psycstore [style=dashed];
+ psycstore;
+ social [style=dashed];
+ secushare -> social [style=dashed];
+ secushare -> identity [style=dashed];
+ psyc -> multicast [style=dashed];
+ multicast -> cadet [style=dashed];
+ reuters [shape=house,style=dashed];
+ reuters -> scalarproduct [style=dashed];
+
+ rps [style=dashed];
+ topology -> rps [style=dashed];
+ rps -> core [style=dashed];
}
+
+
+// this is what we have, excluding libs and stores
+digraph dependencies_no_libs {
+splines = true;
+
+ voting [shape=house];
+ voting -> consensus;
+ voting -> identity;
+ voting -> cadet;
+ voting -> secretsharing;
+ secretsharing -> consensus;
+
+ fs [shape=house];
+ fs -> dht;
+ fs -> core;
+ fs -> cadet;
+ fs -> ats;
+ fs -> identity;
+ exit [shape=box];
+ exit -> cadet;
+ vpn -> cadet;
+ vpn -> regex;
+ pt [shape=house];
+ pt -> cadet;
+ pt -> vpn;
+ pt -> dns;
+ dv -> ats;
+ gns [shape=house];
+ gns -> dns;
+ gns -> dht;
+ gns -> revocation;
+ gns -> vpn;
+ gns -> identity;
+ revocation -> core;
+ revocation -> set;
+ dht -> core;
+ dht -> nse;
+ nse -> core;
+ cadet -> core [weight=2];
+ cadet -> dht;
+ conversation [shape=house];
+ conversation -> cadet;
+ conversation -> gns;
+ conversation -> identity;
+ regex -> dht;
+ core -> transport;
+ topology [shape=box];
+ topology -> transport;
+ topology -> core;
+ hostlist [shape=box];
+ hostlist -> core;
+ transport -> ats;
+ dv [shape=egg];
+ dv -> transport [color=blue,style=dotted];
+ dv -> core;
+ dv -> set;
+ consensus -> set;
+ consensus -> cadet;
+ scalarproduct -> set;
+ scalarproduct -> cadet;
+ set -> cadet;
+
+
+ secushare [shape=house,style=dashed];
+ multicast [style=dashed];
+ psyc [style=dashed];
+ social -> psyc [style=dashed];
+ social -> gns [style=dashed];
+ social [style=dashed];
+ secushare -> social [style=dashed];
+ secushare -> identity [style=dashed];
+ psyc -> multicast [style=dashed];
+ multicast -> cadet [style=dashed];
+
+ reuters [shape=house,style=dashed];
+ reuters -> scalarproduct [style=dashed];
+
+ rps [style=dashed];
+ topology -> rps [style=dashed];
+ rps -> core [style=dashed];
+}
+
+
+// this is what we have, excluding and details
+digraph dependencies_no_details {
+splines = true;
+
+ voting [shape=house];
+ voting -> consensus;
+ voting -> cadet;
+ voting -> secretsharing;
+ secretsharing -> consensus;
+
+ fs [shape=house];
+ fs -> dht;
+ fs -> core;
+ fs -> cadet;
+ vpn -> cadet;
+ vpn -> dht;
+ pt [shape=house];
+ pt -> cadet;
+ pt -> vpn;
+ gns [shape=house];
+ gns -> dht;
+ gns -> revocation;
+ gns -> vpn;
+ revocation -> core;
+ revocation -> set;
+ dht -> core;
+ dht -> nse;
+ nse -> core;
+ cadet -> core [weight=2];
+ cadet -> dht;
+ conversation [shape=house];
+ conversation -> cadet;
+ conversation -> gns;
+ core -> transport;
+ consensus -> set;
+ consensus -> cadet;
+ scalarproduct -> set;
+ scalarproduct -> cadet;
+ set -> cadet;
+
+
+ secushare [shape=house,style=dashed];
+ multicast [style=dashed];
+ psyc [style=dashed];
+ social -> psyc [style=dashed];
+ social -> gns [style=dashed];
+ social [style=dashed];
+ secushare -> social [style=dashed];
+ psyc -> multicast [style=dashed];
+ multicast -> cadet [style=dashed];
+
+ reuters [shape=house,style=dashed];
+ reuters -> scalarproduct [style=dashed];
+}
+
+