in multiversion/src/main/scala/multiversion/configs/ThirdpartyConfig.scala [223:248]
private def decodeForceVersions(
dep: DependencyConfig
): List[Result[(Module, String)]] = {
decodeVersionsCache.getOrElseUpdate(
dep, {
val buf = mutable.ListBuffer.empty[Result[(Module, String)]]
if (dep.force) {
buf += ValueResult(dep.coursierModule(scala) -> dep.version)
}
buf ++= fromForceVersions(dep)
for {
dep <- dependencies2
target <- dep.targets
} {
buf ++= forceVersionsByTarget(target)
}
for {
transitiveLabel <- dep.dependencies
transitive <- depsByTargets.getOrElse(transitiveLabel, Nil)
} {
buf ++= decodeForceVersions(transitive)
}
buf.toList
}
)
}