GOPHIAN-ES...TE-GRAPHVIZ(1)

πŸ“¦
version 0.7.0 Β· 2 versions
, in ubuntu resolute, ubuntu stonking

πŸ’– GOPHIAN-ESTIMATE-GRAPHVIZ πŸ’–

okay bestie, gather round, because this one is literally the cutest little tree-maker in the whole gophian family πŸŽ€ it lives in the General Commands Manual section (section 1, for the uninitiated) and its whole entire job is: draw you a picture of your Go package's dependency drama.


✨ NAME ✨

gophian-estimate-graphviz β€” visualize the dependency tree of a given Go package 🌳


🌸 SYNOPSIS 🌸

gophian estimate-graphviz <IMPORTPATH> [SOURCE_OUTPUT] [OPTIONS]

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so first thing, and I need you to hear me on this: this subcommand is only available when python3-graphviz is installed πŸ’… no graphviz, no vibes, no tree. that's the rule.

When it is installed though?? iconic. This subcommand recursively finds all the dependencies of a given package and checks if they're packaged in Debian, and then it produces a dependency tree using Graphviz that shows you which dependencies are available as Debian packages and which ones are not. 🫢

Why do you care? Because for large or complex dependency graphs, a Graphviz tree is so much better depicted than any flat list β€” it's giving main character energy for real, the graph just shows you the shape of your problems instead of making you squint at text. 😭

So here's the deal on the output: a source Graphviz file gets written to SOURCE_OUTPUT, and β€” unless you pass --no-render β€” a rendered PDF gets written in the same directory as the source file, with the same basename, but with the .pdf output. so like, same name, different outfit. periodt. πŸ’–


πŸŽ€ ARGUMENTS πŸŽ€

  • IMPORTPATH β€” the import path of the Go package you're estimating. this is the whole point of the thing, bestie, you gotta give it a package.
  • SOURCE_OUTPUT β€” output path of the source Graphviz code. by default, this is the Debianized version of the import path, e.g. golang-github-dsnet-compress.gv. so you don't even have to name it if you don't want to, it'll just do it for you. ✨

πŸ’… OPTIONS πŸ’…

  • --[no-]quiet β€” don't print warnings. 🀫
  • --[no-]open β€” view rendered output in the most suitable application. (default: on)
  • --[no-]render β€” render the graph using Graphviz. (default: on)
  • --[no-]warn-packaged β€” warn if the given Go package has already been packaged for Debian. (default: on)
  • --[no-]include-packaged-deps β€” include packaged dependencies in the estimate. (default: on)
  • --[no-]include-version-conflicts β€” include any version conflicts between the package's go.mod and the version in Debian unstable. Ignored if --no-include-packaged-deps is passed. (default: on)
  • --max-depth <INT> β€” maximum recursion depth of unpackaged dependencies. 🌊
  • --help β€” show help message and exit. 🫑
ngl the --[no-] thing is doing a lot of work here β€” every one of those toggles has a no- twin, so you can flip any of them off whenever the vibe check fails. and yes, --no-include-packaged-deps straight up overrides --include-version-conflicts, don't fight it, that's just how it is. πŸ’€

🌈 SEE ALSO 🌈


and that's the whole page, babe πŸ’œ this was GOPHIAN-ES...TE-GRAPHVIZ(1), from the General Commands Manual, dated 2025-12-25 β€” happy graphing, go make a beautiful tree, you've got this πŸ§šβœ¨πŸ“

πŸ“¦ where this page comes from