sources: add support for 7-zip files
Metadata
Current evaluation
Merged PR #1168 added .7z source support using libarchive, with tests, in squashed commit a2beca258.
Resolution: closed resolved
Reason: PR #1168 was merged, and repository history identifies commit a2beca258 as “sources: add support for 7-zip files (#1168).” The implementation extracts .7z sources through libarchive and includes test coverage.
Evaluated by: mr-cal-bot
No scores available.
Issue body
This allows snapcraft to work with sources in form of `.7z` files.
Unpacking `.7z` is handled using `libarchive` which is already a
dependency of the project.
Tests: As [discussed on rocket chat](https://rocket.ubuntu.com/channel/snapcraft), since there is no support for [writing `7z` files with libarchive yet](https://github.com/libarchive/libarchive/wiki/LibarchiveFormats), I included a simple `test.7z` file only including a file `test.txt` with the text `Text` in it.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #1168 added .7z source support using libarchive, with tests, in squashed commit a2beca258. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #1168 added .7z source support using libarchive and added unit and integration tests; merged as commit a2beca258. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #1168 added 7-zip source support, using libarchive to extract .7z files; merged as commit a2beca258 after review and green tests. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged. Adds support for unpacking 7-zip files using libarchive. Contributor signed CLA, resolved conflicts, and passed tests following reviewer approval. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged after adding .7z file support via libarchive. Contributor signed CLA, resolved conflicts, and added integration tests. CI checks passed before merge. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #740 sources: add 7z source handler | craft-parts | merged | Merged 7z source-handler support in commit 94e401ed, replacing unmerged #232 and using maintained 7zip, Ruff annotations, and 7z's -o option. | |
| #1670101 Add support for 7-zip sources | snapcraft (launchpad) | closed | 7-zip source support was implemented through snapcore/snapcraft PR #1168, which the issue author linked as the resolution. | |
| #232 sources: add 7z source handler | craft-parts | closed | PR #232 (7z source handler) was never merged and was closed as superseded by canonical/craft-parts#740, which landed the feature in commit 94e401ed (craft_parts/sources/sevenzip_source.py). |