cli: add the pack command
Metadata
Current evaluation
Merged the pack CLI command, replacing the previous assemble implementation. Approved by one reviewer, passed CI checks, and updated seven files with 164 additions and 16 deletions.
Suggested action: —
No scores available.
Issue body
This is what once was supposed to be the snap-dir command.
LP: #1707095
Signed-off-by: Sergio Schvezov <sergio.schvezov@canonical.com>
- [x] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)?
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [x] If this is a bugfix. Have you checked that there is a bug report open for the issue you are trying to fix on [bug reports](https://bugs.launchpad.net/snapcraft)?
- [x] If this is a new feature. Have you discussed the design on the [forum](https://forum.snapcraft.io)?
- [x] Have you successfully run `./runtests.sh static`?
- [x] Have you successfully run `./runtests.sh unit`?
-----
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged the pack CLI command, replacing the previous assemble implementation. Approved by one reviewer, passed CI checks, and updated seven files with 164 additions and 16 deletions. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged the pack CLI command, replacing the planned assemble and snap-dir commands. The maintainer applied the rename and merged the changes after reviewer acknowledgment. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged the CLI pack command, replacing the assemble and snap-dir implementations. The author confirmed the rename, the reviewer dismissed pending the update, and the changes were successfully merged. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #182 Added the pack command, initially to work only with bundles. | charmcraft | merged | Added a pack command for bundles. Approved by two reviewers and merged. Modified five files with 631 additions and six deletions. A reviewer suggested the black formatter, but the feature was integrated. | |
| #829 fix(pack): put a gate around skipping repack. | craft-application | merged | Merged a fix that adds a gate around skipping repack. Approved by three reviewers and passed all CI checks. The change modifies five files with 21 additions. | |
| #1060 pack: add recursive bundle packing | charmcraft | merged | Added recursive bundle packing to the pack module. Merged after approval and addressing reviewer feedback. Changes span 10 files with 750 additions and 32 deletions. | |
| #1592 fix(cli): restrict --project-dir to init and pack commands (#1565) | charmcraft | merged | Merged to main as a cherry-pick, restricting the --project-dir CLI flag to init and pack commands. Approved by two reviewers, the update removes 579 lines across eight files. | |
| #26 cli: parse command line using craft-cli | rockcraft | merged | Merged after approval and passing CI. Replaced the temporary CLI parser with craft-cli's subsystem and defined the pack command. Modified 12 files, adding 144 lines and removing 197. | |
| #4797 refactor: change PackCommand parent | snapcraft | merged | Merged a refactor updating the PackCommand parent class to eliminate duplicated code via upstream simplifications. Approved by two reviewers, passed CI, and reduced the codebase by 23 lines across one file. | |
| #1230 pack: refactor business logic out of pack command class | charmcraft | merged | Merged after two reviewers approved. Refactors business logic out of the pack command class, building on #1229 and fixing #1147. Changes modify four files, adding 307 lines and removing 335. | |
| #739 Hide the 'build' command and make 'pack' the common one (CRAFT-938). | charmcraft | merged | Merged after approval, this change hides the 'build' command and promotes 'pack' as the common command, resolving #720. The update modifies four files with four additions and three deletions. | |
| #341 fix(PackCommand): remove 'parts' argument | craft-application | merged | Merged the fix to remove the 'parts' argument from PackCommand. Simplified after PR #340, the change passed CI, received two approvals, and was successfully integrated into the main branch. | |
| #28 ci: fail if code hasn't been packed | craft-actions | merged | Merged a maintainer pull request updating the CI pipeline to fail builds when code is not properly packed. Approved by two reviewers, the change modifies two files to enforce packing requirements before deployment. |