Full Changelog for Home Assistant Core 2023.8
These are all the changes included in the Home Assistant Core 2023.8 release.
For a summary in a more readable format: Release notes blog for this release.
Full Changelog
- Bump version to 2023.8.0dev0 (@frenck
- #95476 )  - Update featured integrations screenshot (@joostlek
- #95473 )  - Refactor ESPHome connection management logic into a class (@bdraco
- #95457 )  - Small cleanups to bluetooth manager advertisement processing (@bdraco
- #95453 )  - Remove statement in iss config flow (@joostlek
- #95472 )  - Add entity translations to iOS (@joostlek
- #95467 )  - Fix device_id not set in esphome (@bdraco
- #95580 )  - Refactor Airzone Cloud _attr_has_entity_name in sensor (@Noltari
- #95609 )  - Add config flow for zodiac (@joostlek
- #95447 )  - Update typing-extensions to 4.7.0 (@cdce8p
- #95539 )  - Add ability to configure map icons for PurpleAir (@bachya
- #86124 )  - Default device name to config entry title (@balloob
- #95547 )  - Add unique_id to Wirelesstag entities. (@davecpearce
- #95631 )  - Remove passing MAC as an identifier for Fritz (@balloob
- #95648 )  - Met: use correct device info keys (@balloob
- #95644 )  - Rainbird: use correct device info keys (@balloob
- #95645 )  - VeSync: use correct device info keys (@balloob
- #95646 )  - Tesla Wall Connector: use correct device info keys (@balloob
- #95647 )  - Update ruff pre-commit repo (@cdce8p
- #95603 )  - Use 
async_on_removefor KNX entities removal (@farmio- #95658 )  - Add Bridge module to AsusWRT (@ollo69
- #84152 )  - Update log message when referenced entity not found (@balloob
- #95577 )  - Met Eireann: fix device info (@balloob
- #95683 )  - Fix songpal test_setup_failed test (@jbouwh
- #95712 )  - Add action attribute to generic hygrostat (@Shulyaka
- #95675 )  - Remove obsolete entity name from Lametric (@joostlek
- #95688 )  - Use device info object in LaCrosse View (@joostlek
- #95687 )  - Small improvements to websocket api performance (@bdraco
- #95693 )  - Add entity translations to kaleidescape (@joostlek
- #95625 )  - Add mold risk sensor to Notion (@bachya
- #95643 )  - Use a normal tuple for the EventBus jobs (@bdraco
- #95731 )  - Use device class naming for Nest (@joostlek
- #95742 )  - Add Opower integration for getting electricity/gas usage and cost for many utilities (@tronikos
- #90489 )  - Remove NAM translations handled by device class (@joostlek
- #95740 )  - Add entity translations to minecraft server (@joostlek
- #95737 )  - Add entity translations to melnor (@joostlek
- #95734 )  - Use DeviceInfo object for Meater (@joostlek
- #95733 )  - Add entity translations for lifx (@joostlek
- #95727 )  - Avoid regex for negative zero check in sensor (@bdraco
- #95691 )  - Add entity translations to LaCrosse View (@joostlek
- #95686 )  - Add entity translations for Meater (@joostlek
- #95732 )  - Delete the local calendar store when removing the config entry (@allenporter
- #95599 )  - Clean up solarlog const file (@joostlek
- #95542 )  - Speed up routing URLs (@bdraco
- #95721 )  - Small zwave_js code cleanup (@raman325
- #95745 )  - Use DeviceInfo object for Nobo hub (@joostlek
- #95753 )  - Use device class naming for Nuki (@joostlek
- #95756 )  - Use device info object for Nuki (@joostlek
- #95757 )  - Use device info object for Discovergy (@jpbede
- #95764 )  - Bump opower to 0.0.12 (@tronikos
- #95748 )  - Address Opower review comments (@tronikos
- #95763 )  - Improve opower generic typing (@cdce8p
- #95758 )  - Add entity translations to Notion (@joostlek
- #95755 )  - Remove unsupported services from tuya vacuum (@emontnemery
- #95790 )  - Fix flaky websocket_api test (@emontnemery
- #95786 )  - Bump aioesphomeapi to 15.1.2 (@bdraco
- #95792 )  - Use the converter factory in sensor.recorder._normalize_states (@bdraco
- #95785 )  - Tune httpx keep alives for polling integrations (@bdraco
- #95782 )  - Remove the weak ref for tracking update listeners (@balloob
- #95798 )  - Add entity translations for Open UV (@joostlek
- #95810 )  - Add entity translations for P1 Monitor (@joostlek
- #95811 )  - Fix siren.toggle service schema (@emontnemery
- #95770 )  - Fix ring siren test (@emontnemery
- #95825 )  - Update roomba vacuum supported features (@emontnemery
- #95828 )  - Update sharkiq vacuum supported features (@emontnemery
- #95829 )  - Update tuya vacuum supported features (@emontnemery
- #95832 )  - Use common translations for 
On,Off,OpenandClosed(@jbouwh- #95779 )  - Update mqtt vacuum supported features (@emontnemery
- #95830 )  - Revert “Remove unsupported services from tuya vacuum” (@emontnemery
- #95845 )  - Set Matter battery sensors as diagnostic (@MartinHjelmare
- #95794 )  - Add Airzone Cloud Zone running binary sensor (@Noltari
- #95606 )  - Make local calendar integration title translatable (@jpbede
- #95805 )  - Use slots in TraceElement (@bdraco
- #95877 )  - Bump protobuf to 4.23.3 (@bdraco
- #95875 )  - Small cleanups to service calls (@bdraco
- #95873 )  - Adjust services and properties supported by roborock vacuum (@emontnemery
- #95789 )  - Add slots to the StateMachine class (@bdraco
- #95849 )  - Fix ESPHome camera not accepting the same exact image bytes (@bdraco
- #95822 )  - Clarify GPS coordinates for device_tracker.see (@gigatexel
- #95847 )  - Add raid array degraded state binary sensor to freebox sensors (@fthiery
- #95242 )  - Add slots to the service registry (@bdraco
- #95857 )  - Warn when changing multipan channel if there are not 2 known users (@emontnemery
- #95898 )  - Address late review of freebox tests (@jbouwh
- #95910 )  - Add slots to core EventBus (@bdraco
- #95856 )  - Deprecate Dry and Fan preset modes in favor of HVAC modes (@adrianmo
- #95634 )  - Correct spelling roborock strings (@jbouwh
- #95919 )  - Migrate from deprecated VacuumEntity to StateVacuumEntity in Ecovacs (@mib1185
- #95920 )  - Add filters to calendar/services.yaml (@emontnemery
- #95853 )  - Mention automatic issue assignment in issue template (@spacegaier
- #95987 )  - Add more device info for SmartThings devices (@guix77
- #95723 )  - Add entity translations to Pushbullet (@joostlek
- #95943 )  - Add entity translations for PureEnergie (@joostlek
- #95935 )  - Add humidity to NWS forecast (@lymanepp
- #95575 )  - Add entity translations to Purpleair (@joostlek
- #95942 )  - Add entity translations to Rainbird (@joostlek
- #96030 )  - Add sensors to LOQED integration for battery percentage and BLE stength (@mikewoudenberg
- #95726 )  - Remove copy/pasted references to GMail in YouTube integration tests (@ScottG489
- #96048 )  - Add entity translations to RFXTRX (@joostlek
- #96041 )  - Revert zwave_js change to THERMOSTAT_MODE_SETPOINT_MAP (@adrianmo
- #96058 )  - Use device class naming in Renault (@joostlek
- #96038 )  - Move platform_integration_no_support issue to the homeassistant integration (@emontnemery
- #95927 )  - Add RDW codeowner (@joostlek
- #96035 )  - Add entity translations to RDW (@joostlek
- #96034 )  - Add full test coverage to Jellyfin (@j-stienstra
- #86974 )  - Fix missing name in Renault service descriptions (@frenck
- #96075 )  - Add device class back to Purpleair (@joostlek
- #96062 )  - Fix missing name in TP-Link service descriptions (@frenck
- #96074 )  - Add entity translations to Recollect waste (@joostlek
- #96037 )  - Fix missing name in FluxLED service descriptions (@frenck
- #96077 )  - Remove deprecated Pihole binary sensors (@joostlek
- #95799 )  - Update sentry-sdk to 1.27.1 (@frenck
- #96089 )  - Add missing issue translations to the kitchen_sink integration (@emontnemery
- #95931 )  - Remove unreferenced issues (@emontnemery
- #95976 )  - Bump aioesphomeapi to 15.1.3 (@bdraco
- #95819 )  - Add entity translations to Rainmachine (@joostlek
- #96033 )  - Make season integration title translatable (@jpbede
- #95802 )  - Add entity translations to pvoutput (@joostlek
- #96029 )  - Warn when vacuum.turn_on or turn_off is called on Tuya vacuums (@emontnemery
- #95848 )  - Add entity translations to Rympro (@joostlek
- #96087 )  - Avoid http route linear search fallback when there are multiple paths (@bdraco
- #95776 )  - Set some Switchbot entity names to none (@Nardol
- #90846 )  - Update PyTurboJPEG to 1.7.1 (@frenck
- #96104 )  - Fix missing name in Fritz!Box service descriptions (@frenck
- #96076 )  - Correct Goalzero sensor state class (@tkdrob
- #96122 )  - Rename ‘Switch as X’ helper to … (@c0ffeeca7
- #96114 )  - Update apprise to 1.4.5 (@frenck
- #96086 )  - Update pipdeptree to 2.9.4 (@frenck
- #96115 )  - Move ESPHomeManager into its own file (@bdraco
- #95870 )  - Small speed up to cameras (@bdraco
- #96124 )  - Use global CONF_API_TOKEN constant rather than defining our own (@ScottG489
- #96120 )  - Add entity translations for plugwise (@joostlek
- #95808 )  - Speed up hassio ingress (@bdraco
- #95777 )  - Add MEDIA_ENQUEUE to MediaPlayerEntityFeature (@emontnemery
- #95905 )  - Use device class naming for nobo hub v2 (@joostlek
- #96022 )  - Update aioairzone-cloud to v0.2.1 (@Noltari
- #96063 )  - Add filters to alarm_control_panel/services.yaml (@emontnemery
- #95850 )  - Make generic camera integration title translatable (@jpbede
- #95806 )  - Update template vacuum supported features (@emontnemery
- #95831 )  - Make workday integration title translatable (@jpbede
- #95803 )  - Add filters to fan/services.yaml (@emontnemery
- #95855 )  - Add filters to humidifier/services.yaml (@emontnemery
- #95859 )  - Add filters to lock/services.yaml (@emontnemery
- #95860 )  - Add filters to cover/services.yaml (@emontnemery
- #95854 )  - Refactor ESPHome camera to avoid creating tasks (@bdraco
- #95818 )  - Update pydantic to 1.10.11 (@cdce8p
- #96137 )  - Update lxml to 4.9.3 (@frenck
- #96132 )  - Add entity translations to Sensibo (@joostlek
- #96091 )  - Add entity translations to Slack (@joostlek
- #96149 )  - Update Pillow to 10.0.0 (@frenck
- #96106 )  - Add entity translations to SkyBell (@joostlek
- #96096 )  - Add dim to full state service for Sensibo (@gjohansson-ST
- #96152 )  - Update holidays to 0.28 (@arkid15r
- #95091 )  - Add 
device_classandstate_classin config flow for SQL (@dougiteixeira- #95020 )  - Use device name for Nuki door sensor (@Nardol
- #95904 )  - Bump pysensibo to 1.0.31 (@gjohansson-ST
- #96154 )  - Add bthome logbook platform (@bdraco
- #96171 )  - KNX Cover: Use absolute tilt position if available (@farmio
- #96192 )  - Update Ruff to v0.0.277 (@frenck
- #96108 )  - Update tplink dhcp discovery (@bdraco
- #96191 )  - Update pytest-xdist to 3.3.1 (@frenck
- #96110 )  - Migrate ring to entity name (@joostlek
- #96080 )  - Add error sensor to Roborock (@Lash-L
- #96209 )  - Add entity translations to Speedtest.net (@joostlek
- #96168 )  - Restore KNX telegram history (@farmio
- #95800 )  - Add entity translations to Starlink (@joostlek
- #96181 )  - Fix missing name in wilight service descriptions (@frenck
- #96073 )  - Add slots to bluetooth manager (@bdraco
- #95881 )  - Enrich instructions to retreive Roomba password (@alepee
- #95902 )  - Enhance diagnostics for Sensibo (@gjohansson-ST
- #96150 )  - Update pyipp to 0.14.2 (@ctalkington
- #96218 )  - Add entity translations to Sonarr (@joostlek
- #96159 )  - Refactor IPP tests (@ctalkington
- #94097 )  - Optimize bluetooth base scanners for python3.11+ (@bdraco
- #96165 )  - Avoid probing ESPHome devices when we do not have the encryption key (@bdraco
- #95820 )  - Bump zeroconf to 0.71.0 (@bdraco
- #96183 )  - Reduce system_log overhead (@bdraco
- #96177 )  - Remove Legacy Works With Nest (@allenporter
- #96111 )  - Fix missing name in Siren service descriptions (@frenck
- #96072 )  - Update yamllint to 1.32.0 (@frenck
- #96109 )  - Bump aioesphomeapi to 15.1.4 (@bdraco
- #96227 )  - Simplify FastUrlDispatcher resolve (@bdraco
- #96234 )  - Update Nest Legacy removal strings (@allenporter
- #96229 )  - Clean up unused device class translations from binary sensor (@frenck
- #96241 )  - Use fixed token for CodeCov uploads to deal with recent failures (@frenck
- #96133 )  - Add entity translations to tailscale (@joostlek
- #96237 )  - Use common string references for device_automation translations (@jbouwh
- #95897 )  - Add MEDIA_ANNOUNCE to MediaPlayerEntityFeature (@emontnemery
- #95906 )  - Use the ESPHome object_id to suggest the entity id (@bdraco
- #95852 )  - Check supported features in calls to vacuum services (@emontnemery
- #95833 )  - Add deprecated_yaml issue to the homeassistant integration (@emontnemery
- #95980 )  - Add entity translations to trafikverket ferry (@joostlek
- #96249 )  - Use explicit device name in trafikverket train (@joostlek
- #96250 )  - Correct flags for issue registry issue raised by ezviz (@emontnemery
- #95846 )  - Remove unsupported vacuum service handlers (@emontnemery
- #95787 )  - Add filters to vacuum/services.yaml (@emontnemery
- #95865 )  - Add filters to remote/services.yaml (@emontnemery
- #95863 )  - Only load the device entry when it changes in the base entity (@bdraco
- #95801 )  - Remove unreferenced issues (@emontnemery
- #96262 )  - Change explicit rounding to suggested_display_precision (@disforw
- #95773 )  - Use snapshots in devolo Home Network sensor tests (@Shutgun
- #95104 )  - Make Zodiac integration title translatable (@joostlek
- #95816 )  - Differentiate between device info types (@balloob
- #95641 )  - Bump fritzconection to 1.12.2 (@mib1185
- #96265 )  - Add entity translations to trafikverket weatherstation (@joostlek
- #96251 )  - Add filters to siren/services.yaml (@emontnemery
- #95864 )  - Add filters to media_player/services.yaml (@emontnemery
- #95862 )  - Move Hydrawise to a supported library (@dknowles2
- #96023 )  - Move tractive attribute to entity class (@joostlek
- #96247 )  - Correct issues raised when calling deprecated vacuum services (@emontnemery
- #96295 )  - Deprecate mqtt vacuum with legacy schema (@jbouwh
- #95836 )  - Improve mqtt tag schema logging and avoid tests that use xfail (@jbouwh
- #95711 )  - Improve test coverage mqtt vacuum (@jbouwh
- #96288 )  - Improve the docstring of some config schema generators (@emontnemery
- #96296 )  - Reolink add reboot button (@starkillerOG
- #96311 )  - Avoid CI fail in command_line tests (@jbouwh
- #96324 )  - Add support for service translations (@frenck
- #95984 )  - Remove some duplicated translations (@emontnemery
- #96300 )  - Fix hassfest services check (@frenck
- #96337 )  - Fix a couple of typos (@emontnemery
- #96298 )  - Remove removed_yaml from the spotify integeration (@emontnemery
- #96261 )  - Improve integration startup in AVM Fritz!Tools (@mib1185
- #96269 )  - Schedule 
VacuumEntityfor removal in Home Assistant Core 2024.2 (@emontnemery- #96236 )  - Fix diagnostics Sensibo (@gjohansson-ST
- #96336 )  - Speedup tests command_line integration (@jbouwh
- #96349 )  - Fix service schema to allow for services without any fields/properties (@frenck
- #96346 )  - Use DeviceInfo object s-x (@joostlek
- #96281 )  - Use DeviceInfo object d-o (@joostlek
- #96280 )  - Bump aioesphomeapi to 15.1.6 (@bdraco
- #96297 )  - Tibber upgrade lib, improve reconnect issues (@Danielhiversen
- #96276 )  - Remove unreferenced issues (@emontnemery
- #96264 )  - Add entity translations to Ukraine Alarm (@joostlek
- #96260 )  - Update orjson to 3.9.2 (@frenck
- #96257 )  - Use device class naming for sfr box (@joostlek
- #96092 )  - Add entity translations to solarlog (@joostlek
- #96157 )  - Fix handling MQTT light brightness from zero rgb (@jbouwh
- #96286 )  - Add entity translations to Rainforest eagle (@joostlek
- #96031 )  - Migrate Roomba to has entity name (@joostlek
- #96085 )  - Update colorlog to 6.7.0 (@frenck
- #96131 )  - Upgrade pylint-per-file-ignore to v1.2.1 (@frenck
- #96134 )  - Cleanup unneeded MQTT vacuum feature check (@jbouwh
- #96312 )  - Add entity translations to Juicenet (@joostlek
- #95487 )  - Migrate reload only helper services to support translations (@frenck
- #96344 )  - Add Reolink sensor platform (@starkillerOG
- #96323 )  - Migrate number services to support translations (@frenck
- #96343 )  - Migrate camera services to support translations (@frenck
- #96313 )  - Migrate backup services to support translations (@frenck
- #96308 )  - Migrate integration services (A) to support translations (@frenck
- #96362 )  - Migrate integration services (B-D) to support translations (@frenck
- #96363 )  - Fix ESPHome deep sleep devices staying unavailable after unexpected disconnect (@bdraco
- #96353 )  - Migrate climate services to support translations (@frenck
- #96314 )  - Migrate automation services to support translations (@frenck
- #96306 )  - Migrate device_tracker services to support translations (@frenck
- #96320 )  - Migrate image_processing services to support translations (@frenck
- #96328 )  - Migrate button services to support translations (@frenck
- #96309 )  - Migrate calendar services to support translations (@frenck
- #96310 )  - Migrate cloud services to support translations (@frenck
- #96319 )  - Migrate integration services (E-F) to support translations (@frenck
- #96367 )  - Migrate integration services (L-M) to support translations (@frenck
- #96374 )  - Migrate integration services (N-P) to support translations (@frenck
- #96376 )  - Update pre-commit to 3.3.3 (@frenck
- #96359 )  - Migrate integration services (Q-S) to support translations (@frenck
- #96378 )  - Add additional tplink kasa OUI (@bdraco
- #96383 )  - Migrate integration services (W-Z) to support translations (@frenck
- #96381 )  - Migrate integration services (T-V) to support translations (@frenck
- #96379 )  - Add Nut commands to diagnostics data (@ollo69
- #96285 )  - Migrate time services to support translations (@frenck
- #96402 )  - Migrate integration services (G-H) to support translations (@frenck
- #96372 )  - Migrate conversation services to support translations (@frenck
- #96365 )  - Migrate switch services to support translations (@frenck
- #96405 )  - Migrate date services to support translations (@frenck
- #96317 )  - Migrate datetime services to support translations (@frenck
- #96318 )  - Migrate logbook services to support translations (@frenck
- #96341 )  - Migrate script services to support translations (@frenck
- #96401 )  - Migrate homeassistant services to support translations (@frenck
- #96388 )  - Migrate hassio services to support translations (@frenck
- #96386 )  - Migrate scene services to support translations (@frenck
- #96390 )  - Migrate water_heater services to support translations (@frenck
- #96389 )  - Migrate fan services to support translations (@frenck
- #96325 )  - Migrate template services to support translations (@frenck
- #96414 )  - Migrate LaMetric services to support translations (@frenck
- #96415 )  - Migrate intent_script services to support translations (@frenck
- #96394 )  - Migrate Matter services to support translations (@frenck
- #96406 )  - Add support for gardena bluetooth (@elupus
- #95179 )  - Migrate cover services to support translations (@frenck
- #96315 )  - Migrate siren services to support translations (@frenck
- #96400 )  - Migrate persistent notification services to support translations (@frenck
- #96391 )  - Migrate media player services to support translations (@frenck
- #96408 )  - Migrate & fix logger services to support translations (@frenck
- #96393 )  - Migrate alarm control panel services to support translations (@frenck
- #96305 )  - Migrate mqtt services to support translations (@frenck
- #96396 )  - Migrate integration services (I-K) to support translations (@frenck
- #96373 )  - Add condition selector for blueprint (@piitaya
- #96350 )  - Migrate update services to support translations (@frenck
- #96395 )  - Migrate lovelace services to support translations (@frenck
- #96340 )  - Migrate input helpers services to support translations (@frenck
- #96392 )  - Migrate recorder services to support translations (@frenck
- #96409 )  - Migrate humidifier services to support translations (@frenck
- #96327 )  - Migrate vacuum services to support translations (@frenck
- #96417 )  - Migrate remote services to support translations (@frenck
- #96410 )  - Migrate lock services to support translations (@frenck
- #96416 )  - Add Ezviz select entity (@RenierM26
- #93625 )  - Improve chances of recovering stuck down bluetooth adapters (@bdraco
- #96382 )  - Migrate select services to support translations (@frenck
- #96411 )  - Migrate tts services to support translations (@frenck
- #96412 )  - Migrate system_log services to support translations (@frenck
- #96398 )  - Migrate group services to support translations (@frenck
- #96369 )  - Migrate text services to support translations (@frenck
- #96397 )  - Migrate notify services to support translations (@frenck
- #96413 )  - Migrate zha services to support translations (@frenck
- #96418 )  - Include a warning when changing channels with multi-PAN (@puddly
- #96351 )  - Add more common translations (@joostlek
- #96429 )  - Fix huawei_lte suspend_integration service URL description (@scop
- #96450 )  - Improve ESPHome update platform error reporting (@bdraco
- #96455 )  - Add number entity to gardena (@elupus
- #96430 )  - Improve performance of http auth logging (@bdraco
- #96464 )  - Migrate Z-Wave services to support translations (@frenck
- #96361 )  - Use device class translations in airvisual pro (@joostlek
- #96472 )  - ImageEntity split load_image_from_url (@RenierM26
- #96146 )  - Add deduplicate translations script (@balloob
- #96384 )  - Rename CO2Signal to Electricity Maps (@madsnedergaard
- #96252 )  - Correct unifi device info (@emontnemery
- #96483 )  - Correct huawei_lte device info (@emontnemery
- #96481 )  - Correct dlna_dmr device info (@emontnemery
- #96480 )  - Correct knx device info (@emontnemery
- #96482 )  - Bump yalexs-ble to 2.2.0 (@bdraco
- #96460 )  - Don’t require passing identifiers to DeviceRegistry.async_get_device (@emontnemery
- #96479 )  - Update denonavr to 
0.11.3(@ol-iver- #96467 )  - Bump unifiprotect to 4.10.5 (@AngellusMortis
- #96486 )  - Bump bluetooth-data-tools to 1.6.0 (@bdraco
- #96461 )  - Bump bond-async to 0.2.1 (@bdraco
- #96504 )  - Remove unused code in ESPHome (@bdraco
- #96503 )  - Bump opower to 0.0.14 (@tronikos
- #96506 )  - Simplify ESPHome bluetooth disconnected during operation wrapper (@bdraco
- #96459 )  - Only lookup supported_features once in media_player capability_attributes (@bdraco
- #96510 )  - Add Ezviz last motion picture image entity (@RenierM26
- #94421 )  - Remove unneeded str() in StrEnum backport (@bdraco
- #96509 )  - Bump actions/setup-python from 4.6.1 to 4.7.0 (@dependabot - #96526
)  - Revert translation reference for Tuya motion_sensitivity (@jbouwh
- #96536 )  - Move device info validation to device registry (@emontnemery
- #96465 )  - Wyoming Piper 1.1 (@synesthesiam
- #96490 )  - Address Ezviz select entity late review (@RenierM26
- #96525 )  - Improve Mullvad typing (@joostlek
- #96545 )  - Add feature to turn off using IMAP-Push on an IMAP server (@jbouwh
- #96436 )  - Add entity translations to Sonos (@joostlek
- #96167 )  - Remove unreachable code in the ESPHome fan platform (@bdraco
- #96458 )  - Add missing type hints for AndroidTV (@ollo69
- #96554 )  - Migrate AppleTV to use has entity name (@joostlek
- #96563 )  - Avoid compressing binary images on ingress (@bdraco
- #96581 )  - Avoid writing state in homekit_controller for unrelated aid/iids (@bdraco
- #96583 )  - Migrate Heos to has entity name (@joostlek
- #96595 )  - Add UV Index and UV Health Concern sensors to tomorrow.io (@dirrgang
- #96534 )  - Update pip constraint to allow pip 23.2 (@cdce8p
- #96614 )  - Bump aioesphomeapi to 15.1.7 (@bdraco
- #96615 )  - Use device class naming for Switchbot (@joostlek
- #96187 )  - Add entity translations for Mazda (@joostlek
- #95729 )  - Migrate evil genius labs to has entity name (@joostlek
- #96570 )  - Bump bthome-ble to 3.0.0 (@bdraco
- #96616 )  - Correct unit types in gardean bluetooth (@elupus
- #96683 )  - Ensure async_get_system_info does not fail if supervisor is unavailable (@bdraco
- #96492 )  - Migrate google assistant to has entity name (@joostlek
- #96593 )  - Avoid multiple options and current_option lookups in select entites (@bdraco
- #96630 )  - Reduce unifiprotect update overhead (@bdraco
- #96626 )  - IMAP service strings: Fix typo (@c0ffeeca7
- #96711 )  - Use device class naming for BraviaTV (@joostlek
- #96564 )  - Migrate DuneHD to has entity name (@joostlek
- #96568 )  - Remove redundant phrase (@c0ffeeca7
- #96716 )  - Guard type checking assertions in unifiprotect (@bdraco
- #96721 )  - Airvisual Pro Outside Station Support (@tedivm
- #96618 )  - Ezviz image entity cleanup (@RenierM26
- #96548 )  - Remove the ability to defer websocket message construction (@bdraco
- #96734 )  - Avoid regenerating the mobile app schema every time a webhook is called (@bdraco
- #96733 )  - Check the registry entry in sensor unit_of_measurement instead of unique_id (@bdraco
- #96731 )  - Make async_set_state in ConfigEntry a protected method (@bdraco
- #96727 )  - Add wellness sensors to Tractive integration (@bieniu
- #96719 )  - Vacuum services strings: rename ‘base’ to ‘dock’ for consistency (@c0ffeeca7
- #96715 )  - Create Tractive battery charging sensor if 
charging_stateis notNone(@bieniu- #96713 )  - Small tweaks to ZHA service strings (@c0ffeeca7
- #96709 )  - Migrate Monoprice to has entity name (@joostlek
- #96704 )  - Migrate Laundrify to has entity name (@joostlek
- #96703 )  - Add sensor to gardena (@elupus
- #96691 )  - Migrate Kulersky to has entity name (@joostlek
- #96702 )  - Use device class naming in keenteic ndms2 (@joostlek
- #96701 )  - Bump Cryptography from 41.0.1 to 41.0.2 (@blastoise186
- #96699 )  - Migrate iAlarm to has entity name (@joostlek
- #96700 )  - Fix typo for PM 1 (@joostlek
- #96473 )  - Add string “Quiet” to fan mode in climate component (@mattmccormack
- #96584 )  - Bump pytomorrowio to 0.3.6 (@raman325
- #96628 )  - Bump pynina to 0.3.1 (@DeerMaximum
- #96693 )  - Speed up single entity/response service calls (@bdraco
- #96729 )  - Periodically re-scan for Fronius inverters that were offline while setup (@weitzelb
- #96538 )  - Update pygtfs to 0.1.9 (@cdce8p
- #96682 )  - Remove the virtual integration for ultraloq (@b-uwe
- #96355 )  - Add entity translations to mutesync (@joostlek
- #96741 )  - Migrate NuHeat to has entity name (@joostlek
- #96742 )  - Add base entity to philips js (@joostlek
- #96756 )  - Add entity translations to philips js (@joostlek
- #96747 )  - Migrate Plum Lightpad to has entity name (@joostlek
- #96744 )  - Fix device name for OwnTracks (@joostlek
- #96759 )  - Add entity translations to radiotherm (@joostlek
- #96745 )  - Add entity translations to MotionEye (@joostlek
- #96740 )  - Migrate OwnTracks to has entity name (@joostlek
- #96743 )  - Add entity translations to Twentemilieu (@joostlek
- #96762 )  - Reduce attribute lookups in update state_attributes (@bdraco
- #96511 )  - Migrate VLC Telnet to has entity naming (@joostlek
- #96774 )  - Migrate VeSync to has entity name (@joostlek
- #96772 )  - Remove support for mqtt climate option CONF_POWER_STATE_TOPIC and template (@jbouwh
- #96771 )  - Switch homekit_controller to use subscriber lookups (@bdraco
- #96739 )  - Add external power sensor for Shelly Plus HT (@bieniu
- #96768 )  - Protect entities for availability in gardena bluetooth (@elupus
- #96776 )  - Add base class to gardena bluetooth entities (@elupus
- #96775 )  - Add some basic tests for gardena (@elupus
- #96777 )  - Remove extra otbr config entries (@emontnemery
- #96785 )  - Include addon name in otbr config entry title (@emontnemery
- #96786 )  - Fix otbr test (@emontnemery
- #96788 )  - Bump wyoming to 1.1 (@synesthesiam
- #96778 )  - Drop upper constraint for pip (@cdce8p
- #96738 )  - Alexa temperature adjustment handle multiple setpoint (@mkeesey
- #95821 )  - Bump androidtvremote2 to 0.0.12 (@tronikos
- #96796 )  - Bump aioesphomeapi to 15.1.9 (@bdraco
- #96791 )  - Correct tests for gardena (@elupus
- #96806 )  - Bump aiohomekit to 2.6.8 (@bdraco
- #96805 )  - Replace EventType annotations with Event (@cdce8p
- #96426 )  - Migrate Traccar to has entity naming (@joostlek
- #96760 )  - Add binary sensor for valve connectivity for gardena bluetooth (@elupus
- #96810 )  - Add entity translations to Transmission (@joostlek
- #96761 )  - Bump yalexs-ble to 2.2.1 (@bdraco
- #96808 )  - Use entity registry id in zwave_js device actions (@emontnemery
- #96407 )  - Migrate gpslogger to has entity name (@joostlek
- #96594 )  - Small cleanups to expand_entity_ids (@bdraco
- #96585 )  - Make Version integration title translatable (@joostlek
- #96586 )  - Remove deprecated state.get_changed_since (@bdraco
- #96579 )  - Migrate geofency to has entity name (@joostlek
- #96592 )  - Migrate Home plus control to has entity name (@joostlek
- #96596 )  - Rename ‘life’ to ‘lifetime’ in Tuya (@c0ffeeca7
- #96813 )  - Migrate Soundtouch to has entity name (@joostlek
- #96754 )  - Migrate Senz to has entity name (@joostlek
- #96752 )  - Migrate frontier silicon to has entity name (@joostlek
- #96571 )  - Migrate AndroidTV to has entity name (@joostlek
- #96572 )  - Migrate Dynalite to has entity name (@joostlek
- #96569 )  - Migrate Brunt to has entity name (@joostlek
- #96565 )  - Rename ‘life’ to ‘lifetime’ in Xiaomi Miio (@c0ffeeca7
- #96817 )  - Fix incorrect leagacy code tweak for MQTT (@jbouwh
- #96812 )  - Add entity translations to Yalexs BLE (@joostlek
- #96827 )  - Migrate Wilight to has entity name (@joostlek
- #96825 )  - Add support for restricted playback devices in Spotify (@joostlek
- #96794 )  - Allow integrations to register custom config panels (@frenck
- #96245 )  - Add entity translations to Whirlpool (@joostlek
- #96823 )  - Prevent creating scripts which override script services (@emontnemery
- #96828 )  - Add prefix support to text selector (@frenck
- #96830 )  - Migrate Volumio to has entity naming (@joostlek
- #96822 )  - Rename ‘life’ to ‘lifetime’ in trådfri (@c0ffeeca7
- #96818 )  - Migrate Songpal to has entity name (@joostlek
- #96753 )  - Do not include stack trace when shell_command service times out (@emontnemery
- #96833 )  - Fix shell_command timeout test (@emontnemery
- #96834 )  - Migrate Zerproc to has entity naming (@joostlek
- #96837 )  - Add entity translations to zeversolar (@joostlek
- #96838 )  - Migrate Yolink to has entity name (@joostlek
- #96839 )  - Make Spotify accept user playlist uris (@joostlek
- #96820 )  - Change device classes for Airvisual Pro (@joostlek
- #96474 )  - Allow ADR 0007 compliant schema for mqtt (@jbouwh
- #94305 )  - Add entity translations to Whois (@joostlek
- #96824 )  - Rename homekit “Filter Life” sensor to “Filter lifetime” (@c0ffeeca7
- #96821 )  - Resolve bugs with Transport NSW (@craibo
- #96692 )  - Fix ESPHome bluetooth client cancellation when the operation is cancelled externally (@bdraco
- #96804 )  - Make default theme selectable for set theme service (@piitaya
- #96849 )  - Clean up entity descriptions in Tuya (@joostlek
- #96847 )  - Rename life to lifetime: wemo (@c0ffeeca7
- #96845 )  - Update construct to 2.10.68 (@cdce8p
- #96843 )  - Add Tuya Soil sensor (@iKaew
- #96819 )  - Rename ‘life’ to ‘lifetime’ in Brother (@c0ffeeca7
- #96815 )  - Add entity translations to NextCloud (@joostlek
- #96544 )  - Use device class for DLink (@joostlek
- #96567 )  - Rename life to lifetime in vesync (@c0ffeeca7
- #96844 )  - Migrate Crownstone to has entity name (@joostlek
- #96566 )  - Migrate Agent DVR to has entity name (@joostlek
- #96562 )  - Plugwise prepare native_value_fn and companions for number (@CoMPaTech
- #93416 )  - Migrate Ambiclimate to use has entity name (@joostlek
- #96561 )  - Migrate MyStrom to has entity name (@joostlek
- #96540 )  - Migrate Tradfri to has entity name (@joostlek
- #96248 )  - Add device info to ISS (@joostlek
- #96469 )  - Add entity translations to Vallox (@joostlek
- #96495 )  - Remove duplicated available property from Shelly coordinator entities (@mib1185
- #96859 )  - Fix smoke alarm detection in tuya (@si458
- #96475 )  - Add entity translations to Forecast Solar (@joostlek
- #96476 )  - Clean up Kraken const file (@joostlek
- #95544 )  - Use device class naming for SMS (@joostlek
- #96156 )  - Migrate Soma to entity naming (@joostlek
- #96158 )  - Migrate spider to entity name (@joostlek
- #96170 )  - Add entity translations to Tautulli (@joostlek
- #96239 )  - Add entity translations to Tesla Wall Connector (@joostlek
- #96242 )  - Remove duplicated available property from Picnic coordinator entities (@mib1185
- #96861 )  - Add entity translations to islamic prayer times (@joostlek
- #95469 )  - Migrate Starline to entity name (@joostlek
- #96176 )  - Remove miflora integration (@frenck
- #96868 )  - Use dispatcher helper to add new Fronius inverter entities (@weitzelb
- #96782 )  - Remove mitemp_bt integration (@frenck
- #96869 )  - Allow number to be zero in gardena bluetooth (@elupus
- #96872 )  - Add more complete test coverage to gardena bluetooth (@elupus
- #96874 )  - Bump aioesphomeapi to 15.1.11 (@bdraco
- #96873 )  - Bump flux_led to 1.0.0 (@bdraco
- #96879 )  - Remove legacy discovery integration (@frenck
- #96856 )  - Clean up conversation agent attribution (@frenck
- #96883 )  - Improve handling of unrecoverable storage corruption (@bdraco
- #96712 )  - Add support for multiple Russound RNET controllers (@stonith
- #96793 )  - Add tomorrow.io state translations and dynamically assign enum device class (@raman325
- #96603 )  - Add support for buttons in gardena bluetooth (@elupus
- #96871 )  - Add WS command for changing thread channels (@emontnemery
- #94525 )  - Ezviz NumberEntity 1st update only when enabled (@RenierM26
- #96587 )  - Move Dynalite configuration panel to config entry (@frenck
- #96853 )  - Add humidity to meteo_france weather forecast (@vingerha
- #96524 )  - Remove version string from Ecowitt name (@joostlek
- #96498 )  - Add entity translations to Tuya (@joostlek
- #96842 )  - Improve pip caching [ci] (@cdce8p
- #96896 )  - Add comment to EntityPlatform._async_add_entity about update_before_add (@emontnemery
- #96891 )  - Add Ezviz SensorEntity name and translation (@RenierM26
- #95697 )  - Update sentry-sdk to 1.28.1 (@frenck
- #96898 )  - Update PyJWT to 2.8.0 (@frenck
- #96899 )  - Remove Reolink event connection sensor (@frenck
- #96903 )  - Update syrupy to 4.0.6 (@frenck
- #96900 )  - Update black to 23.7.0 (@frenck
- #96901 )  - Fix typo in Nuki integration (@steffenrapp
- #96908 )  - Fix websocket_api _state_diff_event using json_encoder_default (@bdraco
- #96905 )  - Add lightweight API to get core state (@bdraco
- #96860 )  - Handle nullable context in Spotify (@joostlek
- #96913 )  - Allow match quirk_class of custom quirks to ZHA (@gmsoft-tuxicoman
- #93268 )  - Correct invalid docstring in gardena button (@elupus
- #96922 )  - Bump bleak-retry-connector to 3.1.0 (@bdraco
- #96917 )  - Bump aioesphomeapi to 15.1.12 (@bdraco
- #96924 )  - Add a message to the config entry cancel call (@bdraco
- #96925 )  - EZVIZ NumberEntity async added to hass (@RenierM26
- #96930 )  - Fix mock assert_called_with (@cdce8p
- #96929 )  - Transport NSW: Set DeviceClass and StateClass (@craibo
- #96928 )  - Avoid accessing coordinator in gardena_bluetooth tests (@elupus
- #96921 )  - Pre-split unifiprotect nested attribute lookups (@bdraco
- #96862 )  - Add support for MiScale V2 (@Ernst79
- #96807 )  - Fully unload wemo config entry (@esev
- #96620 )  - Upgrade yt-dlp to fix security issue (@blastoise186
- #96453 )  - Add EZVIZ BinarySensorEntity proper names and translation key (@RenierM26
- #95698 )  - Implement coordinator in Trafikverket Train (@gjohansson-ST
- #96916 )  - Add NumberDeviceClass.DURATION (@emontnemery
- #96932 )  - Migrate airtouch 4 to use has entity name (@joostlek
- #96356 )  - Support Tuya Air Conditioner Mate (WiFi) - Smart IR socket with power monitoring (@slydiman
- #95027 )  - Refactor SQL with ManualTriggerEntity (@gjohansson-ST
- #95116 )  - Fix bug in check_config when an integration is removed by its own validator (@joostlek
- #96068 )  - Shell command response (@RoboMagus
- #96695 )  - Create an issue if push updates fail for Shelly gen1 devices (@bieniu
- #96910 )  - Update .devcontainer.json structure (@lkshrk
- #96537 )  - Fix broken service test (@emontnemery
- #96943 )  - Update bind_hass docstring to discourage its use (@emontnemery
- #96933 )  - Avoid using name in Subaru migrations (@joostlek
- #96221 )  - Update pipdeptree to 2.10.2 (@frenck
- #96940 )  - Bump aiohomekit to 2.6.9 (@bdraco
- #96956 )  - Fix assertions in zeroconf tests (@bdraco
- #96957 )  - Bump yalexs-ble to 2.2.3 (@bdraco
- #96927 )  - Use default icon for demo button entity (@frenck
- #96961 )  - Bump aioesphomeapi to 15.1.13 (@bdraco
- #96964 )  - Add cancel messages to core task cancelation (@bdraco
- #96972 )  - Fix translation key in profiler integration (@bdraco
- #96979 )  - Do not override extra_state_attributes property for MqttEntity (@jbouwh
- #96890 )  - Only lookup hostname/ip_address/mac_address once in device_tracker (@bdraco
- #96984 )  - Bump xiaomi-ble to 0.19.1 (@Ernst79
- #96967 )  - Fix sentry test assert (@cdce8p
- #96983 )  - Cache version compare in update entity (@bdraco
- #96978 )  - Add snapshot testing to YouTube (@joostlek
- #96974 )  - Add entity translations to Daikin (@joostlek
- #95181 )  - Clean up logi circle const (@joostlek
- #95540 )  - Clean up Ombi const file (@joostlek
- #95541 )  - Update syrupy to 4.0.8 (@frenck
- #96990 )  - Add diagnostics to YouTube (@joostlek
- #96975 )  - Add EZVIZ AlarmControlPanelEntity (@RenierM26
- #96602 )  - Add event entity (@frenck
- #96797 )  - Change naming of MQTT entities to correspond with HA guidelines (@jbouwh
- #95159 )  - Fix a translation bug for water price issue (@karwosts
- #96958 )  - Add uv_index to Weather Entity (@gjohansson-ST
- #96951 )  - Update pytest-freezer to 0.4.8 (@cdce8p
- #97000 )  - Create an issue if Shelly TRV is not calibrated (@bieniu
- #96952 )  - Update pytest-cov to 4.1.0 (@cdce8p
- #97010 )  - Move OpenSky constants to separate const file (@joostlek
- #97013 )  - Update pytest-socket to 0.6.0 (@cdce8p
- #97011 )  - Use walrus in event entity last event attributes (@frenck
- #97005 )  - Add new sensors for Shelly Pro 3EM (@bieniu
- #97006 )  - Add new Forecasting to Weather (@gjohansson-ST
- #75219 )  - Bump aioesphomeapi to 15.1.14 (@bdraco
- #97019 )  - Update pytest-sugar to 0.9.7 (@cdce8p
- #97001 )  - Update pytest-asyncio to 0.21.0 (@cdce8p
- #96999 )  - Update tqdm to 4.65.0 (@cdce8p
- #96997 )  - Update respx to 0.20.2 (@cdce8p
- #96996 )  - Fix ESPHome bluetooth client cancel behavior when device unexpectedly disconnects (@bdraco
- #96918 )  - Display current version in common format in AVM Fritz!Tools (@mib1185
- #96424 )  - Decouple more of ESPHome Bluetooth support (@bdraco
- #96502 )  - Bump httpcore to 0.17.3 (@bdraco
- #97032 )  - Update coverage to 7.2.7 (@cdce8p
- #96998 )  - Add entity translations for PoolSense (@joostlek
- #95814 )  - Add upload date to Youtube state attributes (@joostlek
- #96976 )  - Use snapshot testing in LastFM (@joostlek
- #97009 )  - Clean up fitbit const (@joostlek
- #95545 )  - Fix duplicate and missing decorators in ESPHome Bluetooth client (@bdraco
- #97027 )  - Add entity translations for Ondilo Ico (@joostlek
- #95809 )  - Move Aseko coordinator to separate file (@joostlek
- #95120 )  - Add entity translations to iCloud (@joostlek
- #95461 )  - Add entity translations to Modern Forms (@joostlek
- #95738 )  - Add entity translations to Wiz (@joostlek
- #96826 )  - Add entity translations to IntelliFire (@joostlek
- #95466 )  - Clean up Vilfo const file (@joostlek
- #95543 )  - Migrate Uptimerobot to has entity name (@joostlek
- #96770 )  - Clean up Enphase Envoy const file (@joostlek
- #95536 )  - Add 
uv_indexto AccuWeather weather entity (@bieniu- #97015 )  - Fix Vicare cleanup token file on uninstall (@CFenner
- #95992 )  - Airthings BLE: Improve supported devices (@LaStrada
- #95883 )  - Add entity translations to Subaru (@joostlek
- #96186 )  - Teach zwave_js device trigger about entity registry ids (@emontnemery
- #96303 )  - Migrate Tolo to entity name (@joostlek
- #96244 )  - Apply common entity schema for MQTT Scene (@jbouwh
- #96949 )  - Fix zeroconf tests with cython 3 (@bdraco
- #97054 )  - Bump aiohomekit to 2.6.10 (@bdraco
- #97057 )  - Allow homeassistant in MQTT configuration_url schema (@jbouwh
- #96107 )  - Drop Python 3.10 support (@frenck
- #97007 )  - Bump aiohomekit to 2.6.11 (@bdraco
- #97061 )  - Import names from typing instead of typing_extensions [3.11] (@cdce8p
- #97065 )  - Replace typing.Optional with new typing syntax (@cdce8p
- #97068 )  - Drop tomli (@cdce8p
- #97064 )  - Use datetime.UTC alias [3.11] (@cdce8p
- #97067 )  - Add a cancel message to the aiohttp compatiblity layer (@bdraco
- #97058 )  - Add another OUI to tplink (@bdraco
- #97062 )  - Use entity name naming for Nanoleaf (@joostlek
- #95741 )  - Fix has_entity_name not always being set in ESPHome (@bdraco
- #97055 )  - Cleanup sensor unit conversion code (@bdraco
- #97074 )  - Guard expensive debug formatting with calls with isEnabledFor (@bdraco
- #97073 )  - Disable Spotify controls when no active session (@joostlek
- #96914 )  - Add repair hint to deprecate generic camera yaml config (@davet2001
- #96923 )  - Add support for MiScale V1 (@Ernst79
- #97081 )  - Add entity translations for ld2410 BLE (@joostlek
- #95709 )  - Add missing translations for power binary sensor device class (@frenck
- #97084 )  - Add entity translations to Tado (@joostlek
- #96226 )  - Add MQTT event entity platform (@jbouwh
- #96876 )  - Add Axis camera sources to diagnostics (@Kane610
- #97063 )  - Add new device class: PH (potential hydrogen) (@cibernox
- #95928 )  - Add Number platform to Roborock (@Lash-L
- #94209 )  - Improve code coverage for LastFM (@joostlek
- #97012 )  - Add entity translations to Renson (@joostlek
- #96040 )  - Add doorbell event support to alexa (@jbouwh
- #97092 )  - Add entity translations to uPnP (@joostlek
- #96763 )  - Add “enqueue” parameter to spotify integration (@FOLLGAD
- #90687 )  - Bump flux_led to 1.0.1 (@bdraco
- #97094 )  - Fix imap cleanup error on abort (@jbouwh
- #97097 )  - Fix typo hidrogen to hydrogen (@frenck
- #97096 )  - Add frequency and N current sensors for Shelly Pro 3EM (@bieniu
- #97082 )  - State attributes translation for Sensibo (@gjohansson-ST
- #85239 )  - Fix vulcan integration (@Antoni-Czaplicki
- #91401 )  - Add generic Event class (@cdce8p
- #97071 )  - Update ruff to v0.0.280 (@frenck
- #97102 )  - Update Home Assistant base image to 2023.07.0 (@frenck
- #97103 )  - Bump async-upnp-client to 0.34.1 (@StevenLooman
- #97105 )  - Add Low Battery binary_sensor to Flume (@jeeftor
- #94914 )  - Migrate backported StrEnum to built-in StrEnum (@frenck
- #97101 )  - Add second led control for carro smart fan (@rale
- #94195 )  - Use EventType for more helper methods (@cdce8p
- #97107 )  - Remove the use of StateType from AccuWeather (@frenck
- #97109 )  - Update pipdeptree to 2.11.0 (@frenck
- #97098 )  - Bump yeelight to 0.7.12 (@bdraco
- #97112 )  - Use EventType for state changed [core] (@cdce8p
- #97115 )  - Only construct enum or once in emulated_hue (@bdraco
- #97114 )  - Remove the use of StateType from Demo (@frenck
- #97111 )  - Use EventType for remaining event helper methods (@cdce8p
- #97121 )  - Relax typing on cached_property to accept subclasses (@bdraco
- #95407 )  - Bump zeroconf to 0.71.3 (@bdraco
- #97119 )  - Use EventType for state changed [h-m] (@cdce8p
- #97117 )  - Use EventType for state changed [a-h] (@cdce8p
- #97116 )  - Use EventType for state changed [m-z] (@cdce8p
- #97118 )  - Improve 
async_track_state_added/removed_domaincallback typing (@cdce8p- #97126 )  - Wrap internal ZHA exceptions in 
HomeAssistantErrors (@puddly- #97033 )  - Improve 
async_track_entity_registry_updated_eventcallback typing (@cdce8p- #97124 )  - Migrate Yeelight to has entity naming (@joostlek
- #96836 )  - Improve 
async_track_device_registry_updated_eventcallback typing (@cdce8p- #97125 )  - Fix ruff (@cdce8p
- #97131 )  - Improve 
async_track_template_resultcallback typing (@cdce8p- #97135 )  - Improve 
async_track_state_change_filteredcallback typing (@cdce8p- #97134 )  - Cleanup EventType typing (@cdce8p
- #97136 )  - Update xknx to 2.11.2 - fix DPT 9 small negative values (@farmio
- #97137 )  - Fix typos in Radio Browser comment and docstring (@joostlek
- #97138 )  - Allow for translating service examples (@frenck
- #97141 )  - Reduce attribute lookups in climate needed to write state (@bdraco
- #97145 )  - Enable long-term statistics for Fast.com sensor (@N3rdix
- #97139 )  - Migrate frontend services to support translations (@frenck
- #96342 )  - Add Fallback to cloud api for Roborock (@Lash-L
- #96147 )  - Add name and default name to device info of APCUPSD sensors (@yuxincs
- #94415 )  - Make Codespell skip snapshot tests (@joostlek
- #97150 )  - Add initial test coverage for ESPHome manager (@bdraco
- #97147 )  - Bump home-assistant-bluetooth to 1.10.1 (@bdraco
- #97153 )  - Remove unused words from codespell check (@joostlek
- #97152 )  - Add alternative key names for Discovergy voltage sensors (@jpbede
- #97155 )  - Implement data coordinator for LastFM (@joostlek
- #96942 )  - Fix denonavr netaudio telnet event (@ol-iver
- #97159 )  - Bump zeroconf to 0.71.4 (@bdraco
- #97156 )  - Bump bluetooth deps (@bdraco
- #97157 )  - Add sensors for Shelly Plus PM Mini (@bieniu
- #97163 )  - Change AsusWRT entities unique id (@ollo69
- #97066 )  - Limit AndroidTV screencap calls (@ollo69
- #96485 )  - Android TV Remote: Add option to disable IME (@tronikos
- #95765 )  - Fix EZVIZ LightEntity occasional ValueError (@RenierM26
- #95679 )  - Jellyfin: Sort seasons and episodes by index (@j-stienstra
- #92961 )  - Bump ulid-transform to 0.8.0 (@bdraco
- #97162 )  - Improve reading of MOTD and bump mcstatus to 11.0.0 (@elmurato
- #95715 )  - Add entity translations to AsusWRT (@joostlek
- #95125 )  - Bump fnv-hash-fast to 0.4.0 (@bdraco
- #97160 )  - Bump anyio to 3.7.1 (@bdraco
- #97165 )  - Migrate TPLink to has entity name (@joostlek
- #96246 )  - Add date platform to KNX (@farmio
- #97154 )  - Add support for sleepy Xiaomi BLE sensors (@Ernst79
- #97166 )  - Bump dbus-fast to 1.87.2 (@bdraco
- #97167 )  - Reolink improve webhook URL error message (@starkillerOG
- #96088 )  - Bumb python-homewizard-energy to 2.0.2 (@DCSBL
- #97169 )  - Add frequency sensor for Shelly Plus/Pro xPM devices (@bieniu
- #97172 )  - Add Airzone Cloud Aidoo binary sensors (@Noltari
- #95607 )  - Bump hassil and intents (@synesthesiam
- #97174 )  - Make setup of Ecovacs async (@mib1185
- #96200 )  - Use snapshots in devolo Home Network button tests (@Shutgun
- #95141 )  - Add Ezviz button entities (@RenierM26
- #93647 )  - Scrape refactor to ManualTriggerEntity (@gjohansson-ST
- #96329 )  - Use get_url to get Home Assistant instance for Loqed webhook (@mikewoudenberg
- #95761 )  - Add yolink finger support (@matrixd2
- #96944 )  - Aligned integration manifest files (@GrumpyMeow
- #97175 )  - Bump python-otbr-api to 2.3.0 (@emontnemery
- #97185 )  - Create zwave_js repair issue instead of warning log entry (@adrianmo
- #95997 )  - Add WLAN QR code support to UniFi Image platform (@Kane610
- #97171 )  - Move Minecraft Server base entity to its own file (@elmurato
- #97187 )  - Add service turn_on and turn_off service for water_heater (@jbouwh
- #94817 )  - Implement YouTube async library (@joostlek
- #97072 )  - Add electric kiwi integration (@mikey0000
- #81149 )  - Add datetime platform to KNX (@farmio
- #97190 )  - Use device class ENUM for Tractive tracker state sensor (@bieniu
- #97191 )  - Add the Duotecno intergration (@Cereal2nd
- #96399 )  - Improve Tractive sensor names (@bieniu
- #97192 )  - Prevent duplicate Matter attribute event subscription (@marcelveldt
- #97194 )  - Bump home-assistant-bluetooth to 1.10.2 (@bdraco
- #97193 )  - Fix broken translation keys (@mikey0000
- #97202 )  - Add time platform to Roborock (@Lash-L
- #94039 )  - Add turn on/off support for mqtt water_heater (@jbouwh
- #97197 )  - Bump pydiscovergy to 2.0.1 (@jpbede
- #97186 )  - Add controls to enable and disable a UniFi WLAN (@Kane610
- #97204 )  - Check before casting to float & add integration type to bsblan (@jpbede
- #97210 )  - Bump bleak-retry-connector to 3.1.1 (@bdraco
- #97218 )  - Add support for bleak 0.21 (@bdraco
- #97212 )  - Update frontend to 20230725.0 (@frenck
- #97220 )  - Add config flow to OpenSky (@joostlek
- #96912 )  - Add explicit device naming for Verisure (@joostlek
- #97224 )  - Whrilpool add periodic update (@mkmer
- #97222 )  - Bump youtubeaio to 1.1.5 (@joostlek
- #97231 )  - Correct AsusWRT device identifier (@ollo69
- #97238 )  - Add HassShoppingListAddItem to default agent (@synesthesiam
- #97232 )  - Bump opower==0.0.15 (@tronikos
- #97243 )  - Add WLAN clients reporting to UniFi Sensor platform (@Kane610
- #97234 )  - Bump pyunifiprotect to 4.10.6 (@bdraco
- #97240 )  - Stop rounding history_stats sensor (@amosyuen
- #97195 )  - Add event entities to homekit_controller (@Jc2k
- #97140 )  - Codeowner update for cert-expiry (@Cereal2nd
- #97246 )  - Add Pegel Online integration (@mib1185
- #97028 )  - Add service to OpenAI to Generate an image (@balloob
- #97018 )  - Fix pegel_online generic typing (@cdce8p
- #97252 )  - Add guard for missing xy color support in Matter light platform (@marcelveldt
- #97251 )  - Add virtual integrations supported by opower (@tronikos
- #97250 )  - Add duotecno covers (@Cereal2nd
- #97205 )  - Add Event platform to Matter (@marcelveldt
- #97219 )  - Bump whirlpool-sixth-sense to 0.18.4 (@mkmer
- #97255 )  - Handle UpdateFailed for YouTube (@joostlek
- #97233 )  - Add Event platform/entity to Hue integration (@marcelveldt
- #97256 )  - Fix invalid ColorMode on (some) 3rd party Hue Color lights (@marcelveldt
- #97263 )  - Fix authlib version constraint required by point (@jpbede
- #97228 )  - Add wildcards to sentence triggers (@synesthesiam
- #97236 )  - Improve AirNow Configuration Error Handling (@asymworks
- #97267 )  - Fix zodiac import flow/issue (@frenck
- #97282 )  - Bump aioslimproto to 2.3.3 (@marcelveldt
- #97283 )  - Rename key of water level sensor in PEGELONLINE (@mib1185
- #97289 )  - Weather remove forecast deprecation (@gjohansson-ST
- #97292 )  - Fix implicit use of device name in TPLink switch (@frenck
- #97293 )  - Fix dumping lru stats in the profiler (@bdraco
- #97303 )  - Set mqtt entity name to 
nullwhen it is a duplicate of the device name (@jbouwh- #97304 )  - bump python-roborock to 0.30.2 (@Lash-L
- #97306 )  - Fix typo Lomng -> Long (@markus-becker-tridonic-com
- #97315 )  - Fix sql entities not loading (@gjohansson-ST
- #97316 )  - Fix DeviceInfo configuration_url validation (@frenck
- #97319 )  - Duotecno beta fix (@Cereal2nd
- #97325 )  - Fix Hydrawise zone addressing (@dknowles2
- #97333 )  - Bump pydrawise to 2023.7.1 (@dknowles2
- #97334 )  - Bump aioesphomeapi to 15.1.15 (@bdraco
- #97335 )  - Hue event entity follow up (@marcelveldt
- #97336 )  - Split availability and data subscriptions in homekit_controller (@Jc2k
- #97337 )  - Add urllib3<2 package constraint (@frenck
- #97339 )  - Bump aiohomekit to 2.6.12 (@bdraco
- #97342 )  - Upgrade Verisure to 2.6.4 (@niro1987
- #97278 )  - Bump reolink_aio to 0.7.5 (@starkillerOG
- #97357 )  - Bump dbus-fast to 1.87.5 (@bdraco
- #97364 )  - Allow deleting config entry devices in jellyfin (@ctalkington
- #97377 )  - Bump pysensibo to 1.0.32 (@gjohansson-ST
- #97382 )  - Regard long poll without events as valid (@starkillerOG
- #97383 )  - Manual trigger entity fix name influence entity_id (@gjohansson-ST
- #97398 )  - Return the actual media url from media extractor (@joostlek
- #97408 )  - Small cleanup in event entity (@joostlek
- #97409 )  - Bump nexia to 2.0.7 (@bdraco
- #97432 )  - Bump opower to 0.0.16 (@tronikos
- #97437 )  - Reolink long poll recover (@starkillerOG
- #97465 )  - Update ha-av to 10.1.1 (@cdce8p
- #97481 )  - Revert using has_entity_name in ESPHome when 
friendly_nameis not set (@bdraco- #97488 )  - Send language to Wyoming STT (@synesthesiam
- #97344 )  - Bump reolink_aio to 0.7.6 + Timeout (@starkillerOG
- #97464 )  - Delay creation of Reolink repair issues (@starkillerOG
- #97476 )  - Avoid leaking exception trace for philips_js (@elupus
- #97491 )  - Bump androidtvremote2==0.0.13 (@tronikos
- #97494 )  - Offer work- a-round for MQTT entity names that start with the device name (@jbouwh
- #97495 )  - Bump pywemo to 1.2.0 (@esev
- #97520 )  - Handle http error in Renault initialisation (@epenet
- #97530 )  - Fix RootFolder not iterable in Radarr (@joostlek
- #97537 )  - Fix unit tests for wake_on_lan (@jbouwh
- #97542 )  - Bump HAP-python to 4.7.1 (@bdraco
- #97545 )  - Bump opower to 0.0.18 (@tronikos
- #97548 )  - Bump life360 package to 6.0.0 (@pnbruckner
- #97549 )  - Bump pywemo to 1.2.1 (@esev
- #97550 )  - Fix Starlink ping drop rate reporting (@boswelja
- #97555 )  - Fixes London Air parsing error (@pedrolamas
- #97557 )  - Update frontend to 20230801.0 (@bramkragten
- #97561 )  - Bump pyduotecno to 2023.8.0 (beta fix) (@Cereal2nd
- #97564 )  - Unignore today’s collection for Rova (@joostlek
- #97567 )  - Use legacy rules for ESPHome entity_id construction if 
friendly_nameis unset (@bdraco- #97578 )  - Fix UniFi image platform failing to setup on read-only account (@Kane610
- #97580 )  - Bump zha-quirks to 0.0.102 (@TheJulianJES
- #97588 )  - Ensure load the device registry if it contains invalid configuration URLs (@frenck
- #97589 )  - Ensure we have an valid configuration URL in NetGear (@frenck
- #97590 )  - Bump zeroconf to 0.72.0 (@bdraco
- #97594 )  - Fix Starlink Roaming name being blank (@boswelja
- #97597 )  - Fix duotecno’s name to be sync with the docs (@edenhaus
- #97602 )