← Back to issue list

feat(snap_config): add snap_config model and utilities

View original Github issue

Metadata

Project
craft-application
Number
#239
Type
pull request
State
merged
Author
mr-cal
Labels
Created
Updated
Closed

Current evaluation

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.

Suggested action:

No scores available.

Issue body

- [x] Have you followed the guidelines for contributing? - [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)? - [x] Have you successfully run `tox`? ----- This is the first of 3 commits for setting the build mode: - a PR to import `snap_config` (this PR) - a PR to determine which provider to use - a PR to determine whether to run on the host or in a provider) Inside this PR are 2 commits: - import the `snap_config` model and utilities from snapcraft unmodified - updates them to `craft-application` coding standards and make the code generic The `snap-helpers` package is a required library but applications are not required to run as a snap or have a snap config. I will ensure this behavior in the next PR where I will use the model. (CRAFT-2477)

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b 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.
qwen3.6-35b-a3b-mtp-q6 Merged the snap_config model and utilities from snapcraft into craft-application, adapting them to project coding standards. This is the first of three planned commits for build mode configuration.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#3898 config: add snap config model snapcraft merged Merged into main following reviewer approval and passing CI. Adds a snap config model to parse data set via snap set snapcraft key=value, mirroring charmcraft. The change modifies 11 files with 317 additions.
79%
#351 feat: add a default snapcraft.yaml starbase open Adds a default snapcraft.yaml (+54 lines, 1 file) so users can build a snap via the craft-application flow. Approved by 1 reviewer but 8 review comments remain unresolved; last activity 462 days ago.
72%
#3893 config: add snap config model snapcraft closed Closed by author. The snap config model was abandoned and superseded by a new implementation leveraging the snaphelpers library for better configuration handling.
72%
#3748 parts: define variables and expand them in snapcraft.yaml snapcraft merged Merged after approval and passing CI. Adds global and step-specific SNAPCRAFT_* variables for snapcraft.yaml and lifecycle execution, extending CRAFT_* support. A reviewer requested a spread test rerun for 22.04.
71%
#4672 Enable Snapcraft plugins in craft-application codepath snapcraft merged Merged via rebase merge after two approvals and passing CI. Registers Snapcraft plugins in the craft-application codepath and adds confinement and base variables to the lifecycle for plugin usage.
71%
#4 snap: introduce initial snap packaging (CRAFT-578) rockcraft merged Merged initial snap packaging implementation (CRAFT-578). Approved by one reviewer, passed CI checks, and added 86 lines across three files.
71%
#4456 feat(cli): add craft-application scaffolding snapcraft merged 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.
70%