← Back to issue list

Parts loader needs refactoring

View original Launchpad issue

Metadata

Project
snapcraft (launchpad)
Number
#1596044
Type
issue
State
closed
Author
~sergiusens
Labels
—
Created
Updated
Closed

Current evaluation

Parts configuration was refactored into a dedicated recursive loader by merged PR snapcore/snapcraft#731, commit a7b22b5d3.

Resolution: closed resolved

Reason: PR snapcore/snapcraft#731 merged as commit a7b22b5d3, moving parts configuration into snapcraft/internal/parts.py and adding a project_loader to address the maintainability and recursion concerns.

Evaluated by: mr-cal-bot

No scores available.

Issue body

The logic is hard to maintain and follow. It does not support recursion either

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Parts configuration was refactored into a dedicated recursive loader by merged PR snapcore/snapcraft#731, commit a7b22b5d3.
stealth/space-bunny-alpha — closed resolved Parts-loader refactoring, including recursive part resolution, was addressed in snapcore/snapcraft PR #731, cited by the maintainer before the issue was closed.
stealth/space-bunny-alpha — closed resolved Parts loading was refactored in merged PR #731 (commit a7b22b5d3), centralizing configuration logic in snapcraft/internal/parts.py.
stealth/space-bunny-alpha — closed resolved Refactor request resolved by snapcore/snapcraft PR #731 (commit a7b22b5d3), "Factor parts config into snapcraft/internal/parts.py", merged and cited by the maintainer when closing the issue.
stealth/space-bunny-alpha — closed stale Closed after long inactivity without a documented fix; neither the loader refactor nor recursive-parts support was recorded as delivered.
qwen/qwen3.6-35b-a3b — — Closed without resolution or linked pull request. The request remains unaddressed and was likely abandoned or superseded by later development. No comments or fixes were provided.
qwen/qwen3.6-35b-a3b — — Closed without resolution. The maintainer flagged the parts loader as hard to maintain and lacking recursion support, but the request appears abandoned or deferred pending future work.
qwen/qwen3.6-35b-a3b — — Closed without resolution. The parts loader refactoring request was abandoned after 54 days of inactivity due to lack of discussion or implementation.

Update history

Date Change
created

Related work

  • Likely Fixed By: snapcore/snapcraft#731 (confidence 99%)

    The maintainer linked this merged refactoring PR directly from the closed Launchpad issue.

Related issues

Issue Project State Summary Similarity
#1504 project loader: refactor into package snapcraft merged Merged in snapcraft#1504 via commit 80630158d, creating a project-loader package and moving PartsConfig, schema validation, and loader errors into it.
78%
#731 Factor parts config into snapcraft/internal/parts.py snapcraft merged josepht's refactor moving parts config into snapcraft/internal/parts.py merged as commit a7b22b5d3, adding project_loader (renamed from s.i.yaml during review per elopio/sergiusens).
74%
#1507 many: simplify plugin loading snapcraft merged Merged snapcraft#1507 in commit f8207335f, moving plugin loading from PluginHandler to PartsConfig to reduce indirection and component coupling.
72%