Skip to content

v2.8.0

Latest

Choose a tag to compare

@steynovich steynovich released this 20 Mar 14:55
· 19 commits to main since this release
v2.8.0
b9bbfd0

What's Changed

Added

  • Python 3.14 Support: Full compatibility with Python 3.14 and Home Assistant 2026.3
  • Token Refresh Resilience: Added timeout, retry, and error handling to OAuth token refresh
    • 15-second timeout on token requests (prevents hanging within 60s coordinator timeout)
    • 3-attempt retry with exponential backoff (1s, 2s) for transient failures (5xx, timeouts, network errors)
    • Immediate failure on 400/401 auth errors (no retry — credentials are bad)
    • Specific aiohttp.ClientError handling in coordinator with actionable log messages

Fixed

  • Auth error retry bug: aiohttp.ClientResponseError from 400/401 responses was incorrectly caught by the generic aiohttp.ClientError retry handler; now re-raised immediately

Changed

  • Replaced async_timeout with asyncio.timeout (stdlib since Python 3.11)

Full Changelog: v2.7.1...v2.8.0