← Back to issue list

feat(cli): add craft-application scaffolding

View original Github issue

Metadata

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

Current evaluation

Merged. Adds craft-application scaffolding to snapcraft, migrating to the Project model and adding an Application class and CLI. Commands raise ClassicFallback to run existing code. Merged despite a flaky Appveyor test.

Suggested action:

No scores available.

Issue body

- [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] Have you successfully run `make lint`? - [x] Have you successfully run `pytest tests/unit`? ----- Adds `craft-application` scaffolding to snapcraft. This includes migrating to the `Project` model, adding an `Application` class, and CLI handling. All commands are unimplemented, raise a `ClassicFallback` error, and execute the existing snapcraft code. This has the same scope and intent as https://github.com/canonical/rockcraft/pull/353. This is based on @lengau's work in https://github.com/snapcore/snapcraft/pull/4449, which includes this work and more (such as the implementation of lifecycle commands). (CRAFT-2238)

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Merged. Adds craft-application scaffolding to snapcraft, migrating to the Project model and adding an Application class and CLI. Commands raise ClassicFallback to run existing code. Merged despite a flaky Appveyor test.
qwen3.6-35b-a3b-mtp-q6 Merged craft-application scaffolding into snapcraft, adding the Project model, Application class, and CLI handling. Commands fallback to existing behavior. Merged despite a flaky Appveyor test, as it passed on the branch and targets a feature branch.
qwen3.6-35b-a3b-mtp-q6 Merged craft-application scaffolding into snapcraft, introducing the Project model, Application class, and CLI handling. Commands raise ClassicFallback to delegate to existing code. Merged despite a flaky Appveyor test that passed on the branch.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#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.
81%
#239 feat(snap_config): add snap_config model and utilities craft-application merged Merged snap_config model and utilities into craft-application. Imported from snapcraft, updated to coding standards, and made generic. Approved by two reviewers, passed CI, and initiates a three-part series for build mode configuration.
70%