diff options
Diffstat (limited to 'main')
-rw-r--r-- | main/src/mill/MillMain.scala | 23 | ||||
-rw-r--r-- | main/src/mill/main/MainModule.scala | 2 | ||||
-rw-r--r-- | main/src/mill/main/MainRunner.scala | 2 | ||||
-rw-r--r-- | main/src/mill/main/ReplApplyHandler.scala | 2 | ||||
-rw-r--r-- | main/test/src/mill/util/ScriptTestSuite.scala | 3 | ||||
-rw-r--r-- | main/test/src/mill/util/TestEvaluator.scala | 2 |
6 files changed, 27 insertions, 7 deletions
diff --git a/main/src/mill/MillMain.scala b/main/src/mill/MillMain.scala index ad1bd39d..c3a771d3 100644 --- a/main/src/mill/MillMain.scala +++ b/main/src/mill/MillMain.scala @@ -38,6 +38,8 @@ object MillMain { env: Map[String, String], setIdle: Boolean => Unit): (Boolean, Option[Evaluator.State]) = { import ammonite.main.Cli + + val millHome = mill.util.Ctx.defaultHome val removed = Set("predef-code", "no-home-predef") var interactive = false @@ -49,10 +51,21 @@ object MillMain { c } ) - val millArgSignature = - Cli.genericSignature.filter(a => !removed(a.name)) :+ interactiveSignature - val millHome = mill.util.Ctx.defaultHome + + + var disableTicker = false + val disableTickerSignature = Arg[Config, Unit]( + "disable-ticker", None, + "Disable ticker log (e.g. short-lived prints of stages and progress bars)", + (c, v) =>{ + disableTicker = true + c + } + ) + + val millArgSignature = + Cli.genericSignature.filter(a => !removed(a.name)) ++ Seq(interactiveSignature, disableTickerSignature) Cli.groupArgs( args.toList, @@ -89,6 +102,7 @@ object MillMain { s"""import $$file.build, build._ |implicit val replApplyHandler = mill.main.ReplApplyHandler( | ammonite.ops.Path($tqs${cliConfig.home.toIO.getCanonicalPath.replaceAllLiterally("$", "$$")}$tqs), + | $disableTicker, | interp.colors(), | repl.pprinter(), | build.millSelf.get, @@ -102,7 +116,8 @@ object MillMain { ) val runner = new mill.main.MainRunner( - config.copy(colored = Some(mainInteractive)), + config.copy(colored = config.colored orElse Option(mainInteractive)), + disableTicker, stdout, stderr, stdin, stateCache, env, diff --git a/main/src/mill/main/MainModule.scala b/main/src/mill/main/MainModule.scala index 367f241c..f7d4e7b9 100644 --- a/main/src/mill/main/MainModule.scala +++ b/main/src/mill/main/MainModule.scala @@ -173,7 +173,7 @@ trait MainModule extends mill.Module{ // When using `show`, redirect all stdout of the evaluated tasks so the // printed JSON is the only thing printed to stdout. log = evaluator.log match{ - case PrintLogger(c1, c2, o, i, e, in) => PrintLogger(c1, c2, e, i, e, in) + case PrintLogger(c1, d, c2, o, i, e, in) => PrintLogger(c1, d, c2, e, i, e, in) case l => l } ), diff --git a/main/src/mill/main/MainRunner.scala b/main/src/mill/main/MainRunner.scala index bf0d5901..30a23632 100644 --- a/main/src/mill/main/MainRunner.scala +++ b/main/src/mill/main/MainRunner.scala @@ -18,6 +18,7 @@ import scala.annotation.tailrec * `scriptCodeWrapper` or with a persistent evaluator between runs. */ class MainRunner(val config: ammonite.main.Cli.Config, + disableTicker: Boolean, outprintStream: PrintStream, errPrintStream: PrintStream, stdIn: InputStream, @@ -74,6 +75,7 @@ class MainRunner(val config: ammonite.main.Cli.Config, stateCache, new PrintLogger( colors != ammonite.util.Colors.BlackWhite, + disableTicker, colors, outprintStream, errPrintStream, diff --git a/main/src/mill/main/ReplApplyHandler.scala b/main/src/mill/main/ReplApplyHandler.scala index 22a247cc..95949fa8 100644 --- a/main/src/mill/main/ReplApplyHandler.scala +++ b/main/src/mill/main/ReplApplyHandler.scala @@ -11,6 +11,7 @@ import mill.util.Strict.Agg import scala.collection.mutable object ReplApplyHandler{ def apply[T](home: Path, + disableTicker: Boolean, colors: ammonite.util.Colors, pprinter0: pprint.PPrinter, rootModule: mill.define.BaseModule, @@ -24,6 +25,7 @@ object ReplApplyHandler{ rootModule, new mill.util.PrintLogger( colors != ammonite.util.Colors.BlackWhite, + disableTicker, colors, System.out, System.err, diff --git a/main/test/src/mill/util/ScriptTestSuite.scala b/main/test/src/mill/util/ScriptTestSuite.scala index a23b34fe..0b0c4011 100644 --- a/main/test/src/mill/util/ScriptTestSuite.scala +++ b/main/test/src/mill/util/ScriptTestSuite.scala @@ -14,8 +14,9 @@ abstract class ScriptTestSuite(fork: Boolean) extends TestSuite{ val wd = workspacePath / buildPath / up val stdOutErr = new PrintStream(new ByteArrayOutputStream()) val stdIn = new ByteArrayInputStream(Array()) + val disableTicker = false lazy val runner = new mill.main.MainRunner( - ammonite.main.Cli.Config(wd = wd), + ammonite.main.Cli.Config(wd = wd), disableTicker, stdOutErr, stdOutErr, stdIn, None, Map.empty, b => () ) diff --git a/main/test/src/mill/util/TestEvaluator.scala b/main/test/src/mill/util/TestEvaluator.scala index bcfcc9bf..d62e921c 100644 --- a/main/test/src/mill/util/TestEvaluator.scala +++ b/main/test/src/mill/util/TestEvaluator.scala @@ -26,7 +26,7 @@ class TestEvaluator[T <: TestUtil.BaseModule](module: T) // val logger = DummyLogger val logger = new PrintLogger( - true, + colored = true, disableTicker=false, ammonite.util.Colors.Default, System.out, System.out, System.err, System.in ) val evaluator = new Evaluator(Ctx.defaultHome, outPath, TestEvaluator.externalOutPath, module, logger) |