feat(snapcraft/pack): node-based rewrite
Metadata
Current evaluation
Merged #100 (CRAFT-5204): rewrote the snapcraft/pack action in Node, fixing Snapcraft 7 default-command handling, adding .comp output support and unit tests. Approved by 2 reviewers, all CI jobs green.
Resolution: closed resolved
Reason: The PR was merged into the default branch with all listed CI checks passing and review approval from 2 reviewers, delivering the Node-based pack action rewrite (+21112/-416 across 24 files) tracked under CRAFT-5204.
Evaluated by: mr-cal-bot
No scores available.
Issue body
Best to review on a per-commit basis.
- The first commit adds the simplest possible pack action, which is missing some features.
- Then, some refactoring work to support the next commit
- Next, we fix the all-too-present Snapcraft 7 default command issue
- And then support outputting .comp files from Snapcraft
- Finally, tests! This doesn't test no warnings as retrospection on workflow logs is apparently insanely complicated as part of a workflow, but the unit tests cover it.
CRAFT-5204.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged #100 (CRAFT-5204): rewrote the snapcraft/pack action in Node, fixing Snapcraft 7 default-command handling, adding .comp output support and unit tests. Approved by 2 reviewers, all CI jobs green. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged #100 (CRAFT-5204): rewrote snapcraft/pack in Node, fixed Snapcraft 7 default command handling, added .comp output support and unit tests. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged a node-based rewrite of the snapcraft/pack action. Resolves the Snapcraft 7 default command issue, adds .comp file support, and includes unit tests. Approved by two reviewers with all CI checks passing across multiple platforms. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
85
Confidence:
90
|
needs review | Rewrites snapcraft/pack action to Node.js, fixes Snapcraft 7 default command issue, adds .comp output support, and includes unit tests. Currently approved by 2 reviewers, CI passing, with 3 unresolved comments. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
85
Confidence:
85
|
needs review | Rewrites snapcraft/pack action to Node.js across 24 files. Currently approved by one reviewer with 3 unresolved comments, CI passing, and awaiting comment resolution. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
85
Confidence:
80
|
needs review | Node-based rewrite of snapcraft/pack action. Adds pack functionality, fixes Snapcraft 7 default command, supports .comp output, and includes unit tests. Approved by 1 reviewer, 3 unresolved comments, all CI passing. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
85
Confidence:
90
|
needs review | Rewrites the snapcraft/pack action in Node.js across multiple commits. Adds pack action, refactors code, fixes Snapcraft 7 default command issue, adds .comp support, and includes unit tests. Currently pending maintainer review with all CI checks passing. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
85
Confidence:
90
|
needs review | Node-based rewrite of snapcraft/pack action. Adds pack action, refactors code, fixes Snapcraft 7 default command, adds .comp output support, and includes unit tests. All CI checks passing, awaiting maintainer review. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
85
Confidence:
95
|
needs review | Node-based rewrite of the snapcraft pack action across 23 files. Introduces a basic pack action, refactors code, fixes Snapcraft 7 defaults, adds .comp support, and includes tests. Currently pending review with all CI checks passing. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
85
Confidence:
95
|
needs review | Node-based rewrite of the snapcraft/pack GitHub Action. Adds pack action, refactors code, fixes Snapcraft 7 default command, adds .comp output support, and includes unit tests. All CI checks passing, awaiting maintainer review. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
0
Complexity:
85
Confidence:
95
|
needs review | Rewrites snapcraft/pack GitHub Action in Node.js. Adds pack action, fixes Snapcraft 7 defaults, supports .comp output, and includes unit tests. Currently awaiting maintainer review with all CI checks passing. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
85
Confidence:
90
|
needs review | Rewrites the snapcraft pack action to a Node-based implementation across 23 files. Adds support for .comp outputs, fixes Snapcraft 7 defaults, and includes unit tests. Currently pending maintainer review with all CI checks passing. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
85
Confidence:
90
|
needs review | Node-based rewrite of the snapcraft/pack action. Includes refactoring, fixes Snapcraft 7 default command, adds .comp support, and unit tests. Currently pending maintainer review with passing CI. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
85
Confidence:
95
|
needs review | Node-based rewrite of the snapcraft/pack action. Introduces initial pack functionality, refactors the codebase, fixes Snapcraft 7 default command handling, adds .comp output support, and includes unit tests. Awaiting maintainer review with passing CI. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
85
Confidence:
90
|
needs review | Rewrites snapcraft pack action to Node.js, adds refactoring, fixes Snapcraft 7 default command, supports .comp output, and includes unit tests. Currently pending maintainer review with all CI checks passing. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
85
Confidence:
80
|
needs review | Rewrites snapcraft/pack to a node-based implementation across 23 files. Currently pending maintainer review with multiple CI jobs failing across various Ubuntu versions and architectures. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
90
Confidence:
85
|
needs review | Node-based rewrite of snapcraft/pack action. Adds pack functionality, refactors code, fixes Snapcraft 7 default command issue, adds .comp output support, and includes unit tests. Currently pending maintainer review with multiple CI setup/pack jobs failing. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
5
Complexity:
85
Confidence:
90
|
needs review | Introduces a node-based rewrite for the snapcraft pack action across 23 files. Currently pending maintainer review with CI jobs running. Includes refactoring, Snapcraft 7 command fixes, .comp output support, and unit tests. |
Update history
| Date | Change |
|---|---|
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| created |
Related work
-
Related To:
canonical/imagecraft#307
(confidence 60%)
Downstream CI change that switched imagecraft to use this Snapcraft pack action instead of action-build.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #307 ci: pack snap using craft-actions | imagecraft | merged | Merged in commit 3f26a09 via #307, replacing action-build with canonical/craft-actions' Snapcraft pack action. | |
| #45 feat: create new snapcraft-pack action | craft-actions | merged | Merged as commit 8756708, adding a snapcraft/pack action modeled on charmcraft/pack, with shared common/ workflows, working `path` input, and snap/ dir added to the cache key. All CI checks passed; docs followed in #46. | |
| #4797 refactor: change PackCommand parent | snapcraft | merged | PR #4797 merged as commit b6f464c78, reparenting snapcraft's PackCommand onto craft-application's PackCommand, deleting ~23 lines of duplicated code enabled by craft-application#340/#341. | |
| #6371 build(deps): update actions/setup-node action to v7 (main) | snapcraft | merged | Renovate PR #6371 was approved and merged into snapcraft main, bumping actions/setup-node from v6 to v7 in two CI workflow files (+2/-2). CI passed except integration-spread-tests-store and OSV-scanner (unrelated). |