[orchestra] extract graph logic and enhance with cycle detection + coloring (#5614)

* extract graph

* move into scope

* remove dead code

* add special nodes

* avoid some clones

* better doc

* maybe better to use 

* print all cycles, or an error

Currently kosaraju_scc returns invalid cycles, which is yet to be investigated.

* don't print tiny cycles, if there is nothing to unvisited anymore, there is a cycle

* make print better

* fmt ffs

* correct: cycle -> scc

A strongly connected cluster contains at least one cycl, but could include more.
So this should be distringuished in the implementation to avoid some confusion.

* fix loop exit condition

* add a test for kosaraju behavior

* unify on 'component'

* disable graph by default

https://github.com/paritytech/ci_cd/issues/433

* chore: fmt

* move graph only to graph_helpers
This commit is contained in:
Bernhard Schuster
2022-06-06 17:35:31 +01:00
committed by GitHub
parent 425b277273
commit 753d6f29e0
5 changed files with 443 additions and 65 deletions
+1
View File
@@ -4830,6 +4830,7 @@ version = "0.0.1"
dependencies = [
"assert_matches",
"expander 0.0.6",
"itertools",
"orchestra",
"petgraph",
"proc-macro-crate",