From f0014189e3f60bfe3be38097fe39eeefa52916f2 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Thu, 7 Dec 2023 11:26:32 +0100 Subject: [PATCH 01/47] 2024.1: Beta release notes --- _config.yml | 6 +- .../_posts/2024-01-03-release-20241.markdown | 175 ++++++++++++ source/changelogs/core-2024.1.markdown | 270 ++++++++++++++++++ 3 files changed, 448 insertions(+), 3 deletions(-) create mode 100644 source/_posts/2024-01-03-release-20241.markdown create mode 100644 source/changelogs/core-2024.1.markdown diff --git a/_config.yml b/_config.yml index b4eb79256c6..1f49daa40d4 100644 --- a/_config.yml +++ b/_config.yml @@ -108,10 +108,10 @@ social: account: "https://fosstodon.org/@homeassistant" # Home Assistant release details -current_major_version: 2023 -current_minor_version: 12 +current_major_version: 2024 +current_minor_version: 1 current_patch_version: 0 -date_released: 2023-12-06 +date_released: 2023-01-03 # Either # or the anchor link to latest release notes in the blog post. # Must be prefixed with a # and have double quotes around it. diff --git a/source/_posts/2024-01-03-release-20241.markdown b/source/_posts/2024-01-03-release-20241.markdown new file mode 100644 index 00000000000..7742788c732 --- /dev/null +++ b/source/_posts/2024-01-03-release-20241.markdown @@ -0,0 +1,175 @@ +--- +layout: post +title: "2024.1: Beta release notes" +description: "The beta release notes for Home Assistant 2024.1" +date: 2023-12-07 00:00:00 +date_formatted: "January 3, 2024" +author: Franck Nijhof +author_twitter: frenck +comments: true +categories: + - Release-Notes + - Core +og_image: /images/blog/2024-01/social.png +--- + + + + + +These are the beta release notes for Home Assistant Core 2024.1 (and is thus a +work in progress). + +If you encounter any issues with the beta release, please report them on GitHub: + +- Issues with integrations, automations and such (Core related):
+ +- Issues with the frontend/UI/dashboards:
+ +- Issues with the documentation:
+ + +Please be sure to include the beta version you are running in the issue +version field (not title), so we can classify your issue correctly. + +Issues introduced in the beta are processed with priority. + +--- + + + +Home Assistant Core 2024.1! 🎉 + +Thanks for helping out testing the beta! ❤️ + +Enjoy the (beta) release! + + + +- [Lorem ipsum](#lorem-ipsum) +- [Other noteworthy changes](#other-noteworthy-changes) +- [New integrations](#new-integrations) +- [Integrations now available to set up from the UI](#integrations-now-available-to-set-up-from-the-ui) +- [Need help? Join the community!](#need-help-join-the-community) +- [Backward-incompatible changes](#backward-incompatible-changes) +- [Farewell to the following](#farewell-to-the-following) +- [All changes](#all-changes) + +Don't forget to [join our release party live stream on YouTube](https://www.youtube.com/watch?v=#) +3 January 2024, at 12:00 PST / 21:00 CET! + + + +## Lorem ipsum + +Lorem ipsum + +## Other noteworthy changes + +There are many more improvements in this release; here are some of the other +noteworthy changes this release: + +- Lorem ipsum, thanks [@frenck]! + +[@frenck]: https://github.com/frenck + +## New integrations + +We welcome the following new integrations in this release: + +- **[Flexit BACnet]**, added by [@lellky]
+ Control and monitor your Flexit Nordic series air handling units. +- **[Holiday]**, added by [@jrieger]
+ Add holiday calendars to Home Assistant for powering automations. + +[@jrieger]: https://github.com/jrieger +[@lellky]: https://github.com/lellky +[Flexit BACnet]: /integrations/flexit_bacnet +[Holiday]: /integrations/holiday + +This release also has a new virtual integration. Virtual integrations are stubs +that are handled by other (existing) integrations to help with findability. +The following virtual integrations have been added: + +- **[Fujitsu anywAIR]**, provided by [Advantage Air] +- **[Seattle City Light]**, provided by [Opower] + +[Advantage Air]: /integrations/advantage_air +[Fujitsu anywAIR]: /integrations/fujitsu_anywair +[Opower]: /integrations/opower +[Seattle City Light]: /integrations/scl + +## Integrations now available to set up from the UI + +The following integrations are now available via the Home Assistant UI: + +- **[Lorem ipsum]**, done by [@frenck] + +[@frenck]: https://github.com/frenck +[Lorem ipsum]: /integrations/lorem_ipsum + +## Need help? Join the community! + +Home Assistant has a great community of users who are all more than willing +to help each other out. So, join us! + +Our very active [Discord chat server](/join-chat) is an excellent place to be +at, and don't forget to join our amazing [forums](https://community.home-assistant.io/). + +Found a bug or issue? Please report it in our [issue tracker](https://github.com/home-assistant/core/issues), +to get it fixed! Or, check [our help page](/help) for guidance for more +places you can go. + +Are you more into email? [Sign-up for our Building the Open Home Newsletter](/newsletter) +to get the latest news about features, things happening in our community and +other news about building an Open Home; straight into your inbox. + +## Backward-incompatible changes + +{% details "Home Assistant shutdown event" %} + +The event key in the (undocumented) trigger data for the `homeassistant` trigger +platform is now the string `shutdown` for a `homeassistant` trigger configured +to fire on shutdown instead of an `Event` object. + +([@tetele] - [#91165]) ([documentation](/integrations/homeassistant)) + +[@tetele]: https://github.com/tetele +[#91165]: https://github.com/home-assistant/core/pull/91165 + +{% enddetails %} + +{% details "Modbus" %} + +Setting `swap: none` has been removed from the Modbus configuration, +it is identical to omitting it: `swap:`. + +([@janiversen] - [#104713]) ([documentation](/integrations/modbus)) + +[@janiversen]: https://github.com/janiversen +[#104713]: https://github.com/home-assistant/core/pull/104713 + +{% enddetails %} + +If you are a custom integration developer and want to learn about breaking +changes and new features available for your integration: Be sure to follow our +[developer blog][devblog]. The following are the most notable for this release: + +- [Lorem ipsum](https://developers.home-assistant.io/blog) + +[devblog]: https://developers.home-assistant.io/blog/ + +## Farewell to the following + +The following integrations are also no longer available as of this release: + +- **Lorem ipsum** has been removed. Lorem slipsum might be a good replacement. + ([@frenck] - [#12345]) + +[@frenck]: https://github.com/frenck +[#12345]: https://github.com/home-assistant/core/pull/12345 + +## All changes + +Of course, there is a lot more in this release. You can find a list of +all changes made here: [Full changelog for Home Assistant Core 2024.1](/changelogs/core-2024.1) diff --git a/source/changelogs/core-2024.1.markdown b/source/changelogs/core-2024.1.markdown new file mode 100644 index 00000000000..ea34848d0c8 --- /dev/null +++ b/source/changelogs/core-2024.1.markdown @@ -0,0 +1,270 @@ +--- +title: Full changelog for Home Assistant Core 2024.1 +description: Detailed changelog for the Home Assistant Core 2024.1 release +replace_regex: \s\(\[?[a-z0-9\-\s_]+\]?\)$ +--- + +These are all the changes included in the Home Assistant Core 2024.1 release. + +For a summary in a more readable format: +[Release notes blog for this release](/blog/2023/12/07/release-20241/). + +## All changes + +- Bump version to 2024.1.0dev0 ([@frenck] - [#104746]) +- Add faa_delays to strict typing ([@joostlek] - [#104720]) +- Move Faa delays state attributes to entity description ([@joostlek] - [#104748]) +- Add entity translations to faa_delays ([@joostlek] - [#104749]) +- Add strict typing to push bullet ([@engrbm87] - [#99538]) +- Reolink cleanup when CAM disconnected from NVR ([@starkillerOG] - [#103888]) +- Migrate GDACS to has entity name ([@joostlek] - [#104733]) +- Add common reolink entity description ([@starkillerOG] - [#104142]) +- Cleanup Reolink formatting (late review) ([@starkillerOG] - [#104793]) +- Make the minimum number of samples used by the trend sensor configurable ([@jpbede] - [#101102]) +- Add Flexit bacnet integration ([@lellky] - [#104275]) +- Add significant Change support for remote ([@mib1185] - [#104627]) +- Add codeowner to vesync ([@cdnninja] - [#104809]) +- Bump evohome-async to 0.4.9 ([@zxdavb] - [#103660]) +- Added typing for return value for async_migrate func. ([@sergeymaysak] - [#104828]) +- Improve decorator type annotations ([@cdce8p] - [#104821]) +- Improve decorator type annotations [matter] ([@cdce8p] - [#104822]) +- Improve decorator type annotations [sabnzbd] ([@cdce8p] - [#104823]) +- Improve decorator type annotations [core] ([@cdce8p] - [#104826]) +- Always create APCUPS device ([@joostlek] - [#104716]) +- Improve decorator type annotations [sensibo] ([@cdce8p] - [#104824]) +- Use orjson to load HomeWizard test fixtures ([@frenck] - [#104832]) +- Vesync constant cleanup ([@cdnninja] - [#104842]) +- Let executor CI test pass under worse conditions ([@jbouwh] - [#104849]) +- Change pytest fixture scope from core fixtures ([@frenck] - [#104831]) +- Add temperature to the light color mode parameter fallbacks ([@nmaggioni] - [#86026]) +- Bump bluetooth-data-tools to 0.16.0 ([@bdraco] - [#104854]) +- Fix powerwall typing ([@cdce8p] - [#104875]) +- Migrate to using faster monotonic_time_coarse from bluetooth-data-tools ([@bdraco] - [#104882]) +- Reolink only fetch data for enabled entities ([@starkillerOG] - [#104157]) +- Adjust roku type hint ([@cdce8p] - [#104877]) +- Improve decorator type annotations [esphome] ([@cdce8p] - [#104878]) +- Correct SerialException import in dsmr, firmata, landysgyr_heat_meater and rfxtrx integrations ([@jbouwh] - [#104889]) +- Add number entities for program temperature in ViCare integration ([@CFenner] - [#103960]) +- Add alarm sensor to Aurora ABB ([@davet2001] - [#104503]) +- Add MELCloud token refresh upon firmware upgrade ([@erwindouna] - [#104391]) +- Refactor bluetooth scanners for better seperation of concerns ([@bdraco] - [#104909]) +- Bump python-holidays to 0.37 ([@jrieger] - [#104937]) +- Bump zeroconf to 0.128.0 ([@bdraco] - [#104936]) +- Remove CONF_PRECISION remainder from dsmr ([@jbouwh] - [#104919]) +- Add Holiday integration ([@jrieger] - [#103795]) +- Bump bluetooth-data-tools to 1.17.0 ([@bdraco] - [#104935]) +- Relocate base Bluetooth scanner code into an external library ([@bdraco] - [#104930]) +- Bump plexapi to 4.15.6 ([@jjlawren] - [#104949]) +- Add StreamLabsWater to strict typing ([@joostlek] - [#104957]) +- Bump habluetooth to 0.4.0 ([@bdraco] - [#104958]) +- Use constants in config flow scaffold ([@joostlek] - [#104964]) +- Fix bug in config flow scaffold ([@joostlek] - [#104965]) +- Add virtual integration Fujitsu anywAIR ([@Bre77] - [#102978]) +- Bump habluetooth to 0.5.1 ([@bdraco] - [#104969]) +- Bump evohome-async to 0.4.13 ([@zxdavb] - [#104960]) +- Bump screenlogicpy to v0.10.0 ([@dieselrabbit] - [#104866]) +- Remove monotonic_time_coarse datetime helper ([@bdraco] - [#104892]) +- Update balboa strings.json ([@Betacart] - [#104977]) +- Bump dbus-fast to 2.20.0 ([@bdraco] - [#104978]) +- Squeezebox to Synology DSM: add host field description ([@c0ffeeca7] - [#104864]) +- Add telegram message timestamp to event data ([@mdunda] - [#87493]) +- Allow passing breaks_in_ha_version to deprecation helper decorators ([@emontnemery] - [#104985]) +- Add scaling utils for brightness and fanspeed ([@jbouwh] - [#104753]) +- Bump opower==0.0.40 ([@tronikos] - [#104986]) +- Move config_per_platform and extract_domain_configs to config.py ([@emontnemery] - [#104989]) +- Remove "swap: none" from modbus ([@janiversen] - [#104713]) +- Refactor lock default code handling ([@jbouwh] - [#104807]) +- Make `cv.string` return subclasses of str as is ([@emontnemery] - [#103916]) +- Reverse component path ([@emontnemery] - [#104087]) +- Avoid double URL creation for hassio ingress ([@bdraco] - [#105052]) +- Bump habluetooth to 0.6.1 ([@bdraco] - [#105029]) +- Make season types translatable ([@jpbede] - [#105027]) +- Remove breaks_in_ha_version from deprecated YAML classes ([@emontnemery] - [#105062]) +- Deprecate and remove lazy_error from modbus ([@janiversen] - [#105037]) +- Add fields cancelled & extra to result of the departure HVV sensor ([@tzahari] - [#105030]) +- Improve matrix typing ([@cdce8p] - [#105067]) +- Add optional dsmr timestamp sensor ([@dupondje] - [#104979]) +- Use modern platform path when reporting platform config errors ([@emontnemery] - [#104238]) +- Add domain key config validation ([@emontnemery] - [#104242]) +- Add calendar entity to Radarr ([@tkdrob] - [#79077]) +- Finish scaffold config flow with either abort or create entry ([@joostlek] - [#105012]) +- Remove logic converting empty or falsy YAML to empty dict ([@emontnemery] - [#103912]) +- Improve yamaha tests ([@emontnemery] - [#105077]) +- Move local bluetooth scanner code into habluetooth library ([@bdraco] - [#104970]) +- Update energyzero lib to v2.0.0 ([@klaasnicolaas] - [#105080]) +- Improve raise contains mocks ([@emontnemery] - [#105078]) +- Add significant Change support for weather ([@mib1185] - [#104840]) +- Move Bluetooth advertisement tracker to habluetooth library ([@bdraco] - [#105083]) +- Split bluetooth manager so it can be extracted into the habluetooth lib ([@bdraco] - [#105015]) +- Increase frequency of weatherkit updates ([@tjhorner] - [#105094]) +- Bump renson library to version 1.7.1 ([@jimmyd-be] - [#105096]) +- Trigger Home Assistant shutdown automations right before the stop event instead of during it ([@tetele] - [#91165]) +- Update easyenergy lib to v2.0.0 ([@klaasnicolaas] - [#105108]) +- Bump aioesphomeapi to 19.3.0 ([@bdraco] - [#105114]) +- Bump habluetooth to 0.8.0 ([@bdraco] - [#105109]) +- Fix flakey logbook tests ([@bdraco] - [#105111]) +- Bump actions/setup-python from 4.7.1 to 4.8.0 (@dependabot - [#105117]) +- bump evohome-async to 0.4.15 ([@zxdavb] - [#105119]) +- Address late review for Holiday ([@jrieger] - [#105121]) +- Add Huawei LTE network mode select ([@scop] - [#104614]) +- Use freezegun in utility_meter tests ([@jpbede] - [#105123]) +- Bump python-opensky to 1.0.0 ([@joostlek] - [#105131]) +- Improve decorator type annotations [zwave_js] ([@cdce8p] - [#104825]) +- Add preset modes to ESPHome fan entities ([@mill1000] - [#103781]) +- Modernize and cleanup trend tests ([@jpbede] - [#105010]) +- Add Modbus fan speed support ([@cian] - [#104577]) +- Expose todo entities to Assist by default ([@synesthesiam] - [#105150]) +- Add extra tests for HomeWizard for unsupported entity creation ([@DCSBL] - [#105149]) +- Bump actions/setup-python from 4.8.0 to 5.0.0 (@dependabot - [#105193]) +- Use brightness scaling util in HomeWizard Number entity ([@DCSBL] - [#105147]) +- Add custom services for renson fans ([@jimmyd-be] - [#94497]) +- Add Seattle City Light virtual integration via Opower ([@dewdropawoo] - [#104997]) + +[#101102]: https://github.com/home-assistant/core/pull/101102 +[#102978]: https://github.com/home-assistant/core/pull/102978 +[#103660]: https://github.com/home-assistant/core/pull/103660 +[#103781]: https://github.com/home-assistant/core/pull/103781 +[#103795]: https://github.com/home-assistant/core/pull/103795 +[#103888]: https://github.com/home-assistant/core/pull/103888 +[#103912]: https://github.com/home-assistant/core/pull/103912 +[#103916]: https://github.com/home-assistant/core/pull/103916 +[#103960]: https://github.com/home-assistant/core/pull/103960 +[#104087]: https://github.com/home-assistant/core/pull/104087 +[#104142]: https://github.com/home-assistant/core/pull/104142 +[#104157]: https://github.com/home-assistant/core/pull/104157 +[#104238]: https://github.com/home-assistant/core/pull/104238 +[#104242]: https://github.com/home-assistant/core/pull/104242 +[#104275]: https://github.com/home-assistant/core/pull/104275 +[#104391]: https://github.com/home-assistant/core/pull/104391 +[#104503]: https://github.com/home-assistant/core/pull/104503 +[#104577]: https://github.com/home-assistant/core/pull/104577 +[#104614]: https://github.com/home-assistant/core/pull/104614 +[#104627]: https://github.com/home-assistant/core/pull/104627 +[#104713]: https://github.com/home-assistant/core/pull/104713 +[#104716]: https://github.com/home-assistant/core/pull/104716 +[#104720]: https://github.com/home-assistant/core/pull/104720 +[#104733]: https://github.com/home-assistant/core/pull/104733 +[#104746]: https://github.com/home-assistant/core/pull/104746 +[#104748]: https://github.com/home-assistant/core/pull/104748 +[#104749]: https://github.com/home-assistant/core/pull/104749 +[#104753]: https://github.com/home-assistant/core/pull/104753 +[#104793]: https://github.com/home-assistant/core/pull/104793 +[#104807]: https://github.com/home-assistant/core/pull/104807 +[#104809]: https://github.com/home-assistant/core/pull/104809 +[#104821]: https://github.com/home-assistant/core/pull/104821 +[#104822]: https://github.com/home-assistant/core/pull/104822 +[#104823]: https://github.com/home-assistant/core/pull/104823 +[#104824]: https://github.com/home-assistant/core/pull/104824 +[#104825]: https://github.com/home-assistant/core/pull/104825 +[#104826]: https://github.com/home-assistant/core/pull/104826 +[#104828]: https://github.com/home-assistant/core/pull/104828 +[#104831]: https://github.com/home-assistant/core/pull/104831 +[#104832]: https://github.com/home-assistant/core/pull/104832 +[#104840]: https://github.com/home-assistant/core/pull/104840 +[#104842]: https://github.com/home-assistant/core/pull/104842 +[#104849]: https://github.com/home-assistant/core/pull/104849 +[#104854]: https://github.com/home-assistant/core/pull/104854 +[#104864]: https://github.com/home-assistant/core/pull/104864 +[#104866]: https://github.com/home-assistant/core/pull/104866 +[#104875]: https://github.com/home-assistant/core/pull/104875 +[#104877]: https://github.com/home-assistant/core/pull/104877 +[#104878]: https://github.com/home-assistant/core/pull/104878 +[#104882]: https://github.com/home-assistant/core/pull/104882 +[#104889]: https://github.com/home-assistant/core/pull/104889 +[#104892]: https://github.com/home-assistant/core/pull/104892 +[#104909]: https://github.com/home-assistant/core/pull/104909 +[#104919]: https://github.com/home-assistant/core/pull/104919 +[#104930]: https://github.com/home-assistant/core/pull/104930 +[#104935]: https://github.com/home-assistant/core/pull/104935 +[#104936]: https://github.com/home-assistant/core/pull/104936 +[#104937]: https://github.com/home-assistant/core/pull/104937 +[#104949]: https://github.com/home-assistant/core/pull/104949 +[#104957]: https://github.com/home-assistant/core/pull/104957 +[#104958]: https://github.com/home-assistant/core/pull/104958 +[#104960]: https://github.com/home-assistant/core/pull/104960 +[#104964]: https://github.com/home-assistant/core/pull/104964 +[#104965]: https://github.com/home-assistant/core/pull/104965 +[#104969]: https://github.com/home-assistant/core/pull/104969 +[#104970]: https://github.com/home-assistant/core/pull/104970 +[#104977]: https://github.com/home-assistant/core/pull/104977 +[#104978]: https://github.com/home-assistant/core/pull/104978 +[#104979]: https://github.com/home-assistant/core/pull/104979 +[#104985]: https://github.com/home-assistant/core/pull/104985 +[#104986]: https://github.com/home-assistant/core/pull/104986 +[#104989]: https://github.com/home-assistant/core/pull/104989 +[#104997]: https://github.com/home-assistant/core/pull/104997 +[#105010]: https://github.com/home-assistant/core/pull/105010 +[#105012]: https://github.com/home-assistant/core/pull/105012 +[#105015]: https://github.com/home-assistant/core/pull/105015 +[#105027]: https://github.com/home-assistant/core/pull/105027 +[#105029]: https://github.com/home-assistant/core/pull/105029 +[#105030]: https://github.com/home-assistant/core/pull/105030 +[#105037]: https://github.com/home-assistant/core/pull/105037 +[#105052]: https://github.com/home-assistant/core/pull/105052 +[#105062]: https://github.com/home-assistant/core/pull/105062 +[#105067]: https://github.com/home-assistant/core/pull/105067 +[#105077]: https://github.com/home-assistant/core/pull/105077 +[#105078]: https://github.com/home-assistant/core/pull/105078 +[#105080]: https://github.com/home-assistant/core/pull/105080 +[#105083]: https://github.com/home-assistant/core/pull/105083 +[#105094]: https://github.com/home-assistant/core/pull/105094 +[#105096]: https://github.com/home-assistant/core/pull/105096 +[#105108]: https://github.com/home-assistant/core/pull/105108 +[#105109]: https://github.com/home-assistant/core/pull/105109 +[#105111]: https://github.com/home-assistant/core/pull/105111 +[#105114]: https://github.com/home-assistant/core/pull/105114 +[#105117]: https://github.com/home-assistant/core/pull/105117 +[#105119]: https://github.com/home-assistant/core/pull/105119 +[#105121]: https://github.com/home-assistant/core/pull/105121 +[#105123]: https://github.com/home-assistant/core/pull/105123 +[#105131]: https://github.com/home-assistant/core/pull/105131 +[#105147]: https://github.com/home-assistant/core/pull/105147 +[#105149]: https://github.com/home-assistant/core/pull/105149 +[#105150]: https://github.com/home-assistant/core/pull/105150 +[#105193]: https://github.com/home-assistant/core/pull/105193 +[#79077]: https://github.com/home-assistant/core/pull/79077 +[#86026]: https://github.com/home-assistant/core/pull/86026 +[#87493]: https://github.com/home-assistant/core/pull/87493 +[#91165]: https://github.com/home-assistant/core/pull/91165 +[#94497]: https://github.com/home-assistant/core/pull/94497 +[#99538]: https://github.com/home-assistant/core/pull/99538 +[@Betacart]: https://github.com/Betacart +[@Bre77]: https://github.com/Bre77 +[@CFenner]: https://github.com/CFenner +[@DCSBL]: https://github.com/DCSBL +[@bdraco]: https://github.com/bdraco +[@c0ffeeca7]: https://github.com/c0ffeeca7 +[@cdce8p]: https://github.com/cdce8p +[@cdnninja]: https://github.com/cdnninja +[@cian]: https://github.com/cian +[@davet2001]: https://github.com/davet2001 +[@dewdropawoo]: https://github.com/dewdropawoo +[@dieselrabbit]: https://github.com/dieselrabbit +[@dupondje]: https://github.com/dupondje +[@emontnemery]: https://github.com/emontnemery +[@engrbm87]: https://github.com/engrbm87 +[@erwindouna]: https://github.com/erwindouna +[@frenck]: https://github.com/frenck +[@janiversen]: https://github.com/janiversen +[@jbouwh]: https://github.com/jbouwh +[@jimmyd-be]: https://github.com/jimmyd-be +[@jjlawren]: https://github.com/jjlawren +[@joostlek]: https://github.com/joostlek +[@jpbede]: https://github.com/jpbede +[@jrieger]: https://github.com/jrieger +[@klaasnicolaas]: https://github.com/klaasnicolaas +[@lellky]: https://github.com/lellky +[@mdunda]: https://github.com/mdunda +[@mib1185]: https://github.com/mib1185 +[@mill1000]: https://github.com/mill1000 +[@nmaggioni]: https://github.com/nmaggioni +[@scop]: https://github.com/scop +[@sergeymaysak]: https://github.com/sergeymaysak +[@starkillerOG]: https://github.com/starkillerOG +[@synesthesiam]: https://github.com/synesthesiam +[@tetele]: https://github.com/tetele +[@tjhorner]: https://github.com/tjhorner +[@tkdrob]: https://github.com/tkdrob +[@tronikos]: https://github.com/tronikos +[@tzahari]: https://github.com/tzahari +[@zxdavb]: https://github.com/zxdavb From 16f12f32b571dbdb184f0a5948f7b36dd0fa3d0c Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 27 Dec 2023 21:59:45 +0100 Subject: [PATCH 02/47] 2024.1: Beta release notes --- .../_posts/2024-01-03-release-20241.markdown | 277 +++- source/changelogs/core-2024.1.markdown | 1120 ++++++++++++++++- source/images/blog/2024-01/social.png | Bin 0 -> 72407 bytes 3 files changed, 1367 insertions(+), 30 deletions(-) create mode 100644 source/images/blog/2024-01/social.png diff --git a/source/_posts/2024-01-03-release-20241.markdown b/source/_posts/2024-01-03-release-20241.markdown index 7742788c732..b12161a4881 100644 --- a/source/_posts/2024-01-03-release-20241.markdown +++ b/source/_posts/2024-01-03-release-20241.markdown @@ -2,7 +2,7 @@ layout: post title: "2024.1: Beta release notes" description: "The beta release notes for Home Assistant 2024.1" -date: 2023-12-07 00:00:00 +date: 2023-12-27 00:00:00 date_formatted: "January 3, 2024" author: Franck Nijhof author_twitter: frenck @@ -13,7 +13,7 @@ categories: og_image: /images/blog/2024-01/social.png --- - + @@ -46,67 +46,254 @@ Enjoy the (beta) release! -- [Lorem ipsum](#lorem-ipsum) +- [Automation editor improvements](#automation-editor-improvements) +- [New entity type: Valve](#new-entity-type-valve) +- [Swappable](#swappable) +- [New card features](#new-card-features) - [Other noteworthy changes](#other-noteworthy-changes) - [New integrations](#new-integrations) - [Integrations now available to set up from the UI](#integrations-now-available-to-set-up-from-the-ui) - [Need help? Join the community!](#need-help-join-the-community) - [Backward-incompatible changes](#backward-incompatible-changes) -- [Farewell to the following](#farewell-to-the-following) - [All changes](#all-changes) -Don't forget to [join our release party live stream on YouTube](https://www.youtube.com/watch?v=#) +Don't forget to [join our release party live stream on YouTube](https://www.youtube.com/watch?v=dRwzSkKYIDs) 3 January 2024, at 12:00 PST / 21:00 CET! - + -## Lorem ipsum +## Automation editor improvements -Lorem ipsum +The automation editor got some love this release, with a lot of small +improvements to make it easier to use. + +If you start out with Home Assistant, visiting your automations page would +result in an empty page. This is not very helpful if you see this for the first +time. + +Instead, you are now greeted by the little automation robot and show +an explaination of what automations are, and reference to the documentation +that can help you get started. + +_TODO: Add screenshot_ + +Once you start create a new integration, you will be greeted by some new +terminolgy and description to help you understand what each section is about. + +Temporary images that needs to be replaced. + +Don't worry, we'll hide the help text once you added elements to the section. +The bigger change can be found in the buttons to add a trigger, condition or +action to your automation. + +The first thing to notice, is that the conditions and actions have a new +button next to them: "Add building block". Click this allows you to +add logicial elements to your automation, like "and", "or", "If", "choose", etc. + +These used to be mixed in with the conditions and actions, but now have their +own dedicated button. This makes it easier to find them, and declutters the +list of conditions and actions. + +_TODO: Add screenshot_ + +All these buttons, used to give a dropdown that allowed you to select the +type of trigger, condition or action you wanted to add. This dropdown has +been replaced by a new dialog, including descriptions for each item and search. + +These descriptions are important, as they help you understand what the +trigger, condition or action does, and what it is used for. + +_TODO: Add screenshot_ + +If you add an element, we will show you the most commonly used +trigger/condition/action first. All other are neatly categorized in the +other sections. + +Last, but not least, the "service calls" are now merged with all other actions. +Meaning, that if you add an action, you see all actions, including service +calls. They are neatly grouped by entity type and the integration providing them, +provide the descriptions on what they do, and are searchable as well. + +_TODO: Add screenshot_ + +## Description & due support for todo list items + +This feature was already hinted in the last release, but now it is here! + +You can add due dates and description to each item in your todo list (if +supported by the integration of course). + +Temporary images that needs to be replaced. + +Temporary images that needs to be replaced. + +## New entity type: Valve + +A brand new entity type has been added to Home Assistant: Valve! + +This entity type can be used by integrations to expose valves, like for example +a valve on a radiator, pool or sprinkler system. + +_TODO: Add screenshot_ + +Currently, the Shelly integration supports it and now provides an `valve` entity +for the Valve addon for Shelly Gas. Additionally, support for it has been +added to MQTT, and the valve entities also work with Amazon Alexa +and Google Assistant. + +## Swappable current/target on thermostat & humidifier cards + +By popular demand, the thermostat and humidifier cards now support setting +current temperature/humidity as the primary information to show in the +card. + +Enabling this option, will result in the target temperature/humidity to be +swapped. + +Temporary images that needs to be replaced. + +## New card features + +Last year, we have seen many new features added to the cards, so let's start +the new year with some more! + +@Quentame added the climate fan mode card feature feature. This feature can be +used with both the thermostat and the climate card. + +Temporary images that needs to be replaced. + +Also new, the update actions card feature. This addition by @piitaya allows +you to add buttons to a card that can trigger update actions when pressed. + +Temporary images that needs to be replaced. ## Other noteworthy changes There are many more improvements in this release; here are some of the other noteworthy changes this release: -- Lorem ipsum, thanks [@frenck]! - -[@frenck]: https://github.com/frenck +- Move cloud stt engine to config entry ([@MartinHjelmare] - [#99608]) +- Add support for Shelly Gen3 devices ([@bieniu] - [#104874]) +- Add consider home interval to ping ([@jpbede] - [#104881]) +- Add preset modes to ESPHome fan entities ([@mill1000] - [#103781]) +- Add calendar entity to Radarr ([@tkdrob] - [#79077]) +- Add support for Happy Eyeballs to homekit_controller ([@bdraco] - [#105454]) +- Add France to picnic countries ([@slhad] - [#105722]) +- Rename zamg to GeoSphere Austria ([@killer0071234] - [#105494]) +- Make the minimum number of samples used by the trend sensor configurable ([@jpbede] - [#101102]) +- Add new price sensors with API token access to pvpc hourly pricing ([@azogue] - [#85769]) +- Add Starline Service Mode switch ([@Anonym-tsk] - [#105741]) +- Add Energyzero get_gas_prices and get_energy_price services ([@iamrgroot] - [#101374]) +- Add subwoofer crossover support to Sonos Amp devices ([@jjlawren] - [#106290]) +- Add alarm platform to Comelit ([@chemelli74] - [#104718]) +- Add Support for SleepIQ Foot Warmers ([@kbickar] - [#105931]) ## New integrations We welcome the following new integrations in this release: +- **[A. O. Smith]**, added by [@bdr99]
+ Integrate and control your A. O. Smith water heater. +- **[Blue Current]**, added by [@Floris272]
+ Monitor your Blue Current EV charger charge point(s). +- **[DROP]**, added by [@pfrazer]
+ Manage your DROP Smart Water System with Home Assistant. - **[Flexit BACnet]**, added by [@lellky]
Control and monitor your Flexit Nordic series air handling units. - **[Holiday]**, added by [@jrieger]
Add holiday calendars to Home Assistant for powering automations. +- **[Midea CCM15 AC Controller]**, added by [@ocalvo]
+ Use your AC connected to an Midea CCM15 AC Controller. +- **[OSO Energy]**, added by [@osohotwateriot]
+ Use your OSO Energy water heater with Home Assistant. +- **[Sun WEG]**, added by [@rokam]
+ Collect and monitor energy production data from your Sun WEG inverter. +- **[Tailwind]**, added by [@frenck]
+ Operate your garage door openers connected to a Tailwind smart garage door controller. +- **[Tessie]**, added by [@Bre77]
+ Integrate, monitor and control your Tesla vehicle connected to the Tessie platform. +- **[Refoss]**, added by [@ashionky]
+ Use your Refoss smart devices directly with Home Assistant. +- **[Valve]**, added by [@cibernox]
+ An entity type for valves, which can be used by integrations to expose valves. +- **[Vogel's MotionMount]**, added by [@RJPoelstra]
+ Control the position of your Vogel's MotionMount TV mount. +[@ashionky]: https://github.com/ashionky +[@bdr99]: https://github.com/bdr99 +[@Bre77]: https://github.com/Bre77 +[@cibernox]: https://github.com/cibernox +[@Floris272]: https://github.com/Floris272 +[@frenck]: https://github.com/frenck [@jrieger]: https://github.com/jrieger [@lellky]: https://github.com/lellky +[@ocalvo]: https://github.com/ocalvo +[@osohotwateriot]: https://github.com/osohotwateriot +[@pfrazer]: https://github.com/pfrazer +[@RJPoelstra]: https://github.com/RJPoelstra +[@rokam]: https://github.com/rokam +[A. O. Smith]: /integrations/aosmith +[Blue Current]: /integrations/blue_current +[DROP]: /integrations/drop [Flexit BACnet]: /integrations/flexit_bacnet [Holiday]: /integrations/holiday +[Midea CCM15 AC Controller]: /integrations/ccm15 +[OSO Energy]: /integrations/osoenergy +[Refoss]: /integrations/refoss +[Sun WEG]: /integrations/sunweg +[Tailwind]: /integrations/tailwind +[Tessie]: /integrations/tessie +[Valve]: /integrations/valve +[Vogel's MotionMount]: /integrations/motionmount This release also has a new virtual integration. Virtual integrations are stubs that are handled by other (existing) integrations to help with findability. The following virtual integrations have been added: +- **[AEP Ohio]**, provided by [Opower] +- **[AEP Texas]**, provided by [Opower] +- **[Appalachian Power]**, provided by [Opower] - **[Fujitsu anywAIR]**, provided by [Advantage Air] +- **[Indiana Michigan Power]**, provided by [Opower] +- **[Kentucky Power]**, provided by [Opower] +- **[Public Service Company of Oklahoma (PSO)]**, provided by [Opower] - **[Seattle City Light]**, provided by [Opower] +- **[Southwestern Electric Power Company (SWEPCO)]**, provided by [Opower] [Advantage Air]: /integrations/advantage_air +[AEP Ohio]: /integrations/aepohio +[AEP Texas]: /integrations/aeptexas +[Appalachian Power]: /integrations/appalachianpower [Fujitsu anywAIR]: /integrations/fujitsu_anywair +[Indiana Michigan Power]: /integrations/indianamichiganpower +[Kentucky Power]: /integrations/kentuckypower [Opower]: /integrations/opower +[Public Service Company of Oklahoma (PSO)]: /integrations/psoklahoma [Seattle City Light]: /integrations/scl +[Southwestern Electric Power Company (SWEPCO)]: /integrations/swepco ## Integrations now available to set up from the UI The following integrations are now available via the Home Assistant UI: -- **[Lorem ipsum]**, done by [@frenck] +- **[Netgear LTE]**, done by [@tkdrob] +- **[StreamLabs]**, done by [@joostlek] +- **[Suez Water]**, done by [@joostlek] +- **[Swiss public transport]**, done by [@miaucl] +- **[System Monitor]**, done by [@gjohansson-ST] +- **[Trend]**, done by [@jpbede] -[@frenck]: https://github.com/frenck -[Lorem ipsum]: /integrations/lorem_ipsum +[@gjohansson-ST]: https://github.com/gjohansson-ST +[@joostlek]: https://github.com/joostlek +[@jpbede]: https://github.com/jpbede +[@miaucl]: https://github.com/miaucl +[@tkdrob]: https://github.com/tkdrob +[Netgear LTE]: /integrations/netgear_lte +[StreamLabs]: /integrations/streamlabswater +[Suez Water]: /integrations/suez_water +[Swiss public transport]: /integrations/swiss_public_transport +[System Monitor]: /integrations/systemmonitor +[Trend]: /integrations/trend ## Need help? Join the community! @@ -151,24 +338,64 @@ it is identical to omitting it: `swap:`. {% enddetails %} +{% details "PrusaLink" %} + +- The printer state now contains several new statuses, most importantly + "attention" which always needs your invention. +- Firmware 4.7.0 is now the minimum version for Prusa XL and MK4. +- Firmware 5.1.0 is now the minimum version for Prusa Mini since 4.7.x and 5.0.x + aren't available for the Mini + +([@Skaronator] - [#103396]) ([documentation](/integrations/prusalink)) + +[@Skaronator]: https://github.com/Skaronator +[#103396]: https://github.com/home-assistant/core/pull/103396 + +{% enddetails %} + +{% details "Reolink" %} + +The Reolink `Infra red lights in night mode` entity has been migrated from +the `light` to the `switch` domain. + +This means the entity ID also changed and automations and dashboards may need +to be adjusted to use the new entity ID. + +If you want to go back to the light domain, use the +[switch_as_x "Show as" option](/integrations/switch_as_x/#change-device-type-of-a-switch-from-the-existing-entity) +on the new `Infra red lights in night mode` switch entity and select light. + +([@starkillerOG] - [#104713]) ([documentation](/integrations/reolink)) + +[@starkillerOG]: https://github.com/starkillerOG +[#105916]: https://github.com/home-assistant/core/pull/105916 + +{% enddetails %} + +{% details "Shelly" %} + +The minimum supported firmware version for generation 1 devices is 1.11.0 (2021-07-15). +The minimum supported firmware version for generation 2 devices is 1.0.0 (2023-08-03). + +You must update your devices to the firmware versions listed or newer. + +([@bieniu] - [#105384]) ([documentation](/integrations/shelly)) + +[@bieniu]: https://github.com/bieniu +[#105384]: https://github.com/home-assistant/core/pull/105384 + +{% enddetails %} + If you are a custom integration developer and want to learn about breaking changes and new features available for your integration: Be sure to follow our [developer blog][devblog]. The following are the most notable for this release: -- [Lorem ipsum](https://developers.home-assistant.io/blog) +- [Changes to EntityDescription data classes](https://developers.home-assistant.io/blog/2023/12/11/entity-description-changes/) +- [Config entry now supports minor versions](https://developers.home-assistant.io/blog/2023/12/18/config-entry-minor-version/) +- [Deprecated constants create a log entry](https://developers.home-assistant.io/blog/2023/12/19/constant-deprecation/) [devblog]: https://developers.home-assistant.io/blog/ -## Farewell to the following - -The following integrations are also no longer available as of this release: - -- **Lorem ipsum** has been removed. Lorem slipsum might be a good replacement. - ([@frenck] - [#12345]) - -[@frenck]: https://github.com/frenck -[#12345]: https://github.com/home-assistant/core/pull/12345 - ## All changes Of course, there is a lot more in this release. You can find a list of diff --git a/source/changelogs/core-2024.1.markdown b/source/changelogs/core-2024.1.markdown index ea34848d0c8..c4f0293cf4e 100644 --- a/source/changelogs/core-2024.1.markdown +++ b/source/changelogs/core-2024.1.markdown @@ -7,7 +7,7 @@ replace_regex: \s\(\[?[a-z0-9\-\s_]+\]?\)$ These are all the changes included in the Home Assistant Core 2024.1 release. For a summary in a more readable format: -[Release notes blog for this release](/blog/2023/12/07/release-20241/). +[Release notes blog for this release](/blog/2023/12/27/release-20241/). ## All changes @@ -49,7 +49,6 @@ For a summary in a more readable format: - Add MELCloud token refresh upon firmware upgrade ([@erwindouna] - [#104391]) - Refactor bluetooth scanners for better seperation of concerns ([@bdraco] - [#104909]) - Bump python-holidays to 0.37 ([@jrieger] - [#104937]) -- Bump zeroconf to 0.128.0 ([@bdraco] - [#104936]) - Remove CONF_PRECISION remainder from dsmr ([@jbouwh] - [#104919]) - Add Holiday integration ([@jrieger] - [#103795]) - Bump bluetooth-data-tools to 1.17.0 ([@bdraco] - [#104935]) @@ -113,15 +112,542 @@ For a summary in a more readable format: - Add preset modes to ESPHome fan entities ([@mill1000] - [#103781]) - Modernize and cleanup trend tests ([@jpbede] - [#105010]) - Add Modbus fan speed support ([@cian] - [#104577]) -- Expose todo entities to Assist by default ([@synesthesiam] - [#105150]) - Add extra tests for HomeWizard for unsupported entity creation ([@DCSBL] - [#105149]) - Bump actions/setup-python from 4.8.0 to 5.0.0 (@dependabot - [#105193]) - Use brightness scaling util in HomeWizard Number entity ([@DCSBL] - [#105147]) - Add custom services for renson fans ([@jimmyd-be] - [#94497]) - Add Seattle City Light virtual integration via Opower ([@dewdropawoo] - [#104997]) +- Bump easyenergy lib to v2.1.0 ([@klaasnicolaas] - [#105224]) +- Bump energyzero lib to v2.1.0 ([@klaasnicolaas] - [#105228]) +- Migrate auth tests to use freezegun ([@jpbede] - [#105243]) +- Use freezegun in cert_expiry tests ([@jpbede] - [#105125]) +- Migrate Gree to has entity name ([@joostlek] - [#104739]) +- Migrate non-component tests to use freezegun/freezer ([@jpbede] - [#105142]) +- Add Wyoming satellite audio settings ([@synesthesiam] - [#105261]) +- Add OSO Energy integration ([@osohotwateriot] - [#70365]) +- Bump actions/stale from 8.0.0 to 9.0.0 (@dependabot - [#105275]) +- Bump github/codeql-action from 2.22.8 to 2.22.9 (@dependabot - [#105274]) +- Bump habluetooth to 0.10.0 ([@bdraco] - [#105118]) +- Adjust stale bot policy for PRs ([@frenck] - [#105280]) +- Remove workaround for default lock code in Matter ([@oyvindwe] - [#105173]) +- Update yarl to 1.9.4 ([@frenck] - [#105282]) +- Replace apcaccess dependency with aioapcaccess in apcupsd ([@yuxincs] - [#104571]) +- Migrate samsungtv tests to use freezegun ([@jpbede] - [#105286]) +- Add support for accessing Squeezebox over over https ([@rajlaud] - [#95088]) +- Add A. O. Smith integration ([@bdr99] - [#104976]) +- Migrate homeassistant component tests to use freezegun ([@jpbede] - [#105333]) +- Add myself as code owner for co2signal ([@VIKTORVAV99] - [#105302]) +- Replace aiohttp mock with patch in Advantage Air ([@Bre77] - [#104932]) +- Fix SSLCipherList typing error in IMAP coordinator ([@vexofp] - [#105362]) +- Sun WEG integration ([@rokam] - [#88272]) +- Migrate template tests to use freezegun ([@jpbede] - [#105341]) +- Make network fixture scoped to session to speed up tests ([@bdraco] - [#105353]) +- Migrate gree tests to use freezegun ([@jpbede] - [#105340]) +- Fix the ruff-format error ([@Bre77] - [#105376]) +- Update freezegun to 1.3.1 ([@cdce8p] - [#105377]) +- Migrate unifi tests to use freezegun ([@jpbede] - [#105343]) +- Add data descriptions to Reolink ([@starkillerOG] - [#105298]) +- Bump `aioshelly` to version 7.0.0 ([@bieniu] - [#105384]) +- Avoid ffmpeg subprocess for many component tests ([@bdraco] - [#105354]) +- Migrate time_date tests to use freezegun ([@jpbede] - [#105409]) +- Prevent duplicate default SSLContext instances ([@vexofp] - [#105348]) +- Remove zwave_js device on device reset ([@raman325] - [#104291]) +- Accept HTTP 200 through 206 as success for RESTful Switch ([@vexofp] - [#105358]) +- Add Tessie Integration ([@Bre77] - [#104684]) +- Migrate roku tests to use freezegun ([@jpbede] - [#105418]) +- Make API init async in Minecraft Server ([@elmurato] - [#105403]) +- Add reauth to Tessie ([@Bre77] - [#105419]) +- Migrate mqtt tests to use freezegun ([@jpbede] - [#105414]) +- Improve Amazon Alexa endpoint validation ([@frenck] - [#105287]) +- Add reauth to A. O. Smith integration ([@bdr99] - [#105320]) +- Bump pylitejet to v0.6.0 ([@joncar] - [#105472]) +- Migrate tag & tts tests to use freezegun ([@jpbede] - [#105411]) +- Migrate octoprint tests to use freezegun ([@jpbede] - [#105408]) +- Migrate sonarr tests to use freezegun ([@jpbede] - [#105410]) +- Bump python-holidays to 0.38 ([@jrieger] - [#105482]) +- Make Workday UI setup nicer ([@gjohansson-ST] - [#105407]) +- Bump openai end switch from dall-e-2 to dall-e-3 ([@Shulyaka] - [#104998]) +- Follow Alpine 3.18 raspberrypi package updates ([@agners] - [#105486]) +- Reduce modbus validator for "swap" (remove special handling) ([@janiversen] - [#105021]) +- Improve test of config entry store ([@emontnemery] - [#105487]) +- Update typing-extensions to 4.9.0 ([@cdce8p] - [#105490]) +- Correctly report unavailable battery for value 255 of percentage ([@elupus] - [#104566]) +- Make it possible to inherit EntityDescription in frozen and mutable dataclasses ([@emontnemery] - [#105211]) +- Add typing in Melcloud config flow ([@erwindouna] - [#105510]) +- Relocate Bluetooth manager to habluetooth library ([@bdraco] - [#105110]) +- Add config flow to Suez water ([@joostlek] - [#104730]) +- Add Fastdotcom DataUpdateCoordinator ([@erwindouna] - [#104839]) +- Add support for Shelly Gen3 devices ([@bieniu] - [#104874]) +- Remove unneeded class _EntityDescriptionBase ([@emontnemery] - [#105518]) +- Improve tests in Tessie ([@Bre77] - [#105430]) +- Updates V2C sensor icons ([@dgomes] - [#105534]) +- Bump sigstore/cosign-installer from 3.2.0 to 3.3.0 (@dependabot - [#105537]) +- Bump anyio to 4.1.0 ([@bdraco] - [#105529]) +- Update stale doc strings in entity platform tests ([@jbouwh] - [#105526]) +- Migrate device_sun_light_trigger tests to use freezegun ([@jpbede] - [#105520]) +- Migrate geonetnz_* tests to use freezegun ([@jpbede] - [#105521]) +- Bump bluetooth libraries ([@bdraco] - [#105522]) +- Add minor version to config entries ([@emontnemery] - [#105479]) +- Add Fast.com Device Info ([@erwindouna] - [#105528]) +- Add Tado error handling to fetching devices ([@erwindouna] - [#105546]) +- Patch aiohttp server app router freeze in tests ([@MartinHjelmare] - [#105555]) +- Add Suez Water to strict typing ([@joostlek] - [#105559]) +- Use mocked entity platform for lock service tests ([@jbouwh] - [#105020]) +- Add Airvisual pro to strict typing ([@joostlek] - [#105568]) +- Add support for Happy Eyeballs to homekit_controller ([@bdraco] - [#105454]) +- Bump dbus-fast to 2.21.0 ([@bdraco] - [#105536]) +- Bump aiohomekit to 3.1.0 ([@bdraco] - [#105584]) +- Bump aioesphomeapi to 20.0.0 ([@bdraco] - [#105586]) +- Migrate homematicip_cloud tests to use freezegun ([@jpbede] - [#105592]) +- Bump PyTado to 0.17.0 ([@erwindouna] - [#105573]) +- Add Apprise to strict typing ([@joostlek] - [#105575]) +- Add Aranet to strict typing ([@joostlek] - [#105577]) +- Add Android IP webcam to strict typing ([@joostlek] - [#105570]) +- Add Fastdotcom service ([@erwindouna] - [#105553]) +- Improve FrozenOrThawed ([@emontnemery] - [#105541]) +- Refactor all Bluetooth scanners to inherit from BaseHaRemoteScanner ([@bdraco] - [#105523]) +- Add Adax to strict typing ([@joostlek] - [#105562]) +- Mark more entities secondary on Fully Kiosk Browser ([@frenck] - [#105595]) +- Bump `brother` library, use `pysnmp-lextudio` with SNMP integration ([@bieniu] - [#105591]) +- Bump aioesphomeapi to 20.1.0 ([@bdraco] - [#105602]) +- Add sensor platform to A. O. Smith integration ([@bdr99] - [#105604]) +- Bump aioesphomeapi to 21.0.0 ([@bdraco] - [#105609]) +- Bump github/codeql-action from 2.22.9 to 2.22.10 (@dependabot - [#105620]) +- Add diagnostics platform to BraviaTV ([@bieniu] - [#105603]) +- Refactor Bluetooth scanners to avoid the need to pass a callback ([@bdraco] - [#105607]) +- Allow inheriting `FrozenOrThawed` with custom init ([@emontnemery] - [#105624]) +- Fix entity descriptions in philips_js ([@emontnemery] - [#105625]) +- Reduce code duplication in Suez config flow ([@joostlek] - [#105558]) +- Use issue registry fixture ([@joostlek] - [#105633]) +- Add diagnostics download to goodwe integration ([@mletenay] - [#102928]) +- Improve cloud http api tests ([@MartinHjelmare] - [#105610]) +- Clean cloud client fixture from cloud http api tests ([@MartinHjelmare] - [#105649]) +- Deduplicate constants A-D ([@joostlek] - [#105638]) +- Migrate demo test to use freezegun ([@jpbede] - [#105644]) +- Fix goodwe tests ([@emontnemery] - [#105653]) +- Avoid mutating entity descriptions in efergy ([@emontnemery] - [#105626]) +- Avoid mutating entity descriptions in lidarr ([@emontnemery] - [#105628]) +- Avoid mutating entity descriptions in airthings_ble ([@emontnemery] - [#105627]) +- Add country code constant ([@joostlek] - [#105640]) +- Avoid mutating entity descriptions in melcloud ([@emontnemery] - [#105629]) +- Deduplicate constants E-Z ([@joostlek] - [#105657]) +- Add volume_step property to MediaPlayerEntity ([@emontnemery] - [#105574]) +- Keep capabilities up to date in the entity registry ([@emontnemery] - [#101748]) +- Migrate homekit_controller tests to use freezegun ([@jpbede] - [#105646]) +- Use Textselector in Trafikverket Camera ([@gjohansson-ST] - [#105677]) +- Set volume_step in sonos media_player ([@emontnemery] - [#105671]) +- Add error translations for Sensibo ([@gjohansson-ST] - [#105600]) +- Add error translations to Yale Smart Living ([@gjohansson-ST] - [#105678]) +- Set volume_step in enigma2 media_player ([@emontnemery] - [#105669]) +- Bump zeroconf to 0.129.0 ([@bdraco] - [#105701]) +- Remove context_recent_time property from entity base class ([@emontnemery] - [#105652]) +- Remove device_state_attributes property from entity base class ([@emontnemery] - [#105650]) +- Bump iammeter to 0.2.1 ([@yangbo1979] - [#95885]) +- Remove cloud details from assist pipeline ([@MartinHjelmare] - [#105687]) +- Allow multiple configs for srp energy ([@briglx] - [#96573]) +- Avoid mutating entity descriptions in efergy tests ([@emontnemery] - [#105717]) +- Replace Starline horn switch with button ([@Anonym-tsk] - [#105728]) +- Bump bluetooth-data-tools to 1.18.0 ([@bdraco] - [#105685]) +- Bump sunweg to 2.0.1 ([@rokam] - [#105613]) +- Add France to picnic countries ([@slhad] - [#105722]) +- Small speed up to data entry flow steps ([@bdraco] - [#105713]) +- Migrate ESPHome bleak implementation to bleak-esphome library ([@bdraco] - [#105611]) +- Include Envoy firmware version in Enphase diagnostics ([@cgarwood] - [#105742]) +- Bump bleak-esphome to 0.3.0 ([@bdraco] - [#105748]) +- Bump pytrafikverket to 0.3.9.2 ([@gjohansson-ST] - [#105752]) +- Bump brottsplatskartan 1.0.5 ([@gjohansson-ST] - [#105759]) +- Refactor cloud assist pipeline ([@MartinHjelmare] - [#105723]) +- Set volume_step in monoprice media_player ([@emontnemery] - [#105670]) +- Set volume_step in bluesound media_player ([@emontnemery] - [#105672]) +- Set volume_step in aquostv media_player ([@emontnemery] - [#105665]) +- Set volume_step in clementine media_player ([@emontnemery] - [#105666]) +- Set volume_step in cmus media_player ([@emontnemery] - [#105667]) +- Avoid mutating entity descriptions in solaredge tests ([@emontnemery] - [#105718]) +- Fix mqtt tests modifying globals ([@jbouwh] - [#105774]) +- Partly migrate Plex to has entity name ([@joostlek] - [#98841]) +- Bump opower to 0.0.41 ([@tronikos] - [#105791]) +- Add data descriptions to MQTT config flow. ([@jbouwh] - [#105301]) +- Fix translation keys in Tessie ([@Bre77] - [#105824]) +- Quality fixes for Tessie ([@Bre77] - [#105838]) +- Add Binary Sensor platform to Tessie ([@Bre77] - [#105421]) +- Bump soco to 0.30.0 ([@jjlawren] - [#105823]) +- Add Unifi device state for additional diagnostics ([@JosephBlock] - [#105138]) +- Reduce overhead to connect dispatcher ([@bdraco] - [#105715]) +- Allow inheriting base component entity descriptions in frozen dataclasses ([@emontnemery] - [#105512]) +- Update pre-commit to 3.6.0 ([@cdce8p] - [#105856]) +- Update coverage to 7.3.3 ([@cdce8p] - [#105855]) +- Update feedparser to 6.0.11 ([@cdce8p] - [#105857]) +- Ensure bluetooth auto recovery does not run in tests ([@bdraco] - [#105841]) +- Bump glances-api to 0.5.0 ([@cohenchris] - [#105813]) +- Bump bthome_ble to 3.3.1 ([@Ernst79] - [#105834]) +- Bump qingping_ble to 0.9.0 ([@Ernst79] - [#105876]) +- Fix cloud tests doing socket I/O ([@bdraco] - [#105874]) +- Bump aiodiscover to 1.6.0 ([@bdraco] - [#105885]) +- Bump bluetooth-adapters to 0.16.2 ([@bdraco] - [#105878]) +- Refactor ESPHome Bluetooth connection logic to prepare for esphome-bleak ([@bdraco] - [#105747]) +- Migrate file test to use freezegun ([@jpbede] - [#105892]) +- Bump zeroconf to 0.130.0 ([@bdraco] - [#105868]) +- Bump bleak-esphome to 0.4.0 ([@bdraco] - [#105909]) +- Remove bluetooth-data-tools dep from ESPHome ([@bdraco] - [#105912]) +- Use library constants instead of literals in Evohome ([@zxdavb] - [#105039]) +- Bump lru-dict to 1.3.0 ([@bdraco] - [#105914]) +- Add first TypeVarTuple annotations ([@cdce8p] - [#105379]) +- Implement Review Feedback for Tessie ([@Bre77] - [#105937]) +- Bump pyasuswrt to 0.1.21 ([@ollo69] - [#105922]) +- Bump asyncsleepiq to v1.4.0 ([@kbickar] - [#105939]) +- Address late review comments for A. O. Smith reauth ([@bdr99] - [#105941]) +- Add Tailwind integration ([@frenck] - [#105926]) +- Add prices service calls for easyEnergy ([@klaasnicolaas] - [#105175]) +- Add AndroidTV remote to strict typing ([@joostlek] - [#105571]) +- Add Tailwind zeroconf discovery ([@frenck] - [#105949]) +- Set volume_step in frontier_silicon media_player ([@emontnemery] - [#105953]) +- Reolink change ir to switch ([@starkillerOG] - [#105916]) +- Add reauth support to Tailwind ([@frenck] - [#105959]) +- Bump opower to 0.1.0 ([@tronikos] - [#105957]) +- Improve rfxtrx typing ([@cdce8p] - [#105966]) +- Fix easyenergy async_setup_services declaration ([@edenhaus] - [#105947]) +- Avoid mutating entity descriptions in solaredge ([@emontnemery] - [#105974]) +- Avoid mutating entity descriptions in tomorrowio ([@emontnemery] - [#105975]) +- Avoid mutating entity descriptions in onewire ([@emontnemery] - [#105970]) +- Avoid mutating entity descriptions in radarr ([@emontnemery] - [#105972]) +- Avoid mutating entity descriptions in ovo_energy ([@emontnemery] - [#105971]) +- Fix typo in deprecated comment ([@mkmer] - [#105969]) +- Add diagnostics platform to Tailwind ([@frenck] - [#105965]) +- Bump google-generativeai to 0.3.1 ([@tronikos] - [#105783]) +- Remove HaAsyncServiceBrowser from zeroconf ([@bdraco] - [#105881]) +- Add button platform to Tailwind integration ([@frenck] - [#105961]) +- Migrate directv test to use freezegun ([@jpbede] - [#105894]) +- Add significant Change support for camera ([@mib1185] - [#105866]) +- Improve logging util typing ([@cdce8p] - [#105968]) +- Allow step size any for number selector in slider mode ([@emontnemery] - [#105978]) +- Rename zamg to GeoSphere Austria ([@killer0071234] - [#105494]) +- Add DHCP discovery to Tailwind ([@frenck] - [#105981]) +- Improve Transmission Entity description class ([@engrbm87] - [#105924]) +- Avoid mutating entity descriptions in screenlogic ([@emontnemery] - [#105983]) +- Add Valve integration ([@cibernox] - [#102184]) +- Avoid mutating entity descriptions in unifiprotect ([@emontnemery] - [#105976]) +- Avoid mutating entity descriptions in sunweg ([@emontnemery] - [#105982]) +- Add new price sensors with API token access to pvpc hourly pricing ([@azogue] - [#85769]) +- Add PLC PHY rates as sensor to devolo Home Network ([@Shutgun] - [#87039]) +- Set aiohttp shutdown_timeout on AppRunner instead of TCPSite ([@cdce8p] - [#105973]) +- Add significant change helper check_valid_float ([@mib1185] - [#106005]) +- Remove leftover logging in onewire ([@epenet] - [#105986]) +- Avoid mutating entity descriptions in screenlogic ([@emontnemery] - [#106022]) +- Fix entity descriptions in upnp ([@emontnemery] - [#106023]) +- Avoid mutating entity descriptions in sunweg tests ([@emontnemery] - [#106024]) +- Update enigma2 codeowners ([@autinerd] - [#106000]) +- Bump Roborock to 0.38.0 ([@Lash-L] - [#106025]) +- Upgrade gardena_bluetooth to 1.4.1 ([@elupus] - [#106017]) +- Freeze integration entity descriptions ([@emontnemery] - [#105984]) +- Clean up device registry for doors that no longer exist in Aladdin Connect ([@mkmer] - [#99743]) +- Fix opower for AEP utilities ([@tronikos] - [#106010]) +- Correct logic in honeywell for cleaning up stale devices ([@mkmer] - [#106018]) +- Add significant Change support for alarm control panel ([@mib1185] - [#106021]) +- Bump devolo_home_control_api to 0.18.3 ([@Shutgun] - [#106035]) +- Remove ipma entity description required fields mixin ([@jpbede] - [#106039]) +- Remove gree switch entity description required fields mixin ([@jpbede] - [#105849]) +- Add significant Change support for water heater ([@mib1185] - [#106003]) +- Add binary sensor platform to Tailwind integration ([@frenck] - [#106033]) +- Remove sun entity description required fields mixin ([@jpbede] - [#105848]) +- Add myself as code owner for rest_command ([@jpbede] - [#106047]) +- Use freezegun in ign_sismologia test ([@jpbede] - [#106051]) +- Use freezegun in nsw_rural_fire_service_feed test ([@jpbede] - [#106050]) +- Use freezegun in qld_bushfire test ([@jpbede] - [#106049]) +- Use freezegun in image_upload test ([@jpbede] - [#106045]) +- Add significant Change support for climate ([@mib1185] - [#106020]) +- Use check_valid_float helper in significant change support of sensor and weather ([@mib1185] - [#106013]) +- Workday create repair if named holiday missing ([@gjohansson-ST] - [#101201]) +- Deprecate binary sensor device class constants ([@edenhaus] - [#105736]) +- Add cover platform to Tailwind integration ([@frenck] - [#106042]) +- Bump hass-nabucasa from 0.74.0 to 0.75.1 ([@ludeeus] - [#105958]) +- Update gotailwind to 0.2.2 ([@frenck] - [#106054]) +- Add dir_with_deprecated_constants function to deprecation helper ([@edenhaus] - [#106059]) +- Move common function for testing derepcation constants to util ([@edenhaus] - [#106063]) +- Upgrade Prusa Link to new Digest Authentication and /v1/ API ([@Skaronator] - [#103396]) +- Improve tests for easyEnergy ([@klaasnicolaas] - [#105989]) +- Deprecate deprecated automation constants ([@edenhaus] - [#106067]) +- Add valve support to switch_as_x ([@emontnemery] - [#105988]) +- Bump async-upnp-client to 0.38.0 ([@chishm] - [#105980]) +- Small cleanup in Tailwind ([@frenck] - [#106073]) +- Bump switchbot-api to 1.3.0 ([@raww] - [#105594]) +- Bump aioesphomeapi to 21.0.1 ([@bdraco] - [#106079]) +- Move shared enigma2 constants ([@autinerd] - [#106064]) +- Add MQTT valve platform ([@jbouwh] - [#105766]) +- Add Starline Service Mode switch ([@Anonym-tsk] - [#105741]) +- Use patch.dict in deprecation test "test_check_if_deprecated_constant" ([@edenhaus] - [#106117]) +- Add water_heater to alexa ([@jbouwh] - [#106011]) +- Deprecate deprecated remote constants ([@edenhaus] - [#106116]) +- Deprecate deprecated number constants ([@edenhaus] - [#106114]) +- Bump zeroconf to 0.131.0 ([@bdraco] - [#106037]) +- Deprecate deprecated fan constants ([@edenhaus] - [#106111]) +- Deprecate deprecated cover constants ([@edenhaus] - [#106098]) +- Deprecate deprecated humidifier constants ([@edenhaus] - [#106112]) +- Deprecate deprecated device tracker constants ([@edenhaus] - [#106099]) +- Deprecate deprecated lock constants ([@edenhaus] - [#106113]) +- Deprecate deprecated alarm control panel constants ([@edenhaus] - [#106058]) +- Move prusalink migration to async_migrate_entry and use a minor version bump ([@edenhaus] - [#106109]) +- Deprecate deprecated siren constants ([@edenhaus] - [#106121]) +- Improve error mqtt valve error logging ([@jbouwh] - [#106129]) +- Add note on overkiz measurement sensor fix ([@jbouwh] - [#105141]) +- Add water_heater to google_assistant ([@jbouwh] - [#105915]) +- Update Ruff to 0.1.8, avoid linter/formatter conflicts ([@scop] - [#106080]) +- Remove unneeded usage of run_callback_threadsafe in entity helper ([@bdraco] - [#106138]) +- Deprecate deprecated climate constants ([@edenhaus] - [#106096]) +- Deprecate deprecated sensor constants ([@edenhaus] - [#106120]) +- Break out the ESPHome Bluetooth scanner connection logic into bleak-esphome ([@bdraco] - [#105908]) +- Fix ESPHome Bluetooth diagnostics ([@bdraco] - [#106151]) +- Add climate platform to Tessie ([@Bre77] - [#105420]) +- Add switch platform to Tessie ([@Bre77] - [#106153]) +- Add virtual integrations for AEP utilities supported by opower ([@tronikos] - [#106146]) +- Add Select platform to Tessie ([@Bre77] - [#105423]) +- Update habluetooth to 2.0.0 ([@bdraco] - [#106145]) +- Bump SunWEG to 2.0.3 ([@rokam] - [#106135]) +- Refactor media_player test classes ([@emontnemery] - [#105630]) +- Bump bluetooth-data-tools to 1.19.0 ([@bdraco] - [#106156]) +- Add flags to EntityDescriptions in Tessie ([@Bre77] - [#105847]) +- Improve performance of dhcp integration client processing ([@bdraco] - [#106137]) +- Allow Fronius devices to be deleted ([@farmio] - [#106141]) +- Refactor ranging utils for mqtt cover ([@jbouwh] - [#105739]) +- Migrate google related tests to use freezegun ([@jpbede] - [#105552]) +- Fix typo's en and improve language on MQTT data descriptions ([@jbouwh] - [#106165]) +- Add update platform to Tessie ([@Bre77] - [#106093]) +- Remove warning message on BMW initialization ([@rikroe] - [#106169]) +- Make evohome strictly typed ([@zxdavb] - [#106012]) +- Remove gios sensor description required fields mixin ([@jpbede] - [#106174]) +- Move cloud stt engine to config entry ([@MartinHjelmare] - [#99608]) +- Improve entity tests ([@emontnemery] - [#106175]) +- Add Energyzero get_gas_prices and get_energy_price services ([@iamrgroot] - [#101374]) +- Bump pyvlx to 0.2.21 ([@DeerMaximum] - [#105800]) +- Improve performance of dhcp on high activity networks ([@bdraco] - [#105884]) +- Swiss public transport config flow ([@miaucl] - [#105648]) +- Bump httpx to 0.26.0 and httpcore to 1.0.2 ([@Shulyaka] - [#106194]) +- Update mypy to 1.8.0 ([@cdce8p] - [#106189]) +- Bump python-opendata-transport to 0.4.0 ([@miaucl] - [#106199]) +- Skip logging deprecated constant if the calling integration couldn't be indentified ([@edenhaus] - [#106181]) +- Fix lacrosse view sensor units ([@killercode] - [#106203]) +- Bump aiohttp-zlib-ng to 0.1.2 ([@bdraco] - [#106193]) +- Use call_soon_threadsafe in face processing of image_processing ([@jpbede] - [#106168]) +- Deprecate legacy_templates ([@edenhaus] - [#105556]) +- Add device tracker to Tessie ([@Bre77] - [#105428]) +- Add button platform to Tessie ([@Bre77] - [#106210]) +- Bump pylitejet to v0.6.2 ([@joncar] - [#106222]) +- Quality improvements for Tessie ([@Bre77] - [#106218]) +- Add lock platform to Tessie ([@Bre77] - [#106216]) +- Add cover platform to Tessie ([@Bre77] - [#105422]) +- Deprecate deprecated device_registry helper constants ([@edenhaus] - [#106227]) +- Deprecate deprecated water_heater constants ([@edenhaus] - [#106226]) +- Deprecate deprecated switch constants ([@edenhaus] - [#106225]) +- Increase version default timeout from 10 to 30 seconds ([@N3rdix] - [#106158]) +- Add number platform to Tessie ([@Bre77] - [#106205]) +- Add integration for Vogel's MotionMount ([@RJPoelstra] - [#103498]) +- Add media player platform to Tessie ([@Bre77] - [#106214]) +- Add valve support to Amazon Alexa ([@jbouwh] - [#106053]) +- Add Refoss integration ([@ashionky] - [#100573]) +- Add starline binary sensors ([@Anonym-tsk] - [#105724]) +- Add DROP integration ([@pfrazer] - [#104319]) +- Don't make huawei_lte entity classes dataclasses ([@emontnemery] - [#106160]) +- Update coverage to 7.3.4 ([@cdce8p] - [#106233]) +- Add consider home interval to ping ([@jpbede] - [#104881]) +- Update pytest warnings filter ([@cdce8p] - [#106234]) +- Return multiple trains in Trafikverket Train ([@gjohansson-ST] - [#106206]) +- Add location selector to Islamic prayer times ([@engrbm87] - [#105911]) +- Clean up swiss public transport ([@joostlek] - [#106245]) +- Add bluecurrent integration ([@Floris272] - [#82483]) +- Add full test coverage to Trafikverket Train ([@gjohansson-ST] - [#106247]) +- Log when swiss_public_transport loses connection ([@miaucl] - [#106200]) +- Add foscam coordinator ([@krmarien] - [#92665]) +- Add support for re-ordering Google Tasks ([@allenporter] - [#104769]) +- Add binary sensors to drop_connect integration ([@pfrazer] - [#106248]) +- Improve cloud binary sensor tests ([@MartinHjelmare] - [#106238]) +- Add support for caching entity properties ([@emontnemery] - [#100601]) +- Filter by supported features for todo services ([@bramkragten] - [#106241]) +- Reduce Life360 update time by fetching Places & Members in parallel ([@pnbruckner] - [#106277]) +- Add support for attribute caching to the humidifier platform ([@bdraco] - [#106271]) +- Add support for attribute caching to the number platform ([@bdraco] - [#106254]) +- Add subwoofer crossover support to Sonos Amp devices ([@jjlawren] - [#106290]) +- Add support for attribute caching to the update platform ([@bdraco] - [#106261]) +- Improve cloud system health tests ([@MartinHjelmare] - [#106235]) +- Fix flaky Tailwind tests by fixing via_device ([@frenck] - [#106294]) +- Deprecate deprecated camera constants ([@edenhaus] - [#106095]) +- Add significant Change support for humidifier ([@mib1185] - [#106015]) +- Reduce zeroconf matcher complexity ([@bdraco] - [#105880]) +- Bump github/codeql-action from 2.22.10 to 3.22.12 (@dependabot - [#106221]) +- Add support for attribute caching to the lock platform ([@bdraco] - [#106275]) +- Add support for attribute caching to the remote platform ([@bdraco] - [#106274]) +- Add support for attribute caching to the button platform ([@bdraco] - [#106259]) +- Add support for attribute caching to the text platform ([@bdraco] - [#106262]) +- Add support for attribute caching to ToggleEntity ([@bdraco] - [#106272]) +- Add support for attribute caching to the binary_sensor platform ([@bdraco] - [#106253]) +- Add support for attribute caching to the sensor platform ([@bdraco] - [#106252]) +- Add significant Change support for vacuum ([@mib1185] - [#106002]) +- Deprecate deprecated data entry flow constants ([@edenhaus] - [#106229]) +- Add support for attribute caching to the fan platform ([@bdraco] - [#106269]) +- Add diagnostics support to Tankerkoenig ([@mib1185] - [#106301]) +- Apply units of measure provided in API when available in LaCrosse View ([@doggkruse] - [#106299]) +- Rework entity description functions in Tessie ([@Bre77] - [#106287]) +- Fix mqtt valve is not resetting opening or closing state ([@jbouwh] - [#106240]) +- Restructure enigma2 integration to use async ([@autinerd] - [#104206]) +- Improve mikrotik error handling ([@Marco98] - [#106244]) +- Add switches to drop_connect integration ([@pfrazer] - [#106264]) +- Add valve platform support to google_assistant ([@jbouwh] - [#106139]) +- Fix feedreader date comparison to allow RSS entries with identical timestamps ([@mattmattmatt] - [#104925]) +- Add energy usage sensor to A. O. Smith integration ([@bdr99] - [#105616]) +- ISY994: remove reference to reload service ([@c0ffeeca7] - [#106302]) +- Add support for attribute caching to the cover platform ([@bdraco] - [#106268]) +- Add support for attribute caching to the alarm_control_panel platform ([@bdraco] - [#106265]) +- Add support for attribute caching to the light platform ([@bdraco] - [#106260]) +- Add support for attribute caching to the select platform ([@bdraco] - [#106255]) +- Improve typing on drop_connect switch entity description ([@jbouwh] - [#106314]) +- Add entity translations to Steamist ([@joostlek] - [#96182]) +- Update psutil to 5.9.7 ([@frenck] - [#106295]) +- Deprecate some deprecated const constants ([@edenhaus] - [#106230]) +- Add support for attribute caching to the switch platform ([@bdraco] - [#106258]) +- New integration Midea ccm15 climate ([@ocalvo] - [#94824]) +- Ensure MQTT attributes are bound to the respective platform entity ([@bdraco] - [#106316]) +- Add support for attribute caching to the climate platform ([@bdraco] - [#106266]) +- Update test data for screenlogic ([@dieselrabbit] - [#106325]) +- Use shorthand attributes in enigma2 ([@autinerd] - [#106318]) +- Remove unnecessary async_add_job in face processing of image_processing ([@jpbede] - [#106323]) +- Add support for attribute caching to the camera platform ([@bdraco] - [#106256]) +- Fix native_step in number not looking at _attr_native_step ([@bdraco] - [#106327]) +- Add 4 more entities in V2C Trydan EVSE ([@dgomes] - [#105531]) +- Add support for attribute caching to the event platform ([@bdraco] - [#106330]) +- Optimize use_device_name check in base entity class ([@bdraco] - [#106209]) +- Add support for attribute caching to the media_player platform ([@bdraco] - [#106257]) +- Add support for attribute caching to the image platform ([@bdraco] - [#106333]) +- Add support for attribute caching to the siren platform ([@bdraco] - [#106337]) +- Add support for attribute caching to the weather platform ([@bdraco] - [#106334]) +- Add support for attribute caching to the lawn_mower platform ([@bdraco] - [#106335]) +- Add support for attribute caching to the water_heater platform ([@bdraco] - [#106336]) +- Add support for attribute caching to the date platform ([@bdraco] - [#106338]) +- Add support for attribute caching to the time platform ([@bdraco] - [#106339]) +- Add support for attribute caching to the datetime platform ([@bdraco] - [#106340]) +- Add support for attribute caching to the todo platform ([@bdraco] - [#106341]) +- Add Airnow to strict typing ([@joostlek] - [#105566]) +- Add diagnostics to ccm15 ([@joostlek] - [#106329]) +- Add support for attribute caching to the vacuum platform ([@bdraco] - [#106332]) +- Bump openwebifpy to 4.0.2 ([@autinerd] - [#106345]) +- Bump temperusb to 1.6.1 ([@davet2001] - [#106346]) +- Add select platform to drop_connect integration ([@pfrazer] - [#106309]) +- Deprecate parameter "retries" in modbus ([@janiversen] - [#105024]) +- Split out shared screenlogic switch code ([@dieselrabbit] - [#106344]) +- Add missing sensors for Shelly Pro Dimmer 2PM ([@bieniu] - [#105008]) +- Add delay to manual refresh in Advantage Air ([@Bre77] - [#104918]) +- Add full coverage to Fast.com ([@gjohansson-ST] - [#105596]) +- Add data model to Tessie ([@Bre77] - [#106285]) +- Enable toggle on valve/cover start in google_assistant ([@jbouwh] - [#106378]) +- Use identity checks for sensor device class enums ([@bdraco] - [#106383]) +- Avoid clearing the attr cache in setter when nothing has changed ([@bdraco] - [#106384]) +- Bump getmac 0.9.4 ([@mari8i] - [#106321]) +- Add config flow to Netgear LTE ([@tkdrob] - [#93002]) +- Bump zwave-js-server-python to 0.55.1 ([@raman325] - [#105502]) +- Use shorthand attrs for more tplink light attributes ([@bdraco] - [#106399]) +- Add valve platform for Shelly Gas Valve ([@bieniu] - [#106087]) +- Cache media player url hashing ([@bdraco] - [#106400]) +- Avoid recreating a set each time sensor unit_of_measurement is called ([@bdraco] - [#106401]) +- Improve drop_connect typing ([@cdce8p] - [#106404]) +- Switch unifi_direct to external library ([@tofuSCHNITZEL] - [#105046]) +- Move cloud binary sensor to config entry ([@MartinHjelmare] - [#106409]) +- Fix pytest test collection warning ([@cdce8p] - [#106405]) +- Add alarm platform to Comelit ([@chemelli74] - [#104718]) +- Add config flow to System Monitor ([@gjohansson-ST] - [#104906]) +- Add missing translations to Tessie Button platform ([@Bre77] - [#106232]) +- Fix freeze entity description ([@chemelli74] - [#106418]) +- Use faster contains check in camera for stream feature ([@bdraco] - [#106429]) +- Add config flow to Streamlabs water ([@joostlek] - [#104962]) +- Add more binary sensors to Tessie ([@Bre77] - [#106212]) +- Add install to Tessie update platform ([@Bre77] - [#106352]) +- Use faster contains check in climate ([@bdraco] - [#106430]) +- Use faster contains check in fan ([@bdraco] - [#106431]) +- Add Support for SleepIQ Foot Warmers ([@kbickar] - [#105931]) +- Handle Auto Fan and MyFan in Advantage Air ([@Bre77] - [#95594]) +- Use faster contains check in media_player ([@bdraco] - [#106434]) +- Handle failed updates in Tessie ([@Bre77] - [#106450]) +- Move Trunks from Button to Cover in Tessie ([@Bre77] - [#106448]) +- Add names to all Tessie entities ([@Bre77] - [#106267]) +- Deprecate deprecated core constants ([@edenhaus] - [#106456]) +- Use faster contains check in vacuum ([@bdraco] - [#106437]) +- Use faster contains check in remote ([@bdraco] - [#106435]) +- Use faster contains check in update ([@bdraco] - [#106436]) +- Use faster contains check in humidifier ([@bdraco] - [#106433]) +- Add attr caching support to the geo_location platform ([@bdraco] - [#106432]) +- Improve cloud tts tests ([@MartinHjelmare] - [#106427]) +- Use faster contains check in water_heater ([@bdraco] - [#106438]) +- Raise HomeAssistantError if event is triggered with invalid event_type ([@jbouwh] - [#106357]) +- Use translation placeholders in Swiss public transport ([@joostlek] - [#106416]) +- Deprecate deprecated unit of measurement constants ([@edenhaus] - [#106455]) +- Raise ServiceValidationError on invalid select option ([@jbouwh] - [#106350]) +- Add qBittorrent torrent sensors ([@finder39] - [#105781]) +- Flip around Tailwind locked out binary sensor ([@frenck] - [#106457]) +- Remove IP / mDNS validation in airq integration setup ([@Sibgatulin] - [#106326]) +- Update quality scale for Aladdin ([@mkmer] - [#99342]) +- Revert "Raise HomeAssistantError if event is triggered with invalid event_type" ([@frenck] - [#106458]) +- Add error handling to Tailwind service methods ([@frenck] - [#106463]) +- Fix Comelit alarm state ([@chemelli74] - [#106466]) +- Fix update platform in Tessie ([@Bre77] - [#106465]) +- Mark Tailwind a platinum quality integration ([@frenck] - [#106468]) +- Bump millheater to 0.11.8 ([@Danielhiversen] - [#106464]) +- Add preselect_remember_me to `/auth/providers` ([@edenhaus] - [#106462]) +- Fix RainMachine bugs ([@kingy444] - [#106231]) +- Fix MQTT retained event messages should be discarded ([@jbouwh] - [#106425]) +- Add translation to ServiceValidationError in Lock ([@gjohansson-ST] - [#105746]) +- Add typing to config flow A ([@joostlek] - [#105721]) +- Add coordinator to Swiss public transport ([@miaucl] - [#106278]) +- Improve glances tests ([@engrbm87] - [#106402]) +- Add significant Change support for fan ([@mib1185] - [#105867]) +- Add significant Change support for media player ([@mib1185] - [#105999]) +- Add supports_response to ServiceRegistry.register() ([@rikroe] - [#106164]) +- Changed setup of easyEnergy services ([@klaasnicolaas] - [#106288]) +- Add translatable title to Persistent Notification ([@steffenrapp] - [#104661]) +- Allow clearing To-do list item extended fields ([@allenporter] - [#106208]) +- Fix Hydrawise watering time duration unit ([@dknowles2] - [#105919]) +- Revert "Add preselect_remember_me to `/auth/providers`" ([@frenck] - [#106472]) +- Fix roon volume truncation bug ([@pavoni] - [#105696]) +- Use entity descriptions in Netgear LTE ([@joostlek] - [#106414]) +- Adjust the GitHub config flow ([@ludeeus] - [#105295]) +- Bump PyViCare to 2.32.0 ([@CFenner] - [#106467]) +- Fix Generic Camera interval calculation ([@dschall] - [#105820]) +- Use snapshot assertion in homekit_controller diagnostics tests ([@jpbede] - [#105647]) +- Refactor Tado to use OAuth in the DeviceTracker ([@erwindouna] - [#102610]) +- Add config flow to trend ([@jpbede] - [#99761]) +- Implement mode validation in Climate entity component ([@gjohansson-ST] - [#105745]) +- Add device to swiss public transport ([@miaucl] - [#106475]) +- Jinja filter and function for `median` and `statistical_mode` ([@TheFes] - [#105554]) +- Remove initial entity update from swiss_public_transport ([@miaucl] - [#106478]) +- Remove hardcoded bits from LiteJet integration ([@joncar] - [#106281]) +- Delay all ZHA polling until initialization of entities has completed ([@dmulcahey] - [#105814]) +- Add Comelit alarm zones sensor ([@chemelli74] - [#106421]) +- Add significant Change support for number ([@mib1185] - [#105863]) +- Add more fine grained control over Matter server commissioning for the Companion apps ([@marcelveldt] - [#106237]) +- Add more Withings measurement sensors ([@joostlek] - [#105561]) +- Fix Starline attributes timezone ([@Anonym-tsk] - [#105645]) +- Match ZHA Custom ClusterHandler on a Custom Cluster using a unique id for the quirk ([@Caius-Bonus] - [#101709]) +- Add query type validation independent of declaration position for SQL ([@dougiteixeira] - [#105921]) +- Update frontend to 20231227.0 ([@bramkragten] - [#106486]) +- Check and register cloud hook if needed for mobile_app ([@edenhaus] - [#106461]) +- Add significant Change support for cover ([@mib1185] - [#106016]) +- Bump aiohttp-zlib-ng to 0.1.3 ([@bdraco] - [#106489]) +- Add Color Night Vision switch for UniFi Protect ([@cmsimike] - [#106500]) +- Bump zwave-js-server-python to 0.55.2 ([@MartinHjelmare] - [#106496]) +- Bump ZHA quirks to 109 and add associated configuration entities ([@dmulcahey] - [#106492]) +- Add ZHA configuration number entity to set/get thermostat cluster local temperature offset ([@theorlangur] - [#105765]) +- Opentherm gateway: Set unit of measurement for count sensors ([@bajansen] - [#106313]) +- Synchronize and cache Generic Camera still image fetching ([@dschall] - [#105821]) +- Add AsusWrt temperature sensors provided by http protocol ([@ollo69] - [#105692]) +[#100573]: https://github.com/home-assistant/core/pull/100573 +[#100601]: https://github.com/home-assistant/core/pull/100601 [#101102]: https://github.com/home-assistant/core/pull/101102 +[#101201]: https://github.com/home-assistant/core/pull/101201 +[#101374]: https://github.com/home-assistant/core/pull/101374 +[#101709]: https://github.com/home-assistant/core/pull/101709 +[#101748]: https://github.com/home-assistant/core/pull/101748 +[#102184]: https://github.com/home-assistant/core/pull/102184 +[#102610]: https://github.com/home-assistant/core/pull/102610 +[#102928]: https://github.com/home-assistant/core/pull/102928 [#102978]: https://github.com/home-assistant/core/pull/102978 +[#103396]: https://github.com/home-assistant/core/pull/103396 +[#103498]: https://github.com/home-assistant/core/pull/103498 [#103660]: https://github.com/home-assistant/core/pull/103660 [#103781]: https://github.com/home-assistant/core/pull/103781 [#103795]: https://github.com/home-assistant/core/pull/103795 @@ -132,22 +658,33 @@ For a summary in a more readable format: [#104087]: https://github.com/home-assistant/core/pull/104087 [#104142]: https://github.com/home-assistant/core/pull/104142 [#104157]: https://github.com/home-assistant/core/pull/104157 +[#104206]: https://github.com/home-assistant/core/pull/104206 [#104238]: https://github.com/home-assistant/core/pull/104238 [#104242]: https://github.com/home-assistant/core/pull/104242 [#104275]: https://github.com/home-assistant/core/pull/104275 +[#104291]: https://github.com/home-assistant/core/pull/104291 +[#104319]: https://github.com/home-assistant/core/pull/104319 [#104391]: https://github.com/home-assistant/core/pull/104391 [#104503]: https://github.com/home-assistant/core/pull/104503 +[#104566]: https://github.com/home-assistant/core/pull/104566 +[#104571]: https://github.com/home-assistant/core/pull/104571 [#104577]: https://github.com/home-assistant/core/pull/104577 [#104614]: https://github.com/home-assistant/core/pull/104614 [#104627]: https://github.com/home-assistant/core/pull/104627 +[#104661]: https://github.com/home-assistant/core/pull/104661 +[#104684]: https://github.com/home-assistant/core/pull/104684 [#104713]: https://github.com/home-assistant/core/pull/104713 [#104716]: https://github.com/home-assistant/core/pull/104716 +[#104718]: https://github.com/home-assistant/core/pull/104718 [#104720]: https://github.com/home-assistant/core/pull/104720 +[#104730]: https://github.com/home-assistant/core/pull/104730 [#104733]: https://github.com/home-assistant/core/pull/104733 +[#104739]: https://github.com/home-assistant/core/pull/104739 [#104746]: https://github.com/home-assistant/core/pull/104746 [#104748]: https://github.com/home-assistant/core/pull/104748 [#104749]: https://github.com/home-assistant/core/pull/104749 [#104753]: https://github.com/home-assistant/core/pull/104753 +[#104769]: https://github.com/home-assistant/core/pull/104769 [#104793]: https://github.com/home-assistant/core/pull/104793 [#104807]: https://github.com/home-assistant/core/pull/104807 [#104809]: https://github.com/home-assistant/core/pull/104809 @@ -160,32 +697,40 @@ For a summary in a more readable format: [#104828]: https://github.com/home-assistant/core/pull/104828 [#104831]: https://github.com/home-assistant/core/pull/104831 [#104832]: https://github.com/home-assistant/core/pull/104832 +[#104839]: https://github.com/home-assistant/core/pull/104839 [#104840]: https://github.com/home-assistant/core/pull/104840 [#104842]: https://github.com/home-assistant/core/pull/104842 [#104849]: https://github.com/home-assistant/core/pull/104849 [#104854]: https://github.com/home-assistant/core/pull/104854 [#104864]: https://github.com/home-assistant/core/pull/104864 [#104866]: https://github.com/home-assistant/core/pull/104866 +[#104874]: https://github.com/home-assistant/core/pull/104874 [#104875]: https://github.com/home-assistant/core/pull/104875 [#104877]: https://github.com/home-assistant/core/pull/104877 [#104878]: https://github.com/home-assistant/core/pull/104878 +[#104881]: https://github.com/home-assistant/core/pull/104881 [#104882]: https://github.com/home-assistant/core/pull/104882 [#104889]: https://github.com/home-assistant/core/pull/104889 [#104892]: https://github.com/home-assistant/core/pull/104892 +[#104906]: https://github.com/home-assistant/core/pull/104906 [#104909]: https://github.com/home-assistant/core/pull/104909 +[#104918]: https://github.com/home-assistant/core/pull/104918 [#104919]: https://github.com/home-assistant/core/pull/104919 +[#104925]: https://github.com/home-assistant/core/pull/104925 [#104930]: https://github.com/home-assistant/core/pull/104930 +[#104932]: https://github.com/home-assistant/core/pull/104932 [#104935]: https://github.com/home-assistant/core/pull/104935 -[#104936]: https://github.com/home-assistant/core/pull/104936 [#104937]: https://github.com/home-assistant/core/pull/104937 [#104949]: https://github.com/home-assistant/core/pull/104949 [#104957]: https://github.com/home-assistant/core/pull/104957 [#104958]: https://github.com/home-assistant/core/pull/104958 [#104960]: https://github.com/home-assistant/core/pull/104960 +[#104962]: https://github.com/home-assistant/core/pull/104962 [#104964]: https://github.com/home-assistant/core/pull/104964 [#104965]: https://github.com/home-assistant/core/pull/104965 [#104969]: https://github.com/home-assistant/core/pull/104969 [#104970]: https://github.com/home-assistant/core/pull/104970 +[#104976]: https://github.com/home-assistant/core/pull/104976 [#104977]: https://github.com/home-assistant/core/pull/104977 [#104978]: https://github.com/home-assistant/core/pull/104978 [#104979]: https://github.com/home-assistant/core/pull/104979 @@ -193,13 +738,20 @@ For a summary in a more readable format: [#104986]: https://github.com/home-assistant/core/pull/104986 [#104989]: https://github.com/home-assistant/core/pull/104989 [#104997]: https://github.com/home-assistant/core/pull/104997 +[#104998]: https://github.com/home-assistant/core/pull/104998 +[#105008]: https://github.com/home-assistant/core/pull/105008 [#105010]: https://github.com/home-assistant/core/pull/105010 [#105012]: https://github.com/home-assistant/core/pull/105012 [#105015]: https://github.com/home-assistant/core/pull/105015 +[#105020]: https://github.com/home-assistant/core/pull/105020 +[#105021]: https://github.com/home-assistant/core/pull/105021 +[#105024]: https://github.com/home-assistant/core/pull/105024 [#105027]: https://github.com/home-assistant/core/pull/105027 [#105029]: https://github.com/home-assistant/core/pull/105029 [#105030]: https://github.com/home-assistant/core/pull/105030 [#105037]: https://github.com/home-assistant/core/pull/105037 +[#105039]: https://github.com/home-assistant/core/pull/105039 +[#105046]: https://github.com/home-assistant/core/pull/105046 [#105052]: https://github.com/home-assistant/core/pull/105052 [#105062]: https://github.com/home-assistant/core/pull/105062 [#105067]: https://github.com/home-assistant/core/pull/105067 @@ -211,60 +763,618 @@ For a summary in a more readable format: [#105096]: https://github.com/home-assistant/core/pull/105096 [#105108]: https://github.com/home-assistant/core/pull/105108 [#105109]: https://github.com/home-assistant/core/pull/105109 +[#105110]: https://github.com/home-assistant/core/pull/105110 [#105111]: https://github.com/home-assistant/core/pull/105111 [#105114]: https://github.com/home-assistant/core/pull/105114 [#105117]: https://github.com/home-assistant/core/pull/105117 +[#105118]: https://github.com/home-assistant/core/pull/105118 [#105119]: https://github.com/home-assistant/core/pull/105119 [#105121]: https://github.com/home-assistant/core/pull/105121 [#105123]: https://github.com/home-assistant/core/pull/105123 +[#105125]: https://github.com/home-assistant/core/pull/105125 [#105131]: https://github.com/home-assistant/core/pull/105131 +[#105138]: https://github.com/home-assistant/core/pull/105138 +[#105141]: https://github.com/home-assistant/core/pull/105141 +[#105142]: https://github.com/home-assistant/core/pull/105142 [#105147]: https://github.com/home-assistant/core/pull/105147 [#105149]: https://github.com/home-assistant/core/pull/105149 -[#105150]: https://github.com/home-assistant/core/pull/105150 +[#105173]: https://github.com/home-assistant/core/pull/105173 +[#105175]: https://github.com/home-assistant/core/pull/105175 [#105193]: https://github.com/home-assistant/core/pull/105193 +[#105211]: https://github.com/home-assistant/core/pull/105211 +[#105224]: https://github.com/home-assistant/core/pull/105224 +[#105228]: https://github.com/home-assistant/core/pull/105228 +[#105243]: https://github.com/home-assistant/core/pull/105243 +[#105261]: https://github.com/home-assistant/core/pull/105261 +[#105274]: https://github.com/home-assistant/core/pull/105274 +[#105275]: https://github.com/home-assistant/core/pull/105275 +[#105280]: https://github.com/home-assistant/core/pull/105280 +[#105282]: https://github.com/home-assistant/core/pull/105282 +[#105286]: https://github.com/home-assistant/core/pull/105286 +[#105287]: https://github.com/home-assistant/core/pull/105287 +[#105295]: https://github.com/home-assistant/core/pull/105295 +[#105298]: https://github.com/home-assistant/core/pull/105298 +[#105301]: https://github.com/home-assistant/core/pull/105301 +[#105302]: https://github.com/home-assistant/core/pull/105302 +[#105320]: https://github.com/home-assistant/core/pull/105320 +[#105333]: https://github.com/home-assistant/core/pull/105333 +[#105340]: https://github.com/home-assistant/core/pull/105340 +[#105341]: https://github.com/home-assistant/core/pull/105341 +[#105343]: https://github.com/home-assistant/core/pull/105343 +[#105348]: https://github.com/home-assistant/core/pull/105348 +[#105353]: https://github.com/home-assistant/core/pull/105353 +[#105354]: https://github.com/home-assistant/core/pull/105354 +[#105358]: https://github.com/home-assistant/core/pull/105358 +[#105362]: https://github.com/home-assistant/core/pull/105362 +[#105376]: https://github.com/home-assistant/core/pull/105376 +[#105377]: https://github.com/home-assistant/core/pull/105377 +[#105379]: https://github.com/home-assistant/core/pull/105379 +[#105384]: https://github.com/home-assistant/core/pull/105384 +[#105403]: https://github.com/home-assistant/core/pull/105403 +[#105407]: https://github.com/home-assistant/core/pull/105407 +[#105408]: https://github.com/home-assistant/core/pull/105408 +[#105409]: https://github.com/home-assistant/core/pull/105409 +[#105410]: https://github.com/home-assistant/core/pull/105410 +[#105411]: https://github.com/home-assistant/core/pull/105411 +[#105414]: https://github.com/home-assistant/core/pull/105414 +[#105418]: https://github.com/home-assistant/core/pull/105418 +[#105419]: https://github.com/home-assistant/core/pull/105419 +[#105420]: https://github.com/home-assistant/core/pull/105420 +[#105421]: https://github.com/home-assistant/core/pull/105421 +[#105422]: https://github.com/home-assistant/core/pull/105422 +[#105423]: https://github.com/home-assistant/core/pull/105423 +[#105428]: https://github.com/home-assistant/core/pull/105428 +[#105430]: https://github.com/home-assistant/core/pull/105430 +[#105454]: https://github.com/home-assistant/core/pull/105454 +[#105472]: https://github.com/home-assistant/core/pull/105472 +[#105479]: https://github.com/home-assistant/core/pull/105479 +[#105482]: https://github.com/home-assistant/core/pull/105482 +[#105486]: https://github.com/home-assistant/core/pull/105486 +[#105487]: https://github.com/home-assistant/core/pull/105487 +[#105490]: https://github.com/home-assistant/core/pull/105490 +[#105494]: https://github.com/home-assistant/core/pull/105494 +[#105502]: https://github.com/home-assistant/core/pull/105502 +[#105510]: https://github.com/home-assistant/core/pull/105510 +[#105512]: https://github.com/home-assistant/core/pull/105512 +[#105518]: https://github.com/home-assistant/core/pull/105518 +[#105520]: https://github.com/home-assistant/core/pull/105520 +[#105521]: https://github.com/home-assistant/core/pull/105521 +[#105522]: https://github.com/home-assistant/core/pull/105522 +[#105523]: https://github.com/home-assistant/core/pull/105523 +[#105526]: https://github.com/home-assistant/core/pull/105526 +[#105528]: https://github.com/home-assistant/core/pull/105528 +[#105529]: https://github.com/home-assistant/core/pull/105529 +[#105531]: https://github.com/home-assistant/core/pull/105531 +[#105534]: https://github.com/home-assistant/core/pull/105534 +[#105536]: https://github.com/home-assistant/core/pull/105536 +[#105537]: https://github.com/home-assistant/core/pull/105537 +[#105541]: https://github.com/home-assistant/core/pull/105541 +[#105546]: https://github.com/home-assistant/core/pull/105546 +[#105552]: https://github.com/home-assistant/core/pull/105552 +[#105553]: https://github.com/home-assistant/core/pull/105553 +[#105554]: https://github.com/home-assistant/core/pull/105554 +[#105555]: https://github.com/home-assistant/core/pull/105555 +[#105556]: https://github.com/home-assistant/core/pull/105556 +[#105558]: https://github.com/home-assistant/core/pull/105558 +[#105559]: https://github.com/home-assistant/core/pull/105559 +[#105561]: https://github.com/home-assistant/core/pull/105561 +[#105562]: https://github.com/home-assistant/core/pull/105562 +[#105566]: https://github.com/home-assistant/core/pull/105566 +[#105568]: https://github.com/home-assistant/core/pull/105568 +[#105570]: https://github.com/home-assistant/core/pull/105570 +[#105571]: https://github.com/home-assistant/core/pull/105571 +[#105573]: https://github.com/home-assistant/core/pull/105573 +[#105574]: https://github.com/home-assistant/core/pull/105574 +[#105575]: https://github.com/home-assistant/core/pull/105575 +[#105577]: https://github.com/home-assistant/core/pull/105577 +[#105584]: https://github.com/home-assistant/core/pull/105584 +[#105586]: https://github.com/home-assistant/core/pull/105586 +[#105591]: https://github.com/home-assistant/core/pull/105591 +[#105592]: https://github.com/home-assistant/core/pull/105592 +[#105594]: https://github.com/home-assistant/core/pull/105594 +[#105595]: https://github.com/home-assistant/core/pull/105595 +[#105596]: https://github.com/home-assistant/core/pull/105596 +[#105600]: https://github.com/home-assistant/core/pull/105600 +[#105602]: https://github.com/home-assistant/core/pull/105602 +[#105603]: https://github.com/home-assistant/core/pull/105603 +[#105604]: https://github.com/home-assistant/core/pull/105604 +[#105607]: https://github.com/home-assistant/core/pull/105607 +[#105609]: https://github.com/home-assistant/core/pull/105609 +[#105610]: https://github.com/home-assistant/core/pull/105610 +[#105611]: https://github.com/home-assistant/core/pull/105611 +[#105613]: https://github.com/home-assistant/core/pull/105613 +[#105616]: https://github.com/home-assistant/core/pull/105616 +[#105620]: https://github.com/home-assistant/core/pull/105620 +[#105624]: https://github.com/home-assistant/core/pull/105624 +[#105625]: https://github.com/home-assistant/core/pull/105625 +[#105626]: https://github.com/home-assistant/core/pull/105626 +[#105627]: https://github.com/home-assistant/core/pull/105627 +[#105628]: https://github.com/home-assistant/core/pull/105628 +[#105629]: https://github.com/home-assistant/core/pull/105629 +[#105630]: https://github.com/home-assistant/core/pull/105630 +[#105633]: https://github.com/home-assistant/core/pull/105633 +[#105638]: https://github.com/home-assistant/core/pull/105638 +[#105640]: https://github.com/home-assistant/core/pull/105640 +[#105644]: https://github.com/home-assistant/core/pull/105644 +[#105645]: https://github.com/home-assistant/core/pull/105645 +[#105646]: https://github.com/home-assistant/core/pull/105646 +[#105647]: https://github.com/home-assistant/core/pull/105647 +[#105648]: https://github.com/home-assistant/core/pull/105648 +[#105649]: https://github.com/home-assistant/core/pull/105649 +[#105650]: https://github.com/home-assistant/core/pull/105650 +[#105652]: https://github.com/home-assistant/core/pull/105652 +[#105653]: https://github.com/home-assistant/core/pull/105653 +[#105657]: https://github.com/home-assistant/core/pull/105657 +[#105665]: https://github.com/home-assistant/core/pull/105665 +[#105666]: https://github.com/home-assistant/core/pull/105666 +[#105667]: https://github.com/home-assistant/core/pull/105667 +[#105669]: https://github.com/home-assistant/core/pull/105669 +[#105670]: https://github.com/home-assistant/core/pull/105670 +[#105671]: https://github.com/home-assistant/core/pull/105671 +[#105672]: https://github.com/home-assistant/core/pull/105672 +[#105677]: https://github.com/home-assistant/core/pull/105677 +[#105678]: https://github.com/home-assistant/core/pull/105678 +[#105685]: https://github.com/home-assistant/core/pull/105685 +[#105687]: https://github.com/home-assistant/core/pull/105687 +[#105692]: https://github.com/home-assistant/core/pull/105692 +[#105696]: https://github.com/home-assistant/core/pull/105696 +[#105701]: https://github.com/home-assistant/core/pull/105701 +[#105713]: https://github.com/home-assistant/core/pull/105713 +[#105715]: https://github.com/home-assistant/core/pull/105715 +[#105717]: https://github.com/home-assistant/core/pull/105717 +[#105718]: https://github.com/home-assistant/core/pull/105718 +[#105721]: https://github.com/home-assistant/core/pull/105721 +[#105722]: https://github.com/home-assistant/core/pull/105722 +[#105723]: https://github.com/home-assistant/core/pull/105723 +[#105724]: https://github.com/home-assistant/core/pull/105724 +[#105728]: https://github.com/home-assistant/core/pull/105728 +[#105736]: https://github.com/home-assistant/core/pull/105736 +[#105739]: https://github.com/home-assistant/core/pull/105739 +[#105741]: https://github.com/home-assistant/core/pull/105741 +[#105742]: https://github.com/home-assistant/core/pull/105742 +[#105745]: https://github.com/home-assistant/core/pull/105745 +[#105746]: https://github.com/home-assistant/core/pull/105746 +[#105747]: https://github.com/home-assistant/core/pull/105747 +[#105748]: https://github.com/home-assistant/core/pull/105748 +[#105752]: https://github.com/home-assistant/core/pull/105752 +[#105759]: https://github.com/home-assistant/core/pull/105759 +[#105765]: https://github.com/home-assistant/core/pull/105765 +[#105766]: https://github.com/home-assistant/core/pull/105766 +[#105774]: https://github.com/home-assistant/core/pull/105774 +[#105781]: https://github.com/home-assistant/core/pull/105781 +[#105783]: https://github.com/home-assistant/core/pull/105783 +[#105791]: https://github.com/home-assistant/core/pull/105791 +[#105800]: https://github.com/home-assistant/core/pull/105800 +[#105813]: https://github.com/home-assistant/core/pull/105813 +[#105814]: https://github.com/home-assistant/core/pull/105814 +[#105820]: https://github.com/home-assistant/core/pull/105820 +[#105821]: https://github.com/home-assistant/core/pull/105821 +[#105823]: https://github.com/home-assistant/core/pull/105823 +[#105824]: https://github.com/home-assistant/core/pull/105824 +[#105834]: https://github.com/home-assistant/core/pull/105834 +[#105838]: https://github.com/home-assistant/core/pull/105838 +[#105841]: https://github.com/home-assistant/core/pull/105841 +[#105847]: https://github.com/home-assistant/core/pull/105847 +[#105848]: https://github.com/home-assistant/core/pull/105848 +[#105849]: https://github.com/home-assistant/core/pull/105849 +[#105855]: https://github.com/home-assistant/core/pull/105855 +[#105856]: https://github.com/home-assistant/core/pull/105856 +[#105857]: https://github.com/home-assistant/core/pull/105857 +[#105863]: https://github.com/home-assistant/core/pull/105863 +[#105866]: https://github.com/home-assistant/core/pull/105866 +[#105867]: https://github.com/home-assistant/core/pull/105867 +[#105868]: https://github.com/home-assistant/core/pull/105868 +[#105874]: https://github.com/home-assistant/core/pull/105874 +[#105876]: https://github.com/home-assistant/core/pull/105876 +[#105878]: https://github.com/home-assistant/core/pull/105878 +[#105880]: https://github.com/home-assistant/core/pull/105880 +[#105881]: https://github.com/home-assistant/core/pull/105881 +[#105884]: https://github.com/home-assistant/core/pull/105884 +[#105885]: https://github.com/home-assistant/core/pull/105885 +[#105892]: https://github.com/home-assistant/core/pull/105892 +[#105894]: https://github.com/home-assistant/core/pull/105894 +[#105908]: https://github.com/home-assistant/core/pull/105908 +[#105909]: https://github.com/home-assistant/core/pull/105909 +[#105911]: https://github.com/home-assistant/core/pull/105911 +[#105912]: https://github.com/home-assistant/core/pull/105912 +[#105914]: https://github.com/home-assistant/core/pull/105914 +[#105915]: https://github.com/home-assistant/core/pull/105915 +[#105916]: https://github.com/home-assistant/core/pull/105916 +[#105919]: https://github.com/home-assistant/core/pull/105919 +[#105921]: https://github.com/home-assistant/core/pull/105921 +[#105922]: https://github.com/home-assistant/core/pull/105922 +[#105924]: https://github.com/home-assistant/core/pull/105924 +[#105926]: https://github.com/home-assistant/core/pull/105926 +[#105931]: https://github.com/home-assistant/core/pull/105931 +[#105937]: https://github.com/home-assistant/core/pull/105937 +[#105939]: https://github.com/home-assistant/core/pull/105939 +[#105941]: https://github.com/home-assistant/core/pull/105941 +[#105947]: https://github.com/home-assistant/core/pull/105947 +[#105949]: https://github.com/home-assistant/core/pull/105949 +[#105953]: https://github.com/home-assistant/core/pull/105953 +[#105957]: https://github.com/home-assistant/core/pull/105957 +[#105958]: https://github.com/home-assistant/core/pull/105958 +[#105959]: https://github.com/home-assistant/core/pull/105959 +[#105961]: https://github.com/home-assistant/core/pull/105961 +[#105965]: https://github.com/home-assistant/core/pull/105965 +[#105966]: https://github.com/home-assistant/core/pull/105966 +[#105968]: https://github.com/home-assistant/core/pull/105968 +[#105969]: https://github.com/home-assistant/core/pull/105969 +[#105970]: https://github.com/home-assistant/core/pull/105970 +[#105971]: https://github.com/home-assistant/core/pull/105971 +[#105972]: https://github.com/home-assistant/core/pull/105972 +[#105973]: https://github.com/home-assistant/core/pull/105973 +[#105974]: https://github.com/home-assistant/core/pull/105974 +[#105975]: https://github.com/home-assistant/core/pull/105975 +[#105976]: https://github.com/home-assistant/core/pull/105976 +[#105978]: https://github.com/home-assistant/core/pull/105978 +[#105980]: https://github.com/home-assistant/core/pull/105980 +[#105981]: https://github.com/home-assistant/core/pull/105981 +[#105982]: https://github.com/home-assistant/core/pull/105982 +[#105983]: https://github.com/home-assistant/core/pull/105983 +[#105984]: https://github.com/home-assistant/core/pull/105984 +[#105986]: https://github.com/home-assistant/core/pull/105986 +[#105988]: https://github.com/home-assistant/core/pull/105988 +[#105989]: https://github.com/home-assistant/core/pull/105989 +[#105999]: https://github.com/home-assistant/core/pull/105999 +[#106000]: https://github.com/home-assistant/core/pull/106000 +[#106002]: https://github.com/home-assistant/core/pull/106002 +[#106003]: https://github.com/home-assistant/core/pull/106003 +[#106005]: https://github.com/home-assistant/core/pull/106005 +[#106010]: https://github.com/home-assistant/core/pull/106010 +[#106011]: https://github.com/home-assistant/core/pull/106011 +[#106012]: https://github.com/home-assistant/core/pull/106012 +[#106013]: https://github.com/home-assistant/core/pull/106013 +[#106015]: https://github.com/home-assistant/core/pull/106015 +[#106016]: https://github.com/home-assistant/core/pull/106016 +[#106017]: https://github.com/home-assistant/core/pull/106017 +[#106018]: https://github.com/home-assistant/core/pull/106018 +[#106020]: https://github.com/home-assistant/core/pull/106020 +[#106021]: https://github.com/home-assistant/core/pull/106021 +[#106022]: https://github.com/home-assistant/core/pull/106022 +[#106023]: https://github.com/home-assistant/core/pull/106023 +[#106024]: https://github.com/home-assistant/core/pull/106024 +[#106025]: https://github.com/home-assistant/core/pull/106025 +[#106033]: https://github.com/home-assistant/core/pull/106033 +[#106035]: https://github.com/home-assistant/core/pull/106035 +[#106037]: https://github.com/home-assistant/core/pull/106037 +[#106039]: https://github.com/home-assistant/core/pull/106039 +[#106042]: https://github.com/home-assistant/core/pull/106042 +[#106045]: https://github.com/home-assistant/core/pull/106045 +[#106047]: https://github.com/home-assistant/core/pull/106047 +[#106049]: https://github.com/home-assistant/core/pull/106049 +[#106050]: https://github.com/home-assistant/core/pull/106050 +[#106051]: https://github.com/home-assistant/core/pull/106051 +[#106053]: https://github.com/home-assistant/core/pull/106053 +[#106054]: https://github.com/home-assistant/core/pull/106054 +[#106058]: https://github.com/home-assistant/core/pull/106058 +[#106059]: https://github.com/home-assistant/core/pull/106059 +[#106063]: https://github.com/home-assistant/core/pull/106063 +[#106064]: https://github.com/home-assistant/core/pull/106064 +[#106067]: https://github.com/home-assistant/core/pull/106067 +[#106073]: https://github.com/home-assistant/core/pull/106073 +[#106079]: https://github.com/home-assistant/core/pull/106079 +[#106080]: https://github.com/home-assistant/core/pull/106080 +[#106087]: https://github.com/home-assistant/core/pull/106087 +[#106093]: https://github.com/home-assistant/core/pull/106093 +[#106095]: https://github.com/home-assistant/core/pull/106095 +[#106096]: https://github.com/home-assistant/core/pull/106096 +[#106098]: https://github.com/home-assistant/core/pull/106098 +[#106099]: https://github.com/home-assistant/core/pull/106099 +[#106109]: https://github.com/home-assistant/core/pull/106109 +[#106111]: https://github.com/home-assistant/core/pull/106111 +[#106112]: https://github.com/home-assistant/core/pull/106112 +[#106113]: https://github.com/home-assistant/core/pull/106113 +[#106114]: https://github.com/home-assistant/core/pull/106114 +[#106116]: https://github.com/home-assistant/core/pull/106116 +[#106117]: https://github.com/home-assistant/core/pull/106117 +[#106120]: https://github.com/home-assistant/core/pull/106120 +[#106121]: https://github.com/home-assistant/core/pull/106121 +[#106129]: https://github.com/home-assistant/core/pull/106129 +[#106135]: https://github.com/home-assistant/core/pull/106135 +[#106137]: https://github.com/home-assistant/core/pull/106137 +[#106138]: https://github.com/home-assistant/core/pull/106138 +[#106139]: https://github.com/home-assistant/core/pull/106139 +[#106141]: https://github.com/home-assistant/core/pull/106141 +[#106145]: https://github.com/home-assistant/core/pull/106145 +[#106146]: https://github.com/home-assistant/core/pull/106146 +[#106151]: https://github.com/home-assistant/core/pull/106151 +[#106153]: https://github.com/home-assistant/core/pull/106153 +[#106156]: https://github.com/home-assistant/core/pull/106156 +[#106158]: https://github.com/home-assistant/core/pull/106158 +[#106160]: https://github.com/home-assistant/core/pull/106160 +[#106164]: https://github.com/home-assistant/core/pull/106164 +[#106165]: https://github.com/home-assistant/core/pull/106165 +[#106168]: https://github.com/home-assistant/core/pull/106168 +[#106169]: https://github.com/home-assistant/core/pull/106169 +[#106174]: https://github.com/home-assistant/core/pull/106174 +[#106175]: https://github.com/home-assistant/core/pull/106175 +[#106181]: https://github.com/home-assistant/core/pull/106181 +[#106189]: https://github.com/home-assistant/core/pull/106189 +[#106193]: https://github.com/home-assistant/core/pull/106193 +[#106194]: https://github.com/home-assistant/core/pull/106194 +[#106199]: https://github.com/home-assistant/core/pull/106199 +[#106200]: https://github.com/home-assistant/core/pull/106200 +[#106203]: https://github.com/home-assistant/core/pull/106203 +[#106205]: https://github.com/home-assistant/core/pull/106205 +[#106206]: https://github.com/home-assistant/core/pull/106206 +[#106208]: https://github.com/home-assistant/core/pull/106208 +[#106209]: https://github.com/home-assistant/core/pull/106209 +[#106210]: https://github.com/home-assistant/core/pull/106210 +[#106212]: https://github.com/home-assistant/core/pull/106212 +[#106214]: https://github.com/home-assistant/core/pull/106214 +[#106216]: https://github.com/home-assistant/core/pull/106216 +[#106218]: https://github.com/home-assistant/core/pull/106218 +[#106221]: https://github.com/home-assistant/core/pull/106221 +[#106222]: https://github.com/home-assistant/core/pull/106222 +[#106225]: https://github.com/home-assistant/core/pull/106225 +[#106226]: https://github.com/home-assistant/core/pull/106226 +[#106227]: https://github.com/home-assistant/core/pull/106227 +[#106229]: https://github.com/home-assistant/core/pull/106229 +[#106230]: https://github.com/home-assistant/core/pull/106230 +[#106231]: https://github.com/home-assistant/core/pull/106231 +[#106232]: https://github.com/home-assistant/core/pull/106232 +[#106233]: https://github.com/home-assistant/core/pull/106233 +[#106234]: https://github.com/home-assistant/core/pull/106234 +[#106235]: https://github.com/home-assistant/core/pull/106235 +[#106237]: https://github.com/home-assistant/core/pull/106237 +[#106238]: https://github.com/home-assistant/core/pull/106238 +[#106240]: https://github.com/home-assistant/core/pull/106240 +[#106241]: https://github.com/home-assistant/core/pull/106241 +[#106244]: https://github.com/home-assistant/core/pull/106244 +[#106245]: https://github.com/home-assistant/core/pull/106245 +[#106247]: https://github.com/home-assistant/core/pull/106247 +[#106248]: https://github.com/home-assistant/core/pull/106248 +[#106252]: https://github.com/home-assistant/core/pull/106252 +[#106253]: https://github.com/home-assistant/core/pull/106253 +[#106254]: https://github.com/home-assistant/core/pull/106254 +[#106255]: https://github.com/home-assistant/core/pull/106255 +[#106256]: https://github.com/home-assistant/core/pull/106256 +[#106257]: https://github.com/home-assistant/core/pull/106257 +[#106258]: https://github.com/home-assistant/core/pull/106258 +[#106259]: https://github.com/home-assistant/core/pull/106259 +[#106260]: https://github.com/home-assistant/core/pull/106260 +[#106261]: https://github.com/home-assistant/core/pull/106261 +[#106262]: https://github.com/home-assistant/core/pull/106262 +[#106264]: https://github.com/home-assistant/core/pull/106264 +[#106265]: https://github.com/home-assistant/core/pull/106265 +[#106266]: https://github.com/home-assistant/core/pull/106266 +[#106267]: https://github.com/home-assistant/core/pull/106267 +[#106268]: https://github.com/home-assistant/core/pull/106268 +[#106269]: https://github.com/home-assistant/core/pull/106269 +[#106271]: https://github.com/home-assistant/core/pull/106271 +[#106272]: https://github.com/home-assistant/core/pull/106272 +[#106274]: https://github.com/home-assistant/core/pull/106274 +[#106275]: https://github.com/home-assistant/core/pull/106275 +[#106277]: https://github.com/home-assistant/core/pull/106277 +[#106278]: https://github.com/home-assistant/core/pull/106278 +[#106281]: https://github.com/home-assistant/core/pull/106281 +[#106285]: https://github.com/home-assistant/core/pull/106285 +[#106287]: https://github.com/home-assistant/core/pull/106287 +[#106288]: https://github.com/home-assistant/core/pull/106288 +[#106290]: https://github.com/home-assistant/core/pull/106290 +[#106294]: https://github.com/home-assistant/core/pull/106294 +[#106295]: https://github.com/home-assistant/core/pull/106295 +[#106299]: https://github.com/home-assistant/core/pull/106299 +[#106301]: https://github.com/home-assistant/core/pull/106301 +[#106302]: https://github.com/home-assistant/core/pull/106302 +[#106309]: https://github.com/home-assistant/core/pull/106309 +[#106313]: https://github.com/home-assistant/core/pull/106313 +[#106314]: https://github.com/home-assistant/core/pull/106314 +[#106316]: https://github.com/home-assistant/core/pull/106316 +[#106318]: https://github.com/home-assistant/core/pull/106318 +[#106321]: https://github.com/home-assistant/core/pull/106321 +[#106323]: https://github.com/home-assistant/core/pull/106323 +[#106325]: https://github.com/home-assistant/core/pull/106325 +[#106326]: https://github.com/home-assistant/core/pull/106326 +[#106327]: https://github.com/home-assistant/core/pull/106327 +[#106329]: https://github.com/home-assistant/core/pull/106329 +[#106330]: https://github.com/home-assistant/core/pull/106330 +[#106332]: https://github.com/home-assistant/core/pull/106332 +[#106333]: https://github.com/home-assistant/core/pull/106333 +[#106334]: https://github.com/home-assistant/core/pull/106334 +[#106335]: https://github.com/home-assistant/core/pull/106335 +[#106336]: https://github.com/home-assistant/core/pull/106336 +[#106337]: https://github.com/home-assistant/core/pull/106337 +[#106338]: https://github.com/home-assistant/core/pull/106338 +[#106339]: https://github.com/home-assistant/core/pull/106339 +[#106340]: https://github.com/home-assistant/core/pull/106340 +[#106341]: https://github.com/home-assistant/core/pull/106341 +[#106344]: https://github.com/home-assistant/core/pull/106344 +[#106345]: https://github.com/home-assistant/core/pull/106345 +[#106346]: https://github.com/home-assistant/core/pull/106346 +[#106350]: https://github.com/home-assistant/core/pull/106350 +[#106352]: https://github.com/home-assistant/core/pull/106352 +[#106357]: https://github.com/home-assistant/core/pull/106357 +[#106378]: https://github.com/home-assistant/core/pull/106378 +[#106383]: https://github.com/home-assistant/core/pull/106383 +[#106384]: https://github.com/home-assistant/core/pull/106384 +[#106399]: https://github.com/home-assistant/core/pull/106399 +[#106400]: https://github.com/home-assistant/core/pull/106400 +[#106401]: https://github.com/home-assistant/core/pull/106401 +[#106402]: https://github.com/home-assistant/core/pull/106402 +[#106404]: https://github.com/home-assistant/core/pull/106404 +[#106405]: https://github.com/home-assistant/core/pull/106405 +[#106409]: https://github.com/home-assistant/core/pull/106409 +[#106414]: https://github.com/home-assistant/core/pull/106414 +[#106416]: https://github.com/home-assistant/core/pull/106416 +[#106418]: https://github.com/home-assistant/core/pull/106418 +[#106421]: https://github.com/home-assistant/core/pull/106421 +[#106425]: https://github.com/home-assistant/core/pull/106425 +[#106427]: https://github.com/home-assistant/core/pull/106427 +[#106429]: https://github.com/home-assistant/core/pull/106429 +[#106430]: https://github.com/home-assistant/core/pull/106430 +[#106431]: https://github.com/home-assistant/core/pull/106431 +[#106432]: https://github.com/home-assistant/core/pull/106432 +[#106433]: https://github.com/home-assistant/core/pull/106433 +[#106434]: https://github.com/home-assistant/core/pull/106434 +[#106435]: https://github.com/home-assistant/core/pull/106435 +[#106436]: https://github.com/home-assistant/core/pull/106436 +[#106437]: https://github.com/home-assistant/core/pull/106437 +[#106438]: https://github.com/home-assistant/core/pull/106438 +[#106448]: https://github.com/home-assistant/core/pull/106448 +[#106450]: https://github.com/home-assistant/core/pull/106450 +[#106455]: https://github.com/home-assistant/core/pull/106455 +[#106456]: https://github.com/home-assistant/core/pull/106456 +[#106457]: https://github.com/home-assistant/core/pull/106457 +[#106458]: https://github.com/home-assistant/core/pull/106458 +[#106461]: https://github.com/home-assistant/core/pull/106461 +[#106462]: https://github.com/home-assistant/core/pull/106462 +[#106463]: https://github.com/home-assistant/core/pull/106463 +[#106464]: https://github.com/home-assistant/core/pull/106464 +[#106465]: https://github.com/home-assistant/core/pull/106465 +[#106466]: https://github.com/home-assistant/core/pull/106466 +[#106467]: https://github.com/home-assistant/core/pull/106467 +[#106468]: https://github.com/home-assistant/core/pull/106468 +[#106472]: https://github.com/home-assistant/core/pull/106472 +[#106475]: https://github.com/home-assistant/core/pull/106475 +[#106478]: https://github.com/home-assistant/core/pull/106478 +[#106486]: https://github.com/home-assistant/core/pull/106486 +[#106489]: https://github.com/home-assistant/core/pull/106489 +[#106492]: https://github.com/home-assistant/core/pull/106492 +[#106496]: https://github.com/home-assistant/core/pull/106496 +[#106500]: https://github.com/home-assistant/core/pull/106500 +[#70365]: https://github.com/home-assistant/core/pull/70365 [#79077]: https://github.com/home-assistant/core/pull/79077 +[#82483]: https://github.com/home-assistant/core/pull/82483 +[#85769]: https://github.com/home-assistant/core/pull/85769 [#86026]: https://github.com/home-assistant/core/pull/86026 +[#87039]: https://github.com/home-assistant/core/pull/87039 [#87493]: https://github.com/home-assistant/core/pull/87493 +[#88272]: https://github.com/home-assistant/core/pull/88272 [#91165]: https://github.com/home-assistant/core/pull/91165 +[#92665]: https://github.com/home-assistant/core/pull/92665 +[#93002]: https://github.com/home-assistant/core/pull/93002 [#94497]: https://github.com/home-assistant/core/pull/94497 +[#94824]: https://github.com/home-assistant/core/pull/94824 +[#95088]: https://github.com/home-assistant/core/pull/95088 +[#95594]: https://github.com/home-assistant/core/pull/95594 +[#95885]: https://github.com/home-assistant/core/pull/95885 +[#96182]: https://github.com/home-assistant/core/pull/96182 +[#96573]: https://github.com/home-assistant/core/pull/96573 +[#98841]: https://github.com/home-assistant/core/pull/98841 +[#99342]: https://github.com/home-assistant/core/pull/99342 [#99538]: https://github.com/home-assistant/core/pull/99538 +[#99608]: https://github.com/home-assistant/core/pull/99608 +[#99743]: https://github.com/home-assistant/core/pull/99743 +[#99761]: https://github.com/home-assistant/core/pull/99761 +[@Anonym-tsk]: https://github.com/Anonym-tsk [@Betacart]: https://github.com/Betacart [@Bre77]: https://github.com/Bre77 [@CFenner]: https://github.com/CFenner +[@Caius-Bonus]: https://github.com/Caius-Bonus [@DCSBL]: https://github.com/DCSBL +[@Danielhiversen]: https://github.com/Danielhiversen +[@DeerMaximum]: https://github.com/DeerMaximum +[@Ernst79]: https://github.com/Ernst79 +[@Floris272]: https://github.com/Floris272 +[@JosephBlock]: https://github.com/JosephBlock +[@Lash-L]: https://github.com/Lash-L +[@Marco98]: https://github.com/Marco98 +[@MartinHjelmare]: https://github.com/MartinHjelmare +[@N3rdix]: https://github.com/N3rdix +[@RJPoelstra]: https://github.com/RJPoelstra +[@Shulyaka]: https://github.com/Shulyaka +[@Shutgun]: https://github.com/Shutgun +[@Sibgatulin]: https://github.com/Sibgatulin +[@Skaronator]: https://github.com/Skaronator +[@TheFes]: https://github.com/TheFes +[@VIKTORVAV99]: https://github.com/VIKTORVAV99 +[@agners]: https://github.com/agners +[@allenporter]: https://github.com/allenporter +[@ashionky]: https://github.com/ashionky +[@autinerd]: https://github.com/autinerd +[@azogue]: https://github.com/azogue +[@bajansen]: https://github.com/bajansen +[@bdr99]: https://github.com/bdr99 [@bdraco]: https://github.com/bdraco +[@bieniu]: https://github.com/bieniu +[@bramkragten]: https://github.com/bramkragten +[@briglx]: https://github.com/briglx [@c0ffeeca7]: https://github.com/c0ffeeca7 [@cdce8p]: https://github.com/cdce8p [@cdnninja]: https://github.com/cdnninja +[@cgarwood]: https://github.com/cgarwood +[@chemelli74]: https://github.com/chemelli74 +[@chishm]: https://github.com/chishm [@cian]: https://github.com/cian +[@cibernox]: https://github.com/cibernox +[@cmsimike]: https://github.com/cmsimike +[@cohenchris]: https://github.com/cohenchris [@davet2001]: https://github.com/davet2001 [@dewdropawoo]: https://github.com/dewdropawoo +[@dgomes]: https://github.com/dgomes [@dieselrabbit]: https://github.com/dieselrabbit +[@dknowles2]: https://github.com/dknowles2 +[@dmulcahey]: https://github.com/dmulcahey +[@doggkruse]: https://github.com/doggkruse +[@dougiteixeira]: https://github.com/dougiteixeira +[@dschall]: https://github.com/dschall [@dupondje]: https://github.com/dupondje +[@edenhaus]: https://github.com/edenhaus +[@elmurato]: https://github.com/elmurato +[@elupus]: https://github.com/elupus [@emontnemery]: https://github.com/emontnemery [@engrbm87]: https://github.com/engrbm87 +[@epenet]: https://github.com/epenet [@erwindouna]: https://github.com/erwindouna +[@farmio]: https://github.com/farmio +[@finder39]: https://github.com/finder39 [@frenck]: https://github.com/frenck +[@gjohansson-ST]: https://github.com/gjohansson-ST +[@iamrgroot]: https://github.com/iamrgroot [@janiversen]: https://github.com/janiversen [@jbouwh]: https://github.com/jbouwh [@jimmyd-be]: https://github.com/jimmyd-be [@jjlawren]: https://github.com/jjlawren +[@joncar]: https://github.com/joncar [@joostlek]: https://github.com/joostlek [@jpbede]: https://github.com/jpbede [@jrieger]: https://github.com/jrieger +[@kbickar]: https://github.com/kbickar +[@killer0071234]: https://github.com/killer0071234 +[@killercode]: https://github.com/killercode +[@kingy444]: https://github.com/kingy444 [@klaasnicolaas]: https://github.com/klaasnicolaas +[@krmarien]: https://github.com/krmarien [@lellky]: https://github.com/lellky +[@ludeeus]: https://github.com/ludeeus +[@marcelveldt]: https://github.com/marcelveldt +[@mari8i]: https://github.com/mari8i +[@mattmattmatt]: https://github.com/mattmattmatt [@mdunda]: https://github.com/mdunda +[@miaucl]: https://github.com/miaucl [@mib1185]: https://github.com/mib1185 [@mill1000]: https://github.com/mill1000 +[@mkmer]: https://github.com/mkmer +[@mletenay]: https://github.com/mletenay [@nmaggioni]: https://github.com/nmaggioni +[@ocalvo]: https://github.com/ocalvo +[@ollo69]: https://github.com/ollo69 +[@osohotwateriot]: https://github.com/osohotwateriot +[@oyvindwe]: https://github.com/oyvindwe +[@pavoni]: https://github.com/pavoni +[@pfrazer]: https://github.com/pfrazer +[@pnbruckner]: https://github.com/pnbruckner +[@rajlaud]: https://github.com/rajlaud +[@raman325]: https://github.com/raman325 +[@raww]: https://github.com/raww +[@rikroe]: https://github.com/rikroe +[@rokam]: https://github.com/rokam [@scop]: https://github.com/scop [@sergeymaysak]: https://github.com/sergeymaysak +[@slhad]: https://github.com/slhad [@starkillerOG]: https://github.com/starkillerOG +[@steffenrapp]: https://github.com/steffenrapp [@synesthesiam]: https://github.com/synesthesiam [@tetele]: https://github.com/tetele +[@theorlangur]: https://github.com/theorlangur [@tjhorner]: https://github.com/tjhorner [@tkdrob]: https://github.com/tkdrob +[@tofuSCHNITZEL]: https://github.com/tofuSCHNITZEL [@tronikos]: https://github.com/tronikos [@tzahari]: https://github.com/tzahari +[@vexofp]: https://github.com/vexofp +[@yangbo1979]: https://github.com/yangbo1979 +[@yuxincs]: https://github.com/yuxincs [@zxdavb]: https://github.com/zxdavb diff --git a/source/images/blog/2024-01/social.png b/source/images/blog/2024-01/social.png new file mode 100644 index 0000000000000000000000000000000000000000..ea06706893cef0820fb82f28f48f5a4ed006406c GIT binary patch literal 72407 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

>u-T0oE- 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

|7sMOa|h6ZCC0KPt3>IAcI$3r&%6XpxDn8DKg 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 z z)8+P`JY6m5tuaS#HeLGii?_vPx#}C|OzzkpI|gNcmK3ggYXQjPqG$p@(^)R&r)yRk z+f)%w18_(U;WrSt0gN)i40v{MPUWLNm;e8&I`g0=&M=Gv35#I@#Uh7+BJpTD0Y*6j zNh=V<1V~YVD5&7bk&9&X$P|eq+mfrJ3t1g zSTjMA2z?i4+HwEgop0W6-{+g%?|9xH@=RJO3e?STo_6=W=ZgCh9BT7(xl~}deyw)} zg6k+0#CWX|fmMbIK+EHNW9{haFJw36FB}`mdx0a#c~o0TEGK59;J06e$6Ia2Mxm<3 z04tix$7Vf*>U5eqeW<+p!tMA~sV&)3zdx#!w(e2Sz+R@OWw5S<;*_u8Ygf_1Zn46# zMPwK~q#Yg>_%8rF?VI3mqnpV0aR-42p4hq;ea_X9Y1~vWflEpZ&tcDf!lF<<7Q5!< zmN~+6ETYHv(vmPI2mdqFAoZH1FF-TK`m0l2`g}#u1~SZ9)SjgeIKbPAqGo$vh6B<9?2timvA0pflu(4-q&M+3 z8=av+pEDRy=$#Zxx@-lYH*cRk56*bPZ-2Dg+n(LN(*YJ;C`>Y%Srayn5s;9^i^?*@FqiNU79dwAVt@J+hvU0fIT&O}yCboh&N? zm~WbI*3#UpS)nWO2-3CDg&d?q%WSsTnKAU|0`D~$v{Nk&@?g~@tn>Rb^{!FLN2-k~ za_-j_k||Y6G$K4idaD57o)X0s2!~v{m5yn5ZD-{Ie$5OsH`*Ed$~J~F5XFa6g9uj)eJ25%dJ`&EM4lXsj&GK zk08PIktV4dfb7>F4eJv3ROJUESIyLKKU+E)wk*j3mNGV&q)xx386FJCPV6A!3YeyS z&A(X*JIymo2~+hP4-8zWr3fs&b-%2?7wX%`-3B6F6luc7nZA?8n|8$f2r8oHa(+*B?_gx2CZK=6sD1hobgjhQmw|@antF&hB zSQ{Fuiz)Uyi*2^sS>3fG58i*{-JWClWQwj@2|{fH8H}rbY!MA@9=@y@W=75gc6Klf zPU`+Mk6{s8HF=Ok@rbn9pm8$2F188LomiR~Qnc$|DlAQsWee*natPKPamf1^L;~NN z4{5-gPSwjKkRtO0ZM7pBIf^4a0|k;93X0H6qHK#;CWQxN`{V1n69C uN{9=|_NH` Date: Thu, 28 Dec 2023 14:40:03 +0100 Subject: [PATCH 03/47] Upgrade Ruby, Node, Jekyll, sass-embedded + devcontainer (#30538) --- Dockerfile => .devcontainer/Dockerfile | 5 +-- .devcontainer/devcontainer.json | 11 +++-- .github/workflows/test.yml | 4 +- .ruby-version | 2 +- .vscode/extensions.json | 2 +- Gemfile | 4 +- Gemfile.lock | 56 ++++++++++++++++++-------- 7 files changed, 54 insertions(+), 30 deletions(-) rename Dockerfile => .devcontainer/Dockerfile (76%) diff --git a/Dockerfile b/.devcontainer/Dockerfile similarity index 76% rename from Dockerfile rename to .devcontainer/Dockerfile index a5c00fa85ad..ed7283a0f35 100644 --- a/Dockerfile +++ b/.devcontainer/Dockerfile @@ -3,6 +3,7 @@ FROM mcr.microsoft.com/vscode/devcontainers/ruby:${VARIANT} ARG NODE_VERSION="lts/*" RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1" +RUN su vscode -c "/usr/local/rvm/bin/rvm fix-permissions" # Locale env vars ENV \ @@ -17,7 +18,3 @@ RUN \ ack \ && echo "en_US UTF-8" > /etc/locale.gen \ && locale-gen en_US.UTF-8 - -# Install the specific version of bundler we need -COPY Gemfile.lock ./ -RUN gem install bundler -v `awk 'c&&c--;/BUNDLED WITH/{c=1}' Gemfile.lock` \ No newline at end of file diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 9db615d42bc..c34491e5358 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,16 +1,19 @@ { "name": "home-assistant.io", "build": { - "dockerfile": "../Dockerfile", + "dockerfile": "./Dockerfile", "context": "..", "args": { - "VARIANT": "2.7", - "NODE_VERSION": "18" + "VARIANT": "3.1", + "NODE_VERSION": "20" } }, "appPort": [4000], "onCreateCommand": "bundle install && npm install", - "containerEnv": { "DEVCONTAINER": "true" }, + "containerEnv": { + "DEVCONTAINER": "true", + "BUNDLE_PATH": "vendor/bundle" + }, "customizations": { "vscode": { "extensions": [ diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index c147b84c11a..0e94eee4c6b 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -12,7 +12,7 @@ jobs: - name: Setting up Node.js uses: actions/setup-node@v4.0.1 with: - node-version: 16.x + node-version: 20 cache: "npm" - name: Install dependencies run: npm install @@ -29,7 +29,7 @@ jobs: - name: Setting up Node.js uses: actions/setup-node@v4.0.1 with: - node-version: 16.x + node-version: 20 cache: "npm" - name: Install dependencies run: npm install diff --git a/.ruby-version b/.ruby-version index 37c2961c243..0aec50e6ede 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -2.7.2 +3.1.4 diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 199390c8fce..f2b8a48dbe1 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -4,7 +4,7 @@ "editorconfig.editorconfig", "GitHub.vscode-pull-request-github", "mrmlnc.vscode-scss", - "rebornix.Ruby", + "Shopify.ruby-lsp", "streetsidesoftware.code-spell-checker", "taichi.vscode-textlint", "yzhang.markdown-all-in-one" diff --git a/Gemfile b/Gemfile index 47c3b7df813..073b55ddcbd 100644 --- a/Gemfile +++ b/Gemfile @@ -4,12 +4,14 @@ ruby '> 2.5.0' group :development do gem 'rake', '13.1.0' - gem 'jekyll', '4.3.2' + gem 'jekyll', '4.3.3' gem 'compass', '1.0.3' gem 'sass-globbing', '1.1.5' gem 'stringex', '2.8.6' # > 2.1.0 causes slowdowns https://github.com/sass/sassc-ruby/issues/189 gem 'sassc', '2.1.0' + gem 'rubocop', '1.59.0' + gem 'ruby-lsp', '0.13.2' end group :jekyll_plugins do diff --git a/Gemfile.lock b/Gemfile.lock index c3463c6b54a..073dc0ed05d 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -3,6 +3,7 @@ GEM specs: addressable (2.8.6) public_suffix (>= 2.0.2, < 6.0) + ast (2.4.2) chunky_png (1.4.0) colorator (1.1.0) commonmarker (0.23.10) @@ -23,14 +24,13 @@ GEM eventmachine (>= 0.12.9) http_parser.rb (~> 0) eventmachine (1.2.7) - eventmachine (1.2.7-x64-mingw32) ffi (1.16.3) forwardable-extended (2.6.0) - google-protobuf (3.25.1) + google-protobuf (3.25.1-x86_64-linux) http_parser.rb (0.8.0) i18n (1.14.1) concurrent-ruby (~> 1.0) - jekyll (4.3.2) + jekyll (4.3.3) addressable (~> 2.4) colorator (~> 1.0) em-websocket (~> 0.5) @@ -58,54 +58,75 @@ GEM nokogiri (~> 1.12) jekyll-watch (2.2.1) listen (~> 3.0) + json (2.7.1) kramdown (2.4.0) rexml kramdown-parser-gfm (1.1.0) kramdown (~> 2.0) + language_server-protocol (3.17.0.3) liquid (4.0.4) listen (3.8.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) mercenary (0.4.0) - mini_portile2 (2.8.5) multi_json (1.15.0) mustermann (3.0.0) ruby2_keywords (~> 0.0.1) - nokogiri (1.15.5) - mini_portile2 (~> 2.8.2) + nokogiri (1.15.5-x86_64-linux) racc (~> 1.4) + parallel (1.24.0) + parser (3.2.2.4) + ast (~> 2.4.1) + racc pathutil (0.16.2) forwardable-extended (~> 2.6) + prism (0.19.0) public_suffix (5.0.4) racc (1.7.3) rack (2.2.8) rack-protection (3.1.0) rack (~> 2.2, >= 2.2.4) + rainbow (3.1.1) rake (13.1.0) rb-fsevent (0.11.2) rb-inotify (0.10.1) ffi (~> 1.0) + regexp_parser (2.8.3) rexml (3.2.6) rouge (4.2.0) + rubocop (1.59.0) + json (~> 2.3) + language_server-protocol (>= 3.17.0) + parallel (~> 1.10) + parser (>= 3.2.2.4) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.30.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.30.0) + parser (>= 3.2.1.0) + ruby-lsp (0.13.2) + language_server-protocol (~> 3.17.0) + prism (>= 0.19.0, < 0.20) + sorbet-runtime (>= 0.5.5685) + ruby-progressbar (1.13.0) ruby2_keywords (0.0.5) safe_yaml (1.0.5) sass (3.4.25) - sass-embedded (1.63.6) - google-protobuf (~> 3.23) - rake (>= 13.0.0) - sass-embedded (1.63.6-x64-mingw32) + sass-embedded (1.69.5-x86_64-linux-gnu) google-protobuf (~> 3.23) sass-globbing (1.1.5) sass (>= 3.1) - sassc (2.1.0) - ffi (~> 1.9) - sassc (2.1.0-x64-mingw32) + sassc (2.1.0-x86_64-linux) ffi (~> 1.9) sinatra (3.1.0) mustermann (~> 3.0) rack (~> 2.2, >= 2.2.4) rack-protection (= 3.1.0) tilt (~> 2.0) + sorbet-runtime (0.5.11164) stringex (2.8.6) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) @@ -118,18 +139,19 @@ GEM webrick (1.8.1) PLATFORMS - ruby - x64-mingw32 + x86_64-linux DEPENDENCIES compass (= 1.0.3) - jekyll (= 4.3.2) + jekyll (= 4.3.3) jekyll-commonmark (= 1.4.0) jekyll-paginate (= 1.1.0) jekyll-sitemap (= 1.4.0) jekyll-toc (= 0.18.0) nokogiri (= 1.15.5) rake (= 13.1.0) + rubocop (= 1.59.0) + ruby-lsp (= 0.13.2) sass-globbing (= 1.1.5) sassc (= 2.1.0) sinatra (= 3.1.0) @@ -141,4 +163,4 @@ RUBY VERSION ruby 2.6.2p47 BUNDLED WITH - 2.2.28 + 2.5.3 From 22a77ba60dfa554829f115bcde81ba2b64b45864 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 28 Dec 2023 14:45:08 +0100 Subject: [PATCH 04/47] Bump nokogiri from 1.15.5 to 1.16.0 (#30536) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Gemfile | 2 +- Gemfile.lock | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Gemfile b/Gemfile index 073b55ddcbd..2ecaf8aff36 100644 --- a/Gemfile +++ b/Gemfile @@ -22,7 +22,7 @@ group :jekyll_plugins do end gem 'sinatra', '3.1.0' -gem 'nokogiri', '1.15.5' +gem 'nokogiri', '1.16.0' # Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem # and associated library diff --git a/Gemfile.lock b/Gemfile.lock index 073dc0ed05d..25091e81bb9 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -72,7 +72,7 @@ GEM multi_json (1.15.0) mustermann (3.0.0) ruby2_keywords (~> 0.0.1) - nokogiri (1.15.5-x86_64-linux) + nokogiri (1.16.0-x86_64-linux) racc (~> 1.4) parallel (1.24.0) parser (3.2.2.4) @@ -148,7 +148,7 @@ DEPENDENCIES jekyll-paginate (= 1.1.0) jekyll-sitemap (= 1.4.0) jekyll-toc (= 0.18.0) - nokogiri (= 1.15.5) + nokogiri (= 1.16.0) rake (= 13.1.0) rubocop (= 1.59.0) ruby-lsp (= 0.13.2) From ed927595c92004c8c691710ff666b4b6122d4251 Mon Sep 17 00:00:00 2001 From: Sebastian Date: Thu, 28 Dec 2023 14:45:51 +0100 Subject: [PATCH 05/47] Update ping.markdown (#30539) --- source/_integrations/ping.markdown | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/source/_integrations/ping.markdown b/source/_integrations/ping.markdown index 2d1b9958b2a..05462d4b48b 100644 --- a/source/_integrations/ping.markdown +++ b/source/_integrations/ping.markdown @@ -43,10 +43,10 @@ This sensor is enabled by default. The default polling interval is 30 seconds. The sensor exposes the different round trip times in milliseconds measured by `ping` as attributes: -- `round_trip_time_mdev` -- `round_trip_time_avg` -- `round_trip_time_min` -- `round_trip_time_max` +- `round_trip_time_mdev` - the standard deviation +- `round_trip_time_avg` - the average round trip time +- `round_trip_time_min` - the shortest round trip time +- `round_trip_time_max` - the longest round trip time

