Refactors allpaths to print an adjacency list from "from" to "to", instead of
just the nodes. This allows other tools like modgraphviz to print the subgraph.
For example, the following command:
cd $GOPATH/src/cloud.google.com/go && \
go mod graph | \
digraph allpaths cloud.google.com/go golang.org/x/text@v0.3.2 | \
modgraphviz | \
dot -Tpng -o graph.png
Generates the following graph.png: https://user-images.githubusercontent.com/3584893/60481727-df0a8680-9c4b-11e9-8df9-c581d599edd1.png
Also splits out the allpaths tests into their own test, and adds many test
cases.
This is a breaking change. The previous behavior returned vertices; now it
returns edges. If you relied on the previous behavior, use:
my-application | digraph allpaths <from> <to> | digraph nodes
Change-Id: I2eb7c377f5fe1e1e90c5b74eaa78d5211192bb2a
Reviewed-on: https://go-review.googlesource.com/c/tools/+/184337
Reviewed-by: Alan Donovan <adonovan@google.com>