Flip the canonical rp2040 platform key to rp2 before the 2027.7 alias removal
- Dominant language
- No language data
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
Upstream 2026.7 renames the rp2040 platform to rp2; PLATFORM_RP2040 is a deprecated alias. Verified on both runtimes: a rp2040: block validates on 2026.7 with a deprecation warning that says removed in 2027.7.0, while a rp2: block hard fails on 2026.6 stable (Platform missing). The catalog therefore stays keyed on rp2040 for now (normalize_platform folds rp2 onto it; esphome/device-builder#1919 extended the fold to SplitDefault introspection), which works everywhere until the alias is dropped.
Before 2027.7 the canonical key must flip to rp2, once every supported esphome accepts a rp2: block. The canonical spelling is hoisted into constants on both sides (`RP2_CANONICAL_PLATFORM` / `RP2_ALIAS_PLATFORM` in models/boards.py via esphome/device-builder#1931, `RP2_CANONICAL_KEY` / `RP2_ALIAS_KEY` in component-presence.ts via esphome/device-builder-frontend#1163), so the flip starts by swapping those values; the step by step procedure including the remaining hand edits (enum member and module renames, board manifest bulk edit, en.json label key, reversing the catalog fold, full regen) is in the comment below. Natural trigger is the release-time esphome dependency bump that makes 2026.7 the oldest supported runtime.
Contributor guide
No contributing guide indexed for this repository
Research direction
Read the procedure in the issue comment, then inspect RP2_CANONICAL_PLATFORM and RP2_ALIAS_PLATFORM in models/boards.py and RP2_CANONICAL_KEY and RP2_ALIAS_KEY in component-presence.ts. Use the listed enum, module, manifest, translation, catalog-fold, and regeneration steps as the checklist; done means the catalog is keyed by rp2 after the supported runtime baseline reaches 2026.7.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, typescript
- Domain
- release, tooling
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100