Skip to content

Commit 049ffae

Browse files
committed
Fetch Inkuire at scaladoc build instead of documentation generation
1 parent 31292be commit 049ffae

File tree

2 files changed

+20
-4
lines changed

2 files changed

+20
-4
lines changed

project/Build.scala

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1317,6 +1317,24 @@ object Build {
13171317
sbt.IO.copyFile(cssSourceFile, cssDesitnationFile)
13181318
Seq(cssDesitnationFile)
13191319
}.taskValue,
1320+
Compile / resourceGenerators += Def.task {
1321+
import _root_.scala.sys.process._
1322+
import _root_.scala.concurrent._
1323+
import ExecutionContext.Implicits.global
1324+
val inkuireLink = "https://github.com/VirtusLab/Inkuire/releases/download/1.0.0-M2/inkuire.js"
1325+
val inkuireDestinationFile = (Compile / resourceManaged).value / "dotty_res" / "scripts" / "inkuire.js"
1326+
val downloadProcess = (new java.net.URL(inkuireLink) #> inkuireDestinationFile).run()
1327+
val result: Future[Int] = Future(blocking(downloadProcess.exitValue()))
1328+
val res = try {
1329+
Await.result(result, duration.Duration(20, "sec"))
1330+
} catch {
1331+
case _: TimeoutException =>
1332+
downloadProcess.destroy()
1333+
throw new MessageOnlyException(s"Failed to fetch inkuire.js from $inkuireLink: Download timeout")
1334+
}
1335+
if(res != 0) throw new MessageOnlyException(s"Failed to fetch inkuire.js from $inkuireLink: Error code $res")
1336+
Seq(inkuireDestinationFile)
1337+
}.taskValue,
13201338
libraryDependencies ++= Dependencies.flexmarkDeps ++ Seq(
13211339
"nl.big-o" % "liqp" % "0.6.7",
13221340
"org.jsoup" % "jsoup" % "1.13.1", // Needed to process .html files for static site

scaladoc/src/dotty/tools/scaladoc/renderers/Resources.scala

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,10 +54,8 @@ trait Resources(using ctx: DocContext) extends Locations, Writer:
5454

5555
val onlyRenderedResources: Seq[Resource] =
5656
List(
57-
("https://github.com/VirtusLab/Inkuire/releases/download/1.0.0-M2/inkuire.js", "scripts/inkuire.js"),
58-
).map { case (url, path) =>
59-
Resource.URLToCopy(url, path)
60-
} ++
57+
"scripts/inkuire.js"
58+
).map(dottyRes) ++
6159
List(
6260
"scripts/inkuire-worker.js"
6361
).map(dottyRes)

0 commit comments

Comments
 (0)