It has always been a pain in the ass to manage third party dependencies. In our monolith repo, there are over 70 third party repos introduced with repository rules (eg.go_repository
,git_repository
, etc.)
Some repos are added as transitive dependencies. After upgrading some of the direct third party dependencies, some of the transitive dependencies became dangling links.
I've already tried the following:$ bazel query 'somepath(//...,@REPO_NAME_IN_QUESTION//...)'
Which runs extremely slow, and I ended up with a quick grep in all build files -- as the repo rules are always started with "@".
I'm wondering if there is an easy way to query the dependency graph of all rules in external repositories.