feature: control engine resolution order on `_quarto.yml`

Open
#11,305 1 comment 3 reactions 1 assignee View on GitHub

@cscheid is already working on this.

Since Nov 4, 2024.

Assessment

This issue has not been assessed yet.

Description

early-in-release enhancement

(cc @MichaelHatherly @jkrumbiegel)

With the julia engine offering first-class support for Julia, we started running into issues of "engine priority": when two engines provide overlapping support, which should win? Currently the priority is hard-coded, which makes configuration awkward for projects that mostly use the julia engine.

An engines key in _quarto.yml could take an array of strings and control the resolution order. For example,

engines:
  - julia
  - jupyter
  - knitr

This would allow the julia engine to take higher priority than jupyter in projects where that is the desired outcome. Because we have a default ordering, this wouldn't break backwards compatibility either.

Dominant language
JavaScript
Stars
6k
Forks
458
Avg merge
1d 9h
Merged PRs (30d)
41

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from quarto-dev/quarto-cli

All issues in quarto-dev/quarto-cli

Similar issues

More JavaScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.