-
Notifications
You must be signed in to change notification settings - Fork 25
quarto: adjust manifest construction #554
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
Conversation
fe2cb37
to
88d54a5
Compare
☂️ Python Coverage
Overall Coverage
New FilesNo new covered files... Modified Files
|
afd0eba
to
01a3ba2
Compare
project_config = quarto_inspection.get("config", {}).get("project", {}) | ||
render_targets = project_config.get("render", []) | ||
if len(render_targets): | ||
self.data["metadata"]["primary_rmd"] = render_targets[0] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we not need to set primary_rmd
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's not used by Connect for Quarto content, today.
With R Markdown and Jupyter content, we tell the tool the specific file that we want to render, and the output file is written to the .index
file.
This path only applies for projects, and we want to always rely on the Quarto discovery rules in that case. Only projects have the config.project.render
structure in the output from quarto inspect
.
For Quarto standalone documents, there is a stronger case for communicating the primary document/entrypoint. Connect currently transforms content into a project and then has Quarto use its default discovery rules. If the primary file is deployed along with secondary Markdown files, those would need to be named _filename.md
to be ignored during rendering. Otherwise, Quarto could render both primary.qmd
and do-not-render.qmd
. They could also deploy a _quarto.yml
file alongside the file, and deploy it as a simple "project". Both of those options feel OK, right now.
We may want to eventually annotate the manifest with metadata.entrypoint
, but I'd like to see if we can avoid it.
@@ -163,6 +163,7 @@ class GlobMatcher(object): | |||
""" | |||
|
|||
def __init__(self, pattern): | |||
pattern = pathlib.PurePath(pattern).as_posix() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 for Pathlib
!
01a3ba2
to
524d273
Compare
Validated! |
524d273
to
4cad083
Compare
Intent
/
and optionally\\
)fixes #552
fixes #553
fixes #551
fixes #320
Type of Change
Approach
Actively iterating and deploying different types of Quarto content; filed each of the linked issues based on observations.
Automated Tests
Directions for Reviewers
Simple Quarto document
Simple Quarto document, rendered
Simple Quarto project
Simple Quarto project, rendered
Simple Quarto website
Simple Quarto project, rendered
Checklist