← Back to issue list

feat: implement core24 "pack" command

View original Github issue

Metadata

Project
snapcraft
Number
#4565
Type
pull request
State
merged
Author
tigarmo
Labels
Created
Updated
Closed

Current evaluation

Merged the core24 pack and clean command implementation. Maintainer rebase-merged after two approvals, resolving #4470. Known test failures from missing dependencies were intentionally accepted to advance the craft-application branch.

Suggested action:

No scores available.

Issue body

As before, this PR is split over multiple commits: - First one is mostly a cherry-pick of @lengau and @mr-cal 's prototype. I had to do some minor changes to satisfy linters but nothing major; - Second commit adds the "clean" command, just because it's so easy to implement and used by basically every spread test; - Third commit re-enables "pack" and "clean" in a bunch of spread tests; - Final commit updates the expected error messages for those tests that are still failing due to _other_ missing features. One unfortunate consequence of the spread parametrization that we do in some tests is that now there's no easy way to handle some tests; for instance, `tests/spread/core24/craftctl` has three "subtests" as spread parameters; one is passing and two are failing (because they need adopt-info). Rather than doing a complicated logic in bash to handle this, I think we might just accept these failures in this feature-branch while we work on the issues. If that's acceptable, it means we'll need someone with admin access to ultimately merge this when it's approved.

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Merged the core24 pack and clean command implementation. Maintainer rebase-merged after two approvals, resolving #4470. Known test failures from missing dependencies were intentionally accepted to advance the craft-application branch.
qwen3.6-35b-a3b-mtp-q6 Merged core24 pack and clean command implementation. Rebase-merged into the feature branch, fixing #4470. Expected test failures for missing features were accepted. Changes were approved and integrated.
qwen3.6-35b-a3b-mtp-q6 Merged via rebase after implementing core24 pack and clean commands. Resolves #4470. Expected CI failures from missing craft-application features were accepted, and spread tests were prioritized over unit tests.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#4693 feat: core24 using Craft Application and core22 components snapcraft merged Merged after two approvals and passing CI. Updated core24 to use Craft Application and core22 components across 284 files, adding over 10,000 lines and removing nearly 2,000. Codecov noted minor coverage gaps, but changes were integrated.
76%
#4873 feat: support "build-for: [all]" in core24 snapcraft merged Merged implementation of build-for: [all] support for core24 snaps, fixing #4854. Changes were squashed, craft-application updated to 3.0.0, and unit and spread tests added after two approvals.
74%
#4630 feat: add platforms and drop architectures for core24 snapcraft merged Merged platforms keyword addition and architectures removal for core24. Build-for propagation and validation test failures were resolved. Remaining clean command edge cases were deferred to an upstream craft-application issue.
73%
#4717 feat: package component hooks for core24 snapcraft merged Merged following two approvals and passing CI checks. The update adds support for packaging component hooks for core24, modifying 15 files with 419 additions and 89 deletions. Test coverage requirements were met.
73%
#1399 feat: craft-application rebase charmcraft merged Merged the craft-application rebase, altering 109 files with 7,783 additions and 755 deletions. Approved by two reviewers, the update was deemed functional for integration, with remaining issues deferred to future pull requests.
72%
#4692 feat: core24 using Craft Application and core22 components snapcraft closed Superseded by PR #4693 due to branch protection rules. Changes adding core24 support with Craft Application and core22 components were closed without review or merge.
72%
#30 feat: merge 'bundle-snap' into 'core24-8' snapcraft-rocks merged Merged 'bundle-snap' into 'core24-8' following dual reviewer approval. The branch integrates PR #28 and applies a core24 codebase upgrade, adding 113 lines across seven files.
72%
#4557 feat!: fail if we know the project is core24 snapcraft merged Merged a breaking change that fails early for core24 projects. Added core24 spread tests with expected failures and updated CI workflows. Approved by two reviewers and passed all checks.
71%
#5767 feat: add support for core26 (#5677) snapcraft merged Added core26 base support with unit tests and build-base handling. Merged after maintainer approval and passing CI checks.
71%
#5616 feat(snapcraft_legacy): pack command runs the lifecycle snapcraft merged Merged squashed PR that aligns the core20 snapcraft pack command with core22 and core24 by running the lifecycle. Approved by three reviewers with all CI checks passing. Resolves #5425.
71%