Don't print exclusions by default

This commit is contained in:
Alexandre Archambault 2017-04-21 14:34:36 +02:00
parent 00443c3a46
commit d3b692e165
2 changed files with 48 additions and 12 deletions

View File

@ -396,7 +396,14 @@ class Helper(
fetchQuiet
if (verbosityLevel >= 1) {
errPrintln(s" Dependencies:\n${Print.dependenciesUnknownConfigs(dependencies, Map.empty)}")
errPrintln(
s" Dependencies:\n" +
Print.dependenciesUnknownConfigs(
dependencies,
Map.empty,
printExclusions = verbosityLevel >= 2
)
)
if (forceVersions.nonEmpty) {
errPrintln(" Force versions:")
@ -522,9 +529,18 @@ class Helper(
val depsStr =
if (reverseTree || tree)
Print.dependencyTree(dependencies, res, printExclusions = verbosityLevel >= 1, reverse = reverseTree)
Print.dependencyTree(
dependencies,
res,
printExclusions = verbosityLevel >= 1,
reverse = reverseTree
)
else
Print.dependenciesUnknownConfigs(trDeps, projCache)
Print.dependenciesUnknownConfigs(
trDeps,
projCache,
printExclusions = verbosityLevel >= 1
)
if (printResultStdout)
println(depsStr)
@ -554,7 +570,11 @@ class Helper(
anyError = true
errPrintln(
s"\nConflict:\n" +
Print.dependenciesUnknownConfigs(res.conflicts.toVector, projCache)
Print.dependenciesUnknownConfigs(
res.conflicts.toVector,
projCache,
printExclusions = verbosityLevel >= 1
)
)
}

View File

@ -4,16 +4,32 @@ import coursier.core.{ Attributes, Dependency, Module, Orders, Project, Resoluti
object Print {
def dependency(dep: Dependency): String = {
val exclusionsStr = dep.exclusions.toVector.sorted.map {
case (org, name) =>
s"\n exclude($org, $name)"
}.mkString
def dependency(dep: Dependency): String =
dependency(dep, printExclusions = false)
s"${dep.module}:${dep.version}:${dep.configuration}$exclusionsStr"
def dependency(dep: Dependency, printExclusions: Boolean): String = {
def exclusionsStr = dep
.exclusions
.toVector
.sorted
.map {
case (org, name) =>
s"\n exclude($org, $name)"
}
.mkString
s"${dep.module}:${dep.version}:${dep.configuration}" + (if (printExclusions) exclusionsStr else "")
}
def dependenciesUnknownConfigs(deps: Seq[Dependency], projects: Map[(Module, String), Project]): String = {
def dependenciesUnknownConfigs(deps: Seq[Dependency], projects: Map[(Module, String), Project]): String =
dependenciesUnknownConfigs(deps, projects, printExclusions = false)
def dependenciesUnknownConfigs(
deps: Seq[Dependency],
projects: Map[(Module, String), Project],
printExclusions: Boolean
): String = {
val deps0 = deps.map { dep =>
dep.copy(
@ -38,7 +54,7 @@ object Print {
(dep.module.organization, dep.module.name, dep.module.toString, dep.version)
}
deps1.map(dependency).mkString("\n")
deps1.map(dependency(_, printExclusions)).mkString("\n")
}
private def compatibleVersions(first: String, second: String): Boolean = {