build-on is/isn't mandatory/optional?
Metadata
Current evaluation
Snapcraft 8.9.2 rejects empty-dict platform entries (e.g. amd64: {}) requiring build-on, contradicting docs. Maintainers confirmed behavior is intentional after craft-platforms refactor; decision made to update docs rather than restore empty-dict support.
Suggested action: keep open
Reason: Maintainers explicitly decided on 2025-06-05 to 'leave this behavior as-is and update the documentation' after discussing with @lengau and @cmatsuoka. The docs still say build-on can be omitted for valid Debian arch names, but don't clarify that empty dicts are invalid — only null/empty values work. This is a pending doc fix that should remain open until the documentation is updated to clarify the distinction between omitted/null and empty-dict platform values.
Issue body
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.8-27b |
Impact:
40
Quick Win:
28.0
Staleness:
55
Complexity:
30
Confidence:
85
Support Request:
35
|
keep open | Snapcraft 8.9.2 rejects empty-dict platform entries (e.g. amd64: {}) requiring build-on, contradicting docs. Maintainers confirmed behavior is intentional after craft-platforms refactor; decision made to update docs rather than restore empty-dict support. | |
| qwen/qwen3.8-27b |
Impact:
40
Quick Win:
30.0
Staleness:
55
Complexity:
25
Confidence:
85
Support Request:
30
|
keep open | Snapcraft 8.9.2 rejects empty platform dicts (build-on required) despite docs saying it can be omitted. Maintainers decided to keep behavior and update docs; doc fix pending. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
85
Complexity:
5
Confidence:
90
Support Request:
70
|
keep open | Snapcraft now requires explicit build-on values instead of empty dictionaries under platforms. Maintainers decided to keep the new behavior and update documentation instead of reverting. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
70
Complexity:
15
Confidence:
90
Support Request:
10
|
close not a bug | Snapcraft 8.9.2 requires explicit build-on values, breaking compatibility with older versions that accepted empty platform dictionaries. Maintainers have decided to update documentation rather than revert the parsing change. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
85
Complexity:
10
Confidence:
90
Support Request:
10
|
close not a bug | Snapcraft now requires platform keys to be null or omitted instead of empty dictionaries. Triaged as a documentation issue, the team will update the docs to clarify the parsing change rather than reverting the behavior. |
Update history
No update history recorded yet.
Related work
-
Caused By:
snapcraft/snapcraft#5111
(confidence 75%)
PR 'feat: use craft-platforms for build plans' introduced the craft-platforms dependency that changed platform parsing behavior, causing empty dicts to be rejected
-
Related To:
snapcraft/snapcraft#5205
(confidence 60%)
Refactor to use craft-platforms utilities further consolidated platform handling
Related issues
No related issues found above the similarity threshold.