Skip to content

Conversation

@gordonwoodhull
Copy link
Contributor

@gordonwoodhull gordonwoodhull commented Dec 15, 2025

The set of engines is no longer static / initialized at module load time.

Therefore resolveEngines() needs to be called before executionEngines(). 1

This introduces tests for

  • the ignoreDirs of knitr and jupyter engines, which were not being ignored, e.g. causing render of quarto-web to fail
  • automatic inclusion of e.g.404.ipynb and 404.qmd files, which was succeeding but wasn't already tested
  • promotion of e.g. index.ipynb and index.rmd files to section links in the sidebar. Engines were already resolved before this, but the feature was untested and it relies on the engine discovery interface, so here is a test.

Footnotes

  1. Could there be a better design? There probably could, but resolveEngines() needs a project context and executionEngines() does not, so we can't just make the latter dependent on the former.

gordonwoodhull and others added 3 commits December 15, 2025 15:06
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
this data is no longer static
and needs to consider engine extensions as well

website and default project tests

Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
@posit-snyk-bot
Copy link
Collaborator

posit-snyk-bot commented Dec 15, 2025

Snyk checks have passed. No issues have been found so far.

Status Scanner Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues
Licenses 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

@gordonwoodhull gordonwoodhull merged commit 2b08d21 into main Dec 15, 2025
51 checks passed
@gordonwoodhull gordonwoodhull deleted the bugfix/resolve-engines-before-ignore-dirs branch December 15, 2025 23:56
- ([#13633](https://github.com/quarto-dev/quarto-cli/issues/13633)): Fix detection and auto-installation of babel language packages from newer error format that doesn't explicitly mention `.ldf` filename.
- ([#13694](https://github.com/quarto-dev/quarto-cli/issues/13694)): Fix `notebook-view.url` being ignored - external notebook links now properly use specified URLs instead of local preview files.
- ([#13732](https://github.com/quarto-dev/quarto-cli/issues/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.
- ([#13798](https://github.com/quarto-dev/quarto-cli/pull/13798)): Directories specified in `ExecutionEngineDiscovery.ignoreDirs` were not getting ignored.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@gordonwoodhull I don't think this is the right place for this.

Regression fixes in 1.9 changelog are the bug fix we do in 1.9 AND also in 1.8 to fix a regression that we introduced in 1.8 compared to 1.9.

For regression between a 1.9 pre-release, and another, we don't add changelog. It is in a way expected that a 1.9 pre-release could brok. So this PR is part of the "New engine extensions" item you added a bit lower.

Hope it makes sense.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @cderv, I was wondering as I did this. Felt weird not to log what the prerelease 1.9.14 will be about!

But I guess it's probably not helpful except for the very few people for whom 1.9.13 is breaking - and we haven't heard from any yet.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But I guess it's probably not helpful except for the very few people for whom 1.9.13 is breaking - and we haven't heard from any yet.

yes exactly. We don't have a good process for that.

I guess the right place would to mark this inside the 1.9.14 release note. Currently we only link users to the commit logs if you look at it: https://github.com/quarto-dev/quarto-cli/releases/tag/v1.9.13

We could find a new workflow logic to maybe add to this github release note some more information about what is noticeable in each pre-release. But this is a bit more work for us.

Unless we find an "automated way" by having specific keyword in commit, and looking for them to extract message for release not when we do create the github release 🤷‍♂️

Anyhow, our current logic is that there is no release note of specific changes for a specific prerelease (unless looking at commit themselves), and we advice all users to either use stable or very latest pre-release as it could be "normal" that a pre-release has breakage.
For no breakage => use stable. That is our logic I would say.

happy to evolve all this - to be discussed!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants