private def findConflicts()

in multiversion/src/main/scala/multiversion/commands/LintCommand.scala [57:82]


  private def findConflicts(
      target: Target,
      index: DependenciesIndex
  ): List[LintDiagnostic] = {
    val targetName = target.getRule.getName
    val dependencies = index.dependencies(targetName).flatMap(_.dependency).toList
    val conflicts =
      dependencies
        .groupBy(d => (d.module, d.classifier))
        .filter { case (key, values) => values.length > 1 }
        .toList

    if (conflicts.isEmpty) Nil
    else {
      val pending = isPending(index, targetName)
      conflicts.map { case ((module, classifier), dependencies) =>
        LintDiagnostic(
          target.getRule.getName,
          module,
          classifier,
          dependencies.map(_.version).sorted,
          pending
        )
      }
    }
  }