Skip to content

Commit dcfecd4

Browse files
authored
Merge branch 'main' into feat/listing-allow-target-href
2 parents d5eff08 + bc45896 commit dcfecd4

321 files changed

Lines changed: 21570 additions & 3530 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.air.toml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
[format]
2+
line-width = 80
3+
indent-width = 2
4+
indent-style = "space"
5+
line-ending = "auto"
6+
persistent-line-breaks = true
7+
exclude = []
8+
default-exclude = true

.vscode/extensions.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
"denoland.vscode-deno",
44
"esbenp.prettier-vscode",
55
"sumneko.lua",
6-
"nvarner.typst-lsp"
6+
"nvarner.typst-lsp",
7+
"Posit.air-vscode"
78
]
89
}

.vscode/settings.json

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,12 @@
33
"editor.defaultFormatter": "denoland.vscode-deno"
44
},
55
"[r]": {
6-
"editor.formatOnSave": false,
7-
"editor.defaultFormatter": "REditorSupport.r"
6+
"editor.formatOnSave": true,
7+
"editor.defaultFormatter": "Posit.air-vscode"
8+
},
9+
"[quarto]": {
10+
"editor.formatOnSave": true,
11+
"editor.defaultFormatter": "quarto.quarto"
812
},
913
"[html]": {
1014
"editor.formatOnSave": false
@@ -16,5 +20,7 @@
1620
"deno.lint": true,
1721
"deno.unstable": true,
1822
"deno.importMap": "./src/import_map.json",
19-
"deno.disablePaths": ["tests/integration/playwright/"]
23+
"deno.disablePaths": ["tests/integration/playwright/"],
24+
// opt-out lintr as we use air formatter
25+
"r.lsp.diagnostics": false
2026
}

configuration

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,17 @@
77
# but it also used when packaging (e.g. run configure.sh, then prepare-dist.sh, then package.sh)
88
# deno_dom should match release at https://github.com/b-fuze/deno-dom/releases
99

10+
# NB: When these are updated, you must also update the versions
11+
# in src/command/check/check.ts
12+
1013
# Binary dependencies
1114
export DENO=v1.46.3
1215
# TODO figure out where 0.1.41 apple silicon libs are available
1316
export DENO_DOM=v0.1.41-alpha-artifacts
14-
export PANDOC=3.4
17+
export PANDOC=3.6.3
1518
export DARTSASS=1.85.1
1619
export ESBUILD=0.19.12
17-
export TYPST=0.11.0
20+
export TYPST=0.13.0
1821

1922

2023
# NB: we can't put comments in the same line as export statements because it

dev-docs/feature-format-matrix/qmd-files/css-properties/font-size/document.qmd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ _quarto:
1919
typst:
2020
ensureTypstFileRegexMatches:
2121
-
22-
- 'align\(center\)\[#set text\(size: 6pt\); #table\('
22+
- '#\[\s*#set text\(size: 6pt\); #table\('
2323
- []
2424
---
2525

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
- `QUARTO_PROJECT_ROOT` points to the root of the project, or the directory of the file is not in project mode
22
- `QUARTO_DOCUMENT_PATH` points to the directory of the document being rendered
3+
- `QUARTO_DOCUMENT_FILE` points to the source filename of the document being rendered
34
- `QUARTO_PROFILE` is set to profile used, e.g `QUARTO_PROFILE=advanced,production` for `quarto render --profile advanced,production`

dev-docs/upgrade-dependencies.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Change version numbers in `./configuration` to correspond to new versions.
22

3-
Contact JJ so he uploads the binaries to the S3 bucket.
3+
Contact Carlos so he uploads the binaries to the S3 bucket.
44

55
## Upgrade deno
66

news/changelog-1.7.md

