← Back to issue list

refactor: use init command from craft-application

View original Github issue

Metadata

Project
snapcraft
Number
#5129
Type
pull request
State
merged
Author
mr-cal
Labels
Created
Updated
Closed

Current evaluation

Merged a refactor replacing Snapcraft's init command with craft-application's implementation. Introduces name, profile, and project-dir parameters, resolves #5098, passed CI, and received two approvals across 23 changed files.

Suggested action:

No scores available.

Issue body

- [x] Have you followed the [guidelines for contributing](https://github.com/canonical/snapcraft/blob/main/CONTRIBUTING.md)? - [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)? - [x] Have you successfully run `tox run -m lint`? - [x] Have you successfully run `tox run -e test-py310`? (supported versions: `py39`, `py310`, `py311`, `py312`) ----- Replace Snapcraft's `init` implementation with craft-application's implementation. Somehow I added more lines of code :upside_down_face: There are no behavioral changes with just `snapcraft init`. However, the command now accepts additional parameters added in craft-application: `name`, `profile`, and `project-dir`. Fixes #5098 (CRAFT-3543)

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Merged a refactor replacing Snapcraft's init command with craft-application's implementation. Introduces name, profile, and project-dir parameters, resolves #5098, passed CI, and received two approvals across 23 changed files.
qwen3.6-35b-a3b-mtp-q6 Merged update replacing Snapcraft's init command with craft-application's implementation. Adds name, profile, and project-dir parameters while preserving existing behavior. Resolves #5098.
qwen3.6-35b-a3b-mtp-q6 Merged a refactor replacing Snapcraft's init command with craft-application's implementation. Adds name, profile, and project-dir parameters without behavioral changes. Resolves #5098.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#1520 refactor: remove old "init" command implementation charmcraft merged Merged a refactoring PR removing the old "init" command after the craft-application transition. Approved by two reviewers with passing CI, the change modified four files, adding one line and deleting 248.
82%
#4830 refactor: migrate commands to craft-application snapcraft merged Merged following three approvals and passing CI. Migrates remaining commands to core24/craft-application, updating snapcraft init to generate core24 files, correcting list-plugins output, and refreshing command docs. Resolves #4742.
77%
#856 refactor: use craft-application 5 rockcraft merged Merged after three reviewers approved. The change refactored the codebase to adopt craft-application version 5, updating 49 files with 959 additions and 915 deletions. All checks passed.
74%
#1340 feat(craft-app): move init command charmcraft merged Merged maintainer PR moving the craft-app init command. Includes required lint fixes, approved by three reviewers, and modifies 18 files (+500/-343 lines).
74%
#4682 refactor(app): use more code from craft-app snapcraft merged Merged a refactoring update consolidating app code by leveraging more craft-app functionality. Approved by two reviewers, passed CI and coverage checks, and modified three files with a net reduction of 13 lines.
74%
#5007 refactor(application): commands, pre-run validation snapcraft merged Merged after approval and CI. Refactored command handling and pre-run validation using craft-cli groups. Improved error formatting, targeted SNAPCRAFT_REMOTE_BUILD_STRATEGY validation, and fixed core20/core24 compatibility. Resolves #4911 and #5008.
74%
#1571 refactor: remove unused clean command implementation charmcraft merged Merged refactoring that removes the unused custom clean command and associated regression tests, as the project now uses the craft-application clean command. Approved by three reviewers, passed CI, and modified four files.
72%
#395 refactor: merge feature/craft-application rockcraft merged Merged feature/craft-application into main, completing Rockcraft's migration to craft-application 1.0.0. The refactoring modified 99 files, resolved multiple issues, and introduced breaking changes. Approved by two reviewers with passing CI.
72%
#353 refactor(cli): add scaffolding for craft-application rockcraft merged Merged into feature/craft-application branch. Adds basic craft-application scaffolding with a fallback to legacy code, enabling incremental command migration without breaking existing functionality. Approved and passed CI.
72%
#354 refactor: use craft-application for "pack" rockcraft merged Merged a refactor routing rockcraft pack to the new craft-application-based runner, resolving issue #316. The update spans 24 files with 935 additions and 40 deletions, received two approvals, and passed CI checks.
71%