← Back to issue list

Factor parts config into snapcraft/internal/parts.py

View original Github issue

Metadata

Project
snapcraft
Number
#731
Type
pull request
State
merged
Author
josepht
Labels
—
Created
Updated
Closed

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

No scores available.

Issue body

LP:#1596044

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.
74%
#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.
72%