scala-steward icon indicating copy to clipboard operation
scala-steward copied to clipboard

Feature idea: show (transitive) impact of bumps across modules

Open bjaglin opened this issue 3 years ago • 1 comments

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?

bjaglin avatar Feb 10 '22 13:02 bjaglin

cc @github-sebastien-boulet

bjaglin avatar Feb 10 '22 14:02 bjaglin