Skip to content

fix(ci): skip malformed _extension.yml instead of aborting run#299

Merged
mcanouil merged 1 commit intomainfrom
fix/robust-extension-manifest-parsing
Apr 19, 2026
Merged

fix(ci): skip malformed _extension.yml instead of aborting run#299
mcanouil merged 1 commit intomainfrom
fix/robust-extension-manifest-parsing

Conversation

@mcanouil
Copy link
Copy Markdown
Owner

A single _extension.yml that fails YAML parsing was enough to abort the whole Quarto Wizard run via set -e -o pipefail, leaving every other entry unprocessed.
This happened on run 24622834684 when processing sebastiansauer/quarto-typst-academic-template at its zenodo release tag, where _extensions/aufsatz/_extension.yml contains an unquoted colon in the title value.

extract_extension_manifest now guards each yq invocation, emits a ::warning title=Invalid Extension Manifest::... annotation on failure, and continues to the next file.
The jq aggregator defaults to an empty array so a stream with no parseable manifests no longer triggers Cannot iterate over null.

A single _extension.yml that fails YAML parsing was enough to abort the
whole Quarto Wizard run via set -e -o pipefail, leaving every other
entry unprocessed. Guard each yq invocation, emit a GitHub warning
annotation on failure, and default the jq aggregator to an empty array
so an all-null stream no longer triggers "Cannot iterate over null".
@mcanouil mcanouil added the Type: CI/CD 🤖 Issues related to continuous integration and deployment label Apr 19, 2026
@mcanouil mcanouil self-assigned this Apr 19, 2026
@mcanouil mcanouil added the Type: CI/CD 🤖 Issues related to continuous integration and deployment label Apr 19, 2026
@mcanouil mcanouil merged commit aced096 into main Apr 19, 2026
11 checks passed
@mcanouil mcanouil deleted the fix/robust-extension-manifest-parsing branch April 19, 2026 08:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Type: CI/CD 🤖 Issues related to continuous integration and deployment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant