Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion docs/computations/julia.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,9 @@ As an example, you could install the main branch of `QuartoNotebookRunner` into

### Rendering notebooks

To use the `julia` engine, you have to specify it in your frontmatter:
To use the `julia` engine, you have to specifically enable it. For that, you have two options.

Either specify the engine in your frontmatter:

```` markdown
---
Expand All @@ -231,6 +233,12 @@ engine: julia
```
````

Or, starting with Quarto 1.7, you can prioritize the julia engine project-wide by adding `julia` to the `engines` array in your project file, giving it priority over all unlisted engines (more under [Engine prioritization](#engine-prioritization)). Note that the project file approach is the only option in order to use the native Julia engine with percent-script files.

```{.yaml filename="_quarto.yml"}
engines: ['julia']
```

Rendering a notebook will start a persistent server process if it hasn't already started. This server process first loads QuartoNotebookRunner from Quarto's private environment. QuartoNotebookRunner then spins up a separate Julia worker process for each notebook you want to render.

#### Notebook environments
Expand Down
13 changes: 13 additions & 0 deletions docs/projects/quarto-projects.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -195,6 +195,19 @@ quarto_render()

{{< include _render-targets.md >}}

### Engine prioritization

Quarto supports different engines to execute code. Historically, the R, Python and Julia languages were only supported by one engine, each, so there was no need to choose an execution engine. With the addition of the native Julia engine, this changed.

When determining which execution engine to use for a given notebook, Quarto checks the available engines in a predefined order, which means that the Jupyter engine is always preferred for Julia over the native engine.

Starting with Quarto 1.7, instead of specifying `engine: julia` in the frontmatter of every notebook in a project, you can set a different prioritization order in your project file using the `engines` key.

All the engines you list there will be checked first in the order you provide. The remaining engines will be checked by Quarto in the usual predefined order. To enable the native Julia engine project-wide, it is therefore enough to add this line to your project file:

```{.yaml filename="_quarto.yml"}
engines: ['julia']
```

## Learning More

Expand Down
Loading