← Back to issue list

feat(snapcraft/pack): node-based rewrite

View original Github issue

Metadata

Project
craft-actions
Number
#100
Type
pull request
State
merged
Author
bepri
Labels
—
Created
Updated
Closed

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.
75%
#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.
75%
#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.
71%
#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).
70%