When run on Windows systems, the round trip time attributes are rounded to the nearest millisecond and the mdev value is unavailable. @@ -62,4 +62,4 @@ The device tracker is disabled by default and can be enabled in the UI. Please keep in mind that modern smart phones will usually turn off WiFi when they are idle. Simple trackers like this may not be reliable on their own.
-See the [person integration page](/integrations/person/) for instructions on how to configure the people to be tracked. \ No newline at end of file +See the [person integration page](/integrations/person/) for instructions on how to configure the people to be tracked. From 7364cb953eb523b8f1c17cfe6ea9571ecde6215a Mon Sep 17 00:00:00 2001 From: Joost Lekkerkerker Date: Thu, 28 Dec 2023 22:40:24 +0100 Subject: [PATCH 06/47] Fix spelling mistakes and correct links in latest release notes (#30546) Co-authored-by: Franck Nijhof --- .../_posts/2024-01-03-release-20241.markdown | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/source/_posts/2024-01-03-release-20241.markdown b/source/_posts/2024-01-03-release-20241.markdown index b12161a4881..229334d63b9 100644 --- a/source/_posts/2024-01-03-release-20241.markdown +++ b/source/_posts/2024-01-03-release-20241.markdown @@ -71,14 +71,14 @@ If you start out with Home Assistant, visiting your automations page would result in an empty page. This is not very helpful if you see this for the first time. -Instead, you are now greeted by the little automation robot and show -an explaination of what automations are, and reference to the documentation +Instead, you are now greeted by the little automation robot that shows +an explanation of what automations are, and references to the documentation that can help you get started. _TODO: Add screenshot_ Once you start create a new integration, you will be greeted by some new -terminolgy and description to help you understand what each section is about. +terminology and description to help you understand what each section is about. Temporary images that needs to be replaced. @@ -88,7 +88,7 @@ action to your automation. The first thing to notice, is that the conditions and actions have a new button next to them: "Add building block". Click this allows you to -add logicial elements to your automation, like "and", "or", "If", "choose", etc. +add logical elements to your automation, like "and", "or", "If", "choose", etc. These used to be mixed in with the conditions and actions, but now have their own dedicated button. This makes it easier to find them, and declutters the @@ -106,7 +106,7 @@ trigger, condition or action does, and what it is used for. _TODO: Add screenshot_ If you add an element, we will show you the most commonly used -trigger/condition/action first. All other are neatly categorized in the +trigger/condition/action first. All others are neatly categorized in the other sections. Last, but not least, the "service calls" are now merged with all other actions. @@ -188,6 +188,7 @@ noteworthy changes this release: - Add alarm platform to Comelit ([@chemelli74] - [#104718]) - Add Support for SleepIQ Foot Warmers ([@kbickar] - [#105931]) + ## New integrations We welcome the following new integrations in this release: @@ -203,7 +204,7 @@ We welcome the following new integrations in this release: - **[Holiday]**, added by [@jrieger]
Add holiday calendars to Home Assistant for powering automations. - **[Midea CCM15 AC Controller]**, added by [@ocalvo]
- Use your AC connected to an Midea CCM15 AC Controller. + Use your AC connected to a Midea CCM15 AC Controller. - **[OSO Energy]**, added by [@osohotwateriot]
Use your OSO Energy water heater with Home Assistant. - **[Sun WEG]**, added by [@rokam]
@@ -234,7 +235,7 @@ We welcome the following new integrations in this release: [@rokam]: https://github.com/rokam [A. O. Smith]: /integrations/aosmith [Blue Current]: /integrations/blue_current -[DROP]: /integrations/drop +[DROP]: /integrations/drop_connect [Flexit BACnet]: /integrations/flexit_bacnet [Holiday]: /integrations/holiday [Midea CCM15 AC Controller]: /integrations/ccm15 @@ -261,8 +262,8 @@ The following virtual integrations have been added: - **[Southwestern Electric Power Company (SWEPCO)]**, provided by [Opower] [Advantage Air]: /integrations/advantage_air -[AEP Ohio]: /integrations/aepohio -[AEP Texas]: /integrations/aeptexas +[AEP Ohio]: /integrations/aep_ohio +[AEP Texas]: /integrations/aep_texas [Appalachian Power]: /integrations/appalachianpower [Fujitsu anywAIR]: /integrations/fujitsu_anywair [Indiana Michigan Power]: /integrations/indianamichiganpower From 9754c7549c9f9756c2e2f3ea0b00dce464a12e77 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 29 Dec 2023 08:29:45 +0100 Subject: [PATCH 07/47] Bump sass-embedded from 1.69.5 to 1.69.6 (#30553) --- Gemfile.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 25091e81bb9..642f0f5467b 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -115,8 +115,8 @@ GEM ruby2_keywords (0.0.5) safe_yaml (1.0.5) sass (3.4.25) - sass-embedded (1.69.5-x86_64-linux-gnu) - google-protobuf (~> 3.23) + sass-embedded (1.69.6-x86_64-linux-gnu) + google-protobuf (~> 3.25) sass-globbing (1.1.5) sass (>= 3.1) sassc (2.1.0-x86_64-linux) From 53ed74b57d9747cf9b3680a8746de031ec3c67a2 Mon Sep 17 00:00:00 2001 From: Klaas Schoute Date: Sat, 30 Dec 2023 18:32:16 +0100 Subject: [PATCH 08/47] Add extra Aruba devices to list (#30574) --- source/_integrations/aruba.markdown | 3 +++ 1 file changed, 3 insertions(+) diff --git a/source/_integrations/aruba.markdown b/source/_integrations/aruba.markdown index 0778e577d8a..55741baae04 100644 --- a/source/_integrations/aruba.markdown +++ b/source/_integrations/aruba.markdown @@ -16,6 +16,9 @@ This platform allows you to detect presence by looking at connected devices to a Supported devices (tested): - Aruba AP-105 +- Aruba AP-505 +- Aruba AP-515 +- Aruba IAP-315 - Aruba IAP-335 - Aruba Instant IAP-275 From 60be2ddb9950161d84897975354c627cd0e0406b Mon Sep 17 00:00:00 2001 From: tomlut <10679300+tomlut@users.noreply.github.com> Date: Tue, 2 Jan 2024 21:35:40 +1100 Subject: [PATCH 09/47] Update timer.markdown (#30578) --- source/_integrations/timer.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_integrations/timer.markdown b/source/_integrations/timer.markdown index 041e4e4f2d2..60acde7ac07 100644 --- a/source/_integrations/timer.markdown +++ b/source/_integrations/timer.markdown @@ -107,7 +107,7 @@ Change an active timer. This changes the duration of the timer with the duration ### Service `timer.pause` -Pause a running timer. This will retain the remaining duration for later continuation. You can also use `entity_id: all` and all active timers will be paused. +Pause a running timer. This will retain the remaining duration for later continuation. To resume a timer use the `timer.start` service without passing a duration. You can also use `entity_id: all` and all active timers will be paused. | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------- | From 23c2c3fdea9186a7cf58e4f21f3c6f862a618a6b Mon Sep 17 00:00:00 2001 From: Christian Adamini Date: Tue, 2 Jan 2024 11:41:11 +0100 Subject: [PATCH 10/47] Fix typos and grammar in yaml.markdown (#30597) --- source/_docs/configuration/yaml.markdown | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/source/_docs/configuration/yaml.markdown b/source/_docs/configuration/yaml.markdown index d3f2adda226..6cd47527289 100644 --- a/source/_docs/configuration/yaml.markdown +++ b/source/_docs/configuration/yaml.markdown @@ -3,7 +3,7 @@ title: "YAML" description: "Details about YAML to configure Home Assistant." --- -Home Assistant uses the [YAML](https://yaml.org/) syntax for configuration. YAML might take a while to get used to but is really powerful in allowing you to express complex configurations. +Home Assistant uses the [YAML](https://yaml.org/) syntax for configuration. YAML might take a while to get used to but is powerful in allowing you to express complex configurations. While more and more integrations are configured through the UI, for some, you will add code in your [`configuration.yaml`](/docs/configuration/) file to specify its settings. @@ -21,15 +21,15 @@ notify: The basics of YAML syntax are block collections and mappings containing key-value pairs. Each item in a collection starts with a `-` while mappings have the format `key: value`. This is somewhat similar to a Hash table or more specifically a dictionary in Python. These can be nested as well. **Beware that if you specify duplicate keys, the last value for a key is used**. -Note that indentation is an important part of specifying relationships using YAML. Things that are indented are nested "inside" things that are one level higher. So in the above example, `platform: pushbullet` is a property of (nested inside) the `notify` integration. +In YAML, indentation is important for specifying relationships. Indented lines are nested inside lines that are one level higher. In the above example, `platform: pushbullet` is a property of (nested inside) the `notify` integration. -Getting the right indentation can be tricky if you're not using an editor with a fixed width font. Tabs are not allowed to be used for indentation. Convention is to use 2 spaces for each level of indentation. +Getting the right indentation can be tricky if you're not using an editor with a fixed-width font. Tabs are not allowed to be used for indentation. The convention is to use 2 spaces for each level of indentation. -You can use the online service [YAML Validator](https://codebeautify.org/yaml-validator/) to check if your YAML syntax is correct before loading it into Home Assistant which will save you some time. If you do so, be aware that this is a third-party service and is not maintained by the Home Assistant community. +To check if your YAML syntax is correct before loading it into Home Assistant, you can use the third-party service [YAML Validator](https://codebeautify.org/yaml-validator/) (not maintained by the Home Assistant community).
-Please pay attention to not storing private data (passwords, API keys, etc.) directly in your `configuration.yaml` file. Private data can be stored in either a [separate file](/docs/configuration/secrets/) or in [environmental variables](/docs/configuration/yaml/#using-environment-variables), which circumvents this security problem. +Pay attention to not storing private data (passwords, API keys, etc.) directly in your `configuration.yaml` file. Private data can be stored in either a [separate file](/docs/configuration/secrets/) or in [environmental variables](/docs/configuration/yaml/#using-environment-variables), which circumvents this security problem.
@@ -76,7 +76,7 @@ example: #### Default value -If an environment variable is not set, you can fallback to a default value. +If an environment variable is not set, you can fall back to a default value. ```yaml example: From 35c355ede2fc6fe8def6a12924fc150262640258 Mon Sep 17 00:00:00 2001 From: cheynetom <87618998+cheynetom@users.noreply.github.com> Date: Tue, 2 Jan 2024 02:12:34 -1000 Subject: [PATCH 11/47] Update opnsense.markdown (#30590) --- source/_integrations/opnsense.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_integrations/opnsense.markdown b/source/_integrations/opnsense.markdown index 06df9f5645a..381548a3e38 100644 --- a/source/_integrations/opnsense.markdown +++ b/source/_integrations/opnsense.markdown @@ -14,7 +14,7 @@ ha_platforms: ha_integration_type: integration --- -[OPNsense](https://opnsense.org/) is an open source HardenedBSD based firewall +[OPNsense](https://opnsense.org/) is an open source FreeBSD based firewall and routing platform. There is currently support for the following device types within Home Assistant: From 03b8f0778a9c39a8611e2dcad91c898d8a8e2159 Mon Sep 17 00:00:00 2001 From: Danny Tsang <567982+dannytsang@users.noreply.github.com> Date: Tue, 2 Jan 2024 12:13:18 +0000 Subject: [PATCH 12/47] Created a compability section and added reported devices (#30594) --- source/_integrations/modem_callerid.markdown | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/source/_integrations/modem_callerid.markdown b/source/_integrations/modem_callerid.markdown index 75fcb248439..a49a8b97ae3 100644 --- a/source/_integrations/modem_callerid.markdown +++ b/source/_integrations/modem_callerid.markdown @@ -23,6 +23,14 @@ This integration also offers a button to pick up and then hang up the call to pr {% include integrations/config_flow.md %} +## Compatibility + +Reported models with this integration include that work: +- [StarTech.com USB56KEMH2](https://www.startech.com/en-us/networking-io/usb56kemh2) + +Devices that did not work: +- [StarTech.com USB56KEM3](https://www.startech.com/en-us/networking-io/usb56kem3) + ## Examples An example automation: From ce77969b3507ce630c6a91045163379c4fc15a56 Mon Sep 17 00:00:00 2001 From: Danny Tsang <567982+dannytsang@users.noreply.github.com> Date: Tue, 2 Jan 2024 12:14:34 +0000 Subject: [PATCH 13/47] Added pointer on how to check supported servers for Growatt (#30592) --- source/_integrations/growatt_server.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_integrations/growatt_server.markdown b/source/_integrations/growatt_server.markdown index 3063255ff78..d9f5fb77a2c 100644 --- a/source/_integrations/growatt_server.markdown +++ b/source/_integrations/growatt_server.markdown @@ -13,7 +13,7 @@ ha_config_flow: true ha_integration_type: integration --- -This is a sensor to collect information from your Growatt inverters using [Growatt server](https://server.growatt.com/) by default. It is possible to specify an alternative endpoint server at configuration time e.g., [SMTEN](https://server.smten.com/). +This is a sensor to collect information from your Growatt inverters using [Growatt server](https://server.growatt.com/) by default. It is possible to specify an alternative endpoint server at configuration time e.g., [SMTEN](https://server.smten.com/). To see the latest supported servers, add the integration in Home Assistant to see the configuration options. This will log into your Growatt account and grab the first "Plant", after which it collects the inverters on this plant and creates sensors for these inverters as well as total sensors. From 683651664c56291f47b811a1f02cf923daf517ce Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Jan 2024 13:14:48 +0100 Subject: [PATCH 14/47] Bump sinatra from 3.1.0 to 3.2.0 (#30589) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Gemfile | 2 +- Gemfile.lock | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/Gemfile b/Gemfile index 2ecaf8aff36..0ac5a5572b1 100644 --- a/Gemfile +++ b/Gemfile @@ -21,7 +21,7 @@ group :jekyll_plugins do gem 'jekyll-toc', '0.18.0' end -gem 'sinatra', '3.1.0' +gem 'sinatra', '3.2.0' gem 'nokogiri', '1.16.0' # Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem diff --git a/Gemfile.lock b/Gemfile.lock index 642f0f5467b..b590e404eaa 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -4,6 +4,7 @@ GEM addressable (2.8.6) public_suffix (>= 2.0.2, < 6.0) ast (2.4.2) + base64 (0.2.0) chunky_png (1.4.0) colorator (1.1.0) commonmarker (0.23.10) @@ -84,7 +85,8 @@ GEM public_suffix (5.0.4) racc (1.7.3) rack (2.2.8) - rack-protection (3.1.0) + rack-protection (3.2.0) + base64 (>= 0.1.0) rack (~> 2.2, >= 2.2.4) rainbow (3.1.1) rake (13.1.0) @@ -121,10 +123,10 @@ GEM sass (>= 3.1) sassc (2.1.0-x86_64-linux) ffi (~> 1.9) - sinatra (3.1.0) + sinatra (3.2.0) mustermann (~> 3.0) rack (~> 2.2, >= 2.2.4) - rack-protection (= 3.1.0) + rack-protection (= 3.2.0) tilt (~> 2.0) sorbet-runtime (0.5.11164) stringex (2.8.6) @@ -154,7 +156,7 @@ DEPENDENCIES ruby-lsp (= 0.13.2) sass-globbing (= 1.1.5) sassc (= 2.1.0) - sinatra (= 3.1.0) + sinatra (= 3.2.0) stringex (= 2.8.6) tzinfo (~> 2.0) tzinfo-data From 6ef7d13490142fb02c2132df77affa15d8eaa10b Mon Sep 17 00:00:00 2001 From: Danny Tsang <567982+dannytsang@users.noreply.github.com> Date: Tue, 2 Jan 2024 12:18:37 +0000 Subject: [PATCH 15/47] Removed statement where conditional card only supports "and" (#30593) Co-authored-by: Franck Nijhof --- source/_dashboards/conditional.markdown | 27 +++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/source/_dashboards/conditional.markdown b/source/_dashboards/conditional.markdown index d025ed9d71b..9c4d23f1696 100644 --- a/source/_dashboards/conditional.markdown +++ b/source/_dashboards/conditional.markdown @@ -7,12 +7,7 @@ description: The Conditional card displays another card based on conditions. The conditional card displays another card based on conditions. -

- Screenshot of the conditional card - Screenshot of the conditional card. -

- -Note: if there are multiple conditions there will be treated as an 'and' condition. This means that for the card to show, _all_ conditions must be met. +![Screenshot of the conditional card](/images/dashboards/conditional_card.gif) {% include dashboard/edit_dashboard.md %} Note that while editing the dashboard, the card will always be shown, so be sure to exit editing mode to test the conditions. @@ -40,6 +35,7 @@ card: ## Examples +Only show when all the conditions are met: ```yaml type: conditional conditions: @@ -62,6 +58,25 @@ card: - light.bed_light ``` +Example condition where only one of the conditions needs to be met: +```yaml +type: conditional +conditions: + - condition: or + conditions: + - condition: state + entity: binary_sensor.co_alert + state: 'on' + - condition: state + entity: binary_sensor.rookmelder + state: 'on' +card: + type: entities + entities: + - binary_sensor.co_alert + - binary_sensor.rookmelder +``` + ## Card conditions ### State From 6a636466849042c3d757ad98906a8457dd00edfd Mon Sep 17 00:00:00 2001 From: Erik Montnemery Date: Tue, 2 Jan 2024 13:22:08 +0100 Subject: [PATCH 16/47] Update dormakaba_dkey.markdown (#30583) --- source/_integrations/dormakaba_dkey.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_integrations/dormakaba_dkey.markdown b/source/_integrations/dormakaba_dkey.markdown index f490e7bb799..a35f3599af6 100644 --- a/source/_integrations/dormakaba_dkey.markdown +++ b/source/_integrations/dormakaba_dkey.markdown @@ -28,6 +28,6 @@ In addition to a lock entity, each added dKey lock will also have:
-The Dormakaba dKey lock is currently not working with USB dongles or built-in Bluetooth radios, only [ESPHome Bluetooth proxies](/integrations/bluetooth/#remote-adapters-bluetooth-proxies) work reliably. +The Dormakaba dKey lock is currently not working with USB dongles or built-in Bluetooth radios, only [ESPHome Bluetooth proxies](/integrations/bluetooth/#remote-adapters-bluetooth-proxies) configured to allow active connections work reliably.
From 94d6678e25f51ec45e131bf55bdfa305dcfcb03e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20S=C3=B8rensen?= Date: Tue, 2 Jan 2024 18:43:37 +0100 Subject: [PATCH 17/47] Adjust example for Alexa smart home sensor (#30603) --- source/_integrations/alexa.smart_home.markdown | 1 - 1 file changed, 1 deletion(-) diff --git a/source/_integrations/alexa.smart_home.markdown b/source/_integrations/alexa.smart_home.markdown index 51ecabf6073..9ba11146076 100644 --- a/source/_integrations/alexa.smart_home.markdown +++ b/source/_integrations/alexa.smart_home.markdown @@ -1016,7 +1016,6 @@ Only temperature sensors are configured at this time. - _"Alexa, what's the temperature in the kitchen?"_ - _"Alexa, what's the upstairs temperature?"_ -- _"Alexa, what's the temperature of my ex-girlfriend's heart?"_ ### Switch, Input Boolean From eb4e45507e9e9a242e8ab3fb3980c28f4847998d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 3 Jan 2024 08:01:14 +0100 Subject: [PATCH 18/47] Bump sass-embedded from 1.69.6 to 1.69.7 (#30608) --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index b590e404eaa..ca024f3bcbe 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -117,7 +117,7 @@ GEM ruby2_keywords (0.0.5) safe_yaml (1.0.5) sass (3.4.25) - sass-embedded (1.69.6-x86_64-linux-gnu) + sass-embedded (1.69.7-x86_64-linux-gnu) google-protobuf (~> 3.25) sass-globbing (1.1.5) sass (>= 3.1) From f5e5e80da17f4755c4edf016cfee36190401fa5c Mon Sep 17 00:00:00 2001 From: mkmer Date: Wed, 3 Jan 2024 04:46:02 -0500 Subject: [PATCH 19/47] Add switch to Blink docs (#29534) --- source/_integrations/blink.markdown | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/_integrations/blink.markdown b/source/_integrations/blink.markdown index 71211479769..9bfd8e95b21 100644 --- a/source/_integrations/blink.markdown +++ b/source/_integrations/blink.markdown @@ -7,6 +7,7 @@ ha_category: - Camera - Hub - Sensor + - Switch ha_release: '0.40' ha_iot_class: Cloud Polling ha_codeowners: @@ -47,6 +48,7 @@ Once Home Assistant starts and you authenticate access, the `blink` integration - A `camera` for each camera linked to your Blink sync module. - A `sensor` per camera for temperature and Wi-Fi strength. - A `binary_sensor` motion detection, camera armed status, and battery status. +- A `switch` per camera to enable/disable motion detection Since the cameras are battery operated, setting the `scan_interval` must be done with care so as to not drain the battery too quickly, or hammer Blink's servers with too many API requests. The cameras can be manually updated via the `trigger_camera` service which will ignore the throttling caused by `scan_interval`. As a note, all of the camera-specific sensors are only polled when a new image is requested from the camera. This means that relying on any of these sensors to provide timely and accurate data is not recommended. From 4e4318f163e090c9e91c244ac0ea5bc62361dcb6 Mon Sep 17 00:00:00 2001 From: mkmer Date: Wed, 3 Jan 2024 04:42:18 -0500 Subject: [PATCH 20/47] Update blink for new service calls (#30267) Co-authored-by: Martin Hjelmare --- source/_integrations/blink.markdown | 37 ++++++++++++++++------------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/source/_integrations/blink.markdown b/source/_integrations/blink.markdown index 9bfd8e95b21..862fbf95541 100644 --- a/source/_integrations/blink.markdown +++ b/source/_integrations/blink.markdown @@ -56,27 +56,18 @@ Please note that each camera reports two different states: one as `sensor.blink_ ## Services -Any sequential calls to {% term services %} relating to blink should have a minimum of a 5 second delay in between them to prevent the calls from being throttled and ignored. - -### `blink.blink_update` - -Force a refresh of the Blink system. +Any sequential calls to {% term services %} relating to blink should have a minimum of a 5 second delay in between them to prevent the calls from being throttled and ignored. The services that act on a camera needs a target parameter. ### `blink.trigger_camera` Trigger a camera to take a new still image. -| Service Data Attribute | Optional | Description | -| ---------------------- | -------- | -------------------------------------- | -| `entity_id` | yes | Camera entity to take picture with. | - ### `blink.save_video` Save the last recorded video of a camera to a local file. Note that in most cases, Home Assistant will need to know that the directory is writable via the `allowlist_external_dirs` in your `configuration.yaml` file (see example below). | Service Data Attribute | Optional | Description | | ---------------------- | -------- | ---------------------------------------- | -| `name` | no | Name of camera containing video to save. | | `filename` | no | Location of save file. | ```yaml @@ -85,6 +76,13 @@ homeassistant: - '/tmp' - '/path/to/whitelist' ``` +### `blink.save_recent_clips` + +Save the recent video clips of a camera to a local file in the pattern `%Y%m%d_%H%M%S_{name}.mp4`. Note that in most cases, Home Assistant will need to know that the directory is writable via the `allowlist_external_dirs` in your `configuration.yaml` file. + +| Service Data Attribute | Optional | Description | +| ---------------------- | -------- | ---------------------------------------- | +| `file_path` | no | Location of save files. | ### `blink.send_pin` @@ -92,11 +90,12 @@ Send a new pin to blink. Since Blink's 2FA implementation is new and changing, | Service Data Attribute | Optional | Description | | ---------------------- | -------- | ---------------------------- | +| `config_entry_id` | no | Blink config to send pin to. | | `pin` | no | 2FA Pin received from blink. | ### Other services -In addition to the services mentioned above, there are generic `camera` and `alarm_control_panel` services available for use as well. The `camera.enable_motion_detection` and `camera.disable_motion_detection` services allow for individual cameras to be enabled and disabled, respectively, within the Blink system. The `alarm_control_panel.alarm_arm_away` and `alarm_control_panel.alarm_disarm` services allow for the whole system to be armed and disarmed, respectively. Blink Mini cameras linked to an existing sync module cannot be armed/disarmed individually via Home Assistant. +In addition to the services mentioned above, there are generic `camera`, `alarm_control_panel`, and `homeassistant` services available. The `camera.enable_motion_detection` and `camera.disable_motion_detection` services allow for individual cameras to be enabled and disabled, respectively, within the Blink system. The `alarm_control_panel.alarm_arm_away` and `alarm_control_panel.alarm_disarm` services allow for the whole system to be armed and disarmed, respectively. The `homeassistant.update_entity` service will force an update of the blink system. Blink Mini cameras linked to an existing sync module cannot be armed/disarmed individually via Home Assistant. ## Examples @@ -113,7 +112,9 @@ sequence: target: entity_id: camera.blink_my_camera - delay: 00:00:05 - - service: blink.blink_update + - service: homeassistant.update_entity + target: + entity_id: camera.blink_my_camera - service: camera.snapshot target: entity_id: camera.blink_my_camera @@ -173,10 +174,11 @@ The following example assumes your camera's name (in the Blink app) is `My Camer entity_id: binary_sensor.blink_my_camera_motion_detected to: "on" action: - service: blink.save_video - data: - name: "My Camera" - filename: "/tmp/videos/blink_video_{{ now().strftime('%Y%m%d_%H%M%S') }}.mp4" + - service: blink.save_video + target: + entity_id: camera.blink_my_camera + data: + filename: "/tmp/videos/blink_video_{{ now().strftime('%Y%m%d_%H%M%S') }}.mp4" ``` {% endraw %} @@ -201,7 +203,8 @@ The file name of the downloaded video file is not configurable. minutes: /3 action: - service: blink.save_recent_clips + target: + entity_id: camera.my_camera data: - name: My Camera file_path: /tmp/videos ``` From 209d03bd13dfb40c2e0b74fc650b165a1b8916af Mon Sep 17 00:00:00 2001 From: Robert Groot <8398505+iamrgroot@users.noreply.github.com> Date: Wed, 3 Jan 2024 10:40:16 +0100 Subject: [PATCH 21/47] EnergyZero: added config entry (#30460) --- source/_integrations/energyzero.markdown | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/source/_integrations/energyzero.markdown b/source/_integrations/energyzero.markdown index ee3088d958b..84a98fa45ac 100644 --- a/source/_integrations/energyzero.markdown +++ b/source/_integrations/energyzero.markdown @@ -59,10 +59,11 @@ The energy and gas prices are exposed using [service calls](/docs/scripts/servic ### Service `energyzero.get_gas_prices` -Fetches the gas prices. +Fetches the gas prices. The `config_entry` value be found using the Services tab in the Developer Tools, selecting the desired entity and then switching to YAML. | Service data attribute | Optional | Description | Example | | ---------------------- | -------- | ----------- | --------| +| `config_entry` | no | Config entry to use. | 1b4a46c6cba0677bbfb5a8c53e8618b0 | `incl_vat` | no | Defines whether the prices include or exclude VAT. | false | `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00 | `end` | yes | End time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00 @@ -93,10 +94,11 @@ The response data is a dictionary with the gas timestamps and prices as string a ### Service `energyzero.get_energy_prices` -Fetches the energy prices. +Fetches the energy prices. The `config_entry` value be found using the Services tab in the Developer Tools, selecting the desired entity and then switching to YAML. | Service data attribute | Optional | Description | Example | | ---------------------- | -------- | ----------- | --------| +| `config_entry` | no | Config entry to use. Can be found using the Services tab in the Developer Tools and switching to YAML. | 1b4a46c6cba0677bbfb5a8c53e8618b0 | `incl_vat` | no | Defines whether the prices include or exclude VAT. | false | `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00 | `end` | yes | End time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00 @@ -139,6 +141,7 @@ template: - service: energyzero.get_energy_prices response_variable: prices data: + config_entry: 1b4a46c6cba0677bbfb5a8c53e8618b0 incl_vat: false sensor: - name: Energy prices From cacd3d39193ccaa6bca14229c1cb5cef1ac4154b Mon Sep 17 00:00:00 2001 From: Jan Bouwhuis Date: Tue, 2 Jan 2024 13:15:48 +0100 Subject: [PATCH 22/47] Late review on drop_connect docs (#30527) --- source/_integrations/drop_connect.markdown | 31 +++++++++++----------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/source/_integrations/drop_connect.markdown b/source/_integrations/drop_connect.markdown index 1563be55846..fb52c0a0db3 100644 --- a/source/_integrations/drop_connect.markdown +++ b/source/_integrations/drop_connect.markdown @@ -38,20 +38,9 @@ There is currently support for the following DROP products within Home Assistant - **RO Filter**: reverse osmosis drinking water filtration. - **Salt Sensor**: alerts when the salt level in the softener brine tank is low. -### Configuration +### Pre-requisites -To use DROP with Home Assistant, you must have already configured the [MQTT](/integrations/mqtt/) platform. It is -recommended -that you create a unique user to connect your DROP Hub to your MQTT broker. If you are -using the Mosquitto add-on, go to **Settings > Add-ons** in the Home Assistant UI and select the Mosquitto broker. -Under **Configuration**, enter a new username and password for your DROP Hub in the **Logins** field: - -```yaml -- username: drop - password: your_unique_password -``` - -If you are using a different MQTT broker, please reference its documentation to learn how to add a new user. +To use DROP with Home Assistant, you must have already configured the [MQTT](/integrations/mqtt/) platform. To enable the DROP integration, use the DROP Connect app to connect your DROP Hub to your MQTT broker: @@ -60,7 +49,19 @@ To enable the DROP integration, use the DROP Connect app to connect your DROP Hu - Enter the MQTT broker address, port number, username, and password. - Click **Connect** and confirm that the DROP Hub has connected to the MQTT broker. -Once the DROP Hub is connected to your MQTT broker, the devices on your DROP system will be discovered by Home +Once the DROP Hub is connected to your MQTT broker, the devices on your DROP system should be discovered by Home Assistant. -Go to **Settings > Devices & Services** in the Home Assistant UI to add your DROP devices. +{% details "Manual configuration steps" %} + +- Browse to your Home Assistant instance. +- Go to **{% my integrations title="Settings > Devices & Services" %}**. +- Set up the new discovered devices. + +{% enddetails %} + +
+ +The MQTT broker address and port used for the DROP Hub must be the same as configured for the Home Assistant MQTT integration. + +
From 2349d482d581e383daef7ed144f93a8aff50fd38 Mon Sep 17 00:00:00 2001 From: Joost Lekkerkerker Date: Thu, 28 Dec 2023 21:58:45 +0100 Subject: [PATCH 23/47] Move aeptexas to aep_texas (#30544) --- source/_integrations/{aeptexas.markdown => aep_texas.markdown} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename source/_integrations/{aeptexas.markdown => aep_texas.markdown} (94%) diff --git a/source/_integrations/aeptexas.markdown b/source/_integrations/aep_texas.markdown similarity index 94% rename from source/_integrations/aeptexas.markdown rename to source/_integrations/aep_texas.markdown index 3756a789eb7..e469c2647ae 100644 --- a/source/_integrations/aeptexas.markdown +++ b/source/_integrations/aep_texas.markdown @@ -5,7 +5,7 @@ ha_category: - Energy - Sensor ha_release: 2024.1 -ha_domain: aeptexas +ha_domain: aep_texas ha_integration_type: virtual ha_supporting_domain: opower ha_supporting_integration: Opower From 2d05ce0e6eb35dcbd4f81ddb164a74b85e629b0a Mon Sep 17 00:00:00 2001 From: Joost Lekkerkerker Date: Thu, 28 Dec 2023 22:24:28 +0100 Subject: [PATCH 24/47] Move aepohio to aep_ohio (#30545) --- source/_integrations/{aepohio.markdown => aep_ohio.markdown} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename source/_integrations/{aepohio.markdown => aep_ohio.markdown} (95%) diff --git a/source/_integrations/aepohio.markdown b/source/_integrations/aep_ohio.markdown similarity index 95% rename from source/_integrations/aepohio.markdown rename to source/_integrations/aep_ohio.markdown index babf499cc73..db10a6ca436 100644 --- a/source/_integrations/aepohio.markdown +++ b/source/_integrations/aep_ohio.markdown @@ -5,7 +5,7 @@ ha_category: - Energy - Sensor ha_release: 2024.1 -ha_domain: aepohio +ha_domain: aep_ohio ha_integration_type: virtual ha_supporting_domain: opower ha_supporting_integration: Opower From 8fe226ddaaa62295de3e250cf8af82f3b47b5088 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 3 Jan 2024 11:01:45 +0100 Subject: [PATCH 25/47] 2024.1: Sync codebase with docs --- CODEOWNERS | 43 ++++++++++++++----- source/_integrations/aep_ohio.markdown | 2 +- source/_integrations/aep_texas.markdown | 2 +- source/_integrations/aladdin_connect.markdown | 1 + source/_integrations/aosmith.markdown | 3 +- .../_integrations/appalachianpower.markdown | 2 +- source/_integrations/blue_current.markdown | 3 +- source/_integrations/braviatv.markdown | 1 + source/_integrations/ccm15.markdown | 3 +- source/_integrations/co2signal.markdown | 1 + source/_integrations/cribl.markdown | 1 - source/_integrations/enigma2.markdown | 2 +- source/_integrations/enmax.markdown | 2 +- source/_integrations/flexit_bacnet.markdown | 8 +++- source/_integrations/foscam.markdown | 1 + source/_integrations/fujitsu_anywair.markdown | 21 +++++++-- source/_integrations/goodwe.markdown | 1 + source/_integrations/idasen_desk.markdown | 1 - .../indianamichiganpower.markdown | 2 +- source/_integrations/kentuckypower.markdown | 2 +- source/_integrations/netgear_lte.markdown | 2 - source/_integrations/osoenergy.markdown | 2 +- source/_integrations/peco.markdown | 1 + source/_integrations/portlandgeneral.markdown | 6 +-- source/_integrations/psoklahoma.markdown | 2 +- source/_integrations/qbittorrent.markdown | 1 - source/_integrations/radio_browser.markdown | 1 - source/_integrations/refoss.markdown | 2 +- source/_integrations/rest_command.markdown | 2 + source/_integrations/scl.markdown | 2 +- source/_integrations/starline.markdown | 4 +- source/_integrations/swepco.markdown | 2 +- source/_integrations/systemmonitor.markdown | 2 + source/_integrations/tado.markdown | 1 + source/_integrations/tailwind.markdown | 3 ++ source/_integrations/tankerkoenig.markdown | 1 + source/_integrations/tessie.markdown | 2 + source/_integrations/trend.markdown | 2 +- source/_integrations/unifi_direct.markdown | 2 + source/_integrations/utility_meter.markdown | 1 - source/_integrations/vesync.markdown | 1 + source/_integrations/weather.markdown | 2 +- source/_integrations/whisper.markdown | 1 + source/_integrations/wyoming.markdown | 6 ++- 44 files changed, 105 insertions(+), 48 deletions(-) diff --git a/CODEOWNERS b/CODEOWNERS index 162f6bae087..2d100b931d2 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -16,6 +16,8 @@ source/_integrations/adax.markdown @danielhiversen source/_integrations/adguard.markdown @frenck source/_integrations/advantage_air.markdown @Bre77 source/_integrations/aemet.markdown @Noltari +source/_integrations/aep_ohio.markdown @tronikos +source/_integrations/aep_texas.markdown @tronikos source/_integrations/agent_dvr.markdown @ispysoftware source/_integrations/air_quality.markdown @home-assistant/core source/_integrations/airly.markdown @bieniu @@ -32,7 +34,7 @@ source/_integrations/aladdin_connect.markdown @mkmer source/_integrations/alarm_control_panel.markdown @home-assistant/core source/_integrations/alert.markdown @home-assistant/core @frenck source/_integrations/alexa.markdown @home-assistant/cloud @ochlocracy @jbouwh -source/_integrations/alexa.smart_home.markdown @home-assistant/cloud @ochlocracy +source/_integrations/alexa.smart_home.markdown @home-assistant/cloud @ochlocracy @jbouwh source/_integrations/amberelectric.markdown @madpilot source/_integrations/ambiclimate.markdown @danielhiversen source/_integrations/ambient_station.markdown @bachya @@ -45,9 +47,11 @@ source/_integrations/androidtv_remote.markdown @tronikos @Drafteed source/_integrations/anova.markdown @Lash-L source/_integrations/anthemav.markdown @hyralex source/_integrations/anwb_energie.markdown @klaasnicolaas +source/_integrations/aosmith.markdown @bdr99 source/_integrations/apache_kafka.markdown @bachya source/_integrations/apcupsd.markdown @yuxincs source/_integrations/api.markdown @home-assistant/core +source/_integrations/appalachianpower.markdown @tronikos source/_integrations/apple_tv.markdown @postlund source/_integrations/application_credentials.markdown @home-assistant/core source/_integrations/apprise.markdown @caronc @@ -87,6 +91,7 @@ source/_integrations/blebox.markdown @bbx-a @riokuu source/_integrations/blink.markdown @fronzbot @mkmer source/_integrations/bliss_automation.markdown @starkillerOG source/_integrations/bloc_blinds.markdown @starkillerOG +source/_integrations/blue_current.markdown @Floris272 @gleeuwen source/_integrations/bluemaestro.markdown @bdraco source/_integrations/blueprint.markdown @home-assistant/core source/_integrations/bluesound.markdown @thrawnarn @@ -113,6 +118,7 @@ source/_integrations/button.markdown @home-assistant/core source/_integrations/calendar.markdown @home-assistant/core source/_integrations/camera.markdown @home-assistant/core source/_integrations/cast.markdown @emontnemery +source/_integrations/ccm15.markdown @ocalvo source/_integrations/cert_expiry.markdown @jjlawren source/_integrations/circuit.markdown @braam source/_integrations/cisco_ios.markdown @fbradyirl @@ -121,7 +127,7 @@ source/_integrations/cisco_webex_teams.markdown @fbradyirl source/_integrations/climate.markdown @home-assistant/core source/_integrations/cloud.markdown @home-assistant/cloud source/_integrations/cloudflare.markdown @ludeeus @ctalkington -source/_integrations/co2signal.markdown @jpbede +source/_integrations/co2signal.markdown @jpbede @VIKTORVAV99 source/_integrations/coinbase.markdown @tombrien source/_integrations/color_extractor.markdown @GenericStudent source/_integrations/comed.markdown @tronikos @@ -177,6 +183,7 @@ source/_integrations/doorbird.markdown @oblogic7 @bdraco @flacjacket source/_integrations/dooya.markdown @starkillerOG source/_integrations/dormakaba_dkey.markdown @emontnemery source/_integrations/dremel_3d_printer.markdown @tkdrob +source/_integrations/drop_connect.markdown @ChandlerSystems @pfrazer source/_integrations/dsmr.markdown @Robbie1221 @frenck source/_integrations/dsmr_reader.markdown @depl0y @glodenox source/_integrations/duotecno.markdown @cereal2nd @@ -205,7 +212,7 @@ source/_integrations/emulated_kasa.markdown @kbickar source/_integrations/energie_vanons.markdown @klaasnicolaas source/_integrations/energy.markdown @home-assistant/core source/_integrations/energyzero.markdown @klaasnicolaas -source/_integrations/enigma2.markdown @fbradyirl +source/_integrations/enigma2.markdown @autinerd source/_integrations/enmax.markdown @tronikos source/_integrations/enocean.markdown @bdurrer source/_integrations/enphase_envoy.markdown @bdraco @cgarwood @dgomes @joostlek @catsmanac @@ -237,6 +244,7 @@ source/_integrations/firmata.markdown @DaAwesomeP source/_integrations/fitbit.markdown @allenporter source/_integrations/fivem.markdown @Sander0542 source/_integrations/fjaraskupan.markdown @elupus +source/_integrations/flexit_bacnet.markdown @lellky @piotrbulinski source/_integrations/flexom.markdown @imicknl @vlebourl @tetienne @nyroDev source/_integrations/flick_electric.markdown @ZephireNZ source/_integrations/flipr.markdown @cnico @@ -246,7 +254,7 @@ source/_integrations/flux_led.markdown @icemanch source/_integrations/forecast_solar.markdown @klaasnicolaas @frenck source/_integrations/forked_daapd.markdown @uvjustin source/_integrations/fortios.markdown @kimfrellsen -source/_integrations/foscam.markdown @skgsergio +source/_integrations/foscam.markdown @skgsergio @krmarien source/_integrations/freebox.markdown @hacf-fr @Quentame source/_integrations/freedompro.markdown @stefano055415 source/_integrations/fritz.markdown @mammuth @AaronDavidSchneider @chemelli74 @mib1185 @@ -255,6 +263,7 @@ source/_integrations/fritzbox_callmonitor.markdown @cdce8p source/_integrations/fronius.markdown @farmio source/_integrations/frontend.markdown @home-assistant/frontend source/_integrations/frontier_silicon.markdown @wlcrs +source/_integrations/fujitsu_anywair.markdown @Bre77 source/_integrations/fully_kiosk.markdown @cgarwood source/_integrations/garages_amsterdam.markdown @klaasnicolaas source/_integrations/gardena_bluetooth.markdown @elupus @@ -308,6 +317,7 @@ source/_integrations/hisense_aehw4a1.markdown @bannhead source/_integrations/history.markdown @home-assistant/core source/_integrations/hive.markdown @Rendili @KJonline source/_integrations/hlk_sw16.markdown @jameshilliard +source/_integrations/holiday.markdown @jrieger source/_integrations/home_connect.markdown @DavidMStraub source/_integrations/home_plus_control.markdown @chemaaa source/_integrations/homeassistant.markdown @home-assistant/core @@ -344,6 +354,7 @@ source/_integrations/image_upload.markdown @home-assistant/core source/_integrations/imap.markdown @jbouwh source/_integrations/improv_ble.markdown @emontnemery source/_integrations/incomfort.markdown @zxdavb +source/_integrations/indianamichiganpower.markdown @tronikos source/_integrations/influxdb.markdown @mdegat01 source/_integrations/inkbird.markdown @bdraco source/_integrations/input_boolean.markdown @home-assistant/core @@ -379,13 +390,13 @@ source/_integrations/keba.markdown @dannerph source/_integrations/keenetic_ndms2.markdown @foxel source/_integrations/kef.markdown @basnijholt source/_integrations/kegtron.markdown @Ernst79 +source/_integrations/kentuckypower.markdown @tronikos source/_integrations/keyboard_remote.markdown @bendavid @lanrat source/_integrations/keymitt_ble.markdown @spycle source/_integrations/kitchen_sink.markdown @home-assistant/core source/_integrations/kmtronic.markdown @dgomes source/_integrations/knx.markdown @Julius2342 @farmio @marvin-w source/_integrations/kodi.markdown @OnFreund -source/_integrations/komfovent.markdown @ProstoSanja source/_integrations/konnected.markdown @heythisisnate source/_integrations/kostal_plenticore.markdown @stegm source/_integrations/kraken.markdown @eifinger @@ -537,7 +548,7 @@ source/_integrations/opower.markdown @tronikos source/_integrations/oralb.markdown @bdraco @Lash-L source/_integrations/oru.markdown @bvlaicu source/_integrations/oru_opower.markdown @tronikos -source/_integrations/osoenergy @osohotwateriot +source/_integrations/osoenergy.markdown @osohotwateriot source/_integrations/otbr.markdown @home-assistant/core source/_integrations/ourgroceries.markdown @OnFreund source/_integrations/overkiz.markdown @imicknl @vlebourl @tetienne @nyroDev @@ -573,9 +584,10 @@ source/_integrations/prometheus.markdown @knyar source/_integrations/prosegur.markdown @dgomes source/_integrations/proximity.markdown @mib1185 source/_integrations/proxmoxve.markdown @jhollowe @Corbeno -source/_integrations/prusalink.markdown @balloob +source/_integrations/prusalink.markdown @balloob @Skaronator source/_integrations/ps4.markdown @ktnrg45 source/_integrations/pse.markdown @tronikos +source/_integrations/psoklahoma.markdown @tronikos source/_integrations/pure_energie.markdown @klaasnicolaas source/_integrations/purpleair.markdown @bachya source/_integrations/push.markdown @dgomes @@ -583,7 +595,7 @@ source/_integrations/pushbullet.markdown @engrbm87 source/_integrations/pushover.markdown @engrbm87 source/_integrations/pvoutput.markdown @frenck source/_integrations/pvpc_hourly_pricing.markdown @azogue -source/_integrations/qbittorrent.markdown @geoffreylagaisse +source/_integrations/qbittorrent.markdown @geoffreylagaisse @finder39 source/_integrations/qingping.markdown @bdraco @skgsergio source/_integrations/qld_bushfire.markdown @exxamalte source/_integrations/qnap.markdown @disforw @@ -607,6 +619,7 @@ source/_integrations/rdw.markdown @frenck @joostlek source/_integrations/recollect_waste.markdown @bachya source/_integrations/recorder.markdown @home-assistant/core source/_integrations/recovery_mode.markdown @home-assistant/core +source/_integrations/refoss.markdown @ashionky source/_integrations/rejseplanen.markdown @DarkFox source/_integrations/remote.markdown @home-assistant/core source/_integrations/renault.markdown @epenet @@ -614,6 +627,7 @@ source/_integrations/renson.markdown @jimmyd-be source/_integrations/reolink.markdown @starkillerOG source/_integrations/repairs.markdown @home-assistant/core source/_integrations/repetier.markdown @ShadowBr0ther +source/_integrations/rest_command.markdown @jpbede source/_integrations/rexel.markdown @imicknl @vlebourl @tetienne @nyroDev source/_integrations/rflink.markdown @javicalle source/_integrations/rfxtrx.markdown @danielhiversen @elupus @RobBie1221 @@ -641,6 +655,7 @@ source/_integrations/scene.markdown @home-assistant/core source/_integrations/schedule.markdown @home-assistant/core source/_integrations/schlage.markdown @dknowles2 source/_integrations/schluter.markdown @prairieapps +source/_integrations/scl.markdown @tronikos source/_integrations/scrape.markdown @fabaff @gjohansson-ST source/_integrations/screenaway.markdown @starkillerOG source/_integrations/screenlogic.markdown @dieselrabbit @bdraco @@ -724,10 +739,12 @@ source/_integrations/stt.markdown @home-assistant/core source/_integrations/subaru.markdown @G-Two source/_integrations/suez_water.markdown @ooii source/_integrations/sun.markdown @Swamp-Ig +source/_integrations/sunweg.markdown @rokam source/_integrations/supla.markdown @mwegrzynek source/_integrations/surepetcare.markdown @benleb @danielhiversen +source/_integrations/swepco.markdown @tronikos source/_integrations/swiss_hydrological_data.markdown @fabaff -source/_integrations/swiss_public_transport.markdown @fabaff +source/_integrations/swiss_public_transport.markdown @fabaff @miaucl source/_integrations/switch.markdown @home-assistant/core source/_integrations/switch_as_x.markdown @home-assistant/core source/_integrations/switchbee.markdown @jafar-atili @@ -741,9 +758,11 @@ source/_integrations/syncthru.markdown @nielstron source/_integrations/synology_dsm.markdown @hacf-fr @Quentame @mib1185 source/_integrations/synology_srm.markdown @aerialls source/_integrations/system_bridge.markdown @timmo001 -source/_integrations/tado.markdown @michaelarnauts @chiefdragon +source/_integrations/systemmonitor.markdown @gjohansson-ST +source/_integrations/tado.markdown @michaelarnauts @chiefdragon @erwindouna source/_integrations/tag.markdown @balloob @dmulcahey source/_integrations/tailscale.markdown @frenck +source/_integrations/tailwind.markdown @frenck source/_integrations/tami4.markdown @Guy293 source/_integrations/tankerkoenig.markdown @guillempages @mib1185 source/_integrations/tapsaff.markdown @bazwilliams @@ -752,6 +771,7 @@ source/_integrations/tautulli.markdown @ludeeus @tkdrob source/_integrations/tellduslive.markdown @fredrike source/_integrations/template.markdown @PhracturedBlue @tetienne @home-assistant/core source/_integrations/tesla_wall_connector.markdown @einarhauks +source/_integrations/tessie.markdown @Bre77 source/_integrations/text.markdown @home-assistant/core source/_integrations/tfiac.markdown @fredrike @mellado source/_integrations/thermobeacon.markdown @bdraco @@ -788,6 +808,7 @@ source/_integrations/twitch.markdown @joostlek source/_integrations/ubiwizz.markdown @imicknl @vlebourl @tetienne @nyroDev source/_integrations/ukraine_alarm.markdown @PaulAnnekov source/_integrations/unifi.markdown @Kane610 +source/_integrations/unifi_direct.markdown @tofuSCHNITZEL source/_integrations/unifiled.markdown @florisvdk source/_integrations/unifiprotect.markdown @AngellusMortis @bdraco source/_integrations/upb.markdown @gwww @@ -811,7 +832,7 @@ source/_integrations/venstar.markdown @garbled1 @jhollowe source/_integrations/vermont_castings.markdown @jeeftor source/_integrations/versasense.markdown @imstevenxyz source/_integrations/version.markdown @ludeeus -source/_integrations/vesync.markdown @markperdue @webdjoe @thegardenmonkey +source/_integrations/vesync.markdown @markperdue @webdjoe @thegardenmonkey @cdnninja source/_integrations/vicare.markdown @CFenner source/_integrations/vilfo.markdown @ManneW source/_integrations/vivotek.markdown @HarlemSquirrel diff --git a/source/_integrations/aep_ohio.markdown b/source/_integrations/aep_ohio.markdown index db10a6ca436..257a024d6ac 100644 --- a/source/_integrations/aep_ohio.markdown +++ b/source/_integrations/aep_ohio.markdown @@ -4,7 +4,7 @@ description: Get energy usage from AEP Ohio using the Opower integration ha_category: - Energy - Sensor -ha_release: 2024.1 +ha_release: 2023.8 ha_domain: aep_ohio ha_integration_type: virtual ha_supporting_domain: opower diff --git a/source/_integrations/aep_texas.markdown b/source/_integrations/aep_texas.markdown index e469c2647ae..34a6774cac4 100644 --- a/source/_integrations/aep_texas.markdown +++ b/source/_integrations/aep_texas.markdown @@ -4,7 +4,7 @@ description: Get energy usage from AEP Texas using the Opower integration ha_category: - Energy - Sensor -ha_release: 2024.1 +ha_release: 2023.8 ha_domain: aep_texas ha_integration_type: virtual ha_supporting_domain: opower diff --git a/source/_integrations/aladdin_connect.markdown b/source/_integrations/aladdin_connect.markdown index ce995ea79ff..e557c2f6380 100644 --- a/source/_integrations/aladdin_connect.markdown +++ b/source/_integrations/aladdin_connect.markdown @@ -14,6 +14,7 @@ ha_integration_type: integration ha_codeowners: - '@mkmer' ha_config_flow: true +ha_quality_scale: platinum --- The Aladdin Connect integration lets you control Genie Aladdin Connect garage doors through Home Assistant. diff --git a/source/_integrations/aosmith.markdown b/source/_integrations/aosmith.markdown index 18068974298..1e5adfd8f92 100644 --- a/source/_integrations/aosmith.markdown +++ b/source/_integrations/aosmith.markdown @@ -10,6 +10,7 @@ ha_config_flow: true ha_codeowners: - '@bdr99' ha_platforms: + - sensor - water_heater ha_integration_type: integration --- @@ -45,4 +46,4 @@ The following sensor entities are available: ## Disclaimer -This integration is not affiliated with or endorsed by A. O. Smith. \ No newline at end of file +This integration is not affiliated with or endorsed by A. O. Smith. diff --git a/source/_integrations/appalachianpower.markdown b/source/_integrations/appalachianpower.markdown index 4a881938339..f42024c5c3e 100644 --- a/source/_integrations/appalachianpower.markdown +++ b/source/_integrations/appalachianpower.markdown @@ -4,7 +4,7 @@ description: Get energy usage from Appalachian Power using the Opower integratio ha_category: - Energy - Sensor -ha_release: 2024.1 +ha_release: 2023.8 ha_domain: appalachianpower ha_integration_type: virtual ha_supporting_domain: opower diff --git a/source/_integrations/blue_current.markdown b/source/_integrations/blue_current.markdown index 966dc07af93..fe29c46ff7f 100644 --- a/source/_integrations/blue_current.markdown +++ b/source/_integrations/blue_current.markdown @@ -2,8 +2,8 @@ title: Blue Current description: Instructions on how to integrate Blue Current charge points within Home Assistant. ha_category: - - Sensor - Car + - Sensor ha_release: 2024.1 ha_iot_class: Cloud Push ha_config_flow: true @@ -13,6 +13,7 @@ ha_codeowners: ha_domain: blue_current ha_platforms: - sensor +ha_integration_type: integration --- [Blue Current](https://www.bluecurrent.nl/) is an Dutch company that makes electric car chargers. diff --git a/source/_integrations/braviatv.markdown b/source/_integrations/braviatv.markdown index 5688534a7d8..5333a18235c 100644 --- a/source/_integrations/braviatv.markdown +++ b/source/_integrations/braviatv.markdown @@ -14,6 +14,7 @@ ha_domain: braviatv ha_config_flow: true ha_platforms: - button + - diagnostics - media_player - remote ha_ssdp: true diff --git a/source/_integrations/ccm15.markdown b/source/_integrations/ccm15.markdown index 267a7becd1e..2a8dc78990c 100644 --- a/source/_integrations/ccm15.markdown +++ b/source/_integrations/ccm15.markdown @@ -9,10 +9,9 @@ ha_config_flow: true ha_codeowners: - '@ocalvo' ha_domain: ccm15 -ha_quality_scale: platinum -ha_dhcp: true ha_platforms: - climate + - diagnostics ha_integration_type: integration --- diff --git a/source/_integrations/co2signal.markdown b/source/_integrations/co2signal.markdown index dafd88f8ff1..250ddfdf566 100644 --- a/source/_integrations/co2signal.markdown +++ b/source/_integrations/co2signal.markdown @@ -15,6 +15,7 @@ ha_config_flow: true ha_integration_type: service ha_codeowners: - '@jpbede' + - '@VIKTORVAV99' --- The `Electricity Maps` sensor platform (formerly known as CO2Signal) queries the [Electricity Maps](https://www.electricitymaps.com/) API for the CO2 intensity of a specific region. Data can be collected for your home by using the latitude/longitude or a country code. This API uses the same data as . Not all countries/regions in the world are supported, so please consult the app to check local availability. diff --git a/source/_integrations/cribl.markdown b/source/_integrations/cribl.markdown index e0d9019a8f8..3490909392a 100644 --- a/source/_integrations/cribl.markdown +++ b/source/_integrations/cribl.markdown @@ -3,7 +3,6 @@ title: Cribl description: Send events to Cribl. ha_category: - History -ha_iot_class: Local Push ha_release: 0.13 ha_domain: cribl ha_supporting_domain: splunk diff --git a/source/_integrations/enigma2.markdown b/source/_integrations/enigma2.markdown index 372fb9f703e..10b0bf20a4a 100644 --- a/source/_integrations/enigma2.markdown +++ b/source/_integrations/enigma2.markdown @@ -6,7 +6,7 @@ ha_category: ha_release: '0.90' ha_iot_class: Local Polling ha_codeowners: - - '@fbradyirl' + - '@autinerd' ha_domain: enigma2 ha_platforms: - media_player diff --git a/source/_integrations/enmax.markdown b/source/_integrations/enmax.markdown index ddf7e10784a..e0dba77b7a7 100644 --- a/source/_integrations/enmax.markdown +++ b/source/_integrations/enmax.markdown @@ -4,7 +4,7 @@ description: Get energy usage from Enmax Energy using the Opower integration ha_category: - Energy - Sensor -ha_release: '2023.10' +ha_release: 2023.8 ha_domain: enmax ha_integration_type: virtual ha_supporting_domain: opower diff --git a/source/_integrations/flexit_bacnet.markdown b/source/_integrations/flexit_bacnet.markdown index bff795e24ba..393f3885b4d 100644 --- a/source/_integrations/flexit_bacnet.markdown +++ b/source/_integrations/flexit_bacnet.markdown @@ -1,5 +1,5 @@ --- -title: Flexit BACnet +title: Flexit Nordic (BACnet) description: Instructions on how to integrate Flexit air handling unit into Home Assistant. ha_category: - Climate @@ -8,7 +8,11 @@ ha_iot_class: Local Polling ha_domain: flexit_bacnet ha_platforms: - climate -ha_integration_type: integration +ha_integration_type: device +ha_codeowners: + - '@lellky' + - '@piotrbulinski' +ha_config_flow: true --- Integrates [Flexit](https://www.flexit.no/en/) Nordic series air handling unit into Home Assistant. diff --git a/source/_integrations/foscam.markdown b/source/_integrations/foscam.markdown index 51eaecbe76f..c229a681bb4 100644 --- a/source/_integrations/foscam.markdown +++ b/source/_integrations/foscam.markdown @@ -7,6 +7,7 @@ ha_iot_class: Local Polling ha_release: 0.7.3 ha_codeowners: - '@skgsergio' + - '@krmarien' ha_domain: foscam ha_config_flow: true ha_platforms: diff --git a/source/_integrations/fujitsu_anywair.markdown b/source/_integrations/fujitsu_anywair.markdown index 8157c8cd3ea..9b3d166d297 100644 --- a/source/_integrations/fujitsu_anywair.markdown +++ b/source/_integrations/fujitsu_anywair.markdown @@ -1,21 +1,34 @@ --- title: Fujitsu anywAIR -description: Instructions on how to integrate Fujitsu anywAIR controller into Home Assistant. +description: Connect and control your Fujitsu anywAIR devices using the Advantage Air integration ha_category: + - Binary switch - Climate - Cover - Light - Sensor + - Switch + - Update - Update ha_release: 0.117 -ha_iot_class: Local Polling -ha_config_flow: true ha_domain: fujitsu_anywair ha_supporting_domain: advantage_air ha_supporting_integration: Advantage Air +ha_integration_type: virtual ha_codeowners: - '@Bre77' -ha_integration_type: virtual +ha_config_flow: true +ha_platforms: + - binary_sensor + - climate + - cover + - diagnostics + - light + - select + - sensor + - switch + - update +ha_iot_class: Local Polling --- {% include integrations/supported_brand.md %} diff --git a/source/_integrations/goodwe.markdown b/source/_integrations/goodwe.markdown index b7946059cd8..9220e4fe4b4 100644 --- a/source/_integrations/goodwe.markdown +++ b/source/_integrations/goodwe.markdown @@ -13,6 +13,7 @@ ha_codeowners: ha_domain: goodwe ha_platforms: - button + - diagnostics - number - select - sensor diff --git a/source/_integrations/idasen_desk.markdown b/source/_integrations/idasen_desk.markdown index 7f3a44c8aa9..2e948d66857 100644 --- a/source/_integrations/idasen_desk.markdown +++ b/source/_integrations/idasen_desk.markdown @@ -16,7 +16,6 @@ ha_platforms: ha_integration_type: integration ha_codeowners: - '@abmantis' -ha_quality_scale: silver --- The IKEA IDĂ…SEN integration allows you to connect your IKEA IdĂĄsen motorized desk to Home Assistant, making it possible to control the desk height and also monitor height changes from the physical controller. diff --git a/source/_integrations/indianamichiganpower.markdown b/source/_integrations/indianamichiganpower.markdown index ed7cd4b5071..bacb278d251 100644 --- a/source/_integrations/indianamichiganpower.markdown +++ b/source/_integrations/indianamichiganpower.markdown @@ -4,7 +4,7 @@ description: Get energy usage from Indiana Michigan Power using the Opower integ ha_category: - Energy - Sensor -ha_release: 2024.1 +ha_release: 2023.8 ha_domain: indianamichiganpower ha_integration_type: virtual ha_supporting_domain: opower diff --git a/source/_integrations/kentuckypower.markdown b/source/_integrations/kentuckypower.markdown index f6e38adb837..83a5aad1c9d 100644 --- a/source/_integrations/kentuckypower.markdown +++ b/source/_integrations/kentuckypower.markdown @@ -4,7 +4,7 @@ description: Get energy usage from Kentucky Power using the Opower integration ha_category: - Energy - Sensor -ha_release: 2024.1 +ha_release: 2023.8 ha_domain: kentuckypower ha_integration_type: virtual ha_supporting_domain: opower diff --git a/source/_integrations/netgear_lte.markdown b/source/_integrations/netgear_lte.markdown index 8522c73aa3f..41970ddd18f 100644 --- a/source/_integrations/netgear_lte.markdown +++ b/source/_integrations/netgear_lte.markdown @@ -17,8 +17,6 @@ ha_platforms: ha_codeowners: - '@tkdrob' ha_integration_type: integration -ha_codeowners: - - '@tkdrob' --- The NETGEAR LTE integration for Home Assistant allows you to observe and control [NETGEAR LTE modems](https://www.netgear.com/home/mobile-wifi/lte-modems/). diff --git a/source/_integrations/osoenergy.markdown b/source/_integrations/osoenergy.markdown index 15882fec703..896a08baf7c 100644 --- a/source/_integrations/osoenergy.markdown +++ b/source/_integrations/osoenergy.markdown @@ -1,7 +1,7 @@ --- title: OSO Energy description: Instructions on how to integrate OSO Energy devices with Home Assistant. -ha_release: "2024.1" +ha_release: '2024.1' ha_category: - Sensor - Water Heater diff --git a/source/_integrations/peco.markdown b/source/_integrations/peco.markdown index 6de605ecfc5..e8483457470 100644 --- a/source/_integrations/peco.markdown +++ b/source/_integrations/peco.markdown @@ -10,6 +10,7 @@ ha_codeowners: - '@IceBotYT' ha_domain: peco ha_platforms: + - binary_sensor - sensor ha_integration_type: integration --- diff --git a/source/_integrations/portlandgeneral.markdown b/source/_integrations/portlandgeneral.markdown index 4c84466ecee..02a76d7f407 100644 --- a/source/_integrations/portlandgeneral.markdown +++ b/source/_integrations/portlandgeneral.markdown @@ -1,16 +1,16 @@ --- title: Portland General Electric (PGE) -description: Get energy usage from Portland General Electric (PGE) using the Opower integration +description: Connect and control your Portland General Electric (PGE) devices using the Opower integration ha_category: - Energy - Sensor -ha_release: 2023.9 +ha_release: 2023.8 ha_domain: portlandgeneral ha_integration_type: virtual ha_supporting_domain: opower ha_supporting_integration: Opower ha_codeowners: - - '@jrigling' + - '@tronikos' ha_config_flow: true ha_platforms: - sensor diff --git a/source/_integrations/psoklahoma.markdown b/source/_integrations/psoklahoma.markdown index 38c622a6552..17ae4af69c0 100644 --- a/source/_integrations/psoklahoma.markdown +++ b/source/_integrations/psoklahoma.markdown @@ -4,7 +4,7 @@ description: Get energy usage from Public Service Company of Oklahoma (PSO) usin ha_category: - Energy - Sensor -ha_release: 2024.1 +ha_release: 2023.8 ha_domain: psoklahoma ha_integration_type: virtual ha_supporting_domain: opower diff --git a/source/_integrations/qbittorrent.markdown b/source/_integrations/qbittorrent.markdown index 2d9e18fefc5..aa2368dc10a 100644 --- a/source/_integrations/qbittorrent.markdown +++ b/source/_integrations/qbittorrent.markdown @@ -56,4 +56,3 @@ response_variable: torrents ``` The response data contains the field `torrent_info` which contains a dictionary of torrents. The name of the torrents are the keys. - diff --git a/source/_integrations/radio_browser.markdown b/source/_integrations/radio_browser.markdown index edbedf8e5bb..8e0abc377bc 100644 --- a/source/_integrations/radio_browser.markdown +++ b/source/_integrations/radio_browser.markdown @@ -25,4 +25,3 @@ To start the Radio Browser, in Home Assistant, go to **Media** > **Radio Browser You can also use the Radio Browser in automations. When creating an automation, use the **Play Media** action to pick a station from the directory. This allows you for example to create an automation that starts playing your favorite radio station on your Cast devices. - diff --git a/source/_integrations/refoss.markdown b/source/_integrations/refoss.markdown index 50e423f9e96..ad64909ba44 100644 --- a/source/_integrations/refoss.markdown +++ b/source/_integrations/refoss.markdown @@ -56,4 +56,4 @@ Examples: ## Reset device -Long-press the button on the device to reset it. \ No newline at end of file +Long-press the button on the device to reset it. diff --git a/source/_integrations/rest_command.markdown b/source/_integrations/rest_command.markdown index 52c4a1747dc..1daf7bd0ee3 100644 --- a/source/_integrations/rest_command.markdown +++ b/source/_integrations/rest_command.markdown @@ -7,6 +7,8 @@ ha_release: 0.36 ha_iot_class: Local Push ha_domain: rest_command ha_integration_type: integration +ha_codeowners: + - '@jpbede' --- This integration can expose regular REST commands as services. Services can be called from a [script] or in [automation]. diff --git a/source/_integrations/scl.markdown b/source/_integrations/scl.markdown index 031933d62fe..c8eec6aba8c 100644 --- a/source/_integrations/scl.markdown +++ b/source/_integrations/scl.markdown @@ -4,7 +4,7 @@ description: Get energy usage from Seattle City Light (SCL) using the Opower int ha_category: - Energy - Sensor -ha_release: 2024.1 +ha_release: 2023.8 ha_domain: scl ha_integration_type: virtual ha_supporting_domain: opower diff --git a/source/_integrations/starline.markdown b/source/_integrations/starline.markdown index aafdd2c2b07..d1def950e37 100644 --- a/source/_integrations/starline.markdown +++ b/source/_integrations/starline.markdown @@ -3,12 +3,12 @@ title: StarLine description: Instructions on how to setup your StarLine account with Home Assistant. ha_category: - Binary sensor + - Button - Car - Lock - Presence detection - Sensor - Switch - - Button ha_release: 0.103 ha_iot_class: Cloud Polling ha_config_flow: true @@ -17,11 +17,11 @@ ha_codeowners: ha_domain: starline ha_platforms: - binary_sensor + - button - device_tracker - lock - sensor - switch - - button ha_integration_type: integration --- diff --git a/source/_integrations/swepco.markdown b/source/_integrations/swepco.markdown index 28a16270c65..521d6c8019c 100644 --- a/source/_integrations/swepco.markdown +++ b/source/_integrations/swepco.markdown @@ -4,7 +4,7 @@ description: Get energy usage from Southwestern Electric Power Company (SWEPCO) ha_category: - Energy - Sensor -ha_release: 2024.1 +ha_release: 2023.8 ha_domain: swepco ha_integration_type: virtual ha_supporting_domain: opower diff --git a/source/_integrations/systemmonitor.markdown b/source/_integrations/systemmonitor.markdown index 3ec3caf7f00..33d2481e08f 100644 --- a/source/_integrations/systemmonitor.markdown +++ b/source/_integrations/systemmonitor.markdown @@ -10,6 +10,8 @@ ha_config_flow: true ha_platforms: - sensor ha_integration_type: integration +ha_codeowners: + - '@gjohansson-ST' --- The System monitor integration allows you to monitor disk usage, diff --git a/source/_integrations/tado.markdown b/source/_integrations/tado.markdown index 548103d42b8..f0187342d61 100644 --- a/source/_integrations/tado.markdown +++ b/source/_integrations/tado.markdown @@ -14,6 +14,7 @@ ha_iot_class: Cloud Polling ha_codeowners: - '@michaelarnauts' - '@chiefdragon' + - '@erwindouna' ha_domain: tado ha_config_flow: true ha_homekit: true diff --git a/source/_integrations/tailwind.markdown b/source/_integrations/tailwind.markdown index b81ae5446c9..cfba164ecfc 100644 --- a/source/_integrations/tailwind.markdown +++ b/source/_integrations/tailwind.markdown @@ -14,8 +14,11 @@ ha_platforms: - binary_sensor - button - cover + - diagnostics - number ha_integration_type: device +ha_quality_scale: platinum +ha_dhcp: true --- The Tailwind integration integrates [Tailwind](https://gotailwind.com/) diff --git a/source/_integrations/tankerkoenig.markdown b/source/_integrations/tankerkoenig.markdown index 5e455bd445c..9f2cbe704c5 100755 --- a/source/_integrations/tankerkoenig.markdown +++ b/source/_integrations/tankerkoenig.markdown @@ -12,6 +12,7 @@ ha_codeowners: - '@mib1185' ha_platforms: - binary_sensor + - diagnostics - sensor ha_config_flow: true ha_integration_type: integration diff --git a/source/_integrations/tessie.markdown b/source/_integrations/tessie.markdown index 9d95bb59f26..c0773fd858e 100644 --- a/source/_integrations/tessie.markdown +++ b/source/_integrations/tessie.markdown @@ -27,7 +27,9 @@ ha_platforms: - lock - media_player - number + - select - sensor + - switch - update ha_integration_type: integration --- diff --git a/source/_integrations/trend.markdown b/source/_integrations/trend.markdown index 31832f55d20..776db5da820 100644 --- a/source/_integrations/trend.markdown +++ b/source/_integrations/trend.markdown @@ -3,8 +3,8 @@ title: Trend description: Instructions on how to integrate Trend binary sensors into Home Assistant. ha_category: - Binary sensor - - Utility - Helper + - Utility ha_release: 0.28 ha_iot_class: Calculated ha_quality_scale: internal diff --git a/source/_integrations/unifi_direct.markdown b/source/_integrations/unifi_direct.markdown index ce42a8a3b38..44b835b7b6b 100644 --- a/source/_integrations/unifi_direct.markdown +++ b/source/_integrations/unifi_direct.markdown @@ -9,6 +9,8 @@ ha_domain: unifi_direct ha_platforms: - device_tracker ha_integration_type: integration +ha_codeowners: + - '@tofuSCHNITZEL' --- This platform allows you to detect presence by looking at devices connected to a [UniFi AP](https://www.ui.com/products/#unifi). This device tracker differs from [Ubiquiti UniFi](/integrations/unifi) because it doesn't require the UniFi Network application. diff --git a/source/_integrations/utility_meter.markdown b/source/_integrations/utility_meter.markdown index 12fbb5cf385..9bbea366fd1 100644 --- a/source/_integrations/utility_meter.markdown +++ b/source/_integrations/utility_meter.markdown @@ -14,7 +14,6 @@ ha_domain: utility_meter ha_platforms: - select - sensor -ha_config_flow: true ha_integration_type: helper --- diff --git a/source/_integrations/vesync.markdown b/source/_integrations/vesync.markdown index 20cbc05459e..d072126f5ca 100644 --- a/source/_integrations/vesync.markdown +++ b/source/_integrations/vesync.markdown @@ -12,6 +12,7 @@ ha_codeowners: - '@markperdue' - '@webdjoe' - '@thegardenmonkey' + - '@cdnninja' ha_domain: vesync ha_platforms: - diagnostics diff --git a/source/_integrations/weather.markdown b/source/_integrations/weather.markdown index 714c7fa52ca..a589f9c0b0e 100644 --- a/source/_integrations/weather.markdown +++ b/source/_integrations/weather.markdown @@ -192,4 +192,4 @@ weather.toronto_forecast: temperature: 0 ``` -{% enddetails %} \ No newline at end of file +{% enddetails %} diff --git a/source/_integrations/whisper.markdown b/source/_integrations/whisper.markdown index 7c497e78460..dd40789effb 100644 --- a/source/_integrations/whisper.markdown +++ b/source/_integrations/whisper.markdown @@ -15,6 +15,7 @@ ha_config_flow: true ha_platforms: - stt - tts + - wake_word ha_iot_class: Local Push --- diff --git a/source/_integrations/wyoming.markdown b/source/_integrations/wyoming.markdown index b2fdbb7abf6..a2c1992f27d 100644 --- a/source/_integrations/wyoming.markdown +++ b/source/_integrations/wyoming.markdown @@ -11,10 +11,14 @@ ha_codeowners: ha_domain: wyoming ha_integration_type: integration ha_platforms: + - binary_sensor + - number + - select - stt + - switch - tts - - wake_word ha_config_flow: true +ha_zeroconf: true --- The **Wyoming** {% term integration %} connects external voice services to Home Assistant using a [small protocol](https://github.com/rhasspy/rhasspy3/blob/master/docs/wyoming.md). This enables [Assist](/voice_control/) to use a variety of local [speech-to-text](/integrations/stt/), [text-to-speech](/integrations/tts/), and [wake-word-detection](/integrations/wake_word/) systems, such as: From 594caf5918f860513520f20ac44e4ffb88966dfe Mon Sep 17 00:00:00 2001 From: Joost Lekkerkerker Date: Wed, 3 Jan 2024 11:10:51 +0100 Subject: [PATCH 26/47] Remove Refoss from featured integrations (#30611) --- source/_integrations/refoss.markdown | 1 - 1 file changed, 1 deletion(-) diff --git a/source/_integrations/refoss.markdown b/source/_integrations/refoss.markdown index ad64909ba44..ba6218585fb 100644 --- a/source/_integrations/refoss.markdown +++ b/source/_integrations/refoss.markdown @@ -8,7 +8,6 @@ ha_codeowners: - '@ashionky' ha_iot_class: Local Polling ha_domain: refoss -featured: true ha_config_flow: true ha_platforms: - switch From c2eacaaf6f61856ed5fff435584d4d5f6679e916 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 3 Jan 2024 14:31:57 +0100 Subject: [PATCH 27/47] 2024.1: Finalize backward-incompatible changes --- .../_posts/2024-01-03-release-20241.markdown | 94 +++++++++++++++++-- 1 file changed, 87 insertions(+), 7 deletions(-) diff --git a/source/_posts/2024-01-03-release-20241.markdown b/source/_posts/2024-01-03-release-20241.markdown index 229334d63b9..46722f1bf7c 100644 --- a/source/_posts/2024-01-03-release-20241.markdown +++ b/source/_posts/2024-01-03-release-20241.markdown @@ -314,6 +314,85 @@ other news about building an Open Home; straight into your inbox. ## Backward-incompatible changes +{% details "Blink" %} + +The service calls of Blink have been adjusted. This affects +`blink.trigger_camera`, `blink.save_video` and `blink.save_recent_clips`. + +This change will require these service calls to be updated with a `target` for +the camera and by removing `name` from `data` of the blink service calls. + +For example, service call before 2023.11: + +```yaml +service: blink.save_video +data: + name: Front door + filename: test.mp4 +``` + +Service call after 2023.11 and before 2024.1: + +```yaml +service: blink.save_video +data: + device_id: 87dc3b85c18ee84f8c322a95e8230eb2 + name: Front door + filename: test.mp4 +``` + +New service call: +```yaml +service: blink.save_video +target: + entity_id: + - camera.front_door +data: + filename: test.mp4 +``` + +--- + +The `blink.send_pin` service now uses an integration/configuration entry selector: + +Example service call before 2023.11: + +```yaml +service: blink.send_pin +data: + pin: "1234" +``` + +Service call after 2023.11 and before 2024.1: + +```yaml +service: blink.send_pin +data: + pin: "1234" + device_id: 87dc3b85c18ee84f8c322a95e8230eb2 +``` + + New service call: + +```yaml +service: blink.send_pin +data: + config_entry_id: a1bee602deade2b09bc522749bbce48e + pin: "1234" +``` + +--- + +The `blink.blink_update` service is deprecated and will be removed in 2024.7.0. +Use the `homeassistant.update_entity` service instead. + +([@mkmer] - [#105413]) ([documentation](/integrations/blink)) + +[@mkmer]: https://github.com/mkmer +[#105413]: https://github.com/home-assistant/core/pull/105413 + +{% enddetails %} + {% details "Home Assistant shutdown event" %} The event key in the (undocumented) trigger data for the `homeassistant` trigger @@ -329,8 +408,8 @@ to fire on shutdown instead of an `Event` object. {% details "Modbus" %} -Setting `swap: none` has been removed from the Modbus configuration, -it is identical to omitting it: `swap:`. +Setting `swap: none` has been removed from the Modbus configuration. +It is identical to omitting it: `swap:`. ([@janiversen] - [#104713]) ([documentation](/integrations/modbus)) @@ -342,10 +421,10 @@ it is identical to omitting it: `swap:`. {% details "PrusaLink" %} - The printer state now contains several new statuses, most importantly - "attention" which always needs your invention. + "attention", which always needs your invention. - Firmware 4.7.0 is now the minimum version for Prusa XL and MK4. - Firmware 5.1.0 is now the minimum version for Prusa Mini since 4.7.x and 5.0.x - aren't available for the Mini + aren't available for the Mini. ([@Skaronator] - [#103396]) ([documentation](/integrations/prusalink)) @@ -356,15 +435,15 @@ it is identical to omitting it: `swap:`. {% details "Reolink" %} -The Reolink `Infra red lights in night mode` entity has been migrated from +The Reolink `Infrared lights in night mode` entity has been migrated from the `light` to the `switch` domain. -This means the entity ID also changed and automations and dashboards may need +This means the entity ID also changed, and automations and dashboards may need to be adjusted to use the new entity ID. If you want to go back to the light domain, use the [switch_as_x "Show as" option](/integrations/switch_as_x/#change-device-type-of-a-switch-from-the-existing-entity) -on the new `Infra red lights in night mode` switch entity and select light. +on the new `Infrared lights in night mode` switch entity and select light. ([@starkillerOG] - [#104713]) ([documentation](/integrations/reolink)) @@ -394,6 +473,7 @@ changes and new features available for your integration: Be sure to follow our - [Changes to EntityDescription data classes](https://developers.home-assistant.io/blog/2023/12/11/entity-description-changes/) - [Config entry now supports minor versions](https://developers.home-assistant.io/blog/2023/12/18/config-entry-minor-version/) - [Deprecated constants create a log entry](https://developers.home-assistant.io/blog/2023/12/19/constant-deprecation/) +- [Deprecating all magic numbers for supported features](https://developers.home-assistant.io/blog/2023/12/28/support-feature-magic-numbers-deprecation/) [devblog]: https://developers.home-assistant.io/blog/ From 5ee8224bbb48460eed2db22d1d4e5f3ac365742c Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 3 Jan 2024 14:32:43 +0100 Subject: [PATCH 28/47] 2024.1: Finalize new integrations --- source/_posts/2024-01-03-release-20241.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_posts/2024-01-03-release-20241.markdown b/source/_posts/2024-01-03-release-20241.markdown index 46722f1bf7c..815798d4688 100644 --- a/source/_posts/2024-01-03-release-20241.markdown +++ b/source/_posts/2024-01-03-release-20241.markdown @@ -199,7 +199,7 @@ We welcome the following new integrations in this release: Monitor your Blue Current EV charger charge point(s). - **[DROP]**, added by [@pfrazer]
Manage your DROP Smart Water System with Home Assistant. -- **[Flexit BACnet]**, added by [@lellky]
+- **[Flexit Nordic (BACnet)]**, added by [@lellky]
Control and monitor your Flexit Nordic series air handling units. - **[Holiday]**, added by [@jrieger]
Add holiday calendars to Home Assistant for powering automations. @@ -236,7 +236,7 @@ We welcome the following new integrations in this release: [A. O. Smith]: /integrations/aosmith [Blue Current]: /integrations/blue_current [DROP]: /integrations/drop_connect -[Flexit BACnet]: /integrations/flexit_bacnet +[Flexit Nordic (BACnet)]: /integrations/flexit_bacnet [Holiday]: /integrations/holiday [Midea CCM15 AC Controller]: /integrations/ccm15 [OSO Energy]: /integrations/osoenergy From 72e181d2b8a88d6d8d0726b5f319b2ad90d1121b Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 3 Jan 2024 14:33:00 +0100 Subject: [PATCH 29/47] 2024.1: Adjust date --- source/_posts/2024-01-03-release-20241.markdown | 2 +- source/changelogs/core-2024.1.markdown | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_posts/2024-01-03-release-20241.markdown b/source/_posts/2024-01-03-release-20241.markdown index 815798d4688..ecd81f72ed9 100644 --- a/source/_posts/2024-01-03-release-20241.markdown +++ b/source/_posts/2024-01-03-release-20241.markdown @@ -2,7 +2,7 @@ layout: post title: "2024.1: Beta release notes" description: "The beta release notes for Home Assistant 2024.1" -date: 2023-12-27 00:00:00 +date: 2024-01-03 00:00:00 date_formatted: "January 3, 2024" author: Franck Nijhof author_twitter: frenck diff --git a/source/changelogs/core-2024.1.markdown b/source/changelogs/core-2024.1.markdown index c4f0293cf4e..3dfeafddc19 100644 --- a/source/changelogs/core-2024.1.markdown +++ b/source/changelogs/core-2024.1.markdown @@ -7,7 +7,7 @@ replace_regex: \s\(\[?[a-z0-9\-\s_]+\]?\)$ These are all the changes included in the Home Assistant Core 2024.1 release. For a summary in a more readable format: -[Release notes blog for this release](/blog/2023/12/27/release-20241/). +[Release notes blog for this release](/blog/2024/01/03/release-20241/). ## All changes From 38691585d7a2e1e0eac9fa39434dba6e311cbad1 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 3 Jan 2024 15:44:42 +0100 Subject: [PATCH 30/47] 2024.1: Finalize other noteworthy changes --- .../_posts/2024-01-03-release-20241.markdown | 56 ++++++++++++++----- 1 file changed, 41 insertions(+), 15 deletions(-) diff --git a/source/_posts/2024-01-03-release-20241.markdown b/source/_posts/2024-01-03-release-20241.markdown index ecd81f72ed9..02cb566f723 100644 --- a/source/_posts/2024-01-03-release-20241.markdown +++ b/source/_posts/2024-01-03-release-20241.markdown @@ -172,22 +172,48 @@ you to add buttons to a card that can trigger update actions when pressed. There are many more improvements in this release; here are some of the other noteworthy changes this release: -- Move cloud stt engine to config entry ([@MartinHjelmare] - [#99608]) -- Add support for Shelly Gen3 devices ([@bieniu] - [#104874]) -- Add consider home interval to ping ([@jpbede] - [#104881]) -- Add preset modes to ESPHome fan entities ([@mill1000] - [#103781]) -- Add calendar entity to Radarr ([@tkdrob] - [#79077]) -- Add support for Happy Eyeballs to homekit_controller ([@bdraco] - [#105454]) -- Add France to picnic countries ([@slhad] - [#105722]) -- Rename zamg to GeoSphere Austria ([@killer0071234] - [#105494]) -- Make the minimum number of samples used by the trend sensor configurable ([@jpbede] - [#101102]) -- Add new price sensors with API token access to pvpc hourly pricing ([@azogue] - [#85769]) -- Add Starline Service Mode switch ([@Anonym-tsk] - [#105741]) -- Add Energyzero get_gas_prices and get_energy_price services ([@iamrgroot] - [#101374]) -- Add subwoofer crossover support to Sonos Amp devices ([@jjlawren] - [#106290]) -- Add alarm platform to Comelit ([@chemelli74] - [#104718]) -- Add Support for SleepIQ Foot Warmers ([@kbickar] - [#105931]) +- Two brand new [template functions] have been added this release: `median` and + `statistical_mode`. Thanks, [@TheFes]! +- [@bieniu] added support for the brand new Shelly 3rd generation devices to + the [Shelly] integration. Nice! +- A long-time shutdown bug has been fixed: You can now run automations triggered + when Home Assistant shuts down. This could, for example, be used to send + yourself a notification when that happens. Thanks, [@tetele]! +- Created your own fan controller using [ESPHome]? You can now add preset modes + to it! Thanks, [@mill1000]! +- The [ping] integration now has the option to configure the number of seconds + that must elapse before considering a disconnected device "not at home". + Awesome, [@jpbede]! +- Looking for the ZAMG integration? It has been renamed to [GeoSphere Austria]. + Thanks, [@killer0071234]! +- Got one of those Sonos amps? [@jjlawren] added support for the subwoofer + crossover setting to the [Sonos] integration. Nice! +- [@tkdrob] added support for the new calendar entity to the [Radarr] integration. + So you can see the release schedules straight from Home Assistant. Awesome! +- You can now configure the minimal number of samples the [trend] helper uses. + It allows you to make it less sensitive when there is not that much data. + Thanks, [@jpbede]! +- Got cold toes in bed? [@kbickar] to the rescue! He added support for + foot warmers to the [SleepIQ] integration. Nice! +[@bieniu]: https://github.com/bieniu +[@jjlawren]: https://github.com/jjlawren +[@jpbede]: https://github.com/jpbede +[@kbickar]: https://github.com/kbickar +[@killer0071234]: https://github.com/killer0071234 +[@mill1000]: https://github.com/mill1000 +[@tetele]: https://github.com/tetele +[@TheFes]: https://github.com/TheFes +[@tkdrob]: https://github.com/tkdrob +[ESPHome]: /integrations/esphome +[GeoSphere Austria]: /integrations/zamg +[ping]: /integrations/ping +[Radarr]: /integrations/radarr +[Shelly]: /integrations/shelly +[SleepIQ]: /integrations/sleepiq +[Sonos]: /integrations/sonos +[template functions]: /docs/configuration/templating/#numeric-functions-and-filters +[trend]: /integrations/trend ## New integrations From df7509ba599d2a41290c8043cfd10899b66c1ffb Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 3 Jan 2024 15:48:31 +0100 Subject: [PATCH 31/47] 2024.1: Add introduction --- .../_posts/2024-01-03-release-20241.markdown | 34 +++++++------------ 1 file changed, 12 insertions(+), 22 deletions(-) diff --git a/source/_posts/2024-01-03-release-20241.markdown b/source/_posts/2024-01-03-release-20241.markdown index 02cb566f723..e6655478783 100644 --- a/source/_posts/2024-01-03-release-20241.markdown +++ b/source/_posts/2024-01-03-release-20241.markdown @@ -15,34 +15,24 @@ og_image: /images/blog/2024-01/social.png
- +Happy New Year! 🍾 -These are the beta release notes for Home Assistant Core 2024.1 (and is thus a -work in progress). +We wish you, and all the loved ones around you, all the best for 2024! 🥂 -If you encounter any issues with the beta release, please report them on GitHub: +I cannot think of a better way to start the new year: Home Assistant Core 2024.1! 🎉 -- Issues with integrations, automations and such (Core related):
- -- Issues with the frontend/UI/dashboards:
- -- Issues with the documentation:
- +This release is fairly small, as expected; we are just coming out of the holiday +season. However, it does contain some nice improvements and +features to be excited about and a stunning total of 13 new integrations! -Please be sure to include the beta version you are running in the issue -version field (not title), so we can classify your issue correctly. +My favorite: the automation editor changes. It had quite a bunch of user +interface tweaks. Most are focused on making it friendlier and easier to use +for new and long-term users, making it quicker to find the right trigger, +condition, or action. -Issues introduced in the beta are processed with priority. +I greatly liked this improved experience, and I hope you do too! ---- - - - -Home Assistant Core 2024.1! 🎉 - -Thanks for helping out testing the beta! ❤️ - -Enjoy the (beta) release! +Enjoy the release! From 56f669681890f003da854717bd2cc6ceb4bb6674 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 3 Jan 2024 16:39:59 +0100 Subject: [PATCH 32/47] 2024.1: Finalize automation editor changes --- .../_posts/2024-01-03-release-20241.markdown | 123 ++++++++++++++---- 1 file changed, 97 insertions(+), 26 deletions(-) diff --git a/source/_posts/2024-01-03-release-20241.markdown b/source/_posts/2024-01-03-release-20241.markdown index e6655478783..77526352333 100644 --- a/source/_posts/2024-01-03-release-20241.markdown +++ b/source/_posts/2024-01-03-release-20241.markdown @@ -37,6 +37,12 @@ Enjoy the release! - [Automation editor improvements](#automation-editor-improvements) + - [Improved empty automations dashboard](#improved-empty-automations-dashboard) + - [Guidance when creating a new automation](#guidance-when-creating-a-new-automation) + - [Building blocks](#building-blocks) + - [Improved trigger, condition \& action buttons](#improved-trigger-condition--action-buttons) + - [Unified actions](#unified-actions) +- [Description \& due support for to-do list items](#description--due-support-for-to-do-list-items) - [New entity type: Valve](#new-entity-type-valve) - [Swappable](#swappable) - [New card features](#new-card-features) @@ -54,44 +60,109 @@ Don't forget to [join our release party live stream on YouTube](https://www.yout ## Automation editor improvements -The automation editor got some love this release, with a lot of small -improvements to make it easier to use. +The automation editor got some love for this release, with many small +improvements to make it easier for both new and long-time users. -If you start out with Home Assistant, visiting your automations page would -result in an empty page. This is not very helpful if you see this for the first -time. +As there are many small improvements, let’s go over them individually. -Instead, you are now greeted by the little automation robot that shows -an explanation of what automations are, and references to the documentation -that can help you get started. +PS: One quick note: all changes are UI changes, meaning that these changes +do not affect the underlying automation configuration. All your existing +automations will continue to work as they did before. -_TODO: Add screenshot_ +### Improved empty automations dashboard -Once you start create a new integration, you will be greeted by some new -terminology and description to help you understand what each section is about. +If you start with Home Assistant, visiting the automations dashboard would +result in an empty page. That is not very helpful if you see this for the +first time. So, we’ve improved that! -Temporary images that needs to be replaced. +You are now greeted by the little automation robot that explains what an +automation is and references to the documentation that can help you get started. -Don't worry, we'll hide the help text once you added elements to the section. -The bigger change can be found in the buttons to add a trigger, condition or -action to your automation. +Screenshot showing an empty automations dashboard, explaining what automations are. -The first thing to notice, is that the conditions and actions have a new -button next to them: "Add building block". Click this allows you to -add logical elements to your automation, like "and", "or", "If", "choose", etc. +A small but effective improvement to help new users get started. We have also +applied this same improvement to the scripts and scenes dashboards. -These used to be mixed in with the conditions and actions, but now have their -own dedicated button. This makes it easier to find them, and declutters the +### Guidance when creating a new automation + +When starting a new automation from scratch, you used to be greeted by some, +possibly, new terminology and almost a blank page with some buttons to +add triggers, conditions or actions. As a new user, this immediately imposes +a challenge: what do I need to do? + +You guessed it: We have slightly improved that. We have changed the big headers +to be more descriptive and less technical. We have also added some help text to +explain each section, including examples of what they can be used for. + +Screenshot showing descriptions on what each section in an automation is and can be used for. + +Don’t worry; we’ll hide the explanation once you add elements to the sections +to keep the overview of existing automations as clean as possible. + +### Building blocks + +You might have noticed in the screenshots above the conditions and actions have +a new button next to them: **+ Add building block**. + +Selecting these new buttons allows you to add logical elements to your +automation or scripts, like **And**, **Or**, **If-then**, **Choose**, etc. + +These used to be mixed in with the conditions and actions but now have their +own dedicated button. It makes it easier to find them and declutters the list of conditions and actions. -_TODO: Add screenshot_ +Screenshot showing the new dialog that allows you to add logical building blocks to automations. -All these buttons, used to give a dropdown that allowed you to select the -type of trigger, condition or action you wanted to add. This dropdown has -been replaced by a new dialog, including descriptions for each item and search. +Notice how this now opens up a dialog? A dialog gives us more space to describe +what each building block does and room for a search box to find the one you need. -These descriptions are important, as they help you understand what the -trigger, condition or action does, and what it is used for. +### Improved trigger, condition & action buttons + +The bigger change can be found in the buttons to add a trigger, conditions, +or actions to your automation. This change was not just aimed at new users +but also long-time users. + +All these buttons are used to give a dropdown that allows you to select the +type of trigger, condition, or action you want to add. This dropdown has been +replaced by a new dialog similar to the one we just saw for the building blocks. + +Like the building block, it describes what each trigger, condition, +or action does. These descriptions are important, as they help you understand +what they do. + +Screenshot showing the new add trigger dialog, which displayed the most common triggers first. + +If you add an element, we will first show you the most used +triggers/conditions/actions by our community. We now have all others neatly +grouped. For actions, we took it a step further and unified them with +service calls. + +### Unified actions + +If you have been using Home Assistant for a while, you are probably familiar +with the “service call”-an action that you can add to your automation. But, +honestly, what is a “service call”? It is a bit of a technical term that is +especially confusing for newer users. But honestly, you just want to turn on +a light, right? + +This release unifies those “service calls” with all other actions, meaning +there is no “service call” anymore; that layer has been refactored from the UI. +Instead, you add an action and select the action you want to take, for example, +turn on a light. + +Screenshot showing the new add action dialog, which now shows all possible actions, including services. + +This means that if you add an action, you see all actions (including all +service calls), categorized, with description, and searchable! Being able +to search through all available actions is a huge improvement. + +Screenshot showing the new add action dialog utilizing the search function to find whatever you need. + +By default, just like with the triggers and conditions, we show you the most +used actions first and the actions for the entities you have on your system. +All others are neatly grouped by integration in the **Other actions** section. + +Screenshot showing the new add action dialog that neatly groups all other actions that integrations provide. _TODO: Add screenshot_ From 2f92586aaffd43f9e1645e3adf949fdacf310729 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 3 Jan 2024 17:05:52 +0100 Subject: [PATCH 33/47] 2024.1: Finalize to-do due date and description --- .../_posts/2024-01-03-release-20241.markdown | 34 +++++++++---------- 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/source/_posts/2024-01-03-release-20241.markdown b/source/_posts/2024-01-03-release-20241.markdown index 77526352333..efe8d1a6d77 100644 --- a/source/_posts/2024-01-03-release-20241.markdown +++ b/source/_posts/2024-01-03-release-20241.markdown @@ -44,7 +44,7 @@ Enjoy the release! - [Unified actions](#unified-actions) - [Description \& due support for to-do list items](#description--due-support-for-to-do-list-items) - [New entity type: Valve](#new-entity-type-valve) -- [Swappable](#swappable) +- [Swappable current/target on thermostat \& humidifier cards](#swappable-currenttarget-on-thermostat--humidifier-cards) - [New card features](#new-card-features) - [Other noteworthy changes](#other-noteworthy-changes) - [New integrations](#new-integrations) @@ -164,29 +164,27 @@ All others are neatly grouped by integration in the **Other actions** section. Screenshot showing the new add action dialog that neatly groups all other actions that integrations provide. -_TODO: Add screenshot_ +## Description & due support for to-do list items -If you add an element, we will show you the most commonly used -trigger/condition/action first. All others are neatly categorized in the -other sections. +The to-do list integration keeps getting better and better. This release adds +support for descriptions and due dates! -Last, but not least, the "service calls" are now merged with all other actions. -Meaning, that if you add an action, you see all actions, including service -calls. They are neatly grouped by entity type and the integration providing them, -provide the descriptions on what they do, and are searchable as well. +If the integration you are using supports it, you can now add descriptions to +each task on your list.It fully supports the Markdown markup to add links, +bold text, etc. If due dates (or due date + time) are supported, you can +set these. -_TODO: Add screenshot_ +Screenshot showing the new to-do item dialog, where you now can set a description and an URL. -## Description & due support for todo list items +As shown in the screenshot above, there is a whole new dialog to adjust +your to-do item. But this is not the only change. The list itself has beenz +improved as well. -This feature was already hinted in the last release, but now it is here! +Screenshot showing the improve to-do dashboard, showing descriptions and highlighting overdue items. -You can add due dates and description to each item in your todo list (if -supported by the integration of course). - -Temporary images that needs to be replaced. - -Temporary images that needs to be replaced. +It is much cleaner, all big text boxes are gone, and each item is nicely +formatted, including an excerpt of the description and the due date. If the due +date is overdue, it will be highlighted. ## New entity type: Valve From db19d32e88f6ea09c815fe6d069ecc5ab6976a34 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 3 Jan 2024 17:11:30 +0100 Subject: [PATCH 34/47] 2024.1.0: Add images --- .../2024-01/add-action-other-integrations.png | Bin 0 -> 248580 bytes .../images/blog/2024-01/add-action-search.png | Bin 0 -> 268291 bytes .../images/blog/2024-01/add-light-action.png | Bin 0 -> 398677 bytes .../images/blog/2024-01/add-trigger-dialog.png | Bin 0 -> 260916 bytes .../2024-01/automation-building-blocks.png | Bin 0 -> 282464 bytes .../blog/2024-01/automation-descriptions.png | Bin 0 -> 276293 bytes .../images/blog/2024-01/start-automating.png | Bin 0 -> 218460 bytes source/images/blog/2024-01/todo-dialog.png | Bin 0 -> 237440 bytes .../images/blog/2024-01/todo-new-dashboard.png | Bin 0 -> 250588 bytes 9 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 source/images/blog/2024-01/add-action-other-integrations.png create mode 100644 source/images/blog/2024-01/add-action-search.png create mode 100644 source/images/blog/2024-01/add-light-action.png create mode 100644 source/images/blog/2024-01/add-trigger-dialog.png create mode 100644 source/images/blog/2024-01/automation-building-blocks.png create mode 100644 source/images/blog/2024-01/automation-descriptions.png create mode 100644 source/images/blog/2024-01/start-automating.png create mode 100644 source/images/blog/2024-01/todo-dialog.png create mode 100644 source/images/blog/2024-01/todo-new-dashboard.png diff --git a/source/images/blog/2024-01/add-action-other-integrations.png b/source/images/blog/2024-01/add-action-other-integrations.png new file mode 100644 index 0000000000000000000000000000000000000000..cd4210b66ac53118c86db3fd911a8a2d026167f7 GIT binary patch literal 248580 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 E0O(XJH2?qr literal 0 HcmV?d00001 diff --git a/source/images/blog/2024-01/add-action-search.png b/source/images/blog/2024-01/add-action-search.png new file mode 100644 index 0000000000000000000000000000000000000000..8061771980aa3c5ca6d70ef8099ccf78c802a83a GIT binary patch literal 268291 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