Error(s) in re-building vignettes:
sh: line 1: 27173 Segmentation fault: 11  '/Library/Frameworks/R.framework/Resources/bin/R' --vanilla --no-echo > '/Volumes/Temp/tmp/RtmpoDQU4s/file6447799ecf38' 2>&1 < '/Volumes/Temp/tmp/RtmpoDQU4s/file64472936a3e9'
--- re-building ‘abfit-baseline-opts.Rmd’ using rmarkdown

 *** caught segfault ***
address 0x2, cause 'invalid permissions'

Traceback:
 1: eigen(H_mat_list$H_mat, symmetric = TRUE)
 2: spin_sys(spin_params, ft, ref)
 3: pul_seq(group, ft, ref, ...)
 4: sim_mol(mol_list[[n]], pul_seq, ft, ref, fs, N, xlim, ...)
 5: sim_basis(get_1h_brain_basis_paras(ft = acq_paras$ft, lcm_compat = lcm_compat),     seq_press_ideal, acq_paras = acq_paras, xlim = xlim, TE1 = TE1,     TE2 = TE2)
 6: sim_basis_1h_brain_press(mrs_data)
 7: eval(expr, envir)
 8: eval(expr, envir)
 9: withVisible(eval(expr, envir))
10: withCallingHandlers(code, error = function (e) rlang::entrace(e), message = function (cnd) {    watcher$capture_plot_and_output()    if (on_message$capture) {        watcher$push(cnd)    }    if (on_message$silence) {        invokeRestart("muffleMessage")    }}, warning = function (cnd) {    if (getOption("warn") >= 2 || getOption("warn") < 0) {        return()    }    watcher$capture_plot_and_output()    if (on_warning$capture) {        cnd <- sanitize_call(cnd)        watcher$push(cnd)    }    if (on_warning$silence) {        invokeRestart("muffleWarning")    }}, error = function (cnd) {    watcher$capture_plot_and_output()    cnd <- sanitize_call(cnd)    watcher$push(cnd)    switch(on_error, continue = invokeRestart("eval_continue"),         stop = invokeRestart("eval_stop"), error = NULL)})
11: eval(call)
12: eval(call)
13: with_handlers({    for (expr in tle$exprs) {        ev <- withVisible(eval(expr, envir))        watcher$capture_plot_and_output()        watcher$print_value(ev$value, ev$visible, envir)    }    TRUE}, handlers)
14: doWithOneRestart(return(expr), restart)
15: withOneRestart(expr, restarts[[1L]])
16: withRestartList(expr, restarts[-nr])
17: doWithOneRestart(return(expr), restart)
18: withOneRestart(withRestartList(expr, restarts[-nr]), restarts[[nr]])
19: withRestartList(expr, restarts)
20: withRestarts(with_handlers({    for (expr in tle$exprs) {        ev <- withVisible(eval(expr, envir))        watcher$capture_plot_and_output()        watcher$print_value(ev$value, ev$visible, envir)    }    TRUE}, handlers), eval_continue = function() TRUE, eval_stop = function() FALSE)
21: evaluate::evaluate(...)
22: evaluate(code, envir = env, new_device = FALSE, keep_warning = if (is.numeric(options$warning)) TRUE else options$warning,     keep_message = if (is.numeric(options$message)) TRUE else options$message,     stop_on_error = if (is.numeric(options$error)) options$error else {        if (options$error && options$include)             0L        else 2L    }, output_handler = knit_handlers(options$render, options))
23: in_dir(input_dir(), expr)
24: in_input_dir(evaluate(code, envir = env, new_device = FALSE,     keep_warning = if (is.numeric(options$warning)) TRUE else options$warning,     keep_message = if (is.numeric(options$message)) TRUE else options$message,     stop_on_error = if (is.numeric(options$error)) options$error else {        if (options$error && options$include)             0L        else 2L    }, output_handler = knit_handlers(options$render, options)))
25: eng_r(options)
26: block_exec(params)
27: call_block(x)
28: process_group(group)
29: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group),     error = function(e) {        if (progress && is.function(pb$interrupt))             pb$interrupt()        if (is_R_CMD_build() || is_R_CMD_check())             error <<- format(e)    })
30: with_options(withCallingHandlers(if (tangle) process_tangle(group) else process_group(group),     error = function(e) {        if (progress && is.function(pb$interrupt))             pb$interrupt()        if (is_R_CMD_build() || is_R_CMD_check())             error <<- format(e)    }), list(rlang_trace_top_env = knit_global()))
31: xfun:::handle_error(with_options(withCallingHandlers(if (tangle) process_tangle(group) else process_group(group),     error = function(e) {        if (progress && is.function(pb$interrupt))             pb$interrupt()        if (is_R_CMD_build() || is_R_CMD_check())             error <<- format(e)    }), list(rlang_trace_top_env = knit_global())), function(loc) {    setwd(wd)    write_utf8(res, output %n% stdout())    paste0("\nQuitting from ", loc, if (!is.null(error))         paste0("\n", rule(), error, "\n", rule()))}, if (labels[i] != "") sprintf(" [%s]", labels[i]), get_loc)
32: process_file(text, output)
33: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet)
34: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv(),     output_dir = getwd(), ...)
35: vweave_rmarkdown(...)
36: engine$weave(file, quiet = quiet, encoding = enc)
37: doTryCatch(return(expr), name, parentenv, handler)
38: tryCatchOne(expr, names, parentenv, handlers[[1L]])
39: tryCatchList(expr, classes, parentenv, handlers)
40: tryCatch({    engine$weave(file, quiet = quiet, encoding = enc)    setwd(startdir)    output <- find_vignette_product(name, by = "weave", engine = engine)    if (!have.makefile && vignette_is_tex(output)) {        texi2pdf(file = output, clean = FALSE, quiet = quiet)        output <- find_vignette_product(name, by = "texi2pdf",             engine = engine)    }}, error = function(e) {    OK <<- FALSE    message(gettextf("Error: processing vignette '%s' failed with diagnostics:\n%s",         file, conditionMessage(e)))})
41: tools:::.buildOneVignette("abfit-baseline-opts.Rmd", "/Volumes/Builds/packages/big-sur-arm64/results/4.5/spant.Rcheck/vign_test/spant",     TRUE, FALSE, "abfit-baseline-opts", "UTF-8", "/Volumes/Temp/tmp/RtmpoDQU4s/file644760321b4e.rds")
An irrecoverable exception occurred. R is aborting now ...
sh: line 1: 27881 Segmentation fault: 11  '/Library/Frameworks/R.framework/Resources/bin/R' --vanilla --no-echo > '/Volumes/Temp/tmp/RtmpoDQU4s/file644747c4e72a' 2>&1 < '/Volumes/Temp/tmp/RtmpoDQU4s/file644750249b35'
--- re-building ‘spant-basis-simulation.Rmd’ using rmarkdown

 *** caught segfault ***
address 0x2, cause 'invalid permissions'

Traceback:
 1: eigen(H_mat_list$H_mat, symmetric = TRUE)
 2: spin_sys(spin_params, ft, ref)
 3: pul_seq(group, ft, ref, ...)
 4: sim_mol(mol_list[[n]], pul_seq, ft, ref, fs, N, xlim, ...)
 5: sim_basis(mol_list, pul_seq = seq_slaser_ideal, acq_paras = def_acq_paras(N = 2048,     fs = 2000, ft = 127800000), TE1 = 0.008, TE2 = 0.011, TE3 = 0.009)
 6: eval(expr, envir)
 7: eval(expr, envir)
 8: withVisible(eval(expr, envir))
 9: withCallingHandlers(code, error = function (e) rlang::entrace(e), message = function (cnd) {    watcher$capture_plot_and_output()    if (on_message$capture) {        watcher$push(cnd)    }    if (on_message$silence) {        invokeRestart("muffleMessage")    }}, warning = function (cnd) {    if (getOption("warn") >= 2 || getOption("warn") < 0) {        return()    }    watcher$capture_plot_and_output()    if (on_warning$capture) {        cnd <- sanitize_call(cnd)        watcher$push(cnd)    }    if (on_warning$silence) {        invokeRestart("muffleWarning")    }}, error = function (cnd) {    watcher$capture_plot_and_output()    cnd <- sanitize_call(cnd)    watcher$push(cnd)    switch(on_error, continue = invokeRestart("eval_continue"),         stop = invokeRestart("eval_stop"), error = NULL)})
