← Back to issue list

sources: add snap source handler

View original Github issue

Metadata

Project
craft-parts
Number
#61
Type
pull request
State
merged
Author
cmatsuoka
Labels
Created
Updated
Closed

Current evaluation

Merged. Added a snap source handler to download and extract snap package files, ported from Snapcraft. Approved by three reviewers, passed CI, and added 314 lines across eight files.

Suggested action:

No scores available.

Issue body

The snap source handler takes care or downloading and extracting files from a snap package source. The snap source handler and accompanying tests are a direct port of the corresponding files in Snapcraft. Signed-off-by: Claudio Matsuoka <claudio.matsuoka@canonical.com> - [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)? -----

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Merged. Added a snap source handler to download and extract snap package files, ported from Snapcraft. Approved by three reviewers, passed CI, and added 314 lines across eight files.
qwen3.6-35b-a3b-mtp-q6 Merged addition of a snap source handler to download and extract files from snap packages. The code is a direct port from Snapcraft, authored by maintainer cmatsuoka.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#38 sources: add the local source handler craft-parts merged Merged the local source handler for pull and update operations on host filesystem sources. Ported from snapcraft, the change was approved by two reviewers, passed CI, and added 522 lines across three files.
83%
#1126 feat: source handler snap support craft-parts merged Added support for source types to specify required snaps for handling. Merged after approval by three reviewers and passing all CI checks. Changes span four files with 46 additions, resolving CRAFT-4561.
81%
#955 sources: convert to package. snapcraft merged Merged conversion of snapcraft/internal/sources.py into a package. Approved by one reviewer and passed CI. This refactoring enables extracting individual source handlers into separate modules in follow-up updates.
76%
#149 sources: add the git source handler (CRAFT-588) craft-parts merged Successfully merged a pull request adding a git source handler to specify git repositories as a part source. Code and tests were ported from snapcraft with initialization and write methods removed. Approved and passed CI checks.
75%
#49 packages: add snap package support craft-parts merged Merged after implementing snap download and installation for stage and build snaps. Approved by two reviewers, passed CI, and added 1,072 lines across five files. Follows snapcraft conventions with future refactoring planned.
74%
#31 sources: add source handler base classes craft-parts merged Merged after approval by two reviewers and passing CI checks. Adds base classes for source handlers to manage copying, downloading, and unpacking files, introducing 507 lines across five files.
73%
#212 sources: add zip file source handler craft-parts merged Merged after approval and CI checks. Adds a zip file source handler allowing parts to specify zip archives as sources. Changes span six files with 261 additions and 7 deletions. Co-authored by Kyle Fazzari, Sergio Schvezov, and Marius Gripsgard.
70%