feat: validate platform names
Metadata
Current evaluation
Merged PR #209 (commit 2a92a08): get_build_plan now validates platform names and a new craft_platforms.validators/platform_types module offers validation helpers. Shipped in craft-platforms 0.11.0.
Resolution: closed resolved
Reason: The PR was merged into main as commit 2a92a08 ('feat: validate platform names (#209)') after approval from three reviewers, and the changelog for 0.11.0 documents the new get_build_plan platform-name validation plus the validators and platform_types modules.
Evaluated by: mr-cal-bot
Issue body
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #209 (commit 2a92a08): get_build_plan now validates platform names and a new craft_platforms.validators/platform_types module offers validation helpers. Shipped in craft-platforms 0.11.0. | |
| qwen/qwen3.6-35b-a3b | — | closed resolved | Merged PR adding platform name validation to get_build_plan and providing validation helpers for apps |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Related To:
canonical/craft-platforms#176
(confidence 72%)
Preceding feature that made 'any' and '*' reserved platform names; the new validator rejects reserved names via RESERVED_PLATFORM_NAMES.
-
Related To:
canonical/craft-platforms#194
(confidence 55%)
Follow-up fix allowing colons in platform names without a base prefix, relevant to the validator's allowed-middle-character rules.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #947 feat!(platforms): prevent use of '/' in platform names | craft-application | merged | Merged PR #947 as commit f7f3b1ff, adding validation that rejects platform names containing "/" and fixing #941 (CRAFT-4876). | |
| #4650 Refactor `platform` validation | snapcraft | closed | Closed as completed after platform validation was refactored and the build planner moved to the craft-application 5 and craft-platforms architecture. | |
| #1011 feat: strict platform name validation | craft-application | open | Adds conditional strict platform-name validation via craft-platforms, exempting legacy Ubuntu 20.04–24.04 bases; remains open with failing fast, minimum-dependency, and lint checks plus one unresolved thread. | |
| #936 feat!(platform): add reserved platform names | craft-application | merged | Merged PR #936 (commit b534c8a8) adding RESERVED_PLATFORM_NAMES in craft_application/models/platforms.py, blocking '*' and 'any'; fixes #890 (CRAFT-4747). Includes ruff 0.14.0 bump. | |
| #633 fix: improve `platforms.<platform>.build-on` validation | rockcraft | closed | Closed unmerged as redundant: PR canonical/rockcraft#567 had already improved build-on validation by adopting craft-application's default BuildPlanner. | |
| #502 Refactor platform validation | rockcraft | open | Refactor platform validation by consolidating it in Project and removing BuildPlanner. Resolved via migration to craft-application 5. |