v0.7.0: Major Improvements
Major Improvements
🔧 Robustness & Reliability
- Improved startup handling: Integration now uses
ConfigEntryNotReadyfor temporary connection failures, allowing Home Assistant to automatically retry instead of failing permanently - Shared HTTP session: Now uses Home Assistant's shared
aiohttp.ClientSessionfor better performance, connection pooling, and proper DNS resolution
🔒 Security & Stability
- XML parsing: Replaced fragile Regex-based XML parsing with proper
xml.etree.ElementTreeparser for more reliable communication with FritzBox - Removed hardcoded language: Removed hardcoded
lang='de'parameter for better compatibility with non-German FritzBox devices
🎯 Code Quality
- Centralized status logic: Status determination is now centralized in the coordinator, eliminating code duplication
- Fixed switch state updates: Removed race conditions in switch state updates by properly relying on coordinator updates
- Consistent logging: Standardized internal logging to English (user notifications remain in German)
📝 Documentation
- Status value consistency: Fixed status values (
enabled/disabled) to match README documentation across all entities
Breaking Changes
status attribute in extra_state_attributes now returns enabled/disabled instead of active_not_connected/inactive.
Note: The status sensor values were already enabled/disabled in v0.6.9 and remain unchanged. Only the switch's status attribute has been updated for consistency.
Migration: If you have automations or templates that check the switch's status attribute, update them:
active_not_connected→enabledinactive→disabled