Skip to content

ci: bump Python to 3.14 so CI tests against current HA - #16

Merged
jpettitt merged 1 commit into
mainfrom
chore/bump-ci-python-314
Jun 15, 2026
Merged

jpettitt merged 1 commit into
mainfrom
chore/bump-ci-python-314

Conversation

@jpettitt

Copy link
Copy Markdown
Owner

Summary

CI and the release workflow pinned Python 3.13. HA 2026.3+ requires Python ≥ 3.14.2, so on 3.13 pip silently skips every newer release and caps the homeassistant install at 2026.2.x — months behind the 2026.6.x that production actually runs. CI was therefore green against a stale core.

This bumps both ci.yml and release.yml to Python 3.14, with an inline comment recording why so the pin isn't "tidied" back down later.

How it surfaced

Re-running the test suite locally against the just-merged recorder change (#15), the venv resolved HA to 2026.2.3 despite the calendar being June. Tracing it: not the index, not the supply-chain age filter — the Requires-Python >=3.14.2 marker on HA 2026.3+ was excluding them on a 3.13 interpreter.

Verification

Rebuilt the local venv on Python 3.14.5 and reinstalled from requirements_test.txt + home-assistant-frontend:

  • Resolved homeassistant==2026.6.3 (matches production) and pytest-homeassistant-custom-component==0.13.339
  • Full backend suite: 131 passed on HA 2026.6.3 — including the 3 recorder unrecorded_attributes tests from feat(injector): exclude smart_icons attrs from recorder persistence #15, which confirms that StateInfo / the state_info= kwarg on async_set is still valid on current HA, not just 2026.2.3
  • Note: the 3.14 resolution pulls in newer transitive deps (pydantic 2.13, sqlalchemy 2.0.49, aiohttp 3.13, …). This PR's own CI run on the Ubuntu runner is the real confirmation.

🤖 Generated with Claude Code

HA 2026.3+ requires Python >=3.14.2. On 3.13, pip silently caps the
homeassistant install at 2026.2.x, so CI and release validation were
testing against a months-old core while production runs 2026.6.x.
Bump both workflows to 3.14 to track the Python the current HA runs
under. Verified locally: full suite (131 tests) passes on HA 2026.6.3.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@jpettitt
jpettitt merged commit d39393b into main Jun 15, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant