`--output-dir` fails in a project that sets `project.output-dir`
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 82/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- rust
- Área
- build-system
Línea de trabajo
Empieza en crates/quarto-core/src/render_to_file.rs, donde --output-dir se aplica a la salida de la página y se configura el resolvedor de recursos; compara la ruta HTML con el tratamiento de docx y typst. Comprueba en crates/quarto-core/src/resource_resolver.rs la comprobación de la raíz permitida. El trabajo estará terminado cuando renderizar con --output-dir out escriba la página y los archivos auxiliares en out, deje _site intacto e indique out en el resumen.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Bug description
To compare q2 with Quarto 1 on the dashboard from #1131, I wanted the q2 output in its own folder, away from the _site/ that Quarto 1 publishes.
The project sets output-dir: _site, and q2 render index.qmd --output-dir out stops on the first support file.
The relative and the absolute form of the path give the same error.
The page itself follows the option: when --output-dir is given, the project output-dir is skipped:
The writes, though, go through a resource resolver whose site_root is still the project output-dir, and that root is the only place the output sink accepts.
A comment in the same file describes this stock resolver and moves site_root for docx, typst and similar formats, but HTML keeps it:
Steps to reproduce
_quarto.yml:
project:
type: default
output-dir: _site
index.qmd:
---
title: Hello
---
Hello.
q2 render index.qmd --output-dir out
quarto render index.qmd --output-dir out
Actual behavior
q2 writes nothing:
Rendering project: <dir> (type: default)
error: <dir>/index.qmd: output destination <dir>/out/index_files/quarto/quarto-theme-d9a3a2debf57bcb1.css is not under any allowed root (<dir>/_site)
Rendered 0 of 1 files to <dir>/_site — 1 error
The summary line names _site, not out.
Quarto 1 writes out/index.html and out/index_files/, and leaves _site/ alone.
Expected behavior
out/ gets the page and its support files, as with Quarto 1, and the summary names out.
Building the resolver with site_root set to the --output-dir value whenever the option is given would cover it.
Your environment
- q2:
q2 (quarto 2) 0.43.0-nightly.20261109(nightly built from 8f17e95), andq2 v0.42.0. - Quarto 1 for comparison: development build of quarto-dev/quarto-cli@fa74261.
- OS: macOS 27.2 (arm64).
- Terminal, no IDE.
- Lenguaje dominante
- Rust
- Estrellas
- 302
- Forks
- 22
- Merge medio
- 5 h 6 min
- PR fusionados (30 d)
- 207
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de quarto-dev/q2
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 73/100
quarto-dev/q2#1155 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
quarto-dev/q2#1135 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
quarto-dev/q2#1103 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
quarto-dev/q2#1095 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
quarto-dev/q2#1031 ·
Los mantenedores suelen responder en 1 día
Todos los issues de quarto-dev/q2
Issues similares
-
backlog priority: low ui
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
storytold/vectorcraft#6445 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
area: cli kind:docs priority: P3
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
tursodatabase/libsql#2312 ·
Los mantenedores suelen responder en 11 días
-
`NodeOwned::size_in_bytes` does not count the `ChildrenNodesOwned` heap allocation (since #216)Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
paritytech/trie#251 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día