[0.1.1] - 2026-04-11
Bugfix-Release. Alle Fehler die ein Live-HA-System verhindert hätten.
Behoben
coordinator.data war None beim Entity-Start
- Problem:
async_setup_entrybefülltecoordinator.datanicht vorasync_forward_entry_setups. Entities griffen direkt aufNone.get(vin)zu →AttributeError. - Fix:
coordinator.async_set_updated_data(vehicles)wird jetzt explizit nachasync_setup()aufgerufen, bevor Platforms initialisiert werden. - Autor: @Prash1407
- Referenz: HA
DataUpdateCoordinatorDokumentation —coordinator.datamuss vor Platform-Setup befüllt sein.
Race Condition: CC-Thread vs. HA-Loop
- Problem: CC-Background-Thread schrieb
self.vehicles, HA asyncio-Loop las es gleichzeitig ohne Synchronisation. - Fix:
threading.Lock(self._vehicles_lock) schützt alle Lese- und Schreibzugriffe aufself.vehicles. Observer-Callback machtdict(self.vehicles)für einen thread-safe Snapshot. - Autor: @Prash1407
entity_base crash bei None coordinator.data
- Problem:
self.coordinator.data.get(self._vin, {})warfAttributeErrorwenndatanochNonewar. - Fix:
(self.coordinator.data or {}).get(self._vin, {})— sicher gegenNonezur Startup-Zeit. - Autor: @Prash1407
manifest.json: falsche iot_class und ungepinnte Versionen
- Problem:
iot_class: "cloud_polling"war falsch (wir pushen reaktiv). Package-Versionen nicht an installierte Versionen angepasst. - Fix:
iot_class: "cloud_push". Versionen korrekt:carconnectivity>=0.11.8carconnectivity-connector-audi>=0.3.0carconnectivity-connector-volkswagen>=0.10.4carconnectivity-connector-skoda>=0.12.4carconnectivity-connector-seatcupra>=0.6.1
- Autor: @Prash1407
_async_update_data machte bei jedem Aufruf einen CC-Fetch
- Problem:
_async_update_datarief immercc.fetch_all()auf — auch bei reaktiven Updates die bereits frische Daten inself.vehicleshatten. Doppelter Netzwerk-Traffic. - Fix:
_async_update_datagibt nurdict(self.vehicles)zurück. CC-Fetch passiert nur noch bei manuellem Refresh (Button/Service). - Autor: @Prash1407