← Back to issue list

refactor(parts): move craft-parts related things into their own package

View original Github issue

Metadata

Project
charmcraft
Number
#1334
Type
pull request
State
merged
Author
lengau
Labels
—
Created
Updated
Closed

Current evaluation

Merged PR #1334, moving craft-parts code from charmcraft/parts.py into a dedicated package with plugins and lifecycle logic split into separate modules.

Resolution: closed resolved

Reason: PR #1334 was merged after two approvals. Commit 5b8ce408 converted parts.py into a package, followed by commits extracting the charm, bundle, lifecycle, and reactive components.

Evaluated by: mr-cal-bot

No scores available.

Issue body

Organised into a few sensible commits

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged PR #1334, moving craft-parts code from charmcraft/parts.py into a dedicated package with plugins and lifecycle logic split into separate modules.
stealth/space-bunny-alpha — closed resolved PR #1334 was merged, reorganising craft-parts functionality into a dedicated package across 16 files (+960/-794 lines), with two approvals and no unresolved review comments.
qwen/qwen3.6-35b-a3b — — Merged a refactor that moves craft-parts components into a dedicated package. Approved by two reviewers with zero unresolved comments. The change modifies 16 files, adding 960 lines and removing 794.
qwen3.6-35b-a3b-mtp-q6 — — Merged a refactoring pull request that reorganizes craft-parts related code into a dedicated package. Changes were structured into logical commits and integrated without additional review comments.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#1897 refactor: move parts plugins to their own module charmcraft merged Merged PR #1897 (commit 392f859b), separating craft-parts plugins into charmcraft/parts/plugins and isolating them from other parts functionality.
86%
#3636 parts: integrate craft-parts (CRAFT-765) snapcraft merged Merged as ae8467056, integrating craft-parts for project-part validation and parts lifecycle processing (CRAFT-765).
75%
#458 build: integrate craft-parts lifecycle (CRAFT-89, CRAFT-367, CRAFT-357) charmcraft merged Merged PR #458 via 9dc20872 (implementation 437dab55), adding a craft-parts lifecycle and charm build plugin to run the charm builder.
74%
#2070 docs: fix build errors in craft-parts charmcraft closed Merged PR #2070, fixing Charmcraft ref and label build errors; remaining craft-parts errors depended on canonical/craft-parts#965.
71%
#107 craft_parts: export PartsError in base package (CRAFT-456) craft-parts merged Merged PR #107 (commit 23fbe96c) exposed PartsError from the craft_parts base package, allowing applications to catch it without importing the internal errors module.
70%
#525 parts: execute lifecycle from the project dir (CRAFT-505) charmcraft merged Merged in canonical/charmcraft#525 via 0d78f540, running the parts lifecycle from the project directory so relative plugin sources resolve when Charmcraft is launched elsewhere.
70%