10: eval(call)
11: eval(call)
12: with_handlers({    for (expr in tle$exprs) {        ev <- withVisible(eval(expr, envir))        watcher$capture_plot_and_output()        watcher$print_value(ev$value, ev$visible, envir)    }    TRUE}, handlers)
13: doWithOneRestart(return(expr), restart)
14: withOneRestart(expr, restarts[[1L]])
15: withRestartList(expr, restarts[-nr])
16: doWithOneRestart(return(expr), restart)
17: withOneRestart(withRestartList(expr, restarts[-nr]), restarts[[nr]])
18: withRestartList(expr, restarts)
19: withRestarts(with_handlers({    for (expr in tle$exprs) {        ev <- withVisible(eval(expr, envir))        watcher$capture_plot_and_output()        watcher$print_value(ev$value, ev$visible, envir)    }    TRUE}, handlers), eval_continue = function() TRUE, eval_stop = function() FALSE)
20: evaluate::evaluate(...)
21: evaluate(code, envir = env, new_device = FALSE, keep_warning = if (is.numeric(options$warning)) TRUE else options$warning,     keep_message = if (is.numeric(options$message)) TRUE else options$message,     stop_on_error = if (is.numeric(options$error)) options$error else {        if (options$error && options$include)             0L        else 2L    }, output_handler = knit_handlers(options$render, options))
22: in_dir(input_dir(), expr)
23: in_input_dir(evaluate(code, envir = env, new_device = FALSE,     keep_warning = if (is.numeric(options$warning)) TRUE else options$warning,     keep_message = if (is.numeric(options$message)) TRUE else options$message,     stop_on_error = if (is.numeric(options$error)) options$error else {        if (options$error && options$include)             0L        else 2L    }, output_handler = knit_handlers(options$render, options)))
24: eng_r(options)
25: block_exec(params)
26: call_block(x)
27: process_group(group)
28: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group),     error = function(e) {        if (progress && is.function(pb$interrupt))             pb$interrupt()        if (is_R_CMD_build() || is_R_CMD_check())             error <<- format(e)    })
29: with_options(withCallingHandlers(if (tangle) process_tangle(group) else process_group(group),     error = function(e) {        if (progress && is.function(pb$interrupt))             pb$interrupt()        if (is_R_CMD_build() || is_R_CMD_check())             error <<- format(e)    }), list(rlang_trace_top_env = knit_global()))
30: xfun:::handle_error(with_options(withCallingHandlers(if (tangle) process_tangle(group) else process_group(group),     error = function(e) {        if (progress && is.function(pb$interrupt))             pb$interrupt()        if (is_R_CMD_build() || is_R_CMD_check())             error <<- format(e)    }), list(rlang_trace_top_env = knit_global())), function(loc) {    setwd(wd)    write_utf8(res, output %n% stdout())    paste0("\nQuitting from ", loc, if (!is.null(error))         paste0("\n", rule(), error, "\n", rule()))}, if (labels[i] != "") sprintf(" [%s]", labels[i]), get_loc)
31: process_file(text, output)
32: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet)
33: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv(),     output_dir = getwd(), ...)
34: vweave_rmarkdown(...)
35: engine$weave(file, quiet = quiet, encoding = enc)
36: doTryCatch(return(expr), name, parentenv, handler)
37: tryCatchOne(expr, names, parentenv, handlers[[1L]])
38: tryCatchList(expr, classes, parentenv, handlers)
39: tryCatch({    engine$weave(file, quiet = quiet, encoding = enc)    setwd(startdir)    output <- find_vignette_product(name, by = "weave", engine = engine)    if (!have.makefile && vignette_is_tex(output)) {        texi2pdf(file = output, clean = FALSE, quiet = quiet)        output <- find_vignette_product(name, by = "texi2pdf",             engine = engine)    }}, error = function(e) {    OK <<- FALSE    message(gettextf("Error: processing vignette '%s' failed with diagnostics:\n%s",         file, conditionMessage(e)))})
40: tools:::.buildOneVignette("spant-basis-simulation.Rmd", "/Volumes/Builds/packages/big-sur-arm64/results/4.5/spant.Rcheck/vign_test/spant",     TRUE, FALSE, "spant-basis-simulation", "UTF-8", "/Volumes/Temp/tmp/RtmpoDQU4s/file644742432b22.rds")
An irrecoverable exception occurred. R is aborting now ...
sh: line 1: 28296 Segmentation fault: 11  '/Library/Frameworks/R.framework/Resources/bin/R' --vanilla --no-echo > '/Volumes/Temp/tmp/RtmpoDQU4s/file64475678d466' 2>&1 < '/Volumes/Temp/tmp/RtmpoDQU4s/file644716c0a0e4'
--- re-building ‘spant-intro.Rmd’ using rmarkdown
2026-07-31 11:00:55.063 R[28296:190906] XType: Using static font registry.

 *** caught segfault ***
