What's Changed
- 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]