For new contributors, it might come in handy to have a dependency graph.
I wonder if we should something like this in the documentation / repository somewhere?
If so, I could create a Github action that generates such graph and automatically commits it as soon as the graph has changed.
Apparently, Zulip does not let you easily render vector graphics, here is a png:
graph.png
It's super cool! I think it might be a very good addition to CONTRIBUTING.md
I'd only prefer the arrows to have the opposite direction, from dependency to package
Like this?
graph.png
yep. so I see the flow from the deepest package to the top-most. but maybe it's only my mindset and the reasoning is uncommon for dependency graphs
Normally in a dependency graph each node points to the node on which it depends, so though I understand your reasoning, others might expect it the other way around ;)
I do prefer the arrow direction used in the first image
If so, I could create a Github action that generates such graph and automatically commits it as soon as the graph has changed.
The graph is a great idea, we do have some type of overarching setting we need for CI security that ends up not allowing github actions write permission. So, I think we could include the png in the repo, check for changes and error with "the dependency graph has changed, please run nix develop -c update-graph
" and commit the result. update-graph
would be an alias like here.
not allowing github actions write permission
it's always possible for GA to create a pr, no?
but yeah, it would mean inconsistency
The github action would still get broad access to our self-hosted server and the code that runs inside the action is not reviewed in the PR, so I'd like to keep it simple and secure. Changes to the dependency graph should also be quite rare.
Idk, seeing the chaos in the dependency graph might inspire people to try and improve it and our incremental compile times.
So the graph existing might lead to the graph changing more often.
So the graph existing might lead to the graph changing more often.
That's fine, I don't expect it will change so often that the the CI failure (when the graph needs to be updated because the committer forgot) becomes bothersome
Yeah, definitely not. In fact I home it inspires some people to improve it
Last updated: Jul 06 2025 at 12:14 UTC