forked from scala/scala
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathQuiet.scala
33 lines (31 loc) · 1.2 KB
/
Quiet.scala
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package scala.build
import sbt._
import Keys._
object Quiet {
// Workaround sbt issue described:
//
// https://github.com/scala/scala-dev/issues/100
def silenceScalaBinaryVersionWarning = ivyConfiguration := {
ivyConfiguration.value match {
case c: InlineIvyConfiguration =>
val delegate = c.log
val logger = new Logger {
override def trace(t: => Throwable): Unit = delegate.trace(t)
override def log(level: sbt.Level.Value, message: => String): Unit = {
level match {
case sbt.Level.Warn =>
val message0 = message
val newLevel = if (message.contains("differs from Scala binary version in project"))
delegate.log(sbt.Level.Debug, message)
else
delegate.log(level, message)
case _ => delegate.log(level, message)
}
}
override def success(message: => String): Unit = delegate.success(message)
}
new InlineIvyConfiguration(c.paths, c.resolvers, c.otherResolvers, c.moduleConfigurations, c.localOnly, c.lock, c.checksums, c.resolutionCacheDir, c.updateOptions, logger)
case x => x
}
}
}