refactor: use init command from craft-application
Metadata
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. | |
| #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. | |
| #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. | |
| #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). | |
| #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. | |
| #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. | |
| #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. | |
| #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. | |
| #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. | |
| #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. |