- Refactor telegram_bot polling/webhooks platforms and add tests (@wicol - #66433)
- Return unsubscribe callback from start.async_at_start (@emontnemery - #69083)
- Fix withings race condition for access token (@nbogojevic - #69107)
- Bugfix for overkiz.alarm_control_panel platform exception (@iMicknl - #69131)
- Ignore IPv6 link local address on ssdp discovery in Fritz!Tools (@mib1185 - #69135)
- Fix kodi log spamming again (@raman325 - #69137)
- Bump plugwise to v0.17.3 (@bouwew - #69139)
- Environment Canada: allow AQHI to pull from forecast when current not available (@gwww - #69142)
- Set brand icon on WLED update entity (@frenck - #69145)
- Bump Yeelight to v0.7.10 (@alexyao2015 - #69147)
- Update hangups to 0.4.18 (@cdce8p - #69149)
- Makes sure YAML defined tariffs are unique (@dgomes - #69151)
- Exclude static light attributes from being recorded in the database (@bdraco - #69155)
- Exclude static and token attributes from being recorded for media_player (@bdraco - #69156)
- Exclude static climate attributes from being recorded in the database (@bdraco - #69158)
- Exclude static water_heater attributes from being recorded in the database (@bdraco - #69159)
- Make zwave_js config entry unique ID a string (@raman325 - #69163)
- Exclude supported features and attribution from being recorded in the database (@bdraco - #69165)
- ESPHome: Remove disconnect callbacks after they are done (@jesserockz - #69169)
- Unsubscribe listeners when entity meter sensor is removed (@emontnemery - #69172)
- Exclude static fan attributes from being recorded in the database (@bdraco - #69192)
- Exclude static humidifier attributes from being recorded in the database (@bdraco - #69193)
- Exclude static number attributes from being recorded in the database (@bdraco - #69194)
- Exclude static select attributes from being recorded in the database (@bdraco - #69195)
- Exclude static siren attributes from being recorded in the database (@bdraco - #69196)
- Exclude static vacuum attributes from being recorded in the database (@bdraco - #69199)
- Set brand icon as entity picture on update entities (@frenck - #69200)
- Exclude update entity picture attribute from recorder (@frenck - #69201)
- Exclude weather forecast attribute from recorder (@frenck - #69205)
- Tibber, Use a dedicated executor pool for database operations (@Danielhiversen - #69208)
- Exclude more media player attributes from recorder (@frenck - #69209)
- Only fire device_registry_updated for suggested_area if the suggestion results in an area change (@bdraco - #69215)
- Avoid fritz API calls during shutdown (@chemelli74 - #69225)
- Drop unsupported SI-prefix peta from integration sensor (@emontnemery - #69229)
- Unsubscribe from listeners when removing derivative sensor (@emontnemery - #69234)
- Unsubscribe from listeners when removing integration sensor (@emontnemery - #69235)
- Unsubscribe from listeners when removing threshold binary sensor (@emontnemery - #69236)