← Back to issue list

metadata: refactor parsing into own module (CRAFT-311)

View original Github issue

Metadata

Project
charmcraft
Number
#408
Type
pull request
State
merged
Author
cjp256
Labels
—
Created
Updated
Closed

Current evaluation

PR #408 was merged as 6ce96573, landing 6163e67e: metadata parsing moved to a dedicated Pydantic module, reused charmcraft.yaml logic, and became reusable beyond build/pack.

Resolution: closed resolved

Reason: PR #408 was approved and merged as merge commit 6ce96573; implementation commit 6163e67e completed the metadata parsing refactor.

Evaluated by: mr-cal-bot

No scores available.

Issue body

Move metadata logic into its own module, migrating to pydantic and re-using bits found for charmcraft.yaml config parser. This will allow for re-use of metadata for commands other than build/pack. Signed-off-by: Chris Patterson <chris.patterson@canonical.com>

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved PR #408 was merged as 6ce96573, landing 6163e67e: metadata parsing moved to a dedicated Pydantic module, reused charmcraft.yaml logic, and became reusable beyond build/pack.
stealth/space-bunny-alpha — closed resolved Merged #408, moving metadata parsing into a dedicated Pydantic module and reusing charmcraft.yaml config logic for use beyond build/pack.
stealth/space-bunny-alpha — closed resolved Merged #408: refactored metadata parsing into a standalone module using Pydantic, reusing charmcraft.yaml config logic and enabling metadata reuse beyond build and pack.
qwen/qwen3.6-35b-a3b — — Merged after approvals and CI. Refactored metadata parsing into a standalone module, migrating to Pydantic and reusing charmcraft config logic. Changes (+127/-22 lines across 5 files) enable metadata reuse across commands beyond build and pack.
qwen3.6-35b-a3b-mtp-q6 — — Merged a refactoring that extracts metadata parsing into a dedicated module using Pydantic and reuses charmcraft.yaml config parser logic, enabling metadata reuse across commands beyond build and pack.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#401 build: require metadata.yaml and parse on Builder init (CRAFT-301) charmcraft merged PR #401 (CRAFT-301) merged: metadata.yaml parsing moved from handle_package() to Builder.__init__ for reuse, with an explicit missing-file error and new test; commit cd187c30, merge 6de20938.
73%
#2874 feat: mediate creation of metadata.yaml charmcraft merged PR #2874 merged to charmcraft main (2 approvals): implements craft-application's package service API so metadata.yaml creation is mediated in Charm/rock layers, tracking CHARMCRAFT-723.
71%