|
@@ -22,30 +22,24 @@ import (
|
|
|
)
|
|
|
|
|
|
type simpleStatusOutput struct {
|
|
|
- writer io.Writer
|
|
|
- formatter formatter
|
|
|
- keepANSI bool
|
|
|
- outputLevel status.MsgLevel
|
|
|
+ writer io.Writer
|
|
|
+ formatter formatter
|
|
|
+ keepANSI bool
|
|
|
}
|
|
|
|
|
|
// NewSimpleStatusOutput returns a StatusOutput that represents the
|
|
|
// current build status similarly to Ninja's built-in terminal
|
|
|
// output.
|
|
|
-func NewSimpleStatusOutput(w io.Writer, formatter formatter, keepANSI bool, quietBuild bool) status.StatusOutput {
|
|
|
- level := status.StatusLvl
|
|
|
- if quietBuild {
|
|
|
- level = status.PrintLvl
|
|
|
- }
|
|
|
+func NewSimpleStatusOutput(w io.Writer, formatter formatter, keepANSI bool) status.StatusOutput {
|
|
|
return &simpleStatusOutput{
|
|
|
- writer: w,
|
|
|
- formatter: formatter,
|
|
|
- keepANSI: keepANSI,
|
|
|
- outputLevel: level,
|
|
|
+ writer: w,
|
|
|
+ formatter: formatter,
|
|
|
+ keepANSI: keepANSI,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
func (s *simpleStatusOutput) Message(level status.MsgLevel, message string) {
|
|
|
- if level >= s.outputLevel {
|
|
|
+ if level >= status.StatusLvl {
|
|
|
output := s.formatter.message(level, message)
|
|
|
if !s.keepANSI {
|
|
|
output = string(stripAnsiEscapes([]byte(output)))
|
|
@@ -54,13 +48,10 @@ func (s *simpleStatusOutput) Message(level status.MsgLevel, message string) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-func (s *simpleStatusOutput) StartAction(_ *status.Action, _ status.Counts) {
|
|
|
+func (s *simpleStatusOutput) StartAction(action *status.Action, counts status.Counts) {
|
|
|
}
|
|
|
|
|
|
func (s *simpleStatusOutput) FinishAction(result status.ActionResult, counts status.Counts) {
|
|
|
- if s.outputLevel > status.StatusLvl {
|
|
|
- return
|
|
|
- }
|
|
|
str := result.Description
|
|
|
if str == "" {
|
|
|
str = result.Command
|