Full Changelog for Home Assistant Core 2023.4
These are all the changes included in the Home Assistant Core 2023.4 release.
For a summary in a more readable format: Release notes blog for this release.
Full Changelog
- Bump version to 2023.4.0dev0 (@frenck - #88630)
- Use json_loads_object in alexa (@epenet - #88610)
- Browse media support in universal media player (@Drafteed - #85668)
- Update pre-commit to 3.1.0 (@frenck - #88657)
- Update apprise to 1.3.0 (@frenck - #88658)
- Modernize Twentemilieu tests (@frenck - #88640)
- Include binary_sensor in default Assist exposed domains (@synesthesiam - #88682)
- Enable jinja loop controls (break/continue) (@depoll - #88625)
- Modernize uptime tests (@frenck - #88636)
- Allow conditions to be implemented in platforms (@emontnemery - #88509)
- Switch samsungtv to use async_timeout to avoid task creation (@bdraco - #88679)
- Change statistics component ownership (@ThomDietrich - #88692)
- Use async_timeout in integrations (@epenet - #88697)
- Bump aiolivisi to 0.0.16 (@StefanIacobLivisi - #88700)
- Improve type hint in webostv trigger (@epenet - #88599)
- Use strict typing for LiteJet integration (@joncar - #88629)
- Pass
assumed_state
property in universal media player (@Drafteed - #87846) - Use DataUpdateCoordinator for islamic_prayer_times (@engrbm87 - #73893)
- Simplify adding unifi entities (@Kane610 - #88571)
- Avoiding testing implementation details in apcupsd tests (@yuxincs - #88772)
- Add ISY994 services to set and delete lock codes (@shbatm - #88754)
- Add device HmIP-DLD (@hahn-th - #83380)
- Unblock JSON CI by fixing improperly indented JSON in test fixture (@puddly - #88803)
- Add Camera platform to Prosegur (@dgomes - #76428)
- Use a background task for LIFX discovery (@balloob - #88820)
- Add climate state translations to Overkiz integration (@iMicknl - #88809)
- Bump pyoverkiz to 1.7.6 (@iMicknl - #88808)
- Bump actions/checkout from 3.1.0 to 3.3.0 (@dependabot - #88824)
- Bump actions/setup-python from 4.3.0 to 4.5.0 (@dependabot - #88823)
- Add support for LIVISI climate devices (@StefanIacobLivisi - #86691)
- Add state_class to qbittorent sensors (@landaisbenj - #88829)
- Prepare for refactoring of MQTT related tests (@jbouwh - #88557)
- Add missing mock in brunt config flow tests (@epenet - #88834)
- Add missing mock in cert_expiry config flow tests (@epenet - #88835)
- Add missing mock in abode config flow tests (@epenet - #88828)
- Use snapshots in blueprint import tests (@balloob - #88843)
- Cleanup YAML import in aladdin_connect (@epenet - #88694)
- Improve helper integration scaffold (@avee87 - #88713)
- Add filter options to entity and device selectors (@piitaya - #87536)
- Add gas sensor to BTHome (@Ernst79 - #88770)
- LIVISI climate device improvement (@StefanIacobLivisi - #88844)
- Add Config Flow to Obihai (@ejpenney - #88627)
- Change string to enum in SomfyThermostat (@iMicknl - #88813)
- Support ValveHeatingTemperatureInterface in Overkiz integration (@iMicknl - #88804)
- Adding Obihai codeowner (@ejpenney - #88856)
- Prosegur late review comments (@dgomes - #88859)
- Adjust AddEntitiesCallback import (part 1) (@epenet - #88870)
- Add stop charge button to renault integration (@rodriguestiago0 - #88003)
- Also set
hass.config_entries
whenmock_hass_config
fixture is used (@jbouwh - #88669) - Add WS command weather/convertible_units (@emontnemery - #85681)
- Add human readable name for Livisi climate devices (@planbnet - #88891)
- Add myself to codeowners of Livisi integration (@planbnet - #88900)
- Add missing mock in overkiz config flow tests (@epenet - #88899)
- Sort unit lists sent to frontend (@emontnemery - #88898)
- Fix typo in thread (@emontnemery - #88916)
- Adjust core test to avoid lingering task (@epenet - #88918)
- Add missing mock in webostv config flow tests (@epenet - #88913)
- Add number + sensor device class energy storage (@emontnemery - #88310)
- Add state class to Aurora (@djtimca - #88938)
- Use ulid-transform for constructing ulids (@bdraco - #88939)
- Store source entity in switch_as_x entity options (@emontnemery - #88914)
- Adjust issue_registry imports (@epenet - #88878)
- Adjust registry access in conversation (@epenet - #88879)
- Adjust registry access in tests root (@epenet - #88880)
- Adjust registry access in intent (@epenet - #88881)
- Adjust registry access in scripts (@epenet - #88884)
- Adjust registry access in Google Assistant (@epenet - #88883)
- Adjust registry access in openai_conversation (@epenet - #88882)
- Adjust AddEntitiesCallback import (part 2) (@epenet - #88873)
- Add diagnostics to VeSync (@chuckdeal97 - #86350)
- Add ZWaveDiscoverySchema for Merten 507801 (@willmakenoise - #88342)
- Use json_loads_object in arwn (@epenet - #88611)
- Use load_json_object in fitbit (@epenet - #88585)
- Adjust entity registry access in core platforms (@epenet - #88944)
- Adjust entity registry access in integrations (1) (@epenet - #88946)
- Adjust entity registry access in integrations (2) (@epenet - #88947)
- Adjust entity registry access in integrations (3) (@epenet - #88948)
- Fix lingering reload task in notion reauth (@bdraco - #88949)
- Adjust entity registry access in tests (1) (@epenet - #88950)
- Add missing mock in notion tests (@epenet - #88951)
- Fix lingering task in timeout test (@epenet - #88953)
- Fix lingering task in entity_platform test (@epenet - #88957)
- Don’t create new venv if script/setup is run from within a venv (@emontnemery - #88906)
- Add number + sensor device class volume storage (@emontnemery - #88312)
- Add dynamic unit of measurement support for Overkiz sensor (@tetienne - #80490)
- Use UnitOfVolumeFlowRate in huisbaasje and plugwise (@epenet - #88967)
- Adjust entity registry access in tests (3) (@epenet - #88964)
- Add missing mock in esphome tests (@epenet - #88923)
- Disable gc in-between energy sensor tests (@emontnemery - #88593)
- Adjust entity registry access in tests (2) (@epenet - #88960)
- Adjust entity registry access in helper tests (@epenet - #88965)
- Add
current
sensor for Shelly RPC devices (@bieniu - #88863) - Obihai config flow fixes (@ejpenney - #88853)
- Drop codeowner from threshold integration (@emontnemery - #88973)
- Improve threshold binary sensor tests (@emontnemery - #88972)
- Adjust entity registry access in homekit tests (@epenet - #88959)
- Yaml use dict (@balloob - #88977)
- Enable RUFF ICN001 for registries (@epenet - #88875)
- Clean up unused and deprecated TLS version setting on MQTT client (@jbouwh - #88674)
- Bump ulid-transform to 0.4.0 (@bdraco - #88982)
- Add config flow to EDL21 (@StephanU - #87655)
- Refactor WLED binary sensor test (@frenck - #88579)
- Fix flaky energy tests (@emontnemery - #89026)
- Add Turn On and Turn Off for Advantage Air climate platform (@Bre77 - #88684)
- Nuki: show actual device model in device registry (@Savjee - #89017)
- Re-enable Ruff D411 (@epenet - #89035)
- Fix lingering task in debounce tests (@epenet - #89019)
- Add matching on quirk_classes to zha (@gmsoft-tuxicoman - #87653)
- Remove unused constant (@raman325 - #89071)
- Add Obihai reboot button (@ejpenney - #88849)
- Adjust xiaomi_ble tests (@epenet - #89078)
- Move Cycle command from cover to button (@tetienne - #89043)
- Adjust docstrings for ruff D404 (@epenet - #89077)
- Adjust docstring on hassfest generated files (@epenet - #89080)
- Set Protocol inheritance on EnergyPlatform (@epenet - #89079)
- Enable ruff D404 (@epenet - #89093)
- Add missing Edl21 sensor 1-0:0.0.0*255 (@StephanU - #87389)
- Updating Intellifire Naming scheme (@jeeftor - #88666)
- Refactor Livisi Switch and Climate to inherit from a common base class (@planbnet - #89085)
- Revert Intellifire breaking change from #88666 (@cgarwood - #89110)
- Add day to event end to correct TwenteMilieu event timespan (@bobvandevijver - #89028)
- Refactor WLED button tests (@frenck - #88580)
- Refactor WLED diagnostic tests (@frenck - #88581)
- Bump subarulink to 0.7.5 (@G-Two - #89162)
- Clean up import/migration repair in LaMetric (@frenck - #89153)
- Cleanup plex config flow tests (@epenet - #88991)
- Bump pyvizio to 0.1.60 (@raman325 - #89160)
- Bump
brother
andpysnmplib
backend libraries (@bieniu - #89100) - Bump aiodiscover to 1.4.14 (@bdraco - #89174)
- Pass a helpful name when creating common asyncio tasks in core (@bdraco - #89171)
- Bump youless api version to v1.0.1 (@gjong - #89117)
- Bump overkiz dependency to 1.7.7 (@iMicknl - #89163)
- Add Reolink button platform (@starkillerOG - #88687)
- Bump reolink-aio to 0.5.3 (@starkillerOG - #89145)
- Bump pyroon to 0.1.4 (@pavoni - #89124)
- Revert “Replace Fitbit weight SensorStateClass measurement with total” (@sw-carlos-cristobal - #89126)
- Add support for Livisi PSSO, ISS and ISS2 switch devices (@planbnet - #89140)
- Unpin pandas for Python 3.11 (@cdce8p - #89033)
- Update link to opencv in image_process log message (@GeoffState - #89008)
- Add support for Spotify podcasts (@BTMorton - #87671)
- Detect newly connected clients in jellyfin (@ctalkington - #89168)
- Add repeat to roon media player (@pavoni - #88851)
- Remove deprecated Moon YAML configuration (@frenck - #89161)
- Raise ValueError on date parsing of MQTT sensor with invalid date format (@jbouwh - #89036)
- Remove deprecated Season YAML configuration (@frenck - #89166)
- Add device_class and state_class to sql (@gjohansson-ST - #85418)
- Hive add ability to delete device (@KJonline - #80838)
- Reolink add switch platform (@starkillerOG - #87943)
- Add Reolink siren platform (@starkillerOG - #88217)
- Bump bthome to 2.8.0 (@Ernst79 - #89192)
- Reolink add select platform (@starkillerOG - #87946)
- Refactor WLED switch tests (@frenck - #89197)
- Update coverage to 7.2.1 (@frenck - #89196)
- Update sentry-sdk to 1.16.0 (@frenck - #89193)
- Update watchdog to 2.3.1 (@frenck - #89190)
- Update pytest to 7.2.2 (@frenck - #89179)
- Refactor WLED number tests (@frenck - #88582)
- Fix lingering tasks in KNX tests (@farmio - #89201)
- Test coverage for Tibber config flow (@ztamas83 - #89088)
- Add device info to edl21 (@StephanU - #89070)
- Revert “Add device info to edl21” (@frenck - #89217)
- Split reauth tests in plex (@epenet - #89212)
- Refresh homeassistant_alerts when components are loaded (@emontnemery - #76049)
- Sync tado zones after updating climate preset (@fpfuetsch - #79715)
- Move mock_setup_entry to conftest (@epenet - #88484)
- Update zwave_js README with contributor instructions (@raman325 - #89158)
- Use mock_setup_entry fixture in melnor (@epenet - #89226)
- Reolink add new number entities (@starkillerOG - #87932)
- Add Reolink light platform (@starkillerOG - #88619)
- Catch exceptions and add logging when writing states on MQTT entities (@jbouwh - #89091)
- Add type hints to ps4 media player (@epenet - #89236)
- Allow loading UniFi entities on config options change (@Kane610 - #88762)
- Add comment about Reolink Floodlight turn on brightness (@starkillerOG - #89234)
- Bump ruff to 0.0.253 (@epenet - #89211)
- Reolink extend DHCP discovery (@starkillerOG - #89238)
- Update pylint to 2.16.4 (@cdce8p - #89240)
- Bump
gios
library to version 3.1.0 (@bieniu - #89044) - Improve reolink generic typing (@cdce8p - #88786)
- Add support for bluetooth pairing in esphome (@bdraco - #88603)
- Add HomeKit Door accessory type (@Dexwell - #80741)
- Update systembridgeconnector to 3.4.8 (@timmo001 - #79732)
- Fail CI on lingering tasks (@epenet - #88905)
- Cleanup expected_lingering_tasks in knx (@epenet - #89279)
- Remove deprecated DSMR Reader YAML configuration (@frenck - #89239)
- Bump ruff to 0.0.254 (@epenet - #89273)
- Drop deepcopy of manual mqtt alarm control panel config (@emontnemery - #89287)
- Drop deepcopy of manual alarm control panel config (@emontnemery - #89286)
- Drop deepcopy of intent_script config (@emontnemery - #89285)
- Drop deepcopy of Alexa config (@emontnemery - #89284)
- Remove unittest.TestCase from service helper tests (@emontnemery - #89283)
- Reolink test init 100% (@starkillerOG - #89112)
- Rename hass context variable (@emontnemery - #89302)
- Fix missing f-string in async_listen (@bdraco - #89336)
- Use a filter for the PersonStorageCollection EVENT_ENTITY_REGISTRY_UPDATED listener (@bdraco - #89335)
- Bump pybalboa to 1.0.1 (@natekspencer - #89310)
- Improve gios generic typing (@cdce8p - #89321)
- Add missing mock in brother config flow tests (@epenet - #89354)
- Add missing mock in axis config flow tests (@epenet - #89365)
- Add missing mock in azure event hub config flow tests (@epenet - #89355)
- Add missing mock in atag config flow tests (@epenet - #89356)
- Add missing mock in amber config flow tests (@epenet - #89358)
- Add missing mock in airvisual config flow tests (@epenet - #89359)
- Add missing mock in agent_dvr config flow tests (@epenet - #89361)
- Add missing mock in airvisual_pro config flow tests (@epenet - #89362)
- Add missing mock in airq config flow tests (@epenet - #89364)
- Add missing mock in aemet config flow tests (@epenet - #89360)
- Add names to the config entry setup and shutdown tasks (@bdraco - #89309)
- Use an event filter for event triggers (@bdraco - #89339)
- Improve event filters to reject earlier (@bdraco - #89337)
- Fix lingering tasks in plex (@epenet - #89282)
- Update pylint to 2.17.0 (@cdce8p - #89377)
- Move Landis+Gyr sensor descriptions to sensor platform (@vpathuis - #89382)
- Pass hass instance when validating templates (@emontnemery - #89242)
- Bump pyfritzhome to 0.6.8 and add support for Non-Color-Bulbs (@parliament119 - #89141)
- Add require_admin decorator to otbr WS API (@emontnemery - #89385)
- Bump SharkIQ to 1.0.2 (@funkybunch - #89346)
- Avoid falling back to listening for all states when a template render raises an exception (@bdraco - #89392)
- Remove lingering timer related to camera (@Kane610 - #89394)
- Add WS API for getting an OTBR’s extended address (@emontnemery - #89384)
- Add loggers to gdacs manifest file (@exxamalte - #89338)
- Fix missing f-string in filterable_job (@bdraco - #89340)
- Migrate integration_platform helper to use async_get_integrations (@bdraco - #89303)
- Bump aiosomecomfort to 0.0.14 (@mkmer - #89393)
- Update SharkIQ code owners (@funkybunch - #89388)
- Better log message for KNX expose conversion error (@farmio - #89400)
- Update mypy to 1.1.1 (@cdce8p - #89268)
- Reduce overhead to store context ids in the database (@bdraco - #88942)
- Simplify LivisiEntity inheritance (@planbnet - #89424)
- Add hostname to DHCP discovery title (@starkillerOG - #89426)
- Avoid unnecessary Task in debouncer (@epenet - #89370)
- Add review-process link to PR template (@epenet - #89430)
- Add quadrafire virtual integration for Intellifire (@jeeftor - #89316)
- Parse attribute reports for ZHA select entity (@TheJulianJES - #89418)
- Revert Transmission entities name changes (@avee87 - #89409)
- Update logbook queries for SADeprecationWarning (@bdraco - #87108)
- Add missing mock in buienradar config flow tests (@epenet - #89420)
- Add missing mock in braviatv config flow tests (@epenet - #89419)
- Disable some less commonly used starlink entities by default (@boswelja - #87869)
- Add missing mock in coronavirus config flow tests (@epenet - #89428)
- Add vermont_castings virtual integration for Intellifire (@jeeftor - #89317)
- Add DSL prefix to SFRBox ADSL sensors (@epenet - #89276)
- Add Hardkernel ODROID-M1 (@agners - #89431)
- Update actions/cache to 3.3.0 (@cdce8p - #89438)
- Add missing mock in gree config flow tests (@epenet - #89450)
- Add missing mock in fibaro config flow tests (@epenet - #89440)
- Add missing mock in filesize config flow tests (@epenet - #89441)
- Add missing mock in freedompro config flow tests (@epenet - #89442)
- Add stats sensors for core and supervisor (@ludeeus - #89455)
- Add device info to edl21 (@StephanU - #89327)
- Xiaomi Air Purifier S2 illuminance sensor support (@kirill578 - #89208)
- Fix missing debouncer cancel in update coordinator (@epenet - #89383)
- Add list areas function to template (@rokam - #88441)
- Add missing mock in guardian config flow tests (@epenet - #89451)
- Add Ruth and Stephen voices to AWS Polly (@szechyjs - #89344)
- Add device class to ZHA Xiaomi plug “consumer connected” sensor (@TheJulianJES - #89476)
- Add unconfigured flag to thread discovery data (@emontnemery - #89230)
- Add config flow to frontier_silicon (@wlcrs - #64365)
- Add type hints to tests (@epenet - #89497)
- Bump pytest-sugar to 0.9.6 (@epenet - #89500)
- Bump pytest-xdist to 3.2.0 (@epenet - #89501)
- Bump home-assistant/builder from 2022.11.0 to 2023.03.0 (@dependabot - #89485)
- Fix lingering timer in device registry (@epenet - #89422)
- Landis+Gyr move coordinator to own file (@vpathuis - #89433)
- Add missing mock in landisgyr config flow tests (@epenet - #89513)
- Add missing mock in lacrosse_view config flow tests (@epenet - #89512)
- Add missing mock in kmtronic config flow tests (@epenet - #89511)
- Add missing mock in jellyfin config flow tests (@epenet - #89510)
- Add FTTH and WAN info to SFR box diagnostics (@epenet - #89492)
- Await block till done inside patched config entry in tests (@balloob - #89515)
- Make client tracker use common UniFi entity class (@Kane610 - #84942)
- Refactor logbook data to use a dataclass (@bdraco - #89534)
- Remove unused code in RecorderRuns.entity_ids (@bdraco - #89526)
- UniFi library controls add/update signalling (@Kane610 - #89525)
- Deduplicate event_types in the events table (@bdraco - #89465)
- Move legacy database queries and models to prepare for schema v38 (@bdraco - #89532)
- Refactor recorder tests to use recorder history API (@bdraco - #89565)
- Fix flux_led set time to not happen during DST switch (@bdraco - #89559)
- Add some more typing to screenlogic (@bdraco - #88522)
- Simplify command_line sensor tests (@emontnemery - #89576)
- Convert device_sun_light_trigger test fixture to async (@emontnemery - #89578)
- Support translating entity names (@emontnemery - #88242)
- Strict typing threshold (@gjohansson-ST - #82786)
- Improve screenlogic generic typing (@cdce8p - #89587)
- Fix lingering tasks in google_wifi tests (@bdraco - #89571)
- Deduplicate entity_id in the states table (@bdraco - #89557)
- Bump rflink to 0.0.65 for python 3.11 (@bdraco - #89601)
- Fix old indices never being removed with PostgreSQL (@bdraco - #89599)
- Add Update entities to TP-Link Omada integration (@MarkGodwin - #89562)
- Generate large history responses in the executor (@bdraco - #89606)
- Mark database sessions that do not write data as read_only (@bdraco - #89600)
- Improve reliability of context id migration (@bdraco - #89609)
- Add support for window device class to google assistant (@loongyh - #89564)
- Fix history_stats test failing during DST (@bdraco - #89589)
- Switch underlying history stats calculation to use seconds (@bdraco - #77857)
- Code quality update for EDL21 (@StephanU - #89561)
- Bump pysml to 0.0.9 (@StephanU - #89603)
- Bump actions/cache from 3.3.0 to 3.3.1 (@dependabot - #89617)
- Adjust Tuya entity naming (@dougiteixeira - #89616)
- Drop duplicated indices from recorder database schema (@bdraco - #89613)
- Use SnapshotAssertion in SFR sensor tests (@epenet - #89619)
- Refactor Command line binary sensor to inherit TemplateEntity (@gjohansson-ST - #81212)
- Refactor Command line cover to inherit TemplateEntity (@gjohansson-ST - #81214)
- Add an in-memory-preloading loader for Jinja imports (@depoll - #88850)
- Bump flipr-api to 1.5.0 (@cnico - #89598)
- Add ESERA 1-Wire virtual integration (@jrieger - #89487)
- Use repair issue when port enable fails in Reolink (@starkillerOG - #89591)
- Add support for dual lens cameras in Reolink (@starkillerOG - #89554)
- Improve typing in climate.py (@Swamp-Ig - #89577)
- Use SnapshotAssertion in SFR binary sensor tests (@epenet - #89624)
- Correct naming of some otbr tests (@emontnemery - #89631)
- Fix
intellifire
name property (@emontnemery - #89632) - Improve warnings in mqtt light messages (@anotherthomas - #89552)
- Address late review comments for frontier_silicon config flow (@twalcari - #89507)
- Use SnapshotAssertion in SFR button tests (@epenet - #89633)
- Add sensors for supervisor host (@ludeeus - #89461)
- Bump python-otbr-api to 1.0.9 (@emontnemery - #89637)
- Include extended address in thread discovery data (@emontnemery - #89640)
- Bump pybravia to 0.3.2 (@NickBorgers - #89635)
- Refactor Command line sensor to inherit TemplateSensor (@gjohansson-ST - #81222)
- Add is_hidden_entity test for Jinja templates (@depoll - #89011)
- Bump reolink-aio to 0.5.5 (@starkillerOG - #89646)
- Make OTBR add newly created dataset to thread credential store (@emontnemery - #89645)
- Use C-Extension for sqlalchemy (@pvizeli - #89661)
- Add silent option for DynamicShutter (ogp:Shutter) in Overkiz (@iMicknl - #89164)
- Bump ulid-transform to 0.4.2 (@bdraco - #89666)
- Force binary build of sqlalchemy wheels (@bdraco - #89658)
- Remove incorrect state class for System Bridge sensors (@timmo001 - #89655)
- Handle ConnectionClosedException from System Bridge (@timmo001 - #89654)
- Use otbr domain as dataset source (@emontnemery - #89653)
- Default to recorder db for SQL integration (@gjohansson-ST - #85436)
- Handle bytes data in sql sensors (@bdraco - #89169)
- Increase timeout for coolmaster with swing (@amitfin - #87573)
- Move nextcloud constants (@epenet - #89679)
- Add index to event_type and entity_id (@bdraco - #89676)
- Execute sql queries in the database executor when using the recorder database (@bdraco - #89673)
- Debounce and group MQTT subscriptions (@jbouwh - #88862)
- Remove duplicate code in nextcloud (@epenet - #89681)
- Update entity names to capitalize first word only for System Bridge (@timmo001 - #89688)
- Add websocket command to set preferred thread dataset (@bramkragten - #89700)
- Add WS command for connecting OTBR to a known Thread network (@emontnemery - #89692)
- Move local calendar text fixtures to conftest.py (@allenporter - #89674)
- Improve hass_ws_client type hint in tests (@epenet - #89703)
- Add water sensor to bthome (@Ernst79 - #89595)
- Add typing to statistics results (@bdraco - #89118)
- Tweak OTBR tests (@emontnemery - #89694)
- Reduce size of load query to prime event_types and states_meta at startup (@bdraco - #89677)
- Add diagnostics to Starlink (@boswelja - #86328)
- Add additional CalendarEvent validation (@allenporter - #89533)
- Fix infinite loop in sun.sun (@Swamp-Ig - #89723)
- Fix filtered purge not removing newer events (@bdraco - #89721)
- Fix additional typing in local calendar tests (@allenporter - #89704)
- Migrate EventData management to a table manager (@bdraco - #89716)
- Bump ruff to 0.0.256 (@epenet - #89734)
- Add turn_on trigger to Samsung TV (@epenet - #89018)
- Reolink auto quick reply (@starkillerOG - #89656)
- Make StatesMetaManager thread-safe when an entity_id is fully deleted from the database and than re-added (@bdraco - #89732)
- Add modbus hvac_* write registers (@janiversen - #89695)
- Make CalendarEntityFeature an IntFlag (@emontnemery - #89733)
- Address late feedback for SamsungTV (@epenet - #89751)
- Bump aiolivisi to 0.0.19 (@StefanIacobLivisi - #89752)
- Bump ical to 4.5.0 (@allenporter - #89744)
- Add type hints to update coordinator tests (@epenet - #89748)
- Fix NMBS IndexError (@PatrickGlesner - #89698)
- Add WAN information to SFR Box (@epenet - #89678)
- Avoid lingering timers in update coordinator tests (@epenet - #89749)
- Use
SensorDeviceClass.ENUM
and add state attributes translations in Shelly integration (@bieniu - #89660) - Reolink check firmware (@starkillerOG - #88903)
- Abort Hue config flow if bridge can not be reached (@marcelveldt - #88893)
- Fix hassio cleanup when addon in uninstalled (@emontnemery - #89756)
- Move calculation of current value into lib in Fritz!SmartHome (@mib1185 - #89150)
- Improve type hints in condition helper tests (@epenet - #89754)
- Avoid rounding Starlink sensor data & instead allow configurable precision (@boswelja - #89486)
- Cache remote app list for vizio TVs (@raman325 - #89003)
- Add keep_days to recorder.purge_entities (@bdraco - #89726)
- Bump pyblackbird to 0.6 for py3.11 (@bdraco - #89719)
- Update xknx to 2.7.0 (@farmio - #89765)
- Remove asyncio.coroutine workarounds (@bdraco - #88560)
- Migrate StateAttributes to use a table manager (@bdraco - #89760)
- Fix logbook tests failing because time was not url encoded correctly (@bdraco - #89770)
- Migrate States to use a table manager (@bdraco - #89769)
- Small cleanups to recorder history (@bdraco - #89774)
- Avoid lingering timer on script shutdown (@epenet - #89753)
- Bump actions/checkout from 3.3.0 to 3.4.0 (@dependabot - #89778)
- Fix lingering timer in config entries test (@epenet - #89787)
- Add type hints to root tests (@epenet - #89785)
- Fix SFR Box diagnostics (@epenet - #89783)
- Add type hints to helper tests (@epenet - #89784)
- Add device class for Landis+Gyr GJ energy sensor (@vpathuis - #89522)
- Drop unused Google entity settings from cloud (@emontnemery - #89786)
- Restructure translations for entity components (@frenck - #89702)
- Add Pushsafer notify parameters (@appzer - #89555)
- Fix lingering timer in collection helper tests (@epenet - #89793)
- Add support for constant selector (@emontnemery - #89573)
- Mqtt prepare test base part1 (@jbouwh - #89796)
- Add filters to climate and light service descriptions (@emontnemery - #86162)
- Fix typo in docstr (@jbouwh - #89804)
- Fix lingering timer in condition tests (@epenet - #89807)
- Fix lingering timer in event sun tests (@epenet - #89808)
- Add state attribute translations for calendars (@frenck - #89811)
- Add state attribute translations for alarm control panel (@frenck - #89809)
- Add state attribute translations for covers (@frenck - #89812)
- Add missing state translations for Lock entities (@frenck - #89795)
- Add state attribute translations for device trackers (@frenck - #89810)
- Add pre-defined entity name translations (@frenck - #89792)
- Cleanup get_local_ip in global conftest (@epenet - #89826)
- Fix lingering timer in bootstrap tests (@epenet - #89790)
- Voice assistant integration with pipelines (@synesthesiam - #89822)
- Add freezer to known test fixtures in pylint (@epenet - #89825)
- Add state attribute translations for locks (@frenck - #89820)
- Fix lingering timer in event helper tests (@epenet - #89819)
- Add state attribute translations for fans (@frenck - #89816)
- Add state attribute translations for automations (@frenck - #89815)
- Change light white service call attribute to accept True (@emontnemery - #89803)
- Add local calendar diagnostics platform (@allenporter - #89776)
- Reduce latency to find stats metadata (@bdraco - #89824)
- Bump aiobafi6 to 0.8.0 (@jfroy - #89840)
- Add native_step to baf (@bdraco - #89780)
- Reduce number of tasks created by compiling missing statistics (@bdraco - #89835)
- Add tmpdir to known fixtures in pylint (@epenet - #89844)
- Mark recorder system_health session read_only (@bdraco - #89842)
- Ensure MockEntityPlatform shuts down after tests (@epenet - #89849)
- Fix EntityComponent lingering timer in helper tests (@epenet - #89801)
- Refactor entity manager code in geo_json_events integration (@exxamalte - #89847)
- Fix misstype translation reference keynames (@lunmay - #89855)
- Bump hass-nabucasa to 0.61.1 (@MartinHjelmare - #89864)
- Drop flake8 in favor of Ruff (@frenck - #89863)
- Upgrade pytest-xdist to 3.2.1 (@frenck - #89857)
- Drop pyupgrade in favor of Ruff (@frenck - #89865)
- Add state attribute translations for Number (@frenck - #89881)
- Add translations for Geolocation (@frenck - #89880)
- Add translations for Image processing (@frenck - #89879)
- Improve/extend state translations for Alarm Control Panel (@frenck - #89872)
- Bump screenlogicpy to v0.8.2 (@dieselrabbit - #89832)
- Drop autoflake in favor of Ruff (@frenck - #89874)
- Ensure all recorder session executes use retries or the execute helper (@bdraco - #89888)
- Add type hints to plex data (@epenet - #89221)
- Refactor imap coordinator (@jbouwh - #89759)
- Add state attribute translations for media players (@frenck - #89821)
- Use json_loads_object util in backup (@bdraco - #89895)
- Remove the old ix_states_event_id index if its no longer being used (@bdraco - #89901)
- Fix some I/O in the event loop during backup (@bdraco - #89894)
- Add state (attribute) translations for Text (@frenck - #89898)
- Add state attribute translations for Weather (@frenck - #89897)
- Small cleanups to writing entity state (@bdraco - #89890)
- Add state attribute translations for Sensor (@frenck - #89896)
- Add state attribute translations for light (@frenck - #89818)
- Add Landis+Gyr poll on restart (@vpathuis - #89644)
- Change README demo to demo.home-assistant.io subdomain (@djessemoody - #89921)
- Adjust “Lovelace” to “Dashboards” (@wrt54g - #89927)
- Fix lingering timer in config entry flow tests (@epenet - #89853)
- Fix ssl context being recreated frequently in httpx (@bdraco - #89932)
- Update media state via telnet in
denonavr
integration (@ol-iver - #89788) - Add KNX interface device with diagnostic entities (@farmio - #89213)
- Adjust eventloop -> event loop spelling (@djessemoody - #89931)
- Avoid database executor job to fetch statistic metadata on cache hit (@bdraco - #89960)
- Guard against selecting all invalid entity_ids in history (@bdraco - #89929)
- Fix cpu thrashing during purge after all legacy events were removed (@bdraco - #89923)
- Remove legacy event lookups from logbook (@bdraco - #89945)
- Remove unneeded lambda_stmt in place add in statistics (@bdraco - #89943)
- Set unique on StatesMeta and EventTypes database tables (@bdraco - #89971)
- Avoid joining states_meta for statistics queries (@bdraco - #89941)
- Retain history when renaming an entity_id (@bdraco - #89963)
- Shield Reolink webhook callback from cancelation (@starkillerOG - #89798)
- Rewrite the calendar trigger to fix potential bugs (@allenporter - #89918)
- Fix statistics schema auto repair when there is bad data (@bdraco - #89903)
- Fix statistics schema µs precision auto repair being ineffective (@bdraco - #89902)
- Bump zeroconf to 0.47.4 (@bdraco - #89973)
- Fail CI on lingering timers (@epenet - #89292)
- Update django github references to main instead of master branch. (@djessemoody - #89951)
- Bump bluetooth deps for bleak 0.20 (@bdraco - #89925)
- Remove deprecated binary update sensor from AVM FRITZ!Box Tools (@mib1185 - #89940)
- Use bluetooth address instead of uuid on MacOS (@bdraco - #89926)
- Refactor constants in geo_json_events integration (@exxamalte - #89912)
- Extend attribute state translations for Camera (@frenck - #89876)
- Adjust state class of Toon monetary sensors (@frenck - #89985)
- Use default rounding/presentation mechanism for upnp (@StevenLooman - #89954)
- Remove yaml import from imap integration (@jbouwh - #89981)
- Add user_input as suggested value in imap config flow (@jbouwh - #89982)
- Rollback the session after performing stats schema validation (@bdraco - #89904)
- Mark LiteJet as Platinum integration (@joncar - #88623)
- Filter out duplicate updates in esphome state dispatch (@bdraco - #89779)
- Add FTTH information to SFR Box (@epenet - #89781)
- Introduce a delay between update entity calls (@raman325 - #89737)
- Add door lock device type to matter integration (@ArturoGuerra - #89277)
- Add mqtt common tests for availability (part2) (@jbouwh - #89805)
- Fix websocket back pressure bottleneck (@bdraco - #89905)
- Add support for new Insteon i3 devcies (@teharris1 - #89892)
- Deprecate YAML in SamsungTV (@epenet - #89743)
- Prepare MQTT common tests part4 (@jbouwh - #90023)
- Add state translations for Siren entities (@frenck - #89994)
- Prepare MQTT common tests part3 (@jbouwh - #90022)
- Update the calendar trigger based on PR feedback (@allenporter - #90017)
- Enable inheritance checks on ExtraStoredData (@epenet - #90021)
- Improve humidifier type hints in integrations (@epenet - #90030)
- Improve media_player type hints in integrations (@epenet - #90029)
- Improve sensor type hints in integrations (@epenet - #90031)
- Improve native_value type hints in integrations (@epenet - #90033)
- Improve notify type hints in integrations (@epenet - #90034)
- Improve light type hints in integrations (@epenet - #90035)
- Add attribute state translations for oscillating fans (@frenck - #89990)
- Add state translations for Select entities (@frenck - #89995)
- Add state translations for all day calendar attribute (@frenck - #89988)
- Improve type hints in tuya vacuum (@epenet - #90041)
- Correct typing of pymodbus in modbus (@janiversen - #90039)
- Improve switch and climate type hints in integrations (@epenet - #90040)
- Guess media type when cast is playing media without media type (@emontnemery - #90048)
- Only publish mqtt_statestream when MQTT is started (@jbouwh - #89833)
- Improve type hints in zha fan (@epenet - #90042)
- Fix fritzbox TypedDict definition (@epenet - #90043)
- Improve type hints in rachio switch (@epenet - #90050)
- Fix missing length on context id and incorrect precision with MariaDB (dev only fix) (@bdraco - #90058)
- Add translations for Counter (@frenck - #89989)
- Bump reolink-aio to 0.5.6 (@starkillerOG - #90059)
- Fix translation string for fan oscillation (@dougiteixeira - #90045)
- Use has_template property from lib in Fritz!SmartHome (@mib1185 - #89152)
- Update twentemilieu to 1.0.0 (@frenck - #90071)
- Refactor WLED select tests (@frenck - #89219)
- Make recorder migration column types for each dialect constants (@bdraco - #90072)
- Break out statistics repairs into a
auto_repairs
modules (@bdraco - #90068) - Add TTS to pipelines (@synesthesiam - #90004)
- Fix generating statistics for time periods smaller than we can measure (@bdraco - #90069)
- Rename recorder run_history to table_managers.recorder_runs_manager (@bdraco - #90070)
- Implement data update coordinator for nextcloud (@mib1185 - #89652)
- Prepare MQTT platorm tests part1 (@jbouwh - #90051)
- YoLink flexfob support (@matrixd2 - #90027)
- Update hass-nabucasa to 0.62.0 (@balloob - #90085)
- Change error handling in async_process_play_media_url (@emontnemery - #90052)
- Allow passing binary to the WS connection (@balloob - #89882)
- Add test helper mock_config_flow (@emontnemery - #90103)
- Update OTRB config entry if REST API port has changed (@emontnemery - #90101)
- ZHA network settings API (@puddly - #88564)
- Update pvo to 1.0.0 (@frenck - #90109)
- Fix islamic_prayer_times setup (@emontnemery - #90122)
- Update wled to 0.16.0 (@frenck - #90120)
- Try to load integration before starting option flow (@emontnemery - #90111)
- Bump ulid-transform to 0.5.1 (@bdraco - #90123)
- Deduplicate multiprotocol addon helper (@emontnemery - #90102)
- Fix switch_as_x entity naming (@emontnemery - #89992)
- Add schema auto repairs for states tables (@bdraco - #90083)
- Turn AVM FRITZ!Box Tools sensors into coordinator entities (@mib1185 - #89953)
- Bump PyJWT to 2.6.0 (@bdraco - #90134)
- Fix index not being dropped on postgresql databases with a schema prefix (@bdraco - #90144)
- Add auto repairs for events schema (@bdraco - #90136)
- Cache decode of JWT tokens (@bdraco - #90013)
- Use rel_url for looking up frontend panels (@bdraco - #90149)
- Add health mode to gree integration (@solazs - #89764)
- Simplify some multi pan code (@emontnemery - #90135)
- Bump bimmer_connected to 0.13.0 (@rikroe - #90127)
- Bump pyrympro to 0.0.7 (@OnFreund - #90118)
- Bump actions/stale from 7.0.0 to 8.0.0 (@dependabot - #90155)
- Tweak multiprotocol tests (@emontnemery - #90163)
- Update powerwall strings for newer models (@bdraco - #90151)
- Adjust scaffold docstring (@epenet - #90157)
- Use snapshot test for Landis+Gyr (@vpathuis - #90126)
- Add codeowner Workday (@gjohansson-ST - #90167)
- Add constants file for Brottsplatskartan (@gjohansson-ST - #90165)
- Add constants file to workday (@gjohansson-ST - #90168)
- Update pydantic to 1.10.7 (@cdce8p - #90164)
- Remove unecessary variable in control4 (@nalin29 - #90176)
- Improve logging for unavailable sonos hosts (@PeteRager - #90172)
- Add Landis+Gyr missing device class (@vpathuis - #90182)
- Bump pyControl4 to 1.1.0 (@nalin29 - #90115)
- Cleanup some leftovers for Landis+Gyr (@vpathuis - #90183)
- Prepare MQTT platform tests part2 (@jbouwh - #90105)
- Prepare MQTT platform tests part3 (@jbouwh - #90106)
- Prepare MQTT platform tests part4 (@jbouwh - #90107)
- Prepare MQTT platform tests part8 (@jbouwh - #90132)
- Prepare MQTT platform tests part9 (@jbouwh - #90133)
- Add speech to text over binary websocket to pipeline (@synesthesiam - #90082)
- Fix missing mock in islamic_prayer_times (@epenet - #90178)
- Avoid calling the http access logging when logging is disabled (@bdraco - #90152)
- Fix recorder attribute excludes not being effective until after startup (@bdraco - #90198)
- Remove async_response from websocket apis where nothing was being awaited (@bdraco - #90204)
- Fix refactoring error in states/events context id migration (@bdraco - #90193)
- Small cleanups to logbook statement generator (@bdraco - #90200)
- Add icons for qbittorrent speed sensors (@chrisx8 - #90203)
- Fix httpx client creating a new ssl context with each client (memory leak) (@bdraco - #90191)
- Prepare MQTT platform tests part5 (@jbouwh - #90108)
- Prepare MQTT platform tests part6 (@jbouwh - #90129)
- Prepare MQTT platform tests part7 (@jbouwh - #90130)
- Use helper on tests MQTT fan platform (@jbouwh - #90196)
- Rename create_api_object to be private (@nalin29 - #90187)
- Remove incorrect parametrize decorator (@jbouwh - #90219)
- Rework UniFi wireless client “wired bug” logic (@Kane610 - #89757)
- Remove duplicate code in livisi coordinator (@planbnet - #90227)
- Bump actions/checkout from 3.4.0 to 3.5.0 (@dependabot - #90215)
- Move qbittorrent constants to const.py (@chrisx8 - #90201)
- Add a faster query for get_last_state_changes when the number of states is 1 (@bdraco - #90211)
- Add livisi window sensor (WDS) (@planbnet - #90220)
- Subclass aiohttp requests to use json helper (@bdraco - #90214)
- Use the json load helper in a few more incoming web requests (@bdraco - #90194)
- Bump aiounifi to v45 (@Kane610 - #90250)
- Add missing type hints to tests (@epenet - #90218)
- Improve browse_media type hints in media player (@epenet - #90060)
- Refactor Gree switch to use EntityDescription (@jeeftor - #90143)
- Check for empty lists in KNX address configuration (@farmio - #90249)
- Allow passing an optional name to async_track_time_interval (@bdraco - #90244)
- Add location field to calendar create_event service supported by Google Calendar and Local Calendar (@luca-angemi - #90098)
- Update vehicle to 1.0.0 (@frenck - #90189)
- Bump sqlalchemy to 2.0.7 (@bdraco - #90256)
- Add Re-Auth to bmw_connected_drive (@rikroe - #90251)
- Add entity name translations to Elgato (@frenck - #89629)
- Remove platform yaml radiotherm (@gjohansson-ST - #90284)
- Add sensor platform to Sun (@gjohansson-ST - #81045)
- Bump bleak-retry-connector to 3.0.2 (@bdraco - #90279)
- Remove Magicseaweed (@gjohansson-ST - #90277)
- Bump bleak to 0.20.1 (@bdraco - #90282)
- Remove pushbullet platform yaml import (@gjohansson-ST - #90285)
- Remove Volvooncall integration yaml import (@gjohansson-ST - #90288)
- Strict typing of UniFi integration (@Kane610 - #90278)
- Adjust IntFlag handling in syrupy (@epenet - #90223)
- Adjust pylint plugin for components fixtures (@epenet - #90217)
- Use SnapshotAssertion in bmw_connected_drive tests (@rikroe - #90128)
- Adjust pylint plugin for return type inheritance (@epenet - #90046)
- Update Verisure package to 2.6.1 (@niro1987 - #89318)
- Use SnapshotAssertion in gree switch tests (@epenet - #90222)
- Adjust targets type hint in notify platform (@epenet - #90062)
- Improve get_browse_image type hints in media player (@epenet - #90057)
- Fix pylint plugin for tuple[float, float] returns (@epenet - #90047)
- Add WLED IP as a sensor (@a-baturin - #90241)
- Implement config flow for nextcloud (@mib1185 - #89396)
- [Issue template] Point to health page for version info (@igorsantos07 - #80708)
- Update pipdeptree to 2.7.0 (@frenck - #90312)
- Fix Todoist end date for all day event (@boralyl - #89837)
- Bump ical to 4.5.1 and set PRODID for home assistant in local calendar ics (@allenporter - #90291)
- Bump ihcsdk to 2.8.5 (@dingusdk - #90266)
- Set qbittorrent integration_type to service (@chrisx8 - #90236)
- Improve onewire test coverage (@epenet - #90184)
- Add milliseconds as valid duration sensor unit (@raman325 - #90018)
- Apply late review comments from #89396 in Nextcloud (@mib1185 - #90327)
- Add last trip time attribute to Verisure binary sensors (@skrynklarn - #89944)
- Bump cryptography to 40.0.1 (@bdraco - #90326)
- Bump aioesphomeapi to 13.6.0 (@bdraco - #90330)
- Upgrade netgear_lte third-party library to v0.0.15 (@amelchio - #90324)
- Fix sql doing I/O in the event loop at startup (@bdraco - #90335)
- Clean up voice assistant integration (@balloob - #90239)
- Remove deprecated platform yaml in Scrape (@gjohansson-ST - #90272)
- Cleanup name assignment imap sensor (@jbouwh - #90306)
- Add support for clearing the on device GATT cache to esphome (@bdraco - #90318)
- Use lambda in gree switch (@epenet - #90316)
- Use SnapshotAssertion in gree climate tests (@epenet - #90339)
- Adjust tts default_options type hints (@epenet - #90053)
- Revert “Fix NMBS IndexError” (@PatrickGlesner - #90346)
- Reolink add auto tracking entities (@starkillerOG - #90063)
- Bump reolink-aio to 0.5.7 (@starkillerOG - #90344)
- Add option flow for imap integration (@jbouwh - #89914)
- Bump python-holidays to 0.21.13 (@jgoguen - #89724)
- Bump zwave-js-server-python to 0.47.0 (@raman325 - #90212)
- Fix pylint plugin for binary websocket (@epenet - #90351)
- Remove incorrect ignore in pylint plugin (@epenet - #90024)
- Rewrite tts tests (@emontnemery - #90355)
- Bump lifx dependencies (@Djelibeybi - #90345)
- Move Proxmox VE constants (@dougiteixeira - #90357)
- Remove unreachable continue statement in imap push coordinator (@jbouwh - #90361)
- Use entity name translations in Verisure (@frenck - #90362)
- Fix
quirk_class_validator
in ZHA unit tests (@javicalle - #90140) - Filter out ASCII tab or newline from input URLs (@frenck - #90348)
- Add “stream” to default_config (@tsbernar - #90153)
- Add state translations for Script entities (@frenck - #90354)
- Improve tts test coverage (@emontnemery - #90370)
- Clean dead code from matter (@MartinHjelmare - #90369)
- Add RestoreEntity pylint checks to all platforms (@epenet - #90020)
- Add reauth flow to dormakaba dkey (@emontnemery - #90225)
- Fail CI if codecov upload fails (@frenck - #90363)
- Cleanup command_line (@gjohansson-ST - #90268)
- Fix generic_hygrostat error at startup (@Shulyaka - #88764)
- Support toggling debug logging for custom components (@jbergler - #90340)
- Add state translations for helpers (@frenck - #90356)
- Refactor matter device entity value conversion (@MartinHjelmare - #90368)
- Workday cleanup (@gjohansson-ST - #90267)
- Bump aiodiscover to 1.4.15 (@bdraco - #90383)
- Bump nextcloudmonitor to 1.4.0 (@mib1185 - #90372)
- Bump proxmoxer to 2.0.1 in Proxmox VE (@dougiteixeira - #90378)
- Improve airq handling of DeviceInfo (@Sibgatulin - #90232)
- Set default value for some Fronius entities (@farmio - #89475)
- Add lru stats to the profiler integration (@bdraco - #90388)
- Refactor GIOS sensor platform (@bieniu - #89389)
- Turn AVM FRITZ!Box Tools binary sensors into coordinator entities (@mib1185 - #89955)
- Handle uncaught exceptions during update in Aladdin_connect (@mkmer - #89889)
- Add Mikrotik WifiWave2 (@lcosmin - #89711)
- Allow reloading iZone config entry (@Swamp-Ig - #89572)
- Add SharkIQ EU region support (@funkybunch - #89349)
- Add phase information to YouLess (@gjong - #89255)
- Improve threshold binary sensor (@emontnemery - #88978)
- Display only supported Home Connect appliance programs (@stickpin - #88801)
- Add re-auth support to philips_js (@elupus - #88774)
- Add a calendar entity to Ridwell (@bachya - #88108)
- Look up todoist collaborators only when adding new task (@boralyl - #87957)
- Add product calculation to Group sensor (@gjohansson-ST - #87373)
- Bump pychromecast to 13.0.6 (@emontnemery - #90390)
- Remove dependency on async_setup from mqtt integration (@jbouwh - #87987)
- Redact secret zwave values in diagnostics (@raman325 - #90389)
- Improve Proxmox VE type hints (@dougiteixeira - #90359)
- Use shorthand attributes in IHC (@dingusdk - #90350)
- Speed up profiler lru test (@bdraco - #90395)
- Add callback support to nuki (@pree - #88346)
- Display unit of elevation in met config flow (@chrisx8 - #88283)
- Fix ridwell tests (@epenet - #90401)
- Fix setting color + brightness of Tuya lights (@BNolet - #88470)
- Use slots for recorder tasks to reduce memory (@bdraco - #90387)
- Update calendar to always request start/end dates in local time rather than UTC (@allenporter - #90386)
- Make OTBR use same channel as ZHA (@emontnemery - #88546)
- Add encoding configuration setting to REST and Scape (@olivierouellet - #90254)
- Add device info to Nextcloud integration (@mib1185 - #90328)
- Bump python-bsblan to 0.5.11 (@liudger - #90377)
- Fix benign typo in discovery flow helper (@bdraco - #90396)
- Fix envoy last_seven_days_energy* state class (@jmuf - #84528)
- Remove mysensors notify (@MartinHjelmare - #90402)
- Remove lru_cache on websocket _state_diff (@bdraco - #90392)
- Fix NMBS IndexError (@PatrickGlesner - #90365)
- Update transmission up/down speed values (@gapple - #88528)
- TP-Link Omada update entities code review feedback (@MarkGodwin - #89668)
- Remove mysensors ir switch (@MartinHjelmare - #90403)
- Have octoprint camera respect verify_ssl configuration (@rfleming71 - #90384)
- Add support for select entities in velbus (@Cereal2nd - #87568)
- Refactor Tado to use entity descriptions and new naming style (@avee87 - #75750)
- Add HTML support for Google Mail messages (@tkdrob - #87201)
- Fix Notify Group payload data mis-merge (@arychj - #90253)
- Improve airq test coverage (@Sibgatulin - #90192)
- Add panel brightness control for Litter-Robot 4 (@natekspencer - #86269)
- Add minutely updates to relative_time and today_at template functions (@Petro31 - #86815)
- Don’t rely on the demo integration in voice_assistant tests (@emontnemery - #90405)
- Add rest encoding test (@epenet - #90404)
- Replace comments with docstring in ColorMode enum (@epenet - #90408)
- Add brand for HomeSeer (@b-uwe - #90066)
- Disable esphome stopping a cover if the cover doesn’t support stopping (@amomchilov - #80104)
- Add switch tests for devolo_home_control (@Shutgun - #80154)
- Add tests to Lidarr (@tkdrob - #79610)
- Add basic tests for temper USB temperature sensor integration (@davet2001 - #80220)
- Simplify qbittorrent sensor class init (@chrisx8 - #90411)
- Add has_value function/test to Jinja2 template (@ehendrix23 - #79550)
- Add periodically resetting meter option to utility meter (@Wesley-Vos - #88446)
- Add connected relayer region to system health (@ludeeus - #90410)
- Blebox cover tilt (@riokuu - #85515)
- Don’t use force_update for Tasmota sensors (@DerEnderKeks - #85943)
- Update zwave-me-ws version to 0.3.6 (@lawfulchaos - #90233)
- Refactor ZHA binary sensors to read from zigpy cache (@TheJulianJES - #89481)
- Add DataUpdateCoordinator to the Todoist integration (@boralyl - #89836)
- Ensure filters are generated inside the lambda locks (@bdraco - #90418)
- Implement imap_content event for imap integration (@jbouwh - #90242)
- Check webhook url is reachable in Reolink (@starkillerOG - #89585)
- Catch somecomfort error in Honeywell (@mkmer - #90425)
- Add header with parsed date to imap event data (@jbouwh - #90422)
- Rework recorder filters to avoid caching mistakes (@bdraco - #90419)
- Write protect entity options (@emontnemery - #90185)
- Add goodwe sensors for apparent/reactive pwr (@mletenay - #87940)
- Add sqlalchemy LRUs to the profiler lru service (@bdraco - #90428)
- Add binding of IKEA Matter Switch cluster in ZHA (@MattWestb - #89623)
- Bump onvif-zeep-async to 1.2.3 (@bdraco - #90382)
- Bump ZHA quirks to 0.0.95 (@dmulcahey - #90435)
- Add Aqara E1 thermostat entities to ZHA (@TheJulianJES - #90158)
- Add Aqara smoke sensor entities to ZHA (@TheJulianJES - #90159)
- Migrate ssdp to config_flow for frontier_silicon (@wlcrs - #89496)
- Remove unused types argument in statistics query generation (@bdraco - #90431)
- Reduce cache key size for queries that only need single columns (@bdraco - #90430)
- OpenAI to use GPT3.5 (@balloob - #90423)
- Fix unbound variable in sql when session setup fails (@bdraco - #90439)
- Isolate the sql integration with a separate query cache (@bdraco - #90438)
- Fix data issue for energyzero during midnight (@klaasnicolaas - #90433)
- Fix data issue for easyEnergy during midnight (@klaasnicolaas - #90434)
- Bump yalexs-ble to 2.1.13 (@bdraco - #90442)
- Limit observations requested for NWS (@MatthewFlamm - #90137)
- Add new sensors to airq (@Sibgatulin - #90413)
- Reolink improve config flow login (@starkillerOG - #90036)
- Fix goodwe export limit unit on single phase DT inverters (@mletenay - #90427)
- Make abort_entries_match available in options flow (@epenet - #90406)
- Bump home-assistant-intents to 2023.3.29 (@balloob - #90459)
- Bump python-matter-server to 3.2.0 (@marcelveldt - #90457)
- Add verify ssl option to nextcloud (@mib1185 - #90462)
- Bump zwave-js-server-python to 0.47.1 (@raman325 - #90464)
- Update frontend to 20230329.0 (@bramkragten - #90461)
- Allow resetting filters for waze_travel_time (@eifinger - #88253)
- Add re-auth flow to nextcloud (@mib1185 - #90472)
- Rename custom_jinja to custom_templates (@emontnemery - #90473)
- Use auth token in Ezviz (@RenierM26 - #54663)
- Add missing strings in frontier_silicon (@wlcrs - #90446)
- Bump reolink-aio to 0.5.8 (@starkillerOG - #90467)
- Add entity name translations for devolo Home Network (@Shutgun - #90471)
- Bump yalexs-ble to 2.1.14 (@bdraco - #90474)
- Add missing strings to sensor integration (@epenet - #90475)
- Correctly load ZHA settings from API when integration is not running (@puddly - #90476)
- Fix filesize doing blocking I/O in the event loop (@bdraco - #90479)
- OpenAI to rely on built-in
areas
variable (@balloob - #90481) - Include channel in response to WS thread/list_datasets (@emontnemery - #90493)
- Fix for is_hidden_entity when using it in select, selectattr, reject, and rejectattr (@Petro31 - #90512)
- Unregister webhook when registering webhook with nuki fials (@balloob - #90514)
- Add a device to the sun (@frenck - #90517)
- Migrate old ZHA IasZone sensor state to zigpy cache (@TheJulianJES - #90508)
- Update frontend to 20230330.0 (@bramkragten - #90524)
- Add entity name translations to LaMetric (@frenck - #90538)
- Fix migration when encountering a NULL entity_id/event_type (@bdraco - #90542)
- Handle garbage in the context_id column during migration (@bdraco - #90544)
- Bump ZHA dependencies (@puddly - #90547)
- Allow removal of sensor settings in scrape (@epenet - #90412)
- Make sonos activity check a background task (@bdraco - #90553)
- Add arming/disarming state to Verisure (@frenck - #90577)
- Raise on invalid (dis)arm code in manual alarm (@frenck - #90579)
- Tweak yalexs_ble translations (@emontnemery - #90582)
- Raise on invalid (dis)arm code in manual mqtt alarm (@frenck - #90584)
- Bump reolink-aio to 0.5.9 (@starkillerOG - #90590)
- Update frontend to 20230331.0 (@bramkragten - #90594)
- Fix ZHA definition error on received command (@puddly - #90602)
- Perform an energy scan when downloading ZHA diagnostics (@puddly - #90605)
- Bump zwave-js-server-python to 0.47.3 (@raman325 - #90606)
- Avoid sorting domain/all states in templates (@bdraco - #90608)
- Only limit stats to started add-ons (@ludeeus - #90611)
- Small speed up to _collection_changed (@bdraco - #90621)
- Bump zeroconf to 0.51.0 (@bdraco - #90622)
- Fix Rest switch init was not retrying if unreachable at setup (@aschor - #90627)
- Fix mqtt device_tracker is not reloading yaml (@jbouwh - #90639)
- Update frontend to 20230401.0 (@bramkragten - #90646)
- Update goodwe library to v0.2.30 (@mletenay - #90607)
- Add entity name translations to Brother (@bieniu - #90634)
- Add object source logger to profiler (@bdraco - #90650)
- Add entity name translations to GIOS (@bieniu - #90655)
- Add entity name translations to Airly (@bieniu - #90656)
- Bump zeroconf to 0.52.0 (@bdraco - #90660)
- Add entity name translations for Nest sensors (@Nardol - #90677)
- Fix frontend test (@balloob - #90679)
- Bump zeroconf to 0.53.0 (@bdraco - #90682)
- Fix default sensor entity name for PM1 (@bieniu - #90684)
- Fix memory churn in state templates (@bdraco - #90685)
- Remove Darksky integration (@gjohansson-ST - #90322)
- Use entity name translations in Fronius (@farmio - #90463)
- Raise repair issue if OTBR and ZHA are on different channels (@emontnemery - #90494)
- Correct handling if WIFI combine suffix is “None” (@N3rdix - #90528)
- Add entity name translations to Plugwise (@frenck - #90537)
- Add entity name translations to Switchbot (@Nardol - #90600)
- Bump env_canada to v0.5.30 (@michaeldavie - #90644)
- Ensure system log does not raise while processing logger messages (@bdraco - #90652)
- Add entity name translations to NAM (@bieniu - #90681)
- Use the default entity names in Airly (@bieniu - #90693)
- Use entity name translations in 1-wire (@epenet - #90696)
- Use entity name translations in Renault (@epenet - #90697)
- Use entity name translations in SFR Box (@epenet - #90698)
- Fix ha version in EDL21 deprecation warning (@StephanU - #90699)
- Use the default entity names in GIOS (@bieniu - #90700)
- Add entity name translations to BraviaTV (@bieniu - #90702)
- Add entity name translations to AVM Fritz!Tools (@mib1185 - #90703)
- Add entity name translations to Synology DSM (@mib1185 - #90706)
- Add entity name translations to AVM Fritz!SmartHome (@mib1185 - #90707)
- Add entity name translations to NUT (@mib1185 - #90709)
- Fix Livisi climate min/max temperature (@planbnet - #90712)
- Add entity name translations to Pi-hole (@mib1185 - #90713)
- Fix translation of status binary sensor in PI-Hole (@mib1185 - #90719)
- Fix missing battery sensors for SimpliSafe locks (@bachya - #90722)
- Bump pychromecast to 13.0.7 (@emontnemery - #90724)
- Add entity name translations to Luftdaten (@mib1185 - #90725)
- Add entity name translations to sun (@mib1185 - #90732)
- Update frontend to 20230403.0 (@bramkragten - #90735)
- Fix bluetooth_le_tracker reporting devices Home when they leave (@ProtoxiDe22 - #90641)
- Add entity name translations to SMS (@mib1185 - #90727)
- Add entity name translations to Tractive (@bieniu - #90738)
- SharkIQ Hotfix - Handle current installations by using default
REGION
(@funkybunch - #90741) - Add entity name translations to NextDNS (@bieniu - #90743)
- Bump zeroconf to 0.54.0 (@bdraco - #90744)
- Prevent overly large event data from being stored in the database (@bdraco - #90747)
- Restore state for ZHA OnOff binary sensors (@TheJulianJES - #90749)
- Bump aiohomekit to 2.6.3 (@bdraco - #90752)
- Add render count to templates repr (@bdraco - #90753)
- Fix frontend test again (@balloob - #90754)
- Update template environment from the event loop (@emontnemery - #90758)
- Fix recovering imap connection triggers re-auth (@jbouwh - #90762)
- Add async_write_ha_state to Reolink select (@starkillerOG - #90764)
- Address late review for NextDNS entity name translations (@bieniu - #90771)
- Add Warning in the issue registry if a HTTPS webhook is used for Nuki (@pree - #90718)
- Add translations for Nuki entity name and battery critical state attribute (@Nardol - #90772)
- Add entity name translations to Broadlink sensors (@Nardol - #90783)
- Fix BLEDevice not getting updated when details change for remote scanners (@bdraco - #90815)
- Bump aioesphomeapi to 10.6.1 (@bdraco - #90816)
- Master RAS zone (@Swamp-Ig - #90825)
- Suppress imap logging on reconnect and presume state (@jbouwh - #90826)
- Add entity name translations to prusalink entities (@piitaya - #90833)
- Support entity name translation in DSMR Reader component (@Glodenox - #90836)
- Adjust async_track_time_interval name argument (@epenet - #90838)
- Bump frontend to 20230405.0 (@bramkragten - #90841)
- Adjust OTBR channel conflict URL (@emontnemery - #90847)