Lines changed: 56 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,13 @@ All changes included in 1.7:
1212
- ([#12147](https://github.com/quarto-dev/quarto-cli/issues/12147)): for RevealJS format, `serif` and `simple` themes defaults back to have their heading color (`$presentation-heading-color`) to be the same as the body color (`$body-color`) as in Quarto 1.5.
1313
- ([#11659](https://github.com/quarto-dev/quarto-cli/pull/11659)): Julia engine: Fix escaping bug where paths containing spaces or backslashes break server startup on Windows.
1414

15+
## Dependencies
16+
17+
- Update `typst` to `0.13.0`.
18+
- Update `pandoc` to `3.6.3`.
19+
- Update `dart-sass` to `1.85.1`.
20+
- Update `esbuild` to `0.19.12`.
21+
1522
## YAML validation
1623

1724
- ([#11654](https://github.com/quarto-dev/quarto-cli/issues/11654)): Allow `page-inset` as value in `column` key for code cells.
@@ -21,6 +28,7 @@ All changes included in 1.7:
2128

2229
## Website projects
2330

31+
- ([#8238](https://github.com/quarto-dev/quarto-cli/issues/8238)): Listing categories are now sorted case-insensitively.
2432
- ([#11701](https://github.com/quarto-dev/quarto-cli/issues/11701)): Wrap HTML emitted by EJS templates in `{=html}` blocks to avoid memory blowup issues with Pandoc's parser.
2533
- ([#12134](https://github.com/quarto-dev/quarto-cli/issues/12134)): Forward `logo.small` images in `_brand.yml` files to a website `favicon`.
2634

@@ -35,23 +43,51 @@ All changes included in 1.7:
3543

3644
## `quarto check`
3745

46+
- ([#10047](https://github.com/quarto-dev/quarto-cli/issues/10047)): `quarto check` will now check binary dependency versions strictly by default. Use `quarto check --no-strict` to revert to old behavior.
3847
- ([#11608](https://github.com/quarto-dev/quarto-cli/pull/11608)): Do not issue error message when calling `quarto check info`.
3948

4049
## `quarto convert`
4150

4251
- ([#12042](https://github.com/quarto-dev/quarto-cli/issues/12042)): Preserve Markdown content that follows YAML metadata in a `raw` .ipynb cell.
52+
- ([#12318](https://github.com/quarto-dev/quarto-cli/issues/12318)): Ensure enough line breaks between cells that might be trimmed.
53+
54+
## `quarto inspect`
55+
56+
- ([#12336](https://github.com/quarto-dev/quarto-cli/issues/12336)): Clean up transient files created by `quarto inspect`.
4357

4458
## `html` format
4559

60+
- ([#12319](https://github.com/quarto-dev/quarto-cli/pull/12319)): Provide switchable light and dark brands for a page with `brand.light` and `brand.dark`.
4661
- ([#12277](https://github.com/quarto-dev/quarto-cli/pull/12277)): Provide light and dark plot and table renderings with `renderings: [light,dark]`
4762
- ([#11860](https://github.com/quarto-dev/quarto-cli/issues/11860)): ES6 modules that import other local JS modules in documents with `embed-resources: true` are now correctly embedded.
4863
- ([#1325](https://github.com/quarto-dev/quarto-cli/issues/1325)): Dark Mode pages should not flash light on reload. (Nor should Light Mode pages flash dark.)
64+
- ([#12307](https://github.com/quarto-dev/quarto-cli/issues/12307)): Tabsets using `tabby.js` in non-boostrap html (`theme: pandoc`, `theme: none` or `minimal: true`) now correctly render reactive content when `server: shiny` is used.
65+
- ([#12356](https://github.com/quarto-dev/quarto-cli/issues/12356)): Remove duplicate id in HTML document when using `#lst-` prefix label for using Quarto crossref.
4966

5067
## `pdf` format
5168

5269
- ([#11835](https://github.com/quarto-dev/quarto-cli/issues/11835)): Take markdown structure into account when detecting minimum heading level.
5370
- ([#11903](https://github.com/quarto-dev/quarto-cli/issues/11903)): `crossref` configuration like `fig-title` or `tbl-title` now correctly supports multi word values, e.g. `fig-title: 'Supplementary Figure'`.
5471
- ([#11878](https://github.com/quarto-dev/quarto-cli/issues/11878), [#12085](https://github.com/quarto-dev/quarto-cli/issues/12085)): Correctly fixup raw LaTeX table having an unexpected table env with options (e.g `\begin{table}[!ht]`) to be handled as crossref table.
72+
- ([#12344](https://github.com/quarto-dev/quarto-cli/issues/12344)): Ensure decorated code blocks do not float when inside layout elements.
73+
- Update to Pandoc's LaTeX template following Pandoc 3.6.3 support:
74+
- `format: beamer` now uses its own template. The main template for latex does not use `$if(beamer)$` anymore, and the new template for beamer uses the same partials as latex one.
75+
- Improved Babel support:
76+
- New `babeloptions` variable in the template to allow for more flexible Babel options.
77+
- `doc-class.tex` Quarto's partial has been updated as Babel options have been moved to `documentclass` definition in `doc-class.tex` Quarto's partial.
78+
- New partials available for `format: latex` and `format: beamer`:
79+
- Pandoc now uses partials for its latex templates, and they are available through `template-partials`. Pandoc's partials uses `.latex` extension: `passoptions.latex`, `common.latex`, `font-settings.latex`, `fonts.latex`, `hypersetup.latex`, `after-header-includes.latex`
80+
- New Quarto partials: `babel-lang.tex`, `biblio-config.tex`. Quarto's partials uses `.tex` extension.
81+
- BREAKING CHANGE for templates authors: `common.latex` does now uses `pandoc.tex` partial from Quarto, which include now part of the content that was in main `template.tex`. If you modify `pandoc.tex` as part of a custom format, it should be updated to new content.
82+
83+
## `jats` format
84+
85+
- Update to Pandoc's template following Pandoc 3.6.3 support:
86+
- `article.jats_publishing` partials now support `author.roles`
87+
88+
## `revealjs` format
89+
90+
- ([#12307](https://github.com/quarto-dev/quarto-cli/issues/12307)): Tabsets using `tabby.js` in Revealjs now correctly render reactive content when `server: shiny` is used.
5591

5692
### Quarto PDF engine
5793

@@ -63,6 +99,7 @@ All changes included in 1.7:
6399
- ([#11676](https://github.com/quarto-dev/quarto-cli/pull/11676)): Convert unitless image widths from pixels to inches for column layouts.
64100
- ([#11835](https://github.com/quarto-dev/quarto-cli/issues/11835)): Take markdown structure into account when detecting minimum heading level.
65101
- ([#11964](https://github.com/quarto-dev/quarto-cli/issues/11964)): Using panel layout without a crossref label now correctly do not add an empty `#block[]` that was leading to an unnecessary space in output.
102+
- ([#12354](https://github.com/quarto-dev/quarto-cli/issues/12354)): CodeBlock in Listing with `#lst-` prefix are now correctly highlighted.
66103

67104
## Interactive Shiny Document
68105

@@ -81,27 +118,45 @@ All changes included in 1.7:
81118
- ([#11896](https://github.com/quarto-dev/quarto-cli/pull/11896)): fix `\f` (`{{< pagebreak >}}`) form feed character not valid in PowerPoint (`pptx`).
82119
- ([#11664](https://github.com/quarto-dev/quarto-cli/issues/11664)): `lipsum` shortcode is no longer randomly generated by default, use `{{< lipsum random=true >}}` to restore randomness.
83120
- ([#11379](https://github.com/quarto-dev/quarto-cli/issues/11379)): Add `version` shortcode to display the current Quarto version.
121+
- ([#12326](https://github.com/quarto-dev/quarto-cli/issues/12326)): Add `quarto.shortcode.*` API entry points for shortcode developers.
122+
123+
## Quarto Lua API
124+
125+
- ([#12299](https://github.com/quarto-dev/quarto-cli/issues/12299)): `quarto.doc.pdf_engine()` now correctly returns the PDF engine used for the document. `quarto.doc.cite_method()` now returns `nil` if no citation method will be used (i.e. no references is the document set).
84126

85127
## Engines
86128

87129
### `julia`
88130

89131
- ([#12121](https://github.com/quarto-dev/quarto-cli/pull/12121)): Update QuartoNotebookRunner to 0.14.0. Support for evaluating Python cells via [PythonCall.jl](https://github.com/JuliaPy/PythonCall.jl) added. Support for notebook caching via `execute.cache` added.
90132
- ([#12151](https://github.com/quarto-dev/quarto-cli/pull/12151)): Basic YAML validation is now active for document using Julia engine.
133+
- ([#11803](https://github.com/quarto-dev/quarto-cli/pull/11803)): Added subcommands `status`, `kill`, `close [--force]` and `log` under the new CLI command `quarto call engine julia`.
91134

92135
### `jupyter`
93136

94137
- ([#12114](https://github.com/quarto-dev/quarto-cli/issues/12114)): `JUPYTERCACHE` environment variable from [Jupyter cache CLI](https://jupyter-cache.readthedocs.io/en/latest/using/cli.html) is now respected by Quarto when `cache: true` is used. This environment variable allows to change the path of the cache directory.
138+
- ([#12374](https://github.com/quarto-dev/quarto-cli/issues/12374)): Detect language properly in Jupyter notebooks that lack the `language` field in their `kernelspec`s.
95139

96140
## Other Fixes and Improvements
97141

142+
- A new folder `quarto-session-temp` can be created in `.quarto` to store temporary files created by Quarto during a rendering. Reminder: `.quarto` is for internal use of Quarto and should not be versioned (thus added to `.gitignore`).
143+
- ([fb38eb5](https://github.com/quarto-dev/quarto-cli/commit/fb38eb56c11e09f44cef58fd3b697ff24bb5a3f3)) Use the `latest` parser for Acorn when analyzing JS code imported from OJS blocks.
98144
- ([#7260](https://github.com/quarto-dev/quarto-cli/issues/7260)): Add support for `active` class in tabsets so the `.active` tab shows up by default.
99145
- ([#8613](https://github.com/quarto-dev/quarto-cli/issues/8613)): Fix `giscus` color on load to support dark mode (by @kv9898).
100146
- ([#11441](https://github.com/quarto-dev/quarto-cli/issues/11441)): Don't add newlines around shortcodes during processing.
101147
- ([#11643](https://github.com/quarto-dev/quarto-cli/issues/11643)): Improve highlighting of nested code block inside markdown code block, i.e. using ` ```{{python}} ` or ` ```python ` inside ` ````markdown` fenced code block.
102-
- ([fb38eb5](https://github.com/quarto-dev/quarto-cli/commit/fb38eb56c11e09f44cef58fd3b697ff24bb5a3f3)) Use the `latest` parser for Acorn when analyzing JS code imported from OJS blocks.
103148
- ([#10532](https://github.com/quarto-dev/quarto-cli/issues/10532)): Quarto changed default of `--headless=old` to `--headless` as [Chrome 132 has removed old headless mode](https://developer.chrome.com/blog/removing-headless-old-from-chrome) and only support new mode. For using old mode, `QUARTO_CHROMIUM` could be set to a [new `chrome-headless-shell` binary](https://developer.chrome.com/blog/chrome-headless-shell) or too an older chrome version (between 128 and 132) and `QUARTO_CHROMIUM_HEADLESS_MODE` set to `old` for using old headless mode with that compatabitle version.
104149
- ([#10961](https://github.com/quarto-dev/quarto-cli/issues/10961)): Add more information on which Chrome Headless will be used in `quarto check install`. This is helpful to help debug mermaid issues.
150+
- ([#11606](https://github.com/quarto-dev/quarto-cli/discussions/11606)): Added a new `QUARTO_DOCUMENT_FILE` env var available to computation engine to the name of the file currently being rendered.
151+
- ([#11803](https://github.com/quarto-dev/quarto-cli/pull/11803)): Added a new CLI command `quarto call`. First users of this interface are the new `quarto call engine julia ...` subcommands.
105152
- ([#11951](https://github.com/quarto-dev/quarto-cli/issues/11951)): Raw LaTeX table without `tbl-` prefix label for using Quarto crossref are now correctly passed through unmodified.
153+
- ([#11967](https://github.com/quarto-dev/quarto-cli/issues/11967)): Produce a better error message when YAML metadata with `!expr` tags are used outside of `knitr` code cells.
106154
- ([#12117](https://github.com/quarto-dev/quarto-cli/issues/12117)): Color output to stdout and stderr is now correctly rendered for `html` format in the Jupyter and Julia engines.
107155
- ([#12264](https://github.com/quarto-dev/quarto-cli/issues/12264)): Upgrade `dart-sass` to 1.85.1.
156+
- ([#11803](https://github.com/quarto-dev/quarto-cli/pull/11803)): Added a new CLI command `quarto call`. First users of this interface are the new `quarto call engine julia ...` subcommands.
157+
- ([#12338](https://github.com/quarto-dev/quarto-cli/issues/12338)): Add an additional workaround for the SCSS parser used in color variable extraction.
158+
- ([#12369](https://github.com/quarto-dev/quarto-cli/pull/12369)): `quarto preview` correctly throws a YAML validation error when a `format` key does not conform.
159+
160+
## Languages
161+
162+
- ([#12366](https://github.com/quarto-dev/quarto-cli/pull/12366)): Added Bulgarian translation for Quarto UI text (credit: @sakelariev)

package/src/common/dependencies/esbuild.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ export function esBuild(version: string): Dependency {
6767
};
6868

6969
return {
70-
name: "esbuild javscript bundler",
70+
name: "esbuild javascript bundler",
7171
bucket: "esbuild",
7272
version,
7373
architectureDependencies: {

package/src/common/update-pandoc.ts

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,6 +198,7 @@ async function writePandocTemplates(
198198
);
199199
const latexOutdir = join(formatSrcDir, "pdf", "pandoc");
200200
const revealOutdir = join(formatSrcDir, "revealjs", "pandoc");
201+
const beamerOutdir = join(formatSrcDir, "beamer", "pandoc");
201202
const asciidocOutdir = join(formatSrcDir, "asciidoc", "pandoc");
202203
const typstOutdir = join(formatSrcDir, "typst", "pandoc");
203204

@@ -219,13 +220,31 @@ async function writePandocTemplates(
219220
],
220221
[latexOutdir]: [
221222
{ from: "default.latex", to: "latex.template" },
223+
// Template we need to tweak
224+
{ from: "common.latex", to: "latex.common" },
225+
// Template kept unchanged
226+
{ from: "after-header-includes.latex" },
227+
{ from: "hypersetup.latex" },
228+
{ from: "font-settings.latex" },
229+
{ from: "fonts.latex" },
230+
{ from: "passoptions.latex" },
231+
],
232+
[beamerOutdir]: [
233+
{ from: "default.beamer", to: "beamer.template" },
234+
// Template we need to tweak
235+
{ from: "common.latex", to: "latex.common" },
236+
// Template kept unchanged
237+
{ from: "after-header-includes.latex" },
238+
{ from: "hypersetup.latex" },
239+
{ from: "font-settings.latex" },
240+
{ from: "fonts.latex" },
241+
{ from: "passoptions.latex" },
222242
],
223243
[asciidocOutdir]: [
224244
{ from: "default.asciidoc", to: "asciidoc.template" },
225245
],
226246
[typstOutdir]: [
227247
{ from: "default.typst", to: "typst.template" },
228-
{ from: "definitions.typst" },
229248
{ from: "template.typst" }
230249
]
231250
};

0 commit comments

Comments
 (0)