scala-steward
scala-steward copied to clipboard
Feature idea: show (transitive) impact of bumps across modules
Rationale
To be able to see which modules are impacted by a Steward PR and how transitive dependencies are affected, it would be interesting to append a diff of the dependencies across modules in the PR description.
Implementation
The initial implementation could rely on recent versions of sbt and consists in doing a diff on something like +Compile / dependencyList; +Test / dependencyList (after injecting a addDependencyTreePlugin in the meta-build and the meta-meta-build) before and after the edits. Since the output is quite verbose for multi-module projects and it would introduce a significant overhead since sbt needs to be reloaded, this should probably be an opt-in.
The description of https://github.com/scalacenter/scalafix/pull/1533 was manually edited to include what the diff could look like (I diffed only 2 modules and naively processed the output manually).
Challenges
- the size of the diff may exceed the maximum size of a PR description - just fallback to a description without diff in that case?
- filter out self-reference in
dependencyList(present only when publishing is enabled?) so that untouched modules don't produce a diff - filter out intra-project module references since it's just noise?
cc @github-sebastien-boulet