diff --git a/news/changelog-1.11.md b/news/changelog-1.11.md index 63e16dd8fd2..c0d9d5881c1 100644 --- a/news/changelog-1.11.md +++ b/news/changelog-1.11.md @@ -165,6 +165,7 @@ All changes included in 1.11: - ([#14834](https://github.com/quarto-dev/quarto-cli/issues/14834)): Fix `ERROR: Internal Error` when rendering documents whose payload exceeds the Julia server's socket send buffer. - ([PumasAI/quarto-julia-engine#8](https://github.com/PumasAI/quarto-julia-engine/pull/8)): Support `keep-ipynb`, which writes the executed notebook to `.ipynb` alongside the source file. - ([PumasAI/quarto-julia-engine#14](https://github.com/PumasAI/quarto-julia-engine/pull/14)): Fix the Julia worker process being left running after a failed render without an execution daemon. +- ([PumasAI/quarto-julia-engine#16](https://github.com/PumasAI/quarto-julia-engine/pull/16)): Update QuartoNotebookRunner to 0.18.5, which fixes renders hanging on long error stacktraces or on cells that leave a process running, blank R plots with `fig-format: svg`, slow shutdown of workers with a lot of `stdout` output, and cached cell outputs not being invalidated when document or project metadata changes. - ([PumasAI/quarto-julia-engine#13](https://github.com/PumasAI/quarto-julia-engine/pull/13)): Shell (`;`), help (`?`), and Pkg (`]`) mode cells now work when the cell has `#|` options. - ([PumasAI/quarto-julia-engine#11](https://github.com/PumasAI/quarto-julia-engine/pull/11)): Support `fig-format: retina`, normalized to `png` with doubled `fig-dpi` as in the `jupyter` and `knitr` engines. - ([PumasAI/quarto-julia-engine#7](https://github.com/PumasAI/quarto-julia-engine/pull/7)): Support `execute-dir`, shared worker processes across notebooks with matching configs (`share_worker_process: true`). diff --git a/src/resources/extension-subtrees/julia-engine/CHANGELOG.md b/src/resources/extension-subtrees/julia-engine/CHANGELOG.md index de45a5eff5d..2338bcb98e7 100644 --- a/src/resources/extension-subtrees/julia-engine/CHANGELOG.md +++ b/src/resources/extension-subtrees/julia-engine/CHANGELOG.md @@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased +## [0.2.3](https://github.com/PumasAI/quarto-julia-engine/releases/tag/v0.2.3) - 2026-10-21 + +- Updated to QuartoNotebookRunner 0.18.5 [#16](https://github.com/PumasAI/quarto-julia-engine/pull/16): + - `notebook_options()` now includes all document and project metadata, and any metadata change invalidates the cell output cache. + - Notebooks with long error stacktraces no longer hang the render. + - A cell that starts a process and leaves it running no longer hangs the notebook. + - Workers that write a lot to `stdout` no longer take 30 seconds to shut down. + - R plots are no longer blank under `fig-format: svg`. + - Frontmatter merging no longer warns on Julia 1.13. + ## [0.2.2](https://github.com/PumasAI/quarto-julia-engine/releases/tag/v0.2.2) - 2026-09-08 - A failed render without an execution daemon no longer leaves the notebook's worker process running [#14](https://github.com/PumasAI/quarto-julia-engine/pull/14). diff --git a/src/resources/extension-subtrees/julia-engine/_extensions/julia-engine/Project.toml b/src/resources/extension-subtrees/julia-engine/_extensions/julia-engine/Project.toml index dbb2263da24..72cb4c53008 100644 --- a/src/resources/extension-subtrees/julia-engine/_extensions/julia-engine/Project.toml +++ b/src/resources/extension-subtrees/julia-engine/_extensions/julia-engine/Project.toml @@ -2,4 +2,4 @@ QuartoNotebookRunner = "4c0109c6-14e9-4c88-93f0-2b974d3468f4" [compat] -QuartoNotebookRunner = "=0.18.2" +QuartoNotebookRunner = "=0.18.5" diff --git a/src/resources/extension-subtrees/julia-engine/_extensions/julia-engine/_extension.yml b/src/resources/extension-subtrees/julia-engine/_extensions/julia-engine/_extension.yml index 61737dfc0b5..b84df8b45f9 100644 --- a/src/resources/extension-subtrees/julia-engine/_extensions/julia-engine/_extension.yml +++ b/src/resources/extension-subtrees/julia-engine/_extensions/julia-engine/_extension.yml @@ -1,5 +1,5 @@ title: Quarto Julia Engine Extension -version: 0.2.2 +version: 0.2.3 quarto-required: ">=1.9.0" contributes: engines: diff --git a/src/resources/extension-subtrees/julia-engine/tests/smoke/julia-engine/julia.test.ts b/src/resources/extension-subtrees/julia-engine/tests/smoke/julia-engine/julia.test.ts index c46a857c450..3b578dca9bf 100644 --- a/src/resources/extension-subtrees/julia-engine/tests/smoke/julia-engine/julia.test.ts +++ b/src/resources/extension-subtrees/julia-engine/tests/smoke/julia-engine/julia.test.ts @@ -23,14 +23,11 @@ function quartoRuntimeDir(): string { base = join(Deno.env.get("LOCALAPPDATA")!, "quarto"); break; default: { - // Note: quarto's xdgUserRuntimeDir does not append the app name - // when XDG_RUNTIME_DIR is set (unlike the other XDG dir functions). const xdgRuntime = Deno.env.get("XDG_RUNTIME_DIR"); if (xdgRuntime) { - base = xdgRuntime; + base = join(xdgRuntime, "quarto"); } else { - const cacheHome = Deno.env.get("XDG_CACHE_HOME") ?? - join(Deno.env.get("HOME")!, ".cache"); + const cacheHome = Deno.env.get("XDG_CACHE_HOME") ?? join(Deno.env.get("HOME")!, ".cache"); base = join(cacheHome, "quarto"); } break; @@ -188,10 +185,7 @@ Deno.test("julia engine", async (t) => { }, ).outputSync(); assertSuccess(force_close_output); - assertStderrIncludes( - force_close_output, - "Worker force-closed successfully", - ); + assertStderrIncludes(force_close_output, "Worker force-closed successfully"); const status_output_2 = new Deno.Command( quartoCmd(),