-
Notifications
You must be signed in to change notification settings - Fork 399
Open
Labels
Description
I have:
- searched the issue tracker for similar issues
- installed the latest version of Quarto CLI
- formatted my issue following the Bug Reports guide
Bug description
Quarto erroneously treats a font URL as a file path, resulting in ERROR: NotFound: No such file or directory, when using a brand extension. Somewhat related to #12267.
Steps to reproduce
Consider this folder structure:
project/
├── _extensions/
│ └── brand-yml/
│ ├── _extension.yml
│ └── brand.yml
├── _quarto.yml
└── example.qmd
example.qmd
---
title: Test
---
{{< lipsum 2 >}}brand.yml
typography:
fonts:
- family: Noto Sans
source: file
files:
- path: https://notofonts.github.io/latin-greek-cyrillic/fonts/NotoSans/unhinted/ttf/NotoSans-Regular.ttf
base:
family: Noto SansActual behavior
quarto preview ./example.qmd --no-browser --no-watch-inputs
pandoc
to: html
output-file: example.html
standalone: true
section-divs: true
html-math-method: mathjax
wrap: none
default-image-extension: png
variables: {}
metadata
document-css: false
link-citations: true
date-format: long
lang: en
title: Test
ERROR: NotFound: No such file or directory (os error 2): lstat '~/project/_extensions/brand-yml/https:/notofonts.github.io/latin-greek-cyrillic/fonts/NotoSans/unhinted/ttf/NotoSans-Regular.ttf'
Stack trace:
at Object.lstatSync (ext:deno_fs/30_fs.js:405:3)
at copyTo (file:///Applications/quarto/bin/quarto.js:78841:24)
at doCopy (file:///Applications/quarto/bin/quarto.js:78882:5)
at copyFileIfNewer (file:///Applications/quarto/bin/quarto.js:78899:5)
at copyDependencyFile (file:///Applications/quarto/bin/quarto.js:112052:3)
at copyFile3 (file:///Applications/quarto/bin/quarto.js:111965:7)
at file:///Applications/quarto/bin/quarto.js:112043:50
at Array.forEach (<anonymous>)
at processHtmlDependencies (file:///Applications/quarto/bin/quarto.js:112043:28)
at readAndInjectDependencies (file:///Applications/quarto/bin/quarto.js:111868:23)Expected behavior
A remote location should be supported as described in brand-yml docs. Admittedly, if I move the brand file to the root of the project as _brand.yml, it correctly generates the output (with the font applied) as expected:
project/
├── _brand.yml
├── _quarto.yml
└── example.qmd
It seems like the issue only arrises when using an extension.
Your environment
- IDE: VS Code 1.106.0
- OS: MacOS Tahoe 26.1
Quarto check output
Quarto 1.8.26
[✓] Checking environment information...
Quarto cache location: ~/Library/Caches/quarto
[✓] Checking versions of quarto binary dependencies...
Pandoc version 3.6.3: OK
Dart Sass version 1.87.0: OK
Deno version 2.3.1: OK
Typst version 0.13.0: OK
[✓] Checking versions of quarto dependencies......OK
[✓] Checking Quarto installation......OK
Version: 1.8.26
Path: /Applications/quarto/bin
[✓] Checking tools....................OK
TinyTeX: (not installed)
Chromium: (not installed)
[✓] Checking LaTeX....................OK
Using: Installation From Path
Path: /usr/local/bin
Version: 2025
[✓] Checking Chrome Headless....................OK
Using: Chrome found on system
Path: /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
Source: MacOS known location
[✓] Checking basic markdown render....OK
[✓] Checking Python 3 installation....OK
Version: 3.12.7 (Conda)
Path: /opt/anaconda3/bin/python
Jupyter: 5.7.2
Kernels: python3
[✓] Checking Jupyter engine render....OK
[✓] Checking R installation...........OK
Version: 4.4.0
Path: /Library/Frameworks/R.framework/Resources
LibPaths:
- /Library/Frameworks/R.framework/Versions/4.4-arm64/Resources/library
knitr: (None)
rmarkdown: (None)
The knitr package is not available in this R installation.
Install with install.packages("knitr")
The rmarkdown package is not available in this R installation.
Install with install.packages("rmarkdown")