Description
When building a pkgdown site with Quarto vignettes on Windows, pkgdown::build_articles() fails due to an invalid path being passed to the Quarto CLI.
The error appears to be caused by incorrect concatenation of an absolute temporary path with a project-relative path, resulting in a malformed path like:
> pkgdown::build_articles(quiet = FALSE)
── Building articles ─────────────────────────────────────────────────────────────────────────────────────────
Reading vignettes/test.qmd
Running `quarto render`
ERROR: 文件名、目录名或卷标语法不正确。 (os error 123): stat 'E:\resultcheck\vignettes\C:\Users\Dianyi\AppData\Local\Temp\RtmpIbtb3w\pkgdown-quarto-acd4bda5188'
Stack trace:
at Object.statSync (ext:deno_fs/30_fs.js:415:3)
at ensureDirSync (file:///E:/quarto/bin/quarto.js:2466:27)
at renderProject (file:///E:/quarto/bin/quarto.js:130462:5)
at async _Command.actionHandler (file:///E:/quarto/bin/quarto.js:135810:24)
at async _Command.execute (file:///E:/quarto/bin/quarto.js:95902:7)
at async _Command.parseCommand (file:///E:/quarto/bin/quarto.js:95779:14)
at async quarto4 (file:///E:/quarto/bin/quarto.js:183810:5)
at async file:///E:/quarto/bin/quarto.js:183838:5
at async file:///E:/quarto/bin/quarto.js:183693:14
at async mainRunner (file:///E:/quarto/bin/quarto.js:183695:5)
Error in `quarto::quarto_render()`:
! Error running quarto CLI from R.
Caused by error in `quarto::quarto_render()`:
✖ Error returned by quarto CLI.
-----------------------------
ERROR: 文件名、目录名或卷标语法不正确。 (os error 123): stat
'E:\resultcheck\vignettes\C:\Users\Dianyi\AppData\Local\Temp\RtmpIbtb3w\pkgdown-quarto-acd4bda5188'
Stack trace:
at Object.statSync (ext:deno_fs/30_fs.js:415:3)
at ensureDirSync (file:///E:/quarto/bin/quarto.js:2466:27)
at renderProject (file:///E:/quarto/bin/quarto.js:130462:5)
at async _Command.actionHandler (file:///E:/quarto/bin/quarto.js:135810:24)
at async _Command.execute (file:///E:/quarto/bin/quarto.js:95902:7)
at async _Command.parseCommand (file:///E:/quarto/bin/quarto.js:95779:14)
at async quarto4 (file:///E:/quarto/bin/quarto.js:183810:5)
at async file:///E:/quarto/bin/quarto.js:183838:5
at async file:///E:/quarto/bin/quarto.js:183693:14
at async mainRunner (file:///E:/quarto/bin/quarto.js:183695:5)
Caused by error:
! System command 'quarto.exe' failed
The same vignette renders correctly with:
quarto::quarto_render("vignettes/test.qmd")
Description
When building a pkgdown site with Quarto vignettes on Windows,
pkgdown::build_articles()fails due to an invalid path being passed to the Quarto CLI.The error appears to be caused by incorrect concatenation of an absolute temporary path with a project-relative path, resulting in a malformed path like:
The same vignette renders correctly with: