Skip to content

Commit

Permalink
Fix bug, these are reverse dependencies so we can't prune like this
Browse files Browse the repository at this point in the history
  • Loading branch information
ianoc committed Jan 20, 2023
1 parent 24bdb3f commit 2db9e9f
Showing 1 changed file with 17 additions and 10 deletions.
27 changes: 17 additions & 10 deletions src/scala/com/github/johnynek/bazel_deps/DepsModel.scala
Original file line number Diff line number Diff line change
Expand Up @@ -1691,6 +1691,12 @@ object GradleLockDependency {
left: GradleLockDependency,
right: GradleLockDependency
): Try[GradleLockDependency] = {
lazy val mergedDependencies = Some(
(left.transitive.getOrElse(Nil) ++ right.transitive.getOrElse(
Nil
)).sorted.distinct
).filter(_.nonEmpty)

for {
v <- resolveVersions(debugName.getOrElse("Unknown"))(left.locked, right.locked)
_ <-
Expand All @@ -1704,20 +1710,21 @@ object GradleLockDependency {
} yield {
v match {
case EqualVersionSpecified =>
// if they have equal versions we would expect the dependencies to be the same
// but if someone has done some manual operations we would take the union
// (This means an exclude in one lock file but not in another would get ignored!)
GradleLockDependency(
locked = left.locked,
project = left.project,
transitive = Some(
(left.transitive.getOrElse(Nil) ++ right.transitive.getOrElse(
Nil
)).sorted.distinct
)
transitive = mergedDependencies
)
case LeftVersion => GradleLockDependency(
locked = left.locked,
project = left.project,
transitive = mergedDependencies
)
case RightVersion => GradleLockDependency(
locked = right.locked,
project = right.project,
transitive = mergedDependencies
)
case LeftVersion => left
case RightVersion => right
}

}
Expand Down

0 comments on commit 2db9e9f

Please sign in to comment.