Parts loader needs refactoring
Metadata
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. | |
| #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). | |
| #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. |