← Back to issue list

`for` grammar: support `else on` and `else for`

View original Github issue

Metadata

Project
craft-grammar
Number
#125
Type
issue
State
open
Author
lengau
Labels
Type: Enhancement Status: Triaged
Created
Updated
Closed
—

Current evaluation

Maintainer-filed enhancement to add `else on` and `else for` clauses to the `for` grammar, with example YAML. Still open after plain `else` support landed in commit db3217b (#137); no discussion beyond an autogenerated Jira link.

Suggested action: keep open

Reason: The issue is valid and not resolved: commit db3217b "feat(for-grammar): add an 'else' clause (#137)" implements only the plain `else:` form, and the narrower sibling request craft-grammar#134 (`for` grammar: support `else` statement) was closed with no implementation recorded — neither covers the `else on` / `else for` variants requested here. It carries the `Status: Triaged` label and was raised by maintainer lengau, so it should stay open despite384 days of inactivity; age alone is not grounds for closing. Confidence is moderate rather than high because file-level inspection failed (tools returned "No pinned SHA available for project 'craft-grammar'"), so I could not confirm whether the model/parser currently rejects `else on`/`else for` or partially supports them.

Evaluated by: mr-cal-bot

Impact: 45 Quick Win: 16 Complexity: 50 Confidence: 62 Actionability: 70

Issue body

We should support `else on` and `else for` statements in `for` grammar. Example usage: ```yaml build-packages: - for raspi: - on arm64: - gcc - else: - gcc-aarch64-linux-gnu - else for pc: - on amd64: - gcc - else: - gcc-x86-64-linux-gnu ```

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha
Impact: 45
Quick Win: 16
Complexity: 50
Confidence: 62
Actionability: 70
keep open Maintainer-filed enhancement to add `else on` and `else for` clauses to the `for` grammar, with example YAML. Still open after plain `else` support landed in commit db3217b (#137); no discussion beyond an autogenerated Jira link.
qwen/qwen3.6-35b-a3b
Impact: 40
Quick Win: 19
Complexity: 40
Confidence: 80
Actionability: 80
keep open Enhancement request to add `else on` and `else for` syntax to the `for` grammar variant. Currently unimplemented and triaged.
qwen/qwen3.8-27b
Impact: 42
Quick Win: 19
Staleness: 60
Complexity: 55
Confidence: 78
Support Request: 5
keep open Enhancement to support `else on` and `else for` statements in the `for` grammar, extending the existing `else` clause. Triaged by maintainer and tracked in Jira (CRAFT-4744); not yet implemented in the processor.
qwen/qwen3.6-35b-a3b
Staleness: 85
Complexity: 40
Confidence: 80
Support Request: 0
keep open Enhancement to add else on and else for syntax to the for grammar for conditional package building. Triaged and synced to internal Jira, but inactive for over a year with no implementation progress.
qwen3.6-35b-a3b-mtp-q6
Staleness: 70
Complexity: 40
Confidence: 80
Support Request: 5
keep open Enhancement to add else on and else for syntax to the for grammar for conditional package building. Currently triaged and awaiting implementation.

Update history

No update history recorded yet.

Related work

  • Related To: craft-grammar#134 (confidence 85%)

    Same feature area: general request for `else` support in `for` grammar; closed with only an autogenerated Jira link (CRAFT-4768) and no implementation, so the `else on`/`else for` variants remain unaddressed.

  • Related To: craft-grammar#137 (confidence 60%)

    Commit db3217b 'feat(for-grammar): add an 'else' clause' is the likely partial fix; message and title indicate plain `else` only, so `else on`/`else for` likely remain unsupported — worth checking before implementation.

Related issues

Issue Project State Summary Similarity
#134 `for` grammar: support `else` statement craft-grammar closed Added for-grammar else support in merged PR #137 (commit db3217b); nested grammar inside else remains unparsed as a known limitation.
79%
#137 feat(for-grammar): add an 'else' clause craft-grammar merged Merged PR #137 in commit db3217b, adding else-clause support to for grammar as requested in #134; nested else contents remain unprocessed.
72%