Skip to content

Commit bb7a01e

Browse files
committed
disable MultiDocumenter on Windows
1 parent 22c9921 commit bb7a01e

File tree

2 files changed

+21
-0
lines changed

2 files changed

+21
-0
lines changed

src/MultiDocumenter.jl

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,26 @@ function make(
140140
canonical_domain::Union{AbstractString,Nothing} = nothing,
141141
sitemap::Bool = false,
142142
sitemap_filename::AbstractString = "sitemap.xml",
143+
# This keyword is for internal test use only:
144+
_override_windows_isinteractive_check::Bool = false,
143145
)
146+
if Sys.iswindows() && !isinteractive()
147+
if _override_windows_isinteractive_check || isinteractive()
148+
@warn """
149+
Running a MultiDocumenter build interactively in Windows.
150+
This should only be used for development and testing, as it will lead to partial
151+
and broken builds. See https://github.com/JuliaComputing/MultiDocumenter.jl/issues/70
152+
"""
153+
else
154+
msg = """
155+
MultiDocumenter deployments are disabled on Windows due to difficulties
156+
with handling symlinks in documentation sources.
157+
You _can_ test this build locally by running it interactively (i.e. in the REPL).
158+
See also: https://github.com/JuliaComputing/MultiDocumenter.jl/issues/70
159+
"""
160+
error(msg)
161+
end
162+
end
144163
if isnothing(canonical_domain)
145164
(sitemap === true) &&
146165
throw(ArgumentError("When sitemap=true, canonical_domain must also be set"))

test/runtests.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,8 @@ MultiDocumenter.make(
100100
canonical_domain = "https://example.org/",
101101
sitemap = true,
102102
sitemap_filename = "sitemap-mydocs.xml",
103+
# The following keyword is not standard:
104+
_override_windows_isinteractive_check = Sys.iswindows(),
103105
)
104106

105107
@testset "MultiDocumenter.jl" begin

0 commit comments

Comments
 (0)