sbt / sbt-dependency-graph

sbt plugin to create a dependency graph for your project
Apache License 2.0
1.24k stars 113 forks source link

[0.10.0-RC1 + sbt 1.2.5+ regression] ignore cached resolution for the dedicated update report #184

Closed bjaglin closed 5 years ago

bjaglin commented 5 years ago

Fixes empty dependencyTree on 0.10.0-RC1 with sbt 0.13.18, 1.2.5, 1.2.6, 1.2.7, 1.2.8 for projects with updateOptions.withCachedResolution(true).

sbt 1.3.0-RC4 does not exhibit that specific issue by default (although it has another one almost as big, the tree is flat because the caller info is missing from the report) as cached resolution is ignored when using coursier as librarymanagement, however the behavior is the same as 1.2.5+ when disabling coursier via useCoursier := false.

See commit message for more details.

That initial regression fix is clearly a hack, but I am not sure supporting cached resolution would be more robust given how opaque/internal artificial module descriptor names are. Also, from what I understand, cached resolution is on its way out with the usage of coursier by default in sbt 1.3, so this might not be the best time investment.

Related to https://github.com/jrudolph/sbt-dependency-graph/issues/176.

jrudolph commented 5 years ago

That initial regression fix is clearly a hack

I think it's perfectly fine :) No need to support cachedResolution for the dependency graph reports.

jrudolph commented 5 years ago

Thanks again, @bjaglin!