From 7780e0c676f64ab9210883fce548345a09d82626 Mon Sep 17 00:00:00 2001 From: Eugene Yokota Date: Thu, 11 May 2023 23:40:53 -0400 Subject: [PATCH] Use NIO to create temp file --- internal/util-logging/src/test/scala/ManagedLoggerSpec.scala | 5 +++-- main/src/main/scala/sbt/Main.scala | 2 +- run/src/main/scala/sbt/Fork.scala | 3 ++- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/internal/util-logging/src/test/scala/ManagedLoggerSpec.scala b/internal/util-logging/src/test/scala/ManagedLoggerSpec.scala index 9a0ecd2c7..be3cd8ff1 100644 --- a/internal/util-logging/src/test/scala/ManagedLoggerSpec.scala +++ b/internal/util-logging/src/test/scala/ManagedLoggerSpec.scala @@ -10,7 +10,8 @@ package sbt.internal.util import org.scalatest.flatspec.AnyFlatSpec import org.scalatest.matchers.should.Matchers import sbt.util._ -import java.io.{ File, PrintWriter } +import java.io.PrintWriter +import java.nio.file.Files import sbt.io.Using import scala.annotation.nowarn @@ -141,7 +142,7 @@ class ManagedLoggerSpec extends AnyFlatSpec with Matchers { val console = ConsoleOut.systemOut def initialGlobalLogging: GlobalLogging = GlobalLogging.initial( MainAppender.globalDefault(console), - File.createTempFile("sbt", ".log"), + Files.createTempFile("sbt", ".log").toFile(), console ) } diff --git a/main/src/main/scala/sbt/Main.scala b/main/src/main/scala/sbt/Main.scala index 88babfe0b..67dfa840b 100644 --- a/main/src/main/scala/sbt/Main.scala +++ b/main/src/main/scala/sbt/Main.scala @@ -239,7 +239,7 @@ object StandardMain { private[this] def initialGlobalLogging(file: Option[File]): GlobalLogging = { def createTemp(attempt: Int = 0): File = Retry { file.foreach(f => if (!f.exists()) IO.createDirectory(f)) - File.createTempFile("sbt-global-log", ".log", file.orNull) + Files.createTempFile(file.map(_.toPath()).orNull, "sbt-global-log", ".log").toFile } GlobalLogging.initial( MainAppender.globalDefault(ConsoleOut.globalProxy), diff --git a/run/src/main/scala/sbt/Fork.scala b/run/src/main/scala/sbt/Fork.scala index 7cbf1c7ad..442892bda 100644 --- a/run/src/main/scala/sbt/Fork.scala +++ b/run/src/main/scala/sbt/Fork.scala @@ -9,6 +9,7 @@ package sbt import java.io.File import java.io.PrintWriter +import java.nio.file.Files import java.lang.ProcessBuilder.Redirect import scala.sys.process.Process import OutputStrategy._ @@ -170,7 +171,7 @@ object Fork { * @return */ private def createArgumentsFile(options: Seq[String]): String = { - val file = File.createTempFile(s"sbt-args", ".tmp") + val file = Files.createTempFile(s"sbt-args", ".tmp").toFile() file.deleteOnExit() val pw = new PrintWriter(file)