-
Notifications
You must be signed in to change notification settings - Fork 83
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
writeManifest()
assumes a Quarto deployment in the presence of a .qmd
#658
Comments
An additional detail, if you provide a path to # after removing supplemental.qmd
rsconnect::writeManifest(quarto = Sys.which("quarto"), appPrimaryDoc = "app.Rmd")
jsonlite::read_json("manifest.json")[c("metadata", "quarto")]
#> $metadata
#> $metadata$appmode
#> [1] "quarto-shiny"
#>
#> $metadata$primary_rmd
#> [1] "app.Rmd"
#>
#> $metadata$primary_html
#> NULL
#>
#> $metadata$content_category
#> NULL
#>
#> $metadata$has_parameters
#> [1] FALSE
#>
#>
#> $quarto
#> $quarto$version
#> [1] "1.2.313"
#>
#> $quarto$engines
#> $quarto$engines[[1]]
#> [1] "knitr" |
The challenge is that we currently have a bit of a circular logic — do we determine the |
The example from @gadenbuie exposes another complication: Quarto can support If you say "deploy The IDE often knows more about the runtime requirements for the content (providing the |
@aronatkins I don't quite get how this interface is supposed to work. It feels weird to me to say if you want to use quarto, set More discussion on the current interface in #595. |
One possible way forward would be to change the meaning of the
|
@hadley's proposal would resolve a lot of the issues I ran into. It'd be much cleaner for rsconnect to find the path and for the user to have more control over whether or not quarto should be used. If the quarto path needs to be modified, a user could set |
I'm OK trying the proposal, refinement around the details:
|
This resolves my issue (that Hadley closed). Agreed with the TRUE FALSE NA options 👍 I don't know how many customers will have scripts with a hard coded quarto path or quarto_path() but I think we should be clear if this is preferred (still accepts raw path) or breaking change (accepts only logical or NA). |
I'm assuming that the previous interface of supplying a path is mostly an accident of history (not a desired UI) and hasn't been used to select between different versions of quarto. Fixes #658
Replace path specification (needed for historical reasons) with `TRUE`/`FALSE`/`NA`. Fixes #658
If we intend to deploy an
.Rmd
with an adjacent, but unrelated,.qmd
(something we'd make use of in the Shiny R Markdown document, for example),writeManifest()
will assume 1) Quarto is required and 2) that the deployment is aquarto-shiny
deployment.Here's a small reprex, writing
app.Rmd
andsupplement.qmd
into a temp folder.If we tell
writeManifest()
that the primary document isapp.Rmd
, it will still expect that we provide a quarto binary path.If we provide the quarto path, the resulting manifest will choose
app.Rmd
as the primary document but will infer aquarto-shiny
app mode.If we delete the adjacent
.qmd
file we get the expected behavior (but without being able to make (easy) use of the.qmd
in our deployed app).Session info
The text was updated successfully, but these errors were encountered: