From 93ffab54211c3150b4c3568d75519dc6426f6044 Mon Sep 17 00:00:00 2001 From: Tobias Roeser Date: Mon, 29 Oct 2018 22:10:25 +0100 Subject: Added new cmdline option --debug,-d to enable debug log --- main/core/src/mill/util/Logger.scala | 2 +- main/src/mill/MillMain.scala | 18 +++++++++++++++--- main/src/mill/main/MainRunner.scala | 5 +++-- main/src/mill/main/ReplApplyHandler.scala | 5 +++-- main/test/src/mill/util/ScriptTestSuite.scala | 3 ++- 5 files changed, 24 insertions(+), 9 deletions(-) (limited to 'main') diff --git a/main/core/src/mill/util/Logger.scala b/main/core/src/mill/util/Logger.scala index 34981766..1db66039 100644 --- a/main/core/src/mill/util/Logger.scala +++ b/main/core/src/mill/util/Logger.scala @@ -138,7 +138,7 @@ case class PrintLogger( def debug(s: String) = if (debugEnabled) { printState = PrintState.Newline - errStream.println(colors.info()(s)) + errStream.println(s) } } diff --git a/main/src/mill/MillMain.scala b/main/src/mill/MillMain.scala index 421b9f20..1598d5f3 100644 --- a/main/src/mill/MillMain.scala +++ b/main/src/mill/MillMain.scala @@ -64,8 +64,18 @@ object MillMain { } ) + var debugLog = false + val debugLogSignature = Arg[Config, Unit]( + name = "debug", shortName = Some('d'), + doc = "Show debug output on STDOUT", + (c, v) => { + debugLog = true + c + } + ) + val millArgSignature = - Cli.genericSignature.filter(a => !removed(a.name)) ++ Seq(interactiveSignature, disableTickerSignature) + Cli.genericSignature.filter(a => !removed(a.name)) ++ Seq(interactiveSignature, disableTickerSignature, debugLogSignature) Cli.groupArgs( args.toList, @@ -105,7 +115,8 @@ object MillMain { | interp.colors(), | repl.pprinter(), | build.millSelf.get, - | build.millDiscover + | build.millDiscover, + | $debugLog |) |repl.pprinter() = replApplyHandler.pprinter |import replApplyHandler.generatedEval._ @@ -120,7 +131,8 @@ object MillMain { stdout, stderr, stdin, stateCache, env, - setIdle + setIdle, + debugLog ) if (mill.main.client.Util.isJava9OrAbove) { diff --git a/main/src/mill/main/MainRunner.scala b/main/src/mill/main/MainRunner.scala index 34151ab4..4f31a724 100644 --- a/main/src/mill/main/MainRunner.scala +++ b/main/src/mill/main/MainRunner.scala @@ -24,7 +24,8 @@ class MainRunner(val config: ammonite.main.Cli.Config, stdIn: InputStream, stateCache0: Option[Evaluator.State] = None, env : Map[String, String], - setIdle: Boolean => Unit) + setIdle: Boolean => Unit, + debugLog: Boolean) extends ammonite.MainRunner( config, outprintStream, errPrintStream, stdIn, outprintStream, errPrintStream @@ -81,7 +82,7 @@ class MainRunner(val config: ammonite.main.Cli.Config, errPrintStream, errPrintStream, stdIn, - debugEnabled = false // TODO: read from cmdline args + debugEnabled = debugLog ), env ) diff --git a/main/src/mill/main/ReplApplyHandler.scala b/main/src/mill/main/ReplApplyHandler.scala index 2cf0c6f1..af69c761 100644 --- a/main/src/mill/main/ReplApplyHandler.scala +++ b/main/src/mill/main/ReplApplyHandler.scala @@ -16,7 +16,8 @@ object ReplApplyHandler{ colors: ammonite.util.Colors, pprinter0: pprint.PPrinter, rootModule: mill.define.BaseModule, - discover: Discover[_]) = { + discover: Discover[_], + debugLog: Boolean) = { new ReplApplyHandler( pprinter0, new Evaluator( @@ -32,7 +33,7 @@ object ReplApplyHandler{ System.err, System.err, System.in, - debugEnabled = false + debugEnabled = debugLog ) ) ) diff --git a/main/test/src/mill/util/ScriptTestSuite.scala b/main/test/src/mill/util/ScriptTestSuite.scala index 0b0c4011..9d3edb65 100644 --- a/main/test/src/mill/util/ScriptTestSuite.scala +++ b/main/test/src/mill/util/ScriptTestSuite.scala @@ -15,10 +15,11 @@ abstract class ScriptTestSuite(fork: Boolean) extends TestSuite{ val stdOutErr = new PrintStream(new ByteArrayOutputStream()) val stdIn = new ByteArrayInputStream(Array()) val disableTicker = false + val debugLog = false lazy val runner = new mill.main.MainRunner( ammonite.main.Cli.Config(wd = wd), disableTicker, stdOutErr, stdOutErr, stdIn, None, Map.empty, - b => () + b => (), debugLog ) def eval(s: String*) = { if (!fork) runner.runScript(workspacePath / buildPath , s.toList) -- cgit v1.2.3