-
Notifications
You must be signed in to change notification settings - Fork 284
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Web URL not rendered in book page-footers on Windows #8737
Comments
I should add that this seems to be specifically a problem with book projects, not single page website projects. |
FWIW, on macOS, it works as expected. |
This is unexpected that the error happens from quarto-cli/src/project/project-context.ts Lines 762 to 767 in d047195
and it errors because
I need to look how it goes on linux. It reminds me of issue with path detection between Linux and Windows for This could end up there because |
Any quarto-cli/src/project/types/book/book-config.ts Lines 250 to 268 in d047195
That is why it ended up in render list file. This list will go through I believe this windows issue is just unveiling a hidden behavior in Linux: URL that gets in glob to be expanded in our function Lines 177 to 190 in d047195
with expandGlobSync are just filtered out.
Behavior on Linux> import { expandGlobSync } from "https://deno.land/std@0.217.0/fs/mod.ts";
undefined
> const href = "https://quarto.org"
undefined
> for (file of expandGlobSync(href)) { console.log(file) }
undefined Behavior on Windows> import { expandGlobSync } from "https://deno.land/std@0.217.0/fs/mod.ts";
undefined
> const href = "https://quarto.org"
undefined
> for (file of expandGlobSync(href)) { console.log(file) }
Uncaught Error: La syntaxe du nom de fichier, de répertoire ou de volume est incorrecte. (os error 123): stat 'C:\Users\chris\AppData\Local\Temp\quarto\https:\quarto.org'
at Object.statSync (ext:deno_fs/30_fs.js:425:3)
at createWalkEntrySync (https://deno.land/std@0.217.0/fs/_create_walk_entry.ts:22:21)
at expandGlobSync (https://deno.land/std@0.217.0/fs/expand_glob.ts:264:21)
at expandGlobSync.next (<anonymous>)
at <anonymous>:1:27 Deno ignores this because it handle error for file not found at https://deno.land/std@0.217.0/fs/expand_glob.ts?source=#L136 let fixedRootInfo: WalkEntry;
try {
fixedRootInfo = await createWalkEntry(fixedRoot);
} catch (error) {
return throwUnlessNotFound(error);
} So this could also be seen as a Deno bug. It is really to same issue of invalid path on windows, not being seen as invalid on Linux. Windows errors for invalid path before not found error. Previously we add this type of error with Related issue is #4124 with fix at #4129 by checking for https path. So should probably be the same fix here for book with page footer file detection. However, I think we are impacted by this hidden behavior in several places we'll keep discovering |
Change has been made in 90e04f4 following discussion in #3441 to allow `href` being a .qmd file to be rendered. Though when `href` is a link, it made Windows fails because our globExpanson on Linux knows to ignore https:// one, and on Windows it doesn't. Deno behavior for `expandGlobSync` - see discussion in issue #8737)
Change has been made in 90e04f4 following discussion in #3441 to allow `href` being a .qmd file to be rendered. Though when `href` is a link, it made Windows fails because our globExpanson on Linux knows to ignore https:// one, and on Windows it doesn't. Deno behavior for `expandGlobSync` - see discussion in issue #8737)
Bug description
When rendering a book project on a Windows platform, when a page-footer includes a URL to a web site, Quarto errors out. No output document is produced.
The same files, when rendered on a Linux platform, work as expected.
Steps to reproduce
quarto create project book test-book
_quarto.yml
(underchapters:
)Expected behavior
This should render an HTML book, with the appropriate link in the page footer.
Actual behavior
When rendered in Rstudio, the following result appears in the Background Jobs tab
Your environment
Quarto check output
Quarto 1.4.549
[>] Checking versions of quarto binary dependencies...
Pandoc version 3.1.11: OK
Dart Sass version 1.69.5: OK
Deno version 1.37.2: OK
[>] Checking versions of quarto dependencies......OK
[>] Checking Quarto installation......OK
Version: 1.4.549
Path: C:\Program Files\Quarto\bin
CodePage: 1252
[>] Checking tools....................OK
TinyTeX: (not installed)
Chromium: (not installed)
[>] Checking LaTeX....................OK
Using: Installation From Path
Path: C:\Program Files\texlive\2023\bin\windows
Version: 2023
[>] Checking basic markdown render....OK
[>] Checking Python 3 installation....(None)
(|) Checking R installation...........Finished Rprofile.site
[>] Checking R installation...........OK
Version: 4.3.2
Path: C:/PROGRA
1/R/R-431.2LibPaths:
- U:/R/4.3.2
- C:/Program Files/R/R-4.3.2/site-library
- C:/Program Files/R/R-4.3.2/library
knitr: 1.45
rmarkdown: 2.25
[>] Checking Knitr engine render......OK
The text was updated successfully, but these errors were encountered: