Skip to content

Latest commit

 

History

History
133 lines (93 loc) · 12.4 KB

File metadata and controls

133 lines (93 loc) · 12.4 KB

All changes included in 1.9:

Regression fixes

  • (#13396): Fix quarto publish connect regression.
  • (#13441): Catch undefined exceptions in Pandoc failure to avoid spurious error message.
  • (#13046): Use new url for multiplex socket.io server https://multiplex.up.railway.app/ as default for format: revealjs and revealjs.multiplex: true.
  • (#13506): Fix navbar active state detection when sidebar has no logo configured. Prevents empty logo links from interfering with navigation highlighting.
  • (#13616): Fix fatal error when rendering manuscript projects with custom blocks like ConditionalBlock.
  • (#13625): Fix Windows file locking error (os error 32) when rendering with --output-dir flag. Context cleanup now happens before removing the temporary .quarto directory, ensuring file handles are properly closed.
  • (#13633): Fix detection and auto-installation of babel language packages from newer error format that doesn't explicitly mention .ldf filename.
  • (#13694): Fix notebook-view.url being ignored - external notebook links now properly use specified URLs instead of local preview files.
  • (#13732): Fix automatic font package installation for fonts with spaces in their names (e.g., "Noto Emoji", "DejaVu Sans"). Font file search patterns now match both with and without spaces.

Dependencies

  • Update pandoc to 3.8.3
  • Update typst to 0.14.2
  • Update esbuild to 0.25.10
  • Update deno to 2.4.5
  • (#13601): Update mermaid to 11.12.0 (author: @multimeric)

Formats

gfm

  • (#13421): Do not word-wrap titles in header.
  • (#13603): Fix callouts with title but no body content causing fatal error when rendering to GitHub Flavored Markdown.

html

  • (#11929): Import all brand.typography.fonts in CSS, whether or not fonts are referenced by typography elements.
  • (#13413): Fix uncentered play button in video shortcodes from cross-reference divs. (author: @bruvellu)
  • (#13508): Add aria-label support to video shortcode for improved accessibility.

typst

  • (#13362): Remove unused blockquote definitions from template.
  • (#13452): Wraps subfigure captions generated by quarto_super() in block function to avoid emitting par elements. (author: @christopherkenny)
  • (#13474): Heading font for title should default to mainfont.
  • (#13555): Add support for icon=false in callouts when used in format: typst.
  • (#13589): Fix callouts with invalid ID prefixes crashing with "attempt to index a nil value". Callouts with unknown reference types now render as non-crossreferenceable callouts with a warning, ignoring the invalid ID.
  • (#13602): Fix support for multiple files set in bibliography field in biblio.typ template partial.
  • (#13775): Fix brand fonts not being applied when using citeproc: true with Typst format. Format detection now properly handles Pandoc format variants like typst-citations.
  • (#13249): Update to Pandoc's Typst template following Pandoc 3.8.3 and Typst 0.14.2 support:
    • Code syntax highlighting now uses Skylighting by default.
    • New template variables mathfont, codefont, and linestretch for font and line spacing customization.
    • New template variables linkcolor, citecolor, and filecolor for link color customization.
    • New template variable thanks for title footnote acknowledgment.
    • New template variable abstract-title for abstract header customization.
    • PDF accessibility metadata: document title, author, and keywords are now set for PDF readers.
    • Two-column layout now uses set page(columns:) instead of columns() function, fixing compatibility with landscape sections.
    • Title block now properly spans both columns in multi-column layouts.
  • (#13870): Add support for alt attribute on cross-referenced equations for improved accessibility. (author: @mcanouil)

pdf

  • (#10291): Fix detection of babel hyphenation warnings with straight-quote format instead of backtick-quote format.
  • (#13661): Fix LaTeX compilation errors when using mermaid-format: svg with PDF/LaTeX output. SVG diagrams are now written directly without HTML script tags. Note: mermaid-format: png is recommended for best compatibility. SVG format requires rsvg-convert (or Inkscape with use-rsvg-convert: false) in PATH for conversion to PDF, and may experience text clipping in diagrams with multi-line labels.
  • (rstudio/tinytex-releases#49): Fix detection of LuaTeX-ja missing file errors by matching both "File" and "file" in error messages.
  • (#13667): Fix LaTeX compilation error with Python error output containing caret characters.
  • (#13730): Fix TinyTeX detection when ~/.TinyTeX/ directory exists without binaries. Quarto now verifies that the bin directory and tlmgr binary exist before reporting TinyTeX as available, allowing proper fallback to system PATH installations.
  • (#13249): Update to Pandoc's LaTeX template following Pandoc 3.8.3 support:
    • New RTL support for LuaTeX with \RL, \LR commands and RTL, LTR environments.
    • New shorthands variable for Babel language shortcuts control.
    • New pdf-trailer-id support for reproducible PDF builds.
    • New cancel package support for \cancel command in math.

revealjs

  • (#13722): Fix light-content / dark-content SCSS rules not included in Reveal.js format. (author: @mcanouil)

Projects

website

  • (#13524): Add support for Plausible Analytics via plausible-analytics configuration option. Users can either paste their Plausible script snippet directly in YAML or provide a path to a file containing the snippet using plausible-analytics: { path: _plausible_snippet.html }.
  • (#13525): Algolia Insights now uses privacy-friendly defaults: useCookie: false with random session tokens when cookie consent is not configured. When cookie-consent: true is enabled, Algolia scripts are deferred and only use cookies after user grants "tracking" consent, ensuring GDPR compliance.
  • (#13547)cookie-content: { type: express } is now the default. Previously it was type: implied. It now means this will block cookies until the user expressly agrees to allow them (or continue blocking them if the user doesn't agree).
  • (#13570): Replace Twitter with Bluesky in default blog template and documentation examples. New blog projects now include Bluesky social links instead of Twitter.
  • (#13716): Fix draft pages showing blank during preview when pre-render scripts are configured.
  • (#13847): Open graph title with markdown is now processed correctly. (author: @mcanouil)

book

  • (#13769): Apply repo-link-target and repo-link-rel options to tools in book sidebar for consistent link attribute handling with website projects. (author: @mcanouil)

manuscript

  • (#10031): Fix manuscript rendering prompting for GitHub credentials when origin points to private repository. Auto-detection of manuscript URL now fails gracefully with a warning instead of blocking renders.

Publishing

Confluence

  • (#13414): Be more forgiving when Confluence server returns malformed JSON response. (author: @m1no)

Lua API

  • (#13762): Add quarto.paths.typst() to Quarto's Lua API to resolve Typst binary path in Lua filters and extensions consistently with Quarto itself. (author: @mcanouil)

Commands

use brand

call build-ts-extension

  • (): New quarto call build-ts-extension command builds a TypeScript extension, such as an engine extension, and places the artifacts in the _extensions directory. See the engine extension pre-release documentation for details.

Extensions

  • Metadata and brand extensions now work without a _quarto.yml project. (Engine extensions do too.) A temporary default project is created in memory.

  • New Engine Extensions, to allow other execution engines than knitr, jupyter, julia. Julia is now a bundled extension. See the prerelease notes and engine extension documentation.

Engines

jupyter

  • (#13748): Fix stdin encoding to UTF-8 on Windows to correctly handle JSON in documents containing non-ASCII characters.

Other fixes and improvements

  • (#8730): Detect x64 R crashes on Windows ARM and provide helpful error message directing users to install native ARM64 R instead of showing generic "check your R installation" error.
  • (#13402): nfpm (https://nfpm.goreleaser.com/) is now used to create the .deb package, and new .rpm package. Both Linux packages are also now built for x86_64 (amd64) and aarch64 (arm64) architectures.
  • (#13528): Adds support for table specification using nested lists and the list-table class.
  • (#13575): Improve CPU architecture detection/reporting in macOS to allow quarto to run in virtualized environments such as OpenAI's codex.
  • (#13656): Fix R code cells with empty lang: "" option producing invalid markdown class attributes.
  • (#13832): Fix license.text metadata not being accessible when using an inline license (license: "text"), and populate it with the license name for CC licenses instead of empty string. (author: @mcanouil)
  • (#13856): Add code annotation support for Typst and Observable.js code blocks. (author: @mcanouil)
  • (#13907): Ignore AI assistant configuration files (CLAUDE.md, AGENTS.md) when scanning for project input files and in extension templates, similar to how README.md is handled.