feat(snaps): use '@' for separating stage-snap names from their channels.
Metadata
Current evaluation
Merged PR #1575 by lengau switches stage-snaps/build-snaps name/channel parsing to '@' (snaps.py uses split("@", 1) and rejects padded whitespace), fixing issue #1574; changelog entry added.
Resolution: closed resolved
Reason: The PR was merged into main by maintainer steinbro (approved by 4 reviewers) after conflicts were resolved (26f1163) and the no-surrounding-whitespace rule added (e2641e9). craft_parts/packages/snaps.py now contains `snap.split("@", 1)` plus a padding rejection, and docs/reference/changelog.rst records the change; the legacy '/' form remains supported.
Evaluated by: mr-cal-bot
Issue body
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #1575 by lengau switches stage-snaps/build-snaps name/channel parsing to '@' (snaps.py uses split("@", 1) and rejects padded whitespace), fixing issue #1574; changelog entry added. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged #1575 as commit 451adf2b, adopting @ between stage-snap names and channels, with tests, documentation, and strict validation against surrounding whitespace. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged after implementing the @ separator for stage-snap names and channels. Resolved merge conflicts, updated docs and tests, and added whitespace validation. Approved by four reviewers with passing CI checks. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged after resolving conflicts and updating the implementation to enforce strict @ separator usage without surrounding whitespace. Replaces the legacy / format for stage-snap names and channels, with added validation to reject spaces. Approved and integrated. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
25
Confidence:
85
|
needs review | Updates snap channel parsing to use '@' separator instead of '/'. Approved by 4 reviewers, CI passing, maintainer ready to merge pending final review on whitespace validation placement. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
35
Confidence:
90
|
needs review | Implements '@' separator for snap stage/build names, replacing legacy '/' format. Approved by 4 reviewers, CI passing, maintainer requests re-review to merge before handling deb support separately. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
15
Confidence:
90
|
needs review | Updates snap channel parsing to use '@' separator instead of '/'. Maintainer requested re-review after resolving conflicts, fixing whitespace handling, and adding validation. CI passes. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
40
Confidence:
90
|
needs review | Introduces '@' separator for stage-snap names and channels. Actively maintained and ready for re-review per maintainer request. CI shows pending checks and one lint failure. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
20
Confidence:
90
|
needs review | Updates snap channel parsing to use '@' separator. Maintainer recently requested re-review after resolving conflicts and fixing whitespace, but 5 review comments remain and CI shows a failing lint check. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
10
Complexity:
30
Confidence:
85
|
needs review | Implements @ separator for stage-snap names and channels, resolves merge conflicts, and enforces strict whitespace rules. Awaiting re-review from maintainers after recent updates. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
25
Confidence:
85
|
needs review | Updates snap channel separator from / to @ in stage-snap names. Currently under re-review with 8 unresolved comments and failing CI checks, but a maintainer has requested a merge pending final approval. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
20
Confidence:
90
|
needs review | Updates snap channel separator from / to @, resolves conflicts and review feedback, and fixes lint. Currently awaiting re-review after maintainer indicated intent to merge it separately from deb support. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
35
Confidence:
90
|
needs review | Updates snap channel parsing to use '@' separator. Resolved merge conflicts and enforced strict whitespace rules per reviewer feedback. Awaiting maintainer re-review and approval to merge. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
10
Complexity:
20
Confidence:
85
|
needs review | Introduces '@' separator for stage-snap names and channels. Resolves merge conflicts and addresses review feedback on whitespace handling. Currently awaiting maintainer re-review with minor CI failures on lint and minimum dependencies. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
35
Confidence:
95
|
needs review | Updates snap channel parsing to use '@' separator instead of '/'. Awaiting maintainer re-review after merge conflict resolution and whitespace fixes. CI lint check is failing, one unresolved review comment remains. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
25
Confidence:
90
|
needs review | Updates snap channel parsing to use '@' separator. Actively under review with recent maintainer feedback, unresolved comments, and failing lint checks. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
10
Complexity:
25
Confidence:
90
|
keep open | Updates snap channel parsing to use '@' separator. Currently under review with one unresolved comment, actively maintained, and explicitly blocked pending approval of an external specification. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
20
Complexity:
25
Confidence:
85
|
keep open | Updates snap channel separator syntax from / or = to @ with optional whitespace. Currently under review with changes requested, blocked pending a formal spec approval, and merge conflicts were recently resolved. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
45
Complexity:
45
Confidence:
90
|
keep open | Changes snap channel separator syntax from / or = to @ with optional whitespace. Currently under review with changes requested, blocked pending approval of an external specification for the new syntax. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
20
Complexity:
40
Confidence:
90
|
keep open | Implements '@' separator for stage-snap names and channels, replacing '='. Currently paused pending approval of a new syntax specification by the team. |
Update history
| Date | Change |
|---|---|
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated |
Related work
-
Related To:
canonical/craft-parts#1574
(confidence 92%)
Issue 'Change snap name separator character' that this PR declares it fixes; closed as superseded by it.
-
Related To:
canonical/craft-parts#1591
(confidence 40%)
Likely the follow-up PR applying the same '@' separator to debs (deb_package.py split("@", 1)), per steinbro's comment that debs would be handled separately.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #2468 many: support for stage-snaps | snapcraft | merged | Merged in PR #2468 as commit 0983e4063, adding stage-snaps, advanced grammar support, and a snap source for extracting downloaded snaps. | |
| #1805214 stage-snaps | snapcraft (launchpad) | closed | Feature request for a stage-snaps keyword (unpack a snap's content into the snap being built, like stage-packages) was implemented and merged in canonical/snapcraft#2468 (commit 0983e4063), then shipped in the 3.2 release; follow-up fixes in #2525 and #3211. |