mirror of https://github.com/sbt/sbt.git
Set isSuccessEnabled in network channel consistently
The thin client needs to do its own success reporting because in batch mode it's possible for the task to exit before success is logged by the server. If the server also prints success, there can be double printing. Unfortunately, the Prompt.Batch check is not reliable because MainLoop will change the prompt to Running during task evaluation. The interactive flag is set in the NetworkChannel when the client explicitly registers itself as an interactive session, so this should be more reliable.
This commit is contained in:
parent
52743051eb
commit
4cea09937c
|
|
@ -800,7 +800,7 @@ final class NetworkChannel(
|
|||
override def isAnsiSupported: Boolean = getProperty(_.isAnsiSupported, false).getOrElse(false)
|
||||
override def isEchoEnabled: Boolean = waitForPending(_.isEchoEnabled)
|
||||
override def isSuccessEnabled: Boolean =
|
||||
prompt != Prompt.Batch ||
|
||||
interactive.get ||
|
||||
StandardMain.exchange.withState(ContinuousCommands.isInWatch(_, NetworkChannel.this))
|
||||
override lazy val isColorEnabled: Boolean = waitForPending(_.isColorEnabled)
|
||||
override lazy val isSupershellEnabled: Boolean = waitForPending(_.isSupershellEnabled)
|
||||
|
|
|
|||
Loading…
Reference in New Issue