Factor parts config into snapcraft/internal/parts.py
Metadata
Current evaluation
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).
Resolution: closed resolved
Reason: The PR itself was merged, landing as commit a7b22b5d3 'Factor parts config into snapcraft/internal/parts.py (#731)'. Review requests (rename yaml -> project_loader, drop unused import, naming changes from come-maiz) were addressed by the author before merge, and the new module persisted, later becoming a package in #1504.
Evaluated by: mr-cal-bot
Issue body
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | 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). | |
| stealth/space-bunny-alpha | — | closed resolved | Merged #731, moving parts configuration into snapcraft/internal/parts.py; review changes renamed the yaml module to project_loader and updated naming and imports. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged after refactoring parts configuration into snapcraft/internal/parts.py. The module was renamed from snapcraft.internal.yaml per reviewer feedback. Unused imports were removed and naming conventions updated before final approval. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged refactoring that extracts parts configuration into snapcraft/internal/parts.py. The contributor renamed snapcraft.internal.yaml to snapcraft.internal.project_loader, fixed an unused import, and incorporated reviewer naming feedback prior to merge. |
Update history
No update history recorded yet.
Related work
-
Related To:
canonical/snapcraft#735
(confidence 80%)
Immediate follow-up (commit 25fbbe8ef) reusing parts.py to load remote parts only when needed.
-
Related To:
canonical/snapcraft#799
(confidence 70%)
Further centralised project loading (commit 1a282439c), building on the project_loader/parts split.
-
Related To:
canonical/snapcraft#1504
(confidence 60%)
Much later, project_loader.py was refactored into a package (#1504, commit 80630158d).
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1596044 Parts loader needs refactoring | snapcraft (launchpad) | closed | Parts configuration was refactored into a dedicated recursive loader by merged PR snapcore/snapcraft#731, commit a7b22b5d3. | |
| #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. |