For example, given a package A
that depends on package B
and package C
, where package C
also depends on package D
- is there a way to output this information? (Using a vendoring tool or otherwise)
The vendor.yaml
output by govend
doesn't include transitive dependency information - neither does the Gopkg.toml
file
output by dep
, from what I can see. The go.mod
file produced by Golang 1.11's mod and does annotate some dependencies as // indirect
- but it does not annotate dependencies with any information about which dependency they were pulled in via.
go mod graph
orgo mod why
(seego mod help graph
andgo mod help why
) may be of use. The former can be piped throughdigraph
to answer some more specific questions about the graph. It would also be fairly easy to filter thego mod graph
output into a form that could be piped intodot
to produce an image. – Wahoo