Hi!
I wrote a small program to produce invoice from a data base following this tutorial, that worked fine until I update Xcode
and reinstall xz
library in order to install Typst
.
My set up is :
RStudio : "2023.09.1+494"
MacOS : 11.7.10
Quarto version (external of the one in R): 1.5.57
Quarto package version : "1.4.4"
X code version : Xcode 13.2.1 Build version 13C100
reports = tibble::tibble(input = "Invoice_template.qmd",
output_file = stringr::str_glue("INVOICES/facture_no_{non_dup_df$invoice_no}.pdf"),
execute_params = map(non_dup_df$invoice_no, ~list(invoice_no = .)))
quarto::quarto_render(input = "Invoice_template.qmd",
output_file = "Invoice_no_0016-20240813-632323.pdf",
execute_params = reports[16, "execute_params"],
quiet = FALSE, debug = TRUE)
# purrr::pwalk(reports, quarto::quarto_render)
Returns:
Error in knit_params_get(input_lines, params) :
render params not declared in YAML: execute_params
Calls: .main -> execute -> <Anonymous> -> knit_params_get
Execution halted
The first error seems to be related to Yalm
and missing parameters. It led me here, but default params are declared in my Yalm
template:
---
title: ""
format:
pdf:
mainfont: Calibri
papersize: a4
fig-pos: 'H'
header-includes:
- \usepackage{float}
- \floatplacement{table}{H}
geometry:
- inner=1.5cm
- outer=1.5cm
- top=2cm
- bottom=4cm
- headsep=7pt
- headheight=5pt
- footskip=33pt
- ignorehead
- ignorefoot
- heightrounded
editor: visual
params:
invoice_no: "0016-20240813-632323"
---
Second error message is probably related to the first one but I'm not sure because the program worked good before I made update Xcode
and and reinstall xz
lib.
Error in `quarto::quarto_render()`:
✖ Error running quarto cli.
Caused by error:
! System command 'quarto' failed
Run `rlang::last_trace()` to see where the error occurred.
> rlang::last_trace()
<error/rlang_error>
Error in `quarto::quarto_render()`:
✖ Error running quarto cli.
Caused by error:
! System command 'quarto' failed
---
Backtrace:
▆
1. └─quarto::quarto_render(...)
2. └─quarto:::quarto_run(args, echo = TRUE, quarto_bin = quarto_bin)
Run rlang::last_trace(drop = FALSE) to see 6 hidden frames.
> rlang::last_trace(drop = FALSE)
<error/rlang_error>
Error in `quarto::quarto_render()`:
✖ Error running quarto cli.
Caused by error:
! System command 'quarto' failed
---
Backtrace:
▆
1. └─quarto::quarto_render(...)
2. └─quarto:::quarto_run(args, echo = TRUE, quarto_bin = quarto_bin)
3. └─base::tryCatch(...)
4. └─base (local) tryCatchList(expr, classes, parentenv, handlers)
5. └─base (local) tryCatchOne(expr, names, parentenv, handlers[[1L]])
6. └─value[[3L]](cond)
7. └─cli::cli_abort(msg, call = .call, parent = e)
8. └─rlang::abort(...)
Any idea?
EDIT:
The Render button works fine.
The quarto::quarto_render
function also works with the default quarto file format: pdf
proposed in RStudio.
So the problem seems related to the call of the parameters in the template.
Also note that the exemple used to build my program in the first place does not function anymore.