metadata: add infrastructure for extracting metadata from parts
Metadata
Current evaluation
Merged. Added foundational infrastructure for extracting metadata from parts, resolving #1693. Establishes the base framework in snapcraft.extractors, deferring actual extraction logic to future PRs. Approved and passed CI.
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] If this is a bugfix. Have you checked that there is a bug report open for the issue you are trying to fix on [bug reports](https://bugs.launchpad.net/snapcraft)?
- [x] If this is a new feature. Have you discussed the design on the [forum](https://forum.snapcraft.io)?
- [x] Have you successfully run `./runtests.sh static`?
- [x] Have you successfully run `./runtests.sh unit`?
-----
This PR resolves #1693 by adding the underlying infrastructure necessary to extract metadata from parts. No actual metadata extraction is done here (e.g. Appstream). That will come in follow-up PRs, and will be as simple as adding a new module to `snapcraft.extractors` with an `extract` function.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged. Added foundational infrastructure for extracting metadata from parts, resolving #1693. Establishes the base framework in snapcraft.extractors, deferring actual extraction logic to future PRs. Approved and passed CI. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged changes establishing foundational infrastructure for extracting metadata from parts, resolving #1693. Sets up the snapcraft.extractors module structure to support future metadata extraction implementations. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged by kyrofa, the update adds foundational infrastructure for extracting metadata from parts, resolving issue #1693. Actual extraction logic for formats like Appstream will be implemented in subsequent PRs. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1826 extractors: support appstream metadata in parts | snapcraft | merged | Merged. Implemented an Appstream metadata extractor for snapcraft parts, initially supporting summary and description fields. Resolves issue #1694. Code authored by @elopio. |