address 0x2, cause 'invalid permissions'

Traceback:
 1: eigen(H_mat_list$H_mat, symmetric = TRUE)
 2: spin_sys(spin_params, ft, ref)
 3: pul_seq(group, ft, ref, ...)
 4: sim_mol(mol_list[[n]], pul_seq, ft, ref, fs, N, xlim, ...)
 5: sim_basis(get_1h_brain_basis_paras(ft = acq_paras$ft, lcm_compat = lcm_compat),     seq_press_ideal, acq_paras = acq_paras, xlim = xlim, TE1 = TE1,     TE2 = TE2)
 6: sim_basis_1h_brain_press(mrs_proc)
 7: eval(expr, envir)
 8: eval(expr, envir)
 9: withVisible(eval(expr, envir))
10: withCallingHandlers(code, error = function (e) rlang::entrace(e), message = function (cnd) {    watcher$capture_plot_and_output()    if (on_message$capture) {        watcher$push(cnd)    }    if (on_message$silence) {        invokeRestart("muffleMessage")    }}, warning = function (cnd) {    if (getOption("warn") >= 2 || getOption("warn") < 0) {        return()    }    watcher$capture_plot_and_output()    if (on_warning$capture) {        cnd <- sanitize_call(cnd)        watcher$push(cnd)    }    if (on_warning$silence) {        invokeRestart("muffleWarning")    }}, error = function (cnd) {    watcher$capture_plot_and_output()    cnd <- sanitize_call(cnd)    watcher$push(cnd)    switch(on_error, continue = invokeRestart("eval_continue"),         stop = invokeRestart("eval_stop"), error = NULL)})
11: eval(call)
12: eval(call)
13: with_handlers({    for (expr in tle$exprs) {        ev <- withVisible(eval(expr, envir))        watcher$capture_plot_and_output()        watcher$print_value(ev$value, ev$visible, envir)    }    TRUE}, handlers)
14: doWithOneRestart(return(expr), restart)
15: withOneRestart(expr, restarts[[1L]])
16: withRestartList(expr, restarts[-nr])
17: doWithOneRestart(return(expr), restart)
18: withOneRestart(withRestartList(expr, restarts[-nr]), restarts[[nr]])
19: withRestartList(expr, restarts)
20: withRestarts(with_handlers({    for (expr in tle$exprs) {        ev <- withVisible(eval(expr, envir))        watcher$capture_plot_and_output()        watcher$print_value(ev$value, ev$visible, envir)    }    TRUE}, handlers), eval_continue = function() TRUE, eval_stop = function() FALSE)
21: evaluate::evaluate(...)
22: evaluate(code, envir = env, new_device = FALSE, keep_warning = if (is.numeric(options$warning)) TRUE else options$warning,     keep_message = if (is.numeric(options$message)) TRUE else options$message,     stop_on_error = if (is.numeric(options$error)) options$error else {        if (options$error && options$include)             0L        else 2L    }, output_handler = knit_handlers(options$render, options))
23: in_dir(input_dir(), expr)
24: in_input_dir(evaluate(code, envir = env, new_device = FALSE,     keep_warning = if (is.numeric(options$warning)) TRUE else options$warning,     keep_message = if (is.numeric(options$message)) TRUE else options$message,     stop_on_error = if (is.numeric(options$error)) options$error else {        if (options$error && options$include)             0L        else 2L    }, output_handler = knit_handlers(options$render, options)))
25: eng_r(options)
26: block_exec(params)
27: call_block(x)
28: process_group(group)
29: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group),     error = function(e) {        if (progress && is.function(pb$interrupt))             pb$interrupt()        if (is_R_CMD_build() || is_R_CMD_check())             error <<- format(e)    })
30: with_options(withCallingHandlers(if (tangle) process_tangle(group) else process_group(group),     error = function(e) {        if (progress && is.function(pb$interrupt))             pb$interrupt()        if (is_R_CMD_build() || is_R_CMD_check())             error <<- format(e)    }), list(rlang_trace_top_env = knit_global()))
31: xfun:::handle_error(with_options(withCallingHandlers(if (tangle) process_tangle(group) else process_group(group),     error = function(e) {        if (progress && is.function(pb$interrupt))             pb$interrupt()        if (is_R_CMD_build() || is_R_CMD_check())             error <<- format(e)    }), list(rlang_trace_top_env = knit_global())), function(loc) {    setwd(wd)    write_utf8(res, output %n% stdout())    paste0("\nQuitting from ", loc, if (!is.null(error))         paste0("\n", rule(), error, "\n", rule()))}, if (labels[i] != "") sprintf(" [%s]", labels[i]), get_loc)
32: process_file(text, output)
33: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet)
34: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv(),     output_dir = getwd(), ...)
35: vweave_rmarkdown(...)
36: engine$weave(file, quiet = quiet, encoding = enc)
37: doTryCatch(return(expr), name, parentenv, handler)
38: tryCatchOne(expr, names, parentenv, handlers[[1L]])
39: tryCatchList(expr, classes, parentenv, handlers)
40: tryCatch({    engine$weave(file, quiet = quiet, encoding = enc)    setwd(startdir)    output <- find_vignette_product(name, by = "weave", engine = engine)    if (!have.makefile && vignette_is_tex(output)) {        texi2pdf(file = output, clean = FALSE, quiet = quiet)        output <- find_vignette_product(name, by = "texi2pdf",             engine = engine)    }}, error = function(e) {    OK <<- FALSE    message(gettextf("Error: processing vignette '%s' failed with diagnostics:\n%s",         file, conditionMessage(e)))})
41: tools:::.buildOneVignette("spant-intro.Rmd", "/Volumes/Builds/packages/big-sur-arm64/results/4.5/spant.Rcheck/vign_test/spant",     TRUE, FALSE, "spant-intro", "UTF-8", "/Volumes/Temp/tmp/RtmpoDQU4s/file64471349ddae.rds")
An irrecoverable exception occurred. R is aborting now ...
sh: line 1: 29382 Segmentation fault: 11  '/Library/Frameworks/R.framework/Resources/bin/R' --vanilla --no-echo > '/Volumes/Temp/tmp/RtmpoDQU4s/file644751614747' 2>&1 < '/Volumes/Temp/tmp/RtmpoDQU4s/file6447498eb00e'
--- re-building ‘spant-metabolite-simulation.Rmd’ using rmarkdown

 *** caught segfault ***
