quarto-dev / quarto-dev/quarto-cli
Record/keep extension source for later reuse (`quarto update extension ...`)
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 6k
- Forks
- 458
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 41
Description
Currently, when installation an extension from GitHub, if the extension name does not match the repository name, it's not possible to use quarto update extension ....
The majority of extensions uses quarto-<extension name> as a repository name instead of <extension name>.
For example:
-
Install extensions:
quarto add mcanouil/quarto-iconify quarto add quarto-ext/typst-templates/poster -
Check the installed extensions
quarto list extensionsId Version Contributes quarto-ext/poster 1.0.0 formats mcanouil/iconify 2.1.0 shortcodes -
Update the extensions
quarto update extension quarto-ext/posterExtension not found in local or remote sources
This means that it's not possible to update the extension quarto-ext/poster because the repository name (directory) is typst-templates/poster and not poster.
Same goes for the extension mcanouil/iconify.
This could be solved by recording/keeping the repository name (source) somewhere.
It could be in _extension.yml under source key.
Keeping the source would allow better extension management and easier updates, e.g., quarto update extension all.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the implementation of the quarto add extension, quarto list extensions, and quarto update extension commands, then inspect the proposed _extension.yml source metadata. Done means extensions installed from repositories with different names can retain their source and be found by quarto update extension, including all.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100