From 2bbfa16c2b6319533be0222b3586e108c3a9ff00 Mon Sep 17 00:00:00 2001 From: Tobias Roeser Date: Thu, 6 Mar 2025 21:39:36 +0100 Subject: [PATCH 1/2] Use the new warn log level in various places --- bsp/src/mill/bsp/BSP.scala | 2 +- contrib/docker/src/mill/contrib/docker/DockerModule.scala | 8 +++----- .../src/mill/contrib/scalapblib/ScalaPBModule.scala | 2 +- .../contrib/scoverage/api/ScoverageReportWorkerApi2.java | 4 ++-- .../mill/contrib/scoverage/ScoverageReportWorker.scala | 1 + .../scoverage/worker/ScoverageReportWorkerImpl.scala | 2 +- .../src/mill/kotlinlib/KotlinWorkerManagerImpl.scala | 4 ++-- kotlinlib/src/mill/kotlinlib/js/KotlinJsModule.scala | 2 +- scalajslib/src/mill/scalajslib/ScalaJSModule.scala | 2 +- scalalib/src/mill/scalalib/ScalaModule.scala | 2 +- 10 files changed, 14 insertions(+), 15 deletions(-) diff --git a/bsp/src/mill/bsp/BSP.scala b/bsp/src/mill/bsp/BSP.scala index 7024a5c5805..a71713032d2 100644 --- a/bsp/src/mill/bsp/BSP.scala +++ b/bsp/src/mill/bsp/BSP.scala @@ -62,7 +62,7 @@ object BSP extends ExternalModule with CoursierModule { )(implicit ctx: Ctx): (PathRef, ujson.Value) = { // we create a json connection file val bspFile = ctx.workspace / Constants.bspDir / s"${serverName}.json" - if (os.exists(bspFile)) ctx.log.info(s"Overwriting BSP connection file: ${bspFile}") + if (os.exists(bspFile)) ctx.log.warn(s"Overwriting BSP connection file: ${bspFile}") else ctx.log.info(s"Creating BSP connection file: ${bspFile}") val withDebug = ctx.log.debugEnabled if (withDebug) ctx.log.debug( diff --git a/contrib/docker/src/mill/contrib/docker/DockerModule.scala b/contrib/docker/src/mill/contrib/docker/DockerModule.scala index 4d25a29edfe..ce1bc46e108 100644 --- a/contrib/docker/src/mill/contrib/docker/DockerModule.scala +++ b/contrib/docker/src/mill/contrib/docker/DockerModule.scala @@ -178,7 +178,7 @@ trait DockerModule { outer: JavaModule => val result = if (platform().isEmpty || executable() != "docker") { if (platform().nonEmpty) - log.info("Platform parameter is ignored when using non-docker executable") + log.warn("Platform parameter is ignored when using non-docker executable") os.proc(executable(), "build", tagArgs, pullLatestBase, dest) .call(stdout = os.Inherit, stderr = os.Inherit, env = env) } else { @@ -194,10 +194,8 @@ trait DockerModule { outer: JavaModule => ) .call(stdout = os.Inherit, stderr = os.Inherit, env = env) } - log.info(s"Docker build completed ${ - if (result.exitCode == 0) "successfully" - else "unsuccessfully" - } with ${result.exitCode}") + if (result.exitCode == 0) log.info(s"Docker build completed successfully") + else log.warn(s"Docker build completed unsuccessfully with code ${result.exitCode}") tags() } diff --git a/contrib/scalapblib/src/mill/contrib/scalapblib/ScalaPBModule.scala b/contrib/scalapblib/src/mill/contrib/scalapblib/ScalaPBModule.scala index bafb47ca4c1..35fd2d14369 100644 --- a/contrib/scalapblib/src/mill/contrib/scalapblib/ScalaPBModule.scala +++ b/contrib/scalapblib/src/mill/contrib/scalapblib/ScalaPBModule.scala @@ -111,7 +111,7 @@ trait ScalaPBModule extends ScalaModule { if (entry.getName.endsWith(".proto")) { val protoDest = dest / os.SubPath(entry.getName) if (os.exists(protoDest)) - Task.log.error(s"Warning: Overwriting ${dest} / ${os.SubPath(entry.getName)} ...") + Task.log.warn(s"Overwriting ${dest} / ${os.SubPath(entry.getName)} ...") Using.resource(os.write.over.outputStream(protoDest, createFolders = true)) { os => _root_.os.Internals.transfer(zip, os, close = false) } diff --git a/contrib/scoverage/api/src/mill/contrib/scoverage/api/ScoverageReportWorkerApi2.java b/contrib/scoverage/api/src/mill/contrib/scoverage/api/ScoverageReportWorkerApi2.java index 29150520454..f6a6cbff54a 100644 --- a/contrib/scoverage/api/src/mill/contrib/scoverage/api/ScoverageReportWorkerApi2.java +++ b/contrib/scoverage/api/src/mill/contrib/scoverage/api/ScoverageReportWorkerApi2.java @@ -8,11 +8,11 @@ public interface ScoverageReportWorkerApi2 { interface Logger { - void info(String msg); + void error(String msg); void warn(String msg); - void error(String msg); + void info(String msg); void debug(String msg); } diff --git a/contrib/scoverage/src/mill/contrib/scoverage/ScoverageReportWorker.scala b/contrib/scoverage/src/mill/contrib/scoverage/ScoverageReportWorker.scala index 51ff53b78d8..55de45cb765 100644 --- a/contrib/scoverage/src/mill/contrib/scoverage/ScoverageReportWorker.scala +++ b/contrib/scoverage/src/mill/contrib/scoverage/ScoverageReportWorker.scala @@ -41,6 +41,7 @@ class ScoverageReportWorker extends AutoCloseable { def info(msg: String): Unit = ctx.log.info(msg) def warn(msg: String): Unit = ctx.log.warn(msg) def error(msg: String): Unit = ctx.log.error(msg) + def warn(msg: String): Unit = ctx.log.warn(msg) def debug(msg: String): Unit = ctx.log.debug(msg) } new ApiCtx { diff --git a/contrib/scoverage/worker2/src/mill/contrib/scoverage/worker/ScoverageReportWorkerImpl.scala b/contrib/scoverage/worker2/src/mill/contrib/scoverage/worker/ScoverageReportWorkerImpl.scala index 1393af627f1..773fb658f18 100644 --- a/contrib/scoverage/worker2/src/mill/contrib/scoverage/worker/ScoverageReportWorkerImpl.scala +++ b/contrib/scoverage/worker2/src/mill/contrib/scoverage/worker/ScoverageReportWorkerImpl.scala @@ -47,7 +47,7 @@ class ScoverageReportWorkerImpl extends ScoverageReportWorkerApi2 { ctx.log.info(s"Branch coverage....: ${coverage.branchCoverageFormatted}%") } case None => - ctx.log.error(s"No coverage data found in [${dataDirs.mkString(", ")}]") + ctx.log.warn(s"No coverage data found in [${dataDirs.mkString(", ")}]") } } catch { case e: Throwable => diff --git a/kotlinlib/src/mill/kotlinlib/KotlinWorkerManagerImpl.scala b/kotlinlib/src/mill/kotlinlib/KotlinWorkerManagerImpl.scala index f0fbe18f404..50d4b1b6bc4 100644 --- a/kotlinlib/src/mill/kotlinlib/KotlinWorkerManagerImpl.scala +++ b/kotlinlib/src/mill/kotlinlib/KotlinWorkerManagerImpl.scala @@ -36,13 +36,13 @@ class KotlinWorkerManagerImpl(ctx: Ctx) extends KotlinWorkerManager with AutoClo val impl = classLoader.loadClass(className) val worker = impl.getConstructor().newInstance().asInstanceOf[KotlinWorker] if (worker.getClass().getClassLoader() != classLoader) { - ctx.log.error( + ctx.log.warn( """Worker not loaded from worker classloader. |You should not add the mill-kotlin-worker JAR to the mill build classpath""".stripMargin ) } if (worker.getClass().getClassLoader() == classOf[KotlinWorker].getClassLoader()) { - ctx.log.error("Worker classloader used to load interface and implementation") + ctx.log.warn("Worker classloader used to load interface and implementation") } worker -> 0 } diff --git a/kotlinlib/src/mill/kotlinlib/js/KotlinJsModule.scala b/kotlinlib/src/mill/kotlinlib/js/KotlinJsModule.scala index 47f1f710520..a95a95866ca 100644 --- a/kotlinlib/src/mill/kotlinlib/js/KotlinJsModule.scala +++ b/kotlinlib/src/mill/kotlinlib/js/KotlinJsModule.scala @@ -153,7 +153,7 @@ trait KotlinJsModule extends KotlinModule { outer => moduleKind == ModuleKind.NoModule && binaryDir.toIO.listFiles().count(_.getName.endsWith(".js")) > 1 ) { - Task.log.info("No module type is selected for the executable, but multiple .js files found in the output folder." + + Task.log.warn("No module type is selected for the executable, but multiple .js files found in the output folder." + " This will probably lead to the dependency resolution failure.") } diff --git a/scalajslib/src/mill/scalajslib/ScalaJSModule.scala b/scalajslib/src/mill/scalajslib/ScalaJSModule.scala index aa70be285b9..891f282bb4b 100644 --- a/scalajslib/src/mill/scalajslib/ScalaJSModule.scala +++ b/scalajslib/src/mill/scalajslib/ScalaJSModule.scala @@ -135,7 +135,7 @@ trait ScalaJSModule extends scalalib.ScalaModule { outer => override def run(args: Task[Args] = Task.Anon(Args())): Command[Unit] = Task.Command { if (args().value.nonEmpty) { - Task.log.error("Passing command line arguments to run is not supported by Scala.js.") + Task.log.warn("Passing command line arguments to run is not supported by Scala.js.") } finalMainClassOpt() match { case Left(err) => Result.Failure(err) diff --git a/scalalib/src/mill/scalalib/ScalaModule.scala b/scalalib/src/mill/scalalib/ScalaModule.scala index fa82a82057e..035dbbfcd71 100644 --- a/scalalib/src/mill/scalalib/ScalaModule.scala +++ b/scalalib/src/mill/scalalib/ScalaModule.scala @@ -264,7 +264,7 @@ trait ScalaModule extends JavaModule with TestModule.ScalaModuleBase { outer => // Keep in sync with [[bspCompileClassesPath]] override def compile: T[CompilationResult] = Task(persistent = true) { val sv = scalaVersion() - if (sv == "2.12.4") Task.log.error( + if (sv == "2.12.4") Task.log.warn( """Attention: Zinc is known to not work properly for Scala version 2.12.4. |You may want to select another version. Upgrading to a more recent Scala version is recommended. |For details, see: https://github.com/sbt/zinc/issues/1010""".stripMargin From 528282511bb483a0814fec1e78d71a3f54fc2204 Mon Sep 17 00:00:00 2001 From: Tobias Roeser Date: Fri, 7 Mar 2025 10:47:07 +0100 Subject: [PATCH 2/2] . --- .../src/mill/contrib/scoverage/ScoverageReportWorker.scala | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/contrib/scoverage/src/mill/contrib/scoverage/ScoverageReportWorker.scala b/contrib/scoverage/src/mill/contrib/scoverage/ScoverageReportWorker.scala index 55de45cb765..802c6a38ab2 100644 --- a/contrib/scoverage/src/mill/contrib/scoverage/ScoverageReportWorker.scala +++ b/contrib/scoverage/src/mill/contrib/scoverage/ScoverageReportWorker.scala @@ -38,10 +38,9 @@ class ScoverageReportWorker extends AutoCloseable { def ctx0(implicit ctx: Ctx): ApiCtx = { val logger = new ApiLogger { - def info(msg: String): Unit = ctx.log.info(msg) - def warn(msg: String): Unit = ctx.log.warn(msg) def error(msg: String): Unit = ctx.log.error(msg) def warn(msg: String): Unit = ctx.log.warn(msg) + def info(msg: String): Unit = ctx.log.info(msg) def debug(msg: String): Unit = ctx.log.debug(msg) } new ApiCtx {