address 0x3f, cause 'invalid permissions'

Traceback:
 1: eigen(H_mat_list$H_mat, symmetric = TRUE)
 2: spin_sys(spin_params, ft, ref)
 3: pul_seq(group, ft, ref, ...)
 4: sim_mol(ins, ft = 3e+08, N = 4096)
 5: lb(sim_mol(ins, ft = 3e+08, N = 4096), 2)
 6: plot(lb(sim_mol(ins, ft = 3e+08, N = 4096), 2), xlim = c(3.8,     3.1))
 7: eval(expr, envir)
 8: eval(expr, envir)
 9: withVisible(eval(expr, envir))
10: withCallingHandlers(code, error = function (e) rlang::entrace(e), message = function (cnd) {    watcher$capture_plot_and_output()    if (on_message$capture) {        watcher$push(cnd)    }    if (on_message$silence) {        invokeRestart("muffleMessage")    }}, warning = function (cnd) {    if (getOption("warn") >= 2 || getOption("warn") < 0) {        return()    }    watcher$capture_plot_and_output()    if (on_warning$capture) {        cnd <- sanitize_call(cnd)        watcher$push(cnd)    }    if (on_warning$silence) {        invokeRestart("muffleWarning")    }}, error = function (cnd) {    watcher$capture_plot_and_output()    cnd <- sanitize_call(cnd)    watcher$push(cnd)    switch(on_error, continue = invokeRestart("eval_continue"),         stop = invokeRestart("eval_stop"), error = NULL)})
11: eval(call)
12: eval(call)
13: with_handlers({    for (expr in tle$exprs) {        ev <- withVisible(eval(expr, envir))        watcher$capture_plot_and_output()        watcher$print_value(ev$value, ev$visible, envir)    }    TRUE}, handlers)
14: doWithOneRestart(return(expr), restart)
15: withOneRestart(expr, restarts[[1L]])
16: withRestartList(expr, restarts[-nr])
17: doWithOneRestart(return(expr), restart)
18: withOneRestart(withRestartList(expr, restarts[-nr]), restarts[[nr]])
19: withRestartList(expr, restarts)
20: withRestarts(with_handlers({    for (expr in tle$exprs) {        ev <- withVisible(eval(expr, envir))        watcher$capture_plot_and_output()        watcher$print_value(ev$value, ev$visible, envir)    }    TRUE}, handlers), eval_continue = function() TRUE, eval_stop = function() FALSE)
21: evaluate::evaluate(...)
22: evaluate(code, envir = env, new_device = FALSE, keep_warning = if (is.numeric(options$warning)) TRUE else options$warning,     keep_message = if (is.numeric(options$message)) TRUE else options$message,     stop_on_error = if (is.numeric(options$error)) options$error else {        if (options$error && options$include)             0L        else 2L    }, output_handler = knit_handlers(options$render, options))
23: in_dir(input_dir(), expr)
24: in_input_dir(evaluate(code, envir = env, new_device = FALSE,     keep_warning = if (is.numeric(options$warning)) TRUE else options$warning,     keep_message = if (is.numeric(options$message)) TRUE else options$message,     stop_on_error = if (is.numeric(options$error)) options$error else {        if (options$error && options$include)             0L        else 2L    }, output_handler = knit_handlers(options$render, options)))
25: eng_r(options)
26: block_exec(params)
27: call_block(x)
28: process_group(group)
29: withCallingHandlers(if (tangle) process_tangle(group) else process_group(group),     error = function(e) {        if (progress && is.function(pb$interrupt))             pb$interrupt()        if (is_R_CMD_build() || is_R_CMD_check())             error <<- format(e)    })
30: with_options(withCallingHandlers(if (tangle) process_tangle(group) else process_group(group),     error = function(e) {        if (progress && is.function(pb$interrupt))             pb$interrupt()        if (is_R_CMD_build() || is_R_CMD_check())             error <<- format(e)    }), list(rlang_trace_top_env = knit_global()))
31: xfun:::handle_error(with_options(withCallingHandlers(if (tangle) process_tangle(group) else process_group(group),     error = function(e) {        if (progress && is.function(pb$interrupt))             pb$interrupt()        if (is_R_CMD_build() || is_R_CMD_check())             error <<- format(e)    }), list(rlang_trace_top_env = knit_global())), function(loc) {    setwd(wd)    write_utf8(res, output %n% stdout())    paste0("\nQuitting from ", loc, if (!is.null(error))         paste0("\n", rule(), error, "\n", rule()))}, if (labels[i] != "") sprintf(" [%s]", labels[i]), get_loc)
32: process_file(text, output)
33: knitr::knit(knit_input, knit_output, envir = envir, quiet = quiet)
34: rmarkdown::render(file, encoding = encoding, quiet = quiet, envir = globalenv(),     output_dir = getwd(), ...)
35: vweave_rmarkdown(...)
36: engine$weave(file, quiet = quiet, encoding = enc)
37: doTryCatch(return(expr), name, parentenv, handler)
38: tryCatchOne(expr, names, parentenv, handlers[[1L]])
39: tryCatchList(expr, classes, parentenv, handlers)
40: tryCatch({    engine$weave(file, quiet = quiet, encoding = enc)    setwd(startdir)    output <- find_vignette_product(name, by = "weave", engine = engine)    if (!have.makefile && vignette_is_tex(output)) {        texi2pdf(file = output, clean = FALSE, quiet = quiet)        output <- find_vignette_product(name, by = "texi2pdf",             engine = engine)    }}, error = function(e) {    OK <<- FALSE    message(gettextf("Error: processing vignette '%s' failed with diagnostics:\n%s",         file, conditionMessage(e)))})
41: tools:::.buildOneVignette("spant-metabolite-simulation.Rmd",     "/Volumes/Builds/packages/big-sur-arm64/results/4.5/spant.Rcheck/vign_test/spant",     TRUE, FALSE, "spant-metabolite-simulation", "UTF-8", "/Volumes/Temp/tmp/RtmpoDQU4s/file64474082e467.rds")
An irrecoverable exception occurred. R is aborting now ...
--- re-building ‘spant-preprocessing.Rmd’ using rmarkdown
2026-07-31 11:00:56.787 R[29632:192869] XType: Using static font registry.
--- finished re-building ‘spant-preprocessing.Rmd’

SUMMARY: processing the following files failed:
  ‘abfit-baseline-opts.Rmd’ ‘spant-basis-simulation.Rmd’
  ‘spant-intro.Rmd’ ‘spant-metabolite-simulation.Rmd’

Error: Vignette re-building failed.
Execution halted