What's Changed
- Test the late-401 case through the real make_http_request path [Veldkornet]
- Test that credentials never reach the failed-request log [Veldkornet]
- Add a pytest suite running against a real Home Assistant instance [Veldkornet]
- Debounce the refresh after changing a number, switch, text or time entity [Dirk Moeller]
- Let the scheduled OAuth retry reach the server after invalid_grant [Veldkornet]
- Serialize OAuth token refreshes to avoid invalid_grant races [Veldkornet]
- fix: correct preconditionning -> preconditioning typo in base.py [Jah-yee]
- Keep the stored config apart from the config entry data [Dirk Moeller]
- Never log the account credentials in failed request bodies [Veldkornet]
- Report commands that could not be sent instead of failing silently [Dirk Moeller]
- Keep the vehicle update alive when the automatic charge stop fails [Dirk Moeller]
- Keep other config entries and clean up the right files when one is removed [Dirk Moeller]
- Register the OTP code with the log filter [Dirk Moeller]
- Mask every car association returned by get_user_info [Dirk Moeller]
- Mask OTP key material and code in the OTP module's debug log [Dirk Moeller]
- Per-account rate limit windows and serialised OAuth refresh [David Alecrim]
- Hand the refreshed MQTT token to the running paho client [Dirk Moeller]
- Strip extra URL parameters from manually entered OAuth code [Dirk Moeller]
- Sync Spanish translations [Eugeniu Stina]
- Sync Spanish translations with English and Italian keys and wording [Eugeniu Stina]
- Add an option to turn off MQTT live updates [Dirk Moeller]
- Show door, charging and preconditioning status live from MQTT events [Dirk Moeller]
- Feed MQTT vehicle events to the coordinator [Dirk Moeller]
- Parse Stellantis MQTT vehicle events [Dirk Moeller]
- Keep the account's options when re-authenticating [Dirk Moeller]
- Share one timestamp parser for the REST staleness check [Dirk Moeller]
- Log topic in MQTT subscribe callback [Dirk Moeller]
- Surface resp_data's per-command failure reason in command_status [Dirk Moeller]
- Show the vehicle's supported remote services in the diagnostics [Dirk Moeller]
- Add the German translation of the vehicle removed repair [Dirk Moeller]
- Keep the vehicle removed repair across restarts and clear it once the vehicle returns or is removed [Dirk Moeller]
- Add command_status labels for 506/507/902, sort text codes before numeric descending [Dirk Moeller]
- Add CONFIG_SCHEMA for config-entry-only setup [Dirk Moeller]
- Remove Pillow from manifest requirements (bundled by Home Assistant core) [Dirk Moeller]
- Stop the token refresh timers when setup fails with an auth error [Dirk Moeller]
- Updated Polish translation [Jordan87]
- Add files via upload [Jordan87]
- Compute remote commands and command pending sensor state on read [Dirk Moeller]
- Ignore a refused MQTT connect instead of treating it as connected [Dirk Moeller]
- Disconnect MQTT when Home Assistant stops [Dirk Moeller]
- Refresh command availability when MQTT connects or disconnects [Dirk Moeller]
- Card: guard against unpopulated hass.entities on initial load (#642) [dstosch]
- Update Spanish OAuth manual instructions in translation file [Eugeniu Stina]
- Register the vehicle card resource once in async_setup, deregister it when the last entry is removed [Dirk Moeller]
- Add a binary sensor mirroring pending_action for dashboards to style [Dirk Moeller]
- Reject a command while another is still in progress vehicle-side [Dirk Moeller]
- Mask exception messages logged as a raw log argument [Dirk Moeller]
- Log the request URL instead of aiohttp's yarl.URL so masking applies [Dirk Moeller]
- Fix get_otp_code treating every failed activation as a success [Dirk Moeller]
- Scope the MQTT 400-retry to its own command instead of the account's last request [Dirk Moeller]
- Remove do_async's unsafe wait=True default and guard against event-loop deadlock [Dirk Moeller]
- Add missing common notification translations for OAuth code and OTP reconfigure errors [Dirk Moeller]
- Fix diagnostics crash when the config entry is not loaded [Dirk Moeller]
- Fix reconfigure flow crash when entry is not loaded [Dirk Moeller]
Full Changelog: 2026.9.4...2026.10.1
Support the project
The latest heroes who believe in this project π
π MONTHLY BEERS
Harald
π₯ 10 BEERS
RΓΌdiger
Andrea Donno
Fabian
π₯ 5 BEERS
Someone
Dieter
SA Energy
and other heroes
β 4 BEERS
Al
β 3 BEERS
Adam Szczerba
Hubert
Someone
and other heroes
β 2 BEERS
Ludvik
Liam
Kristian
and other heroes
β 1 BEERS
Harald
Someone
RapH
and other heroes