Skip to content

Commit 0b3627e

Browse files
Merge pull request #8131 from dotty-staging/doc-fix
Fix genDoc script. Make sure main website is generated on snapshot.
2 parents c1612fa + 672b9c9 commit 0b3627e

File tree

2 files changed

+17
-12
lines changed

2 files changed

+17
-12
lines changed

doc-tool/src/dotty/tools/dottydoc/DocDriver.scala

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -46,25 +46,27 @@ class DocDriver extends Driver {
4646
val projectUrl = Option(ctx.settings.projectUrl.value).filter(_.nonEmpty)
4747
val projectLogo = Option(ctx.settings.projectLogo.value).filter(_.nonEmpty)
4848
val docSnapshot = ctx.settings.docSnapshot.value
49-
var baseUrl = "/"
5049

51-
var outDir = File(siteRoot, "_site")
52-
if docSnapshot then
53-
val folderName = if projectVersion.endsWith("NIGHTLY") then "nightly" else projectVersion
54-
outDir = File(outDir, folderName)
55-
baseUrl = s"$baseUrl$folderName"
50+
val baseUrl = "/"
51+
val outDir = File(siteRoot, "_site")
52+
val snapshotFolderName = if projectVersion.endsWith("NIGHTLY") then "nightly" else projectVersion
53+
val snapshotOutDir = File(outDir, snapshotFolderName)
54+
val snapshotBaseUrl = s"$baseUrl$snapshotFolderName"
5655

5756
if (projectName.isEmpty)
5857
ctx.error(s"Site project name not set. Use `-project <title>` to set the project name")
5958
else if (!siteRoot.exists || !siteRoot.isDirectory)
6059
ctx.error(s"Site root does not exist: $siteRoot")
6160
else {
62-
Site(siteRoot, outDir, projectName, projectVersion, projectUrl, projectLogo, ctx.docbase.packages, baseUrl)
63-
.generateApiDocs()
64-
.copyStaticFiles()
65-
.generateHtmlFiles()
66-
.generateBlog()
61+
def generateSite(outDir: File, baseUrl: String) =
62+
Site(siteRoot, outDir, projectName, projectVersion, projectUrl, projectLogo, ctx.docbase.packages, baseUrl)
63+
.generateApiDocs()
64+
.copyStaticFiles()
65+
.generateHtmlFiles()
66+
.generateBlog()
6767

68+
generateSite(outDir, baseUrl)
69+
if docSnapshot then generateSite(snapshotOutDir, snapshotBaseUrl)
6870
ctx.docbase.printSummary()
6971
}
7072

project/scripts/genDocs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,10 @@ git fetch doc-remote gh-pages
4141
git checkout gh-pages
4242

4343
# save the old snapshots to the newly generated site
44-
mv 0.*/ $PWD/docs/_site
44+
# This command must never fail since failures short-circuit the script
45+
# The reason for failure is that no folder matches "0.*" pattern
46+
# because snapshots may not be generated yet
47+
(mv 0.*/ $PWD/docs/_site; true)
4548

4649
# move newly generated _site dir to $PWD
4750
mv $PWD/docs/_site .

0 commit comments

Comments
 (0)