All changes included in 1.6:
Breaking changes
The syntax for standard library imports in
quarto runTypeScript files (*.ts) changed. Please see https://quarto.org/docs/projects/scripts.html#deno-scripts for how to make the necessary changes.
Shortcodes
(#10292): Improve shortcode passthrough when handlers are not available.
quarto inspect
(#10039):
quarto inspectproperly handles!exprtag in metadata.(#10188):
quarto inspectproperly resolves includes across subdirectory boundaries.
Lua Filters and extensions
(#8179): When merging code cells for complex layouts, do not merge cells with different languages.
(#8428): only forward cell labels to tables when tables will be cross-referenceable.
(#10004): Resolve callout titles, theorem names, and
code-summarycontent throughquarto_ast_pipeline()andprocess_shortcodes().(#10196): Protect against nil values in
float.caption_long.(#10328): Interpret subcells as subfloats when subcap count matches subcell count.
(#10624): Don't crash when proof environments are empty in
pdf.(#10858): Don't crash in
gfmwhencontentof aFloatRefTargetis of typeBlocks.(#10894): Fix configuration of title and prefix in callouts for
html,revealjs,pdf, andtypst.(#10999): New API entry point:
quarto.paths.rscript()to resolveRscriptpath in Lua filters and extensions consistently with Quarto itself.(#11124): Sort keys when encoding tables as JSON.
(#11303): Fix conditional content for divs with repeated attributes.
dashboard Format
(#9411): Fix issue with history navigation in dashboards and external links.
(#10340): Build card title correctly in the presence of equations and other markup.
html Format
Fix
kbdelement styling on dark themes.(#10761): Add support for
licence: CC0to automatically link to Creative Commons licence CC0 1.0.(#10817): Ensure that user provided SCSS has precedent over quarto generated scss also for dark theme.
(#11124): Use stable order of GLightbox options
(#11401): Use EJS comment syntax to hide internal TODO notes from the output.
revealjs Format
Update to Reveal JS 5.1.0.
Support for a Jump To Slide menu to quickly navigate between slides. Set
jump-to-slide: falseto opt out.Support for new Scroll View mode with configuration through new
scroll-viewrevealjs's format configuration key. A new menu tool has been added to toggle scroll view mode on and off, associated withRkey by default.
Styles improvements for Callouts in Revealjs:
SCSS variables can be used to customize the appearance of callouts in Revealjs. The following SCSS variables are available:
Border width and scale (
$callout-border-width,$callout-border-scale)Border colors (
$callout-color-note,$callout-color-tip,$callout-color-important,$callout-color-caution,$callout-color-warning)Margins (
$callout-margin-top,$callout-margin-bottom)
Color for each callout type is now the same as in Bootstrap document
format: html. This allows for consistent styling across formats. If you prefer other colors, you can override using the new SCSS variablesIcon for each callout type is now using SVG like in Bootstrap document
format: html. This allows for consistent styling across formats.Callouts looks better in slides made smaller and when containing code blocks.
To see how callouts looks like in revealjs, see this example: https://examples.quarto.pub/revealjs-default-callouts-styles
Prevent empty SASS built css file to be included in header.
Remove wrong
sourceMappingUrlentry in SASS built css.(#7715): Revealjs don't support anymore special Pandoc syntax making BulletList in Blockquotes become incremental list. This was confusing and unexpected behavior. Supported syntax for incremental list is documented at https://quarto.org/docs/presentations/revealjs/#incremental-lists.
(#9742): Links to cross-referenced images correctly works.
(#9558): To prevent default footer to show on slide, set
footer='false'attribute on the slide header, e.g.## Slide with no footer {footer='false'}(#6012): Add styling for
kbdelement in Revealjs slides.(#10887): Updating default Mathjax used from 2.7.0 to 2.7.9.
(#9999): Fix spacing problems of different size elements in columns.
(#11146): Fix issue with slide created with
---and having no title showing up in TOC. Now they don't show up as slide created with empty header e.g.##.(#7142): Fix issue in slides with
incremental: truenot working as expected whencode-annotation: hoverorcode-annotation: select.(#9803): Using url for
logoto an online svg is now working correctly withembed-resources: true.
typst Format
(#10168): Support
cslbibliography style.(#10181): Remove workaround for image dimensions which is no longer necessary and mishandled image paths with spaces.
(#10217): Explicitly compute units for image dimensions in
typstformat when they're not given.(#10212): Move Pandoc variables to the function declaration for the default template.
(#10438): Ensure Pandoc doesn't emit its own crossref environments for table elements.
docx Format
(#10401): Fix crash when
docxformat is used with an empty crossref environment.
latex and pdf Format
(#10001): Support correct
*-posattribute inFloatRefTargetnodes with layouts.(#10291): Several improvement regarding Quarto LaTeX engine behavior for missing hyphenation log message:
latex-auto-install: falsenow correctly opt out any missing hyphenation packages detection and installation. Only a warning will be thrown if any detected in the log.For default behavior (
latex-auto-install: true), detection is still happening and missing packages are installed automatically. If it fails, Quarto does not fail anymore as PDF rendering as succeeded already. Only a warning will be thrown to log the installation failure.Log message about hyphenation package missing for
chineseorchinese-hanslanguages are now ignored.
(#10655): Missing fonts from fontspec error are correctly detected and looked for to be installed.
(#10816): Warn instead of crash when missing fields in custom crossreference declarations.
(#10891): Interpret ANSI color codes in otherwise unformatted code blocks in
pdfformat.
Projects
(#7988): Do not allow
lib-dirto cause an accidental cleanup of the project directory when its value points to a parent of the project directory.(#10125): Show path to the project when project YAML validation fails.
(#10268):
quarto createsupports opening project in Positron, in addition to VS Code and RStudio IDE.(#10285): Include text from before the first chapter sections in search indices. In addition, include text of every element with
.quarto-include-in-search-indexclass in search indices.(#10566): Ensure that
quarto runoutputsstdoutandstderrto the correct streams.
Websites
(#2671): Ensure that
--output-dirworks across filesystem boundaries.(#8517), (#10829): Allow listing categories with non-alphanumeric characters such as apostrophes, etc.
(#8932): Escape render ids in markdown pipeline to allow special characters in sidebars/navbars, etc.
(#10311): Loosen auto-discovery of images for OpenGraph cards.
(#10567): Generate breadcrumbs correctly for documents using a level-1 heading as the title.
(#10616): Add a
z-indexsetting to the 'back to top' button to ensure it is always visible.(#10864): Support detection of
og:image:altattribute from auto-discovered images.(#9905): Setting
search: falseinnavbarconfig forwebsitein_quarto.ymlcorrectly opt-out sidebar.
Quarto Blog
(#10710): Fix an issue with categorie badges as links in the blog post header.
Manuscript
Fix an issue on Windows when creating MECA bundles containing special file name like space in the path (quarto-ext/manuscript-template-rstudio#3).
Engines
julia
(#10225): Handle API change in
is_manifest_currentin Julia 1.11.(#11013): Fix QuartoNotebookRunner.jl precompilation failure on Julia 1.11.
jupyter
(#9134): Add proper fix for
multiprocessingin notebooks with the Python kernel.(#10097): Ensure papermill parameterization works when default values are set in a cell with labels.
Chromium support
(#11135): Use
--headless=oldmode for Chromium to avoid recent issues with the new--headlessmode. Setting--headless=newcan be configured withQUARTO_CHROMIUM_HEADLESS_MODE=newenvironment variable, however it is not recommended new headless mode seems to be unstable. Only use to be unblocked of a situation (likeQUARTO_CHROMIUM_HEADLESS_MODE="none"if you use an old chrome version somehow that don't support--headless=old).(#10170): Quarto should find chrome executable automatically on most OS. If this is does not find it, or a specific version is needed, set
QUARTO_CHROMIUMenvironment variable to the executable path.Quarto now makes sure that all started chromium instances are closed when the process ends, no matter how it ends (success, error, or interruption).
Other Fixes and Improvements
Upgrade
mermaidjsto 11.2.0.Upgrade Pandoc to 3.4.
Upgrade
denoto 1.46.3.(#2699): Respect input/output streams in
quarto pandoc.(#10162): Use Edge on
macOSas a Chromium browser when available.(#10235): Configure the CI schedule trigger to activate exclusively for the upstream repository.
(#10295): Fix regression to return error status to shell when
CommandErroris thrown.(#10332): Use
exitWithCleanupwhenever possible instead ofDeno.exitto clean up temporary resources.(#10334): Fix
authorfield rendered incorrectly in dashboards when multiple authors are present.(#8383), (#10087), (#10369): Track theme generation and file naming through content hashing to allow different themes to coexist in the same project.
(#10442): Honor the
semverrequirement inQUARTO_VERSION_REQUIREMENTand stop execution when that isn't met.(#10552): Add
contentsshortcode.(#10581): Add
.landscapediv processing totypst,docxandpdfformats to support pages in landscape orientation.(#10591): Make fenced div syntax slightly more robust by removing spaces around the
=sign ahead of Pandoc's reader.(#10608): Don't overwrite the built-in CSS function
contrastin Quarto's SCSS.(#10622): Use copy+remove instead of move when needed to support temporary directories in different filesystems.
(#10821): Be more conservative in stripping
echo: fencedfrom fenced output.(#10890): Don't use ports that Firefox considers unsafe.
(#10936): Use
\\inmetashortcode to escape the following character, allowing keys with.in them.(#11068): use standard location when writing to standard output to avoid breakage under
self-contained: true.(#11155): Add cache location information to
quarto check.
Languages
(#11246): Basque translation for Quarto UI text (credit: @iagobaapellaniz)