posit-dev / posit-dev/rsconnect-python
Support the Quarto knitr engine when deploying content
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 37
- Forks
- 28
- Ø Merge
- 1 T. 3 Std.
- Gemergte PRs (30 T.)
- 7
Beschreibung
Goal
Allow content using the Quarto knitr engine to be deployed and to have a
manifest written. Today validate_quarto_engines (rsconnect/actions.py) accepts
only markdown and jupyter and rejects everything else, including knitr.
Why
knitr is the default Quarto engine for documents that mix R and Python chunks.
Now that rsconnect-python can carry R dependencies from renv.lock, the original
reason for excluding knitr no longer applies, so the rejection blocks a case
the tool can otherwise handle. Raised in review:
https://github.com/posit-dev/rsconnect-python/pull/785#discussion_r3431999679
References
- rsconnect/actions.py (
validate_quarto_engines) — the engine allowlist. - rsconnect/main.py — the four Quarto entry points already branch on
"jupyter" in enginesand handle the no-Python-environment case (markdown). - renv.lock R-dependency support: PR: support for parsing renv.lock #785
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne in rsconnect/actions.py bei validate_quarto_engines, um die aktuelle Engine-Validierung nachzuverfolgen, und untersuche anschließend die vier Quarto-Einstiegspunkte in rsconnect/main.py sowie deren vorhandene jupyter- und markdown-Zweige. Stelle anhand der vorhandenen Einstiegspunkte und der zugehörigen Prüfungen sicher, dass die Bereitstellung von Quarto-Inhalten mit knitr funktioniert, einschließlich des Schreibens des Manifests und des Falls ohne Python-Umgebung.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python, r
- Bereich
- cli
- Issue-Typ
- Feature
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Aktivitätsstatus
- Ruhig
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 78/100