Fill error message when BSP task fails

This commit is contained in:
Adrien Piquerez 2021-06-24 16:26:16 +02:00
parent 9274a3e365
commit 74ff1b0a4a
1 changed files with 6 additions and 3 deletions

View File

@ -9,7 +9,6 @@ package sbt
import java.io.File
import java.util.concurrent.atomic.AtomicReference
import sbt.Def.{ ScopedKey, Setting, dummyState }
import sbt.Keys.{ TaskProgress => _, name => _, _ }
import sbt.Project.richInitializeTask
@ -18,10 +17,12 @@ import sbt.SlashSyntax0._
import sbt.internal.Aggregation.KeyValue
import sbt.internal.TaskName._
import sbt.internal._
import sbt.internal.langserver.ErrorCodes
import sbt.internal.util.{ Terminal => ITerminal, _ }
import sbt.librarymanagement.{ Resolver, UpdateReport }
import sbt.std.Transform.DummyTaskMap
import sbt.util.{ Logger, Show }
import sbt.BuildSyntax._
import scala.annotation.nowarn
import scala.Console.RED
@ -367,11 +368,13 @@ object EvaluateTask {
}
}
for ((key, msg, ex) <- keyed if (msg.isDefined || ex.isDefined)) {
for ((key, msg, ex) <- keyed if msg.isDefined || ex.isDefined) {
val msgString = (msg.toList ++ ex.toList.map(ErrorHandling.reducedToString)).mkString("\n\t")
val log = getStreams(key, streams).log
val display = contextDisplay(state, ITerminal.isColorEnabled)
log.error("(" + display.show(key) + ") " + msgString)
val errorMessage = "(" + display.show(key) + ") " + msgString
state.respondError(ErrorCodes.InternalError, errorMessage)
log.error(errorMessage)
}
}