in modules/core/src/main/scala/org/scalasteward/core/repoconfig/UpdatesConfig.scala [184:208]
private def mergeAllowGroupId(
x: List[UpdatePattern],
y: List[UpdatePattern]
): List[UpdatePattern] =
(x.exists(_.isWholeGroupIdAllowed), y.exists(_.isWholeGroupIdAllowed)) match {
case (true, _) => y
case (_, true) => x
case _ =>
// case with concrete artifacts / versions
val builder = new collection.mutable.ListBuffer[UpdatePattern]()
val xByArtifacts = x.groupBy(_.artifactId)
val yByArtifacts = y.groupBy(_.artifactId)
x.foreach { updatePattern =>
if (satisfyUpdatePattern(updatePattern, yByArtifacts))
builder += updatePattern
}
y.foreach { updatePattern =>
if (satisfyUpdatePattern(updatePattern, xByArtifacts))
builder += updatePattern
}
if (builder.isEmpty) nonExistingUpdatePattern
else builder.toList
}