diff --git a/_config.yml b/_config.yml index bf3cc05f11f..3f78316a5a8 100644 --- a/_config.yml +++ b/_config.yml @@ -107,9 +107,9 @@ social: # Home Assistant release details current_major_version: 2024 -current_minor_version: 7 -current_patch_version: 4 -date_released: 2024-07-30 +current_minor_version: 8 +current_patch_version: 0 +date_released: 2024-08-07 # 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-08-07-release-20248.markdown b/source/_posts/2024-08-07-release-20248.markdown new file mode 100644 index 00000000000..a569cae9b25 --- /dev/null +++ b/source/_posts/2024-08-07-release-20248.markdown @@ -0,0 +1,916 @@ +--- +layout: post +title: "2024.8: Beta release notes" +description: "Beta release notes for Home Assistant 2024.8" +date: 2024-07-31 00:00:00 +date_formatted: "August 7, 2024" +author: Franck Nijhof +author_twitter: frenck +comments: true +categories: + - Release-Notes + - Core +og_image: /images/blog/2024-08/social.png +--- + + + +{% note %} + +**Welcome to the beta release notes for Home Assistant 2024.8** πŸŽ‰ + +
+ +Please note that these release notes are a work in progress. πŸ‘·β€β™€οΈ We will be +completing them over the next couple of days. Not all features might be final +yet, and some features _**may not** make it into the final release_. + +
+ +**Want to help test the beta?** Awesome! ❀️ We have documented how you +[can join our beta channel and install the beta here](/common-tasks/os/#running-a-beta-version). + +
+ +While running the beta, we highly recommend joining our _#beta_ channel on +the [Home Assistant Discord chat](/join-chat)! πŸ’¬ Most developers and beta +testers are in this channel during the beta period to share experiences, ideas, +and iterate over new features, fine-tuning them before the final release. +It's a really fun place to hang out. 😎 + +
+ +**Reporting issues**: As this is a beta test, you might encounter unexpected +behavior or issues. 🐞 We use the GitHub issue tracker to track beta issues. +You can find our issue trackers and the reported issues during beta here: + +
+ +- [Report(ed) beta **dashboards/UI/frontend** issues](https://github.com/home-assistant/frontend/milestone/122) +- [Report(ed) beta **integrations/automations/backend/core** issues](https://github.com/home-assistant/core/milestone/680) +- [Report(ed) beta **documentation** issues](https://github.com/home-assistant/home-assistant.io/milestone/129) + +πŸ™ When reporting issues, **make sure to mention the exact beta version you are +running** in the issue description. This will help us identify and track the +issue correctly. Read more about [reporting issues here](/help/reporting_issues/). + +
+ +Issues introduced in the beta are processed with priority. πŸ” + +{% endnote %} + +Home Assistant 2024.8! πŸŽ‰ + +Enjoy the (beta) release! + +../Frenck + + + +- [Dashboards - Chapter 2](#dashboards---chapter-2) + - [New badges for your dashboard](#new-badges-for-your-dashboard) +- [Goodbye service calls, hello actions πŸ‘‹](#goodbye-service-calls-hello-actions-) +- [Sort data tables by created or last modified](#sort-data-tables-by-created-or-last-modified) +- [Control Home Assistant using AI with Ollama](#control-home-assistant-using-ai-with-ollama) +- [Integrations](#integrations) + - [New integrations](#new-integrations) + - [Noteworthy improvements to existing integrations](#noteworthy-improvements-to-existing-integrations) + - [Integrations reaching platinum quality level](#integrations-reaching-platinum-quality-level) + - [Now available to set up from the UI](#now-available-to-set-up-from-the-ui) + - [Farewell to the following](#farewell-to-the-following) +- [Zigbee Home Automation (ZHA) updates](#zigbee-home-automation-zha-updates) +- [Matter updates](#matter-updates) +- [KNX can now be managed via the UI](#knx-can-now-be-managed-via-the-ui) +- [Other noteworthy changes](#other-noteworthy-changes) +- [Integrations and helpers set up via YAML, now visible in the UI!](#integrations-and-helpers-set-up-via-yaml-now-visible-in-the-ui) +- [Need help? Join the community!](#need-help-join-the-community) +- [Backward-incompatible changes](#backward-incompatible-changes) +- [All changes](#all-changes) + +Don't forget to [join our release party live stream on YouTube](https://www.youtube.com/watch?v=fw_9A8iD1g0) +7 August 2024, at 20:00 GMT / 12:00 PST / 21:00 CEST! + + + +## Dashboards - Chapter 2 + +As part of our [roadmap](/blog/2024/06/12/roadmap-2024h1/#dashboards), work has +continued, making the dashboard customization and organization easier and more +intuitive. + +Last week, we had the ["Dashboards Chapter 2"](https://www.youtube.com/watch?v=9zmXLxQPr1o) +live stream, talking about the current state of the dashboards, the progress +we have made, the upcoming features and improvements we are working on, but +more importantly: Great insights in all the research and design philosophy +behind the dashboards. In case you missed it, you can watch the recording +on our [YouTube channel](https://www.youtube.com/watch?v=9zmXLxQPr1o) or +read the [recap blog post](/blog/2024/07/26/dashboard-chapter-2/). + +As part of our continuous improvement: This month we have fully redesigned +and revamped the badges for your dashboards! + +### New badges for your dashboard + +We already wrote about it extensively in our [Dashboard Chapter 2 blog post](/blog/2024/07/26/dashboard-chapter-2/#new-badges): +this release introduces our redesigned badges! + +A big revamp of the original badges that have been in Home Assistant since, well, +forever. The new badges are designed to match the design of the +[Mushroom] chip cards, and are +mean to sit at the top of a dashboard view, providing a summary of the most +important information that you need to know, at a glance. + +New badges sitting on top of a dashboard view! + +These new badges are of course fully configurable from the UI, allowing you to +fully tweak them to your needs. You can specify whether the icon, name, and/or +state will be visible, and you can configure the contents within each of them. + +Everything can, of course, be dragged and dropped in the order you like 😎 + +Not just that, the new badges also come with visibility options, the same +as we have [introduced for cards in Home Assistant 2024.6](/blog/2024/06/05/release-20246/#control-visibility-of-cards). +Meaning you can show or hide them based on who is viewing the dashboard, what +screen size it is displayed within, whether an entity is in a certain state, and more. + +Screenshots; left showing the add badge dialog wich include the custom mushroom template badge, on the right shows the visibility tab and options badges now have. + +The best news of all? The new badges work across both the new sections view and +the old masonry view! πŸŽ‰ Heck!, we even support for custom badges, like the +custom template one released by the [Mushroom] project πŸ„. + +If you have existing old-style badges today, don't worry! They will be +automatically converted to the new badges when you upgrade to this release. + +[Mushroom]: https://github.com/piitaya/lovelace-mushroom + +## Goodbye service calls, hello actions πŸ‘‹ + +This release marks an important milestone in the evolution of Home Assistant: +we are saying goodbye to **service calls** and hello to **actions**! + +If you are a long-time user of Home Assistant reading this now: don't be alarmed +by this change, nothing breaks with this, and everything will continue to work +as you are used to. + +In the 2024.1 release, we [unified the actions](/2024/01/03/release-20241/#unified-actions) +in the Home Assistant automation & script editors. The goal of that change +was to make our automation editor easier to understand for newer users, by +removing the "Service call" layer and terminology. + +Screenshot showing the new add action dialog utilizing the search function to find whatever you need. + +The UI in above screenshot is thus already in place since the January release, +and was very well received in general. However, the underlying terminology +in our documentation and all other places in Home Assistant was still using +the "service call" terminology. + +Additionally, the term "services" in Home Assistant is overloaded and abiguous. +It is used for both the services you can call in Home Assistant, but also for +service you might integrate with, like a weather service, or a music service. +In the latter case, we are talking about integrating with a service provided by +a software program or website, the menu item in the setting called +**Devices & services** that refers to that. πŸ˜΅β€πŸ’« + +To make things more clear, we are now changing the terminology in Home Assistant +from "services" (as in service calls variant) to "actions" **everywhere**. + +Every occurance in the documentation, the UI, the code, and everywhere else +in Home Assistant, has been replaced with "action". Unlike the previous services +which where "called", actions are "performed". + +Screenshot of the developers tools, which also renamed all occurances of services to actions. + +{% important %} + +If you are writing automations in YAML, you will notice that the `service` key +in your actions is now called `action`. For example: + +```yaml +- action: light.turn_on + target: + area: living_room +``` + +Existing UI-managed automations will be automatically converted to when they +are edited and saved the next time. If you write automation in YAML, you can +use either `action` or `service` as this change is fully backward compatible, +but we recommend using `action` from now on. + +{% endimportant %} + +## Sort data tables by created or last modified + +You've added a new integration, a new device, or maybe just updated +Home Assistant and wondering what new entities or devices you have available? + +This release is going to help you with that. Home Assistant now tracks +when entities, devices, and many other things were created or last +modified. If these are shown in a table, it means you can now sort them by +the date they were created or last modified; helping you finding those +recently added or modified items. + +Screenshot showing the new created and modified columns of the entities table, allowing one to sort on these new values. + +The created and modified columns are hidden by default, but you can make them +visible by clicking the {% icon "mdi:cog" %} icon in the top right of the +table. Sorting is always available, regardless of the visibility of the columns. + +## Control Home Assistant using AI with Ollama + +In the 2024.6 release, we introduced the ability to use the [OpenAI] and +[GoogleAI] {%term integrations %} to [control your home using Large Language Models] +(LLMs). Many of you request this to work with a local hosted LLM as well. + +Today we are happy to announce that Home Assistant now supports being +controlled by local LLMs too! + +This is achieved thanks to [@Shulyaka] adding support for the brand new tools +API in Ollama. The performance of the local models has been fine tuned by +[@AllenPorter]. + +Allen created a new LLM benchmark suite that is more balanced and less focused +on the edge cases. We scored the different models with this new benchmark. + +The cloud-based models scored 98% on this new benchmark while local LLMs did +not do so well. Through prompt tuning and fixes included in this release, +we have been able to now get local LLMs to be able to score a reasonable 81%. + +Graph showing the iteration progress of implementing local Ollama support using the Llama 3.1 8B model. + +We will continue to work on testing new models and improving our prompts +and tools to achieve a higher score. + +If you like to experiment with local LLMs using Home Assistant, we currently +recommend using the Llama 3.1 8B model. + +_TODO: Verify numbers in this text_ + +[@AllenPorter]: https://github.com/AllenPorter +[@Shulyaka]: https://github.com/Shulyaka +[control your home using Large Language Models]: /blog/2024/06/05/release-20246/#dipping-our-toes-in-the-world-of-ai-using-llms +[GoogleAI]: /integrations/google_generative_ai_conversation/ +[OpenAI]: /integrations/openai_conversation + +## Integrations + +Thanks to our community for keeping pace with the new {% term integrations %} +and improvements to existing ones! You’re all awesome πŸ₯° + +### New integrations + +We welcome the following new integrations in this release: + +- **[Autarco]**, added by [@klaasnicolaas] + Monitor the performance of your [Autarco](https://www.autarco.com/) connected solar panels, inverters and batteries. +- **[Bryant Evolution]**, added by [@danielsmyers] + Control your [Bryant Evolution](https://www.bryant.com/en/us/products/evolution-system/) HVAC system. +- **[Dio Chacon]**, added by [@cnico] + Connect your [Dio Chacon devices](https://chacon.com/en/) via RF 433 Mhz or Wi-Fi. +- **[iotty]**, added by [@pburgio] + Control your [iotty Smart Home](https://www.iotty.com/) light switch, gate, smart cover, and outlet devices. +- **[IronOS]**, added by [@tr4nt0r] + Integrate your IronOS powered soldering iron with Home Assistant over Bluetooth. +- **[Israel Rail]**, added by [@shaiu] + Get real-time departure information from the Israel railways. +- **[LinkPlay]**, added by [@dukeofphilberg] + Control various media player based on the [LinkPlay](https://www.linkplay.com/) protocol. +- **[madVR Envy]**, added by [@iloveicedgreentea] + Control your [madVR Envy](https://www.madvrenvy.com/) video processor for your home theater. +- **[Simplefin]**, added by [@jeeftor] + SimpleFIN is a financial data provider that offers a simple and easy-to-use API for retrieving financial data. +- **[Tesla Fleet]**, added by [@Bre77] + Connect and monitor various sensors from Tesla vehicles, PowerWall, Solar or Wall connectors through the Tesla Fleet API. + +[@Bre77]: https://github.com/Bre77 +[@cnico]: https://github.com/cnico +[@danielsmyers]: https://github.com/danielsmyers +[@dukeofphilberg]: https://github.com/dukeofphilberg +[@iloveicedgreentea]: https://github.com/iloveicedgreentea +[@jeeftor]: https://github.com/jeeftor +[@klaasnicolaas]: https://github.com/klaasnicolaas +[@pburgio]: https://github.com/pburgio +[@shaiu]: https://github.com/shaiu +[@tr4nt0r]: https://github.com/tr4nt0r +[Autarco]: /integrations/autarco +[Bryant Evolution]: /integrations/bryant_evolution +[Dio Chacon]: /integrations/chacon_dio +[iotty]: /integrations/iotty +[ironOS]: /integrations/iron_os +[Israel Rail]: /integrations/isreal_rail +[LinkPlay]: /integrations/linkplay +[madVR Envy]: /integrations/madvr +[Simplefin]: /integrations/simplefin +[Tesla Fleet]: /integrations/tesla_fleet + +This release also has new virtual integrations. Virtual integrations +are stubs that are handled by other (existing) integrations to help with +findability. These ones are new: + +- **[Mercury NZ Limited]**, provided by [Opower], added by [@SplicedNZ] +- **[MINI Connected]** provided by [BMW Connected Drive], added by [@rikroe] + +[@rikroe]: https://github.com/rikroe +[@Splicednz]: https://github.com/SplicedNZ +[BMW Connected Drive]: /integrations/bmw_connected_drive +[Mercury NZ Limited]: /integrations/mercury_nz +[MINI Connected]: /integrations/mini_connected +[Opower]: /integrations/opower + +### Noteworthy improvements to existing integrations + +It is not just new {% term integrations %} that have been added; existing +integrations are also being constantly improved. Here are some of the noteworthy +changes to existing integrations: + +- The [HomeKit Bridge] integration now support the event entities representing + doorbell and motion sensors. Big thanks [@bdraco]! +- In order to use the above HomeKit feature, [@bdraco] added support for + event entities to the [UniFi Protect], [Doorbird], and [August] integrations. + Awesome! +- Talking about event entities, [@mib1185] added event entities to the + [Feedreader] integration. So you can now easily automate when a new article + shows up in one of the news feeds you follow. Great! +- The [OpenAI conversation] integration now defaults to the, much cheaper, + gpt-4o-mini model. Thanks [@allenporter]! +- The [WLED] integration now supports CCT LED strips, thanks to [@Suxsem]! +- [Tessie] received lots of attention from [@Bre77] this release, adding + tons of new entities and features to the integration. Great job! +- [@joostlek] and [@andrew-codechimp] have been extending the [Mealie] + integration lot of new services, and features. Most notably, the ability to + import recipes, set meal plans, and view shopping lists. Thanks! +- You can now control your Reolink chime with the [Reolink] integration, thanks + to [@starkillerOG]! +- The [Roborock] integration now supports the [Roborock Zeo] washer/dryer. + Cool [@Lash-L]! +- [@tr4nt0r] migrated the [Habitica] Dailies and To-Do's to support our + todo entities. Nice! + +[@tr4nt0r]: https://github.com/tr4nt0r +[Habitica]: /integrations/habitica +[@allenporter]: https://github.com/allenporter +[@andrew-codechimp]: https://github.com/andrew-codechimp +[@bdraco]: https://github.com/bdraco +[@Bre77]: https://github.com/Bre77 +[@joostlek]: https://github.com/joostlek +[@Lash-L]: https://github.com/Lash-L +[@mib1185]: https://github.com/mib1185 +[@starkillerOG]: https://github.com/starkillerOG +[@Suxsem]: https://github.com/Suxsem +[August]: /integrations/august +[Doorbird]: /integrations/doorbird +[Feedreader]: /integrations/feedreader +[HomeKit Bridge]: /integrations/homekit +[Mealie]: /integrations/mealie +[OpenAI conversation]: /integrations/openai_conversation +[Reolink]: /integrations/reolink +[Roborock Zeo]: https://global.roborock.com/pages/roborock-zeo-one +[Roborock]: /integrations/roborock +[Tessie]: /integrations/tessie +[UniFi Protect]: /integrations/unifiprotect +[WLED]: /integrations/wled + +{% details "Potential changes to process" icon="mdi:scale-balance" %} + +Processed up to _#122730_. + +- Add support for Xiaomi airpurifier and humidifier ([@tanchu] - [#117791]) ([xiaomi_miio docs]) + +- Append multiple rows in Google Sheets ([@luca-angemi] - [#120829]) ([google_sheets docs]) + +- Add PrusaLink nozzle and mmu support ([@deimosfr] - [#120436]) ([prusalink docs]) +- Add calendar for Rachio smart hose timer ([@brg468] - [#120030]) ([rachio docs]) (new-platform) + +- Add support for Shelly virtual `boolean` component ([@bieniu] - [#119932]) ([shelly docs]) (noteworthy) +- Add support for Shelly `text` virtual component ([@bieniu] - [#121735]) ([shelly docs]) (new-platform) (noteworthy) +- Add support for Shelly `number` virtual component ([@bieniu] - [#121894]) ([shelly docs]) (noteworthy) +- Add support for Shelly `enum` virtual component ([@bieniu] - [#121997]) ([shelly docs]) (new-platform) (noteworthy) +- Add shelly overcurrent sensor for switches ([@huettner94] - [#122494]) ([shelly docs]) + +- Switch from WebRTC to microVAD ([@synesthesiam] - [#122861]) ([voip docs]) ([assist_pipeline docs]) + +{% enddetails %} + +### Integrations reaching platinum quality level + +The following {% term integrations %} have reached the platinum πŸ† level on our +[integration quality scale](/docs/quality_scale). These integrations are +the best of the best and give you an excellent out-of-the-box experience. + +- **[BMW Connected Drive]**, done by [@rikroe] +- **[TechnoVE]**, done by [@Moustachauve] +- **[Tessie]**, done by [@Bre77] + +Congratulations to all the developers who worked on these integrations! + +[BMW Connected Drive]: /integrations/bmw_connected_drive +[@rikroe]: https://github.com/rikroe +[TechnoVE]: /integrations/technove +[@Moustachauve]: https://github.com/Moustachauve +[Tessie]: /integrations/tessie +[@Bre77]: https://github.com/Bre77 + +### Now available to set up from the UI + +While most {% term integrations %} can be set up directly from the Home Assistant +user interface, some were only available using YAML configuration. We keep moving +more integrations to the UI, making them more accessible for everyone +to set up and use. + +The following integrations are now available via the Home Assistant UI: + +- **[Bluesound]**, done by [@LouisChrist] +- **[Genius Hub]**, done by [@GeoffAtHome] +- **[History stats]**, done by [@gjohansson-ST] +- **[Mastodon]**, done by [@andrew-codechimp] +- **[Russound RIO]**, done by [@noahhusby] +- **[Wake on LAN]**, done by [@gjohansson-ST] +- **[Worldclock]**, done by [@gjohansson-ST] + +[Bluesound]: /integrations/bluesound +[@LouisChrist]: https://github.com/LouisChrist +[@GeoffAtHome]: https://github.com/GeoffAtHome +[@gjohansson-ST]: https://github.com/gjohansson-ST +[@noahhusby]: https://github.com/noahhusby +[Genius Hub]: /integrations/geniushub +[History stats]: /integrations/history_stats +[Russound RIO]: /integrations/russound_rio +[Wake on LAN]: /integrations/wake_on_lan +[Worldclock]: /integrations/worldclock +[Mastodon]: /integrations/mastodon +[@andrew-codechimp]: https://github.com/andrew-codechimp + +### Farewell to the following + +The following {% term integrations %} are also no longer available as +of this release: + +- **UE Smart Radio** has been removed, the service has been [discontinued](https://forums.slimdevices.com/forum/user-forums/general-discussion/1668327-uesmartradio-com-and-mysqueezebox-com-servers). + +## Zigbee Home Automation (ZHA) updates + +The [Zigbee Home Automation] (ZHA) integration has seen lot of improvements +and love from [@dmulcahey], [@puddly], and [@TheJulianJES] this release. + +What this means for you? Well... basically nothing! And this sounds odd, but is +is a good thing! + +The whole integration has been split into a separate codebases, making it +easier to maintain and improve. This is a huge step forward for the integration +that took months of work to get done. + +You will not notice anything different right now, but this change will make +it easier to maintain and improve the integration in the future, including +the ability for code contributers to contribute to the integration more easily. + +![Chart showing how ZHA dropping from the number one integration in terms of lines of code to about number ten](https://github.com/home-assistant/core/assets/32534428/d708f61b-1746-4306-9264-24b7ad2ec40a) + +_TODO: Remove screenshot, it is fun for beta, but not for final release_ + +[@dmulcahey]: https://github.com/dmulcahey +[@puddly]: https://github.com/puddly +[@TheJulianJES]: https://github.com/TheJulianJES +[Zigbee Home Automation]: /integrations/zha + +## Matter updates + +A couple of updates for the Matter integration this release, while we are +working hard to get the integration ready for official Matter certification. + +The Matter integration can now provide update entities. Meaning, if your +Matter device has a firmware update available, Home Assistant will now +be able to inform you about it and update the device for you. πŸŽ‰ + +_TODO: Add screenshot of a Matter device updating_ + +This update feature is available for all Matter devices of which the +manufacturers provide firmware updates for via the official main Matter update +channels. There are not many manufacturers yet, but this is a great step +forward and we hope many Matter manufacturers will follow this example. + +Event entities provided by the Matter integration have been improved. They +will now provide more event types, allowing you to react to things like single +press or double press events with ease. + +Additionally, [@jvmahon] contributed support for select entities to the Matter +integration. This is used for selecting modes if your Matter device supports +that. For example, laundry washer, oven or dishwasher modes. + +[@jvmahon]: https://github.com/jvmahon + +## KNX can now be managed via the UI + +_TODO: Add piece of text / story / context as provided by [@farmio]_ + +The [KNX integration] now supports managing entities from the UI. This means +you can now create, update, and delete KNX entities directly from the UI +in the brand new dedicated KNX panel. + +Screenshot showing the brand new KNX panel that allows you to manage the entities created by KNX right from the UI. + +[KNX integration]: /integrations/knx +[@farmio]: https://github.com/farmio + +## Other noteworthy changes + +There are many more improvements in this release; here are some of the other +noteworthy changes this release: + +- We are proud of our [Open Home Foundation], so we now will show its pretty + logo on the loading and about screens of Home Assistant. Thanks [@balloob]! +- [Timer support] using [Assist], for mobile devices. This means you can now + control times from your mobile device or tablet. Thanks [@balloob]! +- You can now ask [Assist] for the current time and date, thanks [@synesthesiam]! +- Home Assistant will now raise a repair issue if an script can't be set up + (for example, because of YAML syntax errors). Thanks [@emontnemery]! +- If Home Assistant finds an integration set up that has been removed + (like when you remove a custom integration), it will now raise a repair issue + to help you clean up anything left behind. Thanks [@joostlek]! +- The [group] has support for grouping two new entities types. [@joostlek] added + support for grouping [notify] entities, and [@frenck] added support for grouping + [button] entities. Nice! +- The [Generic Thermostat] and [Hygrostat] helpers will now be linked to the + device that provided the actuator entity, thanks [@dougiteixeira]! +- [@gjohansson-ST] did the same, he added a link to the [History stats] helper + to the device that provided the sensor entity. +- You can now set up [button], [image], [select], and [switch] templates + entities, straight from the UI. Awesome job [@dougiteixeira]! +- [@karwosts] added a button to the actions developer tools to copy the action + response as JSON for use in templates. Nice! + +[@balloob]: https://github.com/balloob +[@dougiteixeira]: https://github.com/dougiteixeira +[@emontnemery]: https://github.com/emontnemery +[@frenck]: https://github.com/frenck +[@gjohansson-ST]: https://github.com/gjohansson-ST +[@joostlek]: https://github.com/joostlek +[@karwosts]: https://github.com/karwosts +[@synesthesiam]: https://github.com/synesthesiam +[Assist]: /voice_control/ +[button]: /integrations/button +[Generic Thermostat]: /integrations/generic_thermostat +[group]: /integrations/group +[History stats]: /integrations/history_stats +[Hygrostat]: /integrations/generic_hygrostat +[image]: /integrations/image +[notify]: /integrations/notify +[Open Home Foundation]: https://openhomefoundation.org/ +[select]: /integrations/select +[switch]: /integrations/switch +[Timer support]: /blog/2024/07/03/release-20247/#timers-are-here + +## Integrations and helpers set up via YAML, now visible in the UI! + +Most popular {% term integrations %} and helpers can be set up directly from the +Home Assistant user interface. However, we still have a lot of older or less +used integrations that can only be set up using manual YAML configuration. + +We are working hard to move more and more of these integrations to the UI, +however, this takes time and effort; every release we are enabling more and +more of these integrations to be set up from the UI. + +The problem with these integrations is that they are not visible in the UI +when they are set up using YAML. What we often see happening, is that someone +set up an integration using YAML, and next cannot see them on the integrations +page. Often resulting in questions in our community about where to find them. + +As of this release, we have drasticly improved this situation. All integrations, +regardless of how they are set up, are now visible in the integrations page +in the UI. This means that even if you set up an integration using YAML, you +can now find them in the UI and can view their provided entities. + +![CleanShot 2024-07-22 at 08 58 53](https://github.com/user-attachments/assets/fcdb16db-cfec-4490-928c-7e5486a746de) + +_TODO: Replace screenshot_ + +Integrations originating from manual YAML configuration can be recognized by the +{% icon "mdi:code-braces" %} icon showing on their cards. + +Similar, we also have a lot of helpers that can only be set up using YAML +configuration. These sometimes showed up in the UI, but often did not. We have +adjusted this as well, and made sure that all helpers are now visible in the UI, +regardless how they are set up. + +{% note %} +Things set up manually using YAML are still managed using YAML. This means that +if you want to change the configuration of these integrations or helpers, you +will need to do so in the YAML configuration files. +{% endnote %} + +## 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 + +We do our best to avoid making changes to existing functionality that might +unexpectedly impact your Home Assistant installation. Unfortunately, sometimes, +it is inevitable. + +We always make sure to document these changes to make the transition as easy as +possible for you. This release has the following backward-incompatible changes: + +{% details "Recorder database upgrade notice" %} + +This notice is only relevant if you are using the recorder integration with +an MySQL or ProgreSQL database. If you are using the default SQLite database, +you can ignore this notice. + +This release includes a database upgrade/migration that increases the size +of the number we can store for the idenfier fields. A more technical explanation: +We are upgrading integer fields for ID columns from a 32-bit integer to `BIGINT`, +which is a 64-bit integer. + +This can cause the database upgrade to take longer than usual, depending on +the size of your database. + +Please be patient and let the upgrade process finish. Do not interrupt the +upgrade process, as this can lead to a corrupted database. + +([@emontnemery] - [#121093]) ([documentation](/integrations/recorder)) + +[@emontnemery]: https://github.com/emontnemery +[#121093]: https://github.com/home-assistant/core/pull/121093 + +{% enddetails %} + +{% details "BlinkStick" %} + +The Blinksticklight integration is disabled because it requires software that +is not open source. Any help or contributions to make this integration work +without the closed-source software is welcomed. + +([@joostlek] - [#121846]) ([documentation](/integrations/blinksticklight)) + +[@joostlek]: https://github.com/joostlek +[#121846]: https://github.com/home-assistant/core/pull/121846 + +{% enddetails %} + +{% details "Bluesound" %} + +Sources behave slightly different. Radio station providers (like TuneIn, Radio +Paradise) are not part of the source list anymore as they are not selectable +as source. + +Presets which play a specific radio station can be created in the BluOS app and +are displayed as sources in Home Assistant. + +The currently selected source tries to match those presets and falls back to +the radio station provider (like TuneIn, Radio Paradise). + +([@LouisChrist] - [#117257]) ([documentation](/integrations/bluesound)) + +[@LouisChrist]: https://github.com/LouisChrist +[#117257]: https://github.com/home-assistant/core/pull/117257 + +{% enddetails %} + +{% details "BMW Connected Drive" %} + +Describing attributes `car` and `vin` have been removed from BMW entities. +If you need to look them up, please get them from the device info screen. + +([@rikroe] - [#120830]) ([documentation](/integrations/bmw_connected_drive)) + +[@rikroe]: https://github.com/rikroe +[#121093]: https://github.com/home-assistant/core/pull/120830 + +{% enddetails %} + +{% details "Climate" %} + +Scenes that used the deprecated auxiliary heat (`aux_heat` attribute), +will no longer restore/set the auxiliary heat state when the scene +is activated. + +([@bjpetit] - [#121873]) ([documentation](/integrations/climate)) + +[@bjpetit]: https://github.com/bjpetit +[#121873]: https://github.com/home-assistant/core/pull/121873 + +{% enddetails %} + +{% details "Concord232" %} + +The Concord232 integration is disabled because it requires software that +is not open source. Any help or contributions to make this integration work +without the closed-source software is welcomed. + +([@joostlek] - [#121974]) ([documentation](/integrations/concord232)) + +[@joostlek]: https://github.com/joostlek +[#121974]: https://github.com/home-assistant/core/pull/121974 + +{% enddetails %} + +{% details "DoorBird" %} + +Previously resetting the device favorites required working out a complicated +URL. A button is now available to perform this operation. + +([@bdraco] - [#121720]) ([documentation](/integrations/doorbird)) + +[@bdraco]: https://github.com/bdraco +[#121720]: https://github.com/home-assistant/core/pull/121720 + +{% enddetails %} + +{% details "Dovado" %} + +The Dovado integration is disabled because it requires software that +is not open source. Any help or contributions to make this integration work +without the closed-source software is welcomed. + +([@joostlek] - [#121871]) ([documentation](/integrations/dovado)) + +[@joostlek]: https://github.com/joostlek +[#121871]: https://github.com/home-assistant/core/pull/121871 + +{% enddetails %} + +{% details "HomeKit Bridge" %} + +PM2.5 airquality sensors are now mapped to the [US EPA AQI scale](https://www.epa.gov/system/files/documents/2024-02/pm-naaqs-air-quality-index-fact-sheet.pdf). +The new cutoff value for US AQI Good (0-50) is 9.0 Β΅g/m3 is thus now used to +match the 2024 US EPA AQI standard. + +([@sarabveer] - [#121093]) ([documentation](/integrations/homekit)) + +[@sarabveer]: https://github.com/sarabveer +[#109900]: https://github.com/home-assistant/core/pull/109900 + +{% enddetails %} + +{% details "Lights" %} + +The following attributes are no longer saved in the database for light +entities because their combinations would quickly fill up the database and +they are never used by Home Assistant: + +- `brightness` +- `color_mode` +- `color_temp` +- `color_temp_kelvin` +- `effect` +- `hs_color` +- `rgb_color` +- `rgbw_color` +- `rgbww_color` +- `xy_color` + +This change has no impact on the operation of your lights, but it will reduce +the amount of data stored in the database. + +([@bdraco] - [#121776]) ([documentation](/integrations/light)) + +[@bdraco]: https://github.com/bdraco +[#121776]: https://github.com/home-assistant/core/pull/121776 + +{% enddetails %} + +{% details "Matter" %} + +Multi press events are now split of into their own dedicated event type such as +`multi_press_1`, `multi_press_2` etc. making it easier to automate on multiple +presses instead of having to look manually at the number of presses count. + +If you have used the current event type in your automations, you will need to +update them to use the new event types. + +([@marcelveldt] - [#122191]) ([documentation](/integrations/matter)) + +[@marcelveldt]: https://github.com/marcelveldt +[#122191]: https://github.com/home-assistant/core/pull/122191 + +{% enddetails %} + +{% details "MQTT" %} + +The `schema` option has been removed from the mqtt vacuum schema. YAML configs +still containing this option will break after 6 months of deprecation. Users +have been warned with with a repair. Discovery configs will not break if the +schema options is still in the config, but it will simple be ignored and an +error message will be logged to notice. + +([@jbouwh] - [#121093]) ([documentation](/integrations/mqtt)) + +[@jbouwh]: https://github.com/jbouwh +[#121093]: https://github.com/home-assistant/core/pull/121093 + +{% enddetails %} + +{% details "MVG" %} + +([@joostlek] - [#121975]) ([documentation](/integrations/mvglive)) + +The MVG integration is disabled because it requires software that +is not open source. Any help or contributions to make this integration work +without the closed-source software is welcomed. + +[@joostlek]: https://github.com/joostlek +[#121975]: https://github.com/home-assistant/core/pull/121975 + +{% enddetails %} + +{% details "National Weather Service (NWS)" %} + +NWS weather entities no longer have a `detailed_description` in the return +from the `weather.get_forecasts` service. + +A new service, `nws.get_forecasts_extra`, is provided that includes +`detailed_description`. The `detailed_description` is no longer provided +for `hourly` forecasts in the `nws.get_forecasts_extra` service as the API +does not return data, however a `short_description` is now available. + +([@MatthewFlamm] - [#117254]) ([documentation](/integrations/nws)) + +[@MatthewFlamm]: https://github.com/MatthewFlamm +[#117254]: https://github.com/home-assistant/core/pull/117254 + +{% enddetails %} + +{% details "NextBus" %} + +The `messages`, `directions`, and `attribution` attributes have been removed from +the sensor. The new API doesn't provide these anymore. + +([@ViViDboarder] - [#121133]) ([documentation](/integrations/nextbus)) + +[@ViViDboarder]: https://github.com/ViViDboarder +[#121133]: https://github.com/home-assistant/core/pull/121133 + +{% enddetails %} + +{% details "OpenAI Conversation" %} + +The previously deprecated `256`, `512`, and `1024` values for size argument for +the `generate_image` service have been removed. They have already been +unsupported in the past (replaced with `1024x1024` by default). + +If you still use these values in your automations or scripts, you will need to +update them to use "1024x1024", "1024x1792", or "1792x1024" values. + +([@Shulyaka] - [#122388]) ([documentation](/integrations/openai_conversation)) + +[@Shulyaka]: https://github.com/Shulyaka +[#122388]: https://github.com/home-assistant/core/pull/122388 + +{% enddetails %} + +{% details "WLED" %} + +The WLED integration now requires a WLED device running at least +[WLED 0.14.0](https://github.com/Aircoookie/WLED/releases/tag/v0.14.0) + +([@frenck] - [#122101]) ([documentation](/integrations/wled)) + +[@frenck]: https://github.com/frenck +[#122101]: https://github.com/home-assistant/core/pull/122101 + +{% enddetails %} + +{% details "Xiaomi Miio" %} + +The `Nature` and `Normal` preset modes will be renamed to `nature` +and `normal` to support translations. + +If you have automations or scripts that use the `Nature` or `Normal` preset +modes, you will need to update them to use `nature` and `normal` instead. + +([@piitaya] - [#122367]) ([documentation](/integrations/xiaomi_miio)) + +[@piitaya]: https://github.com/piitaya +[#122367]: https://github.com/home-assistant/core/pull/122367 + +{% enddetails %} + +If you are a custom integration developer and want to learn about 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: + +- [Climate entity now validates temperature provided in action calls](https://developers.home-assistant.io/blog/2024/07/24/climate-min-max-temperature-check/) +- [model_id added to DeviceInfo](https://developers.home-assistant.io/blog/2024/07/16/device-info-model-id) +- [New entity feature flags in FanEntity](https://developers.home-assistant.io/blog/2024/07/19/fan-fanentityfeatures-turn-on_off) +- [New HVACAction DEFROSTING](https://developers.home-assistant.io/blog/2024/07/07/climate-hvacaction-defrosting/) +- [Services are now actions](https://developers.home-assistant.io/blog/2024/07/16/service-actions) + +[devblog]: https://developers.home-assistant.io/blog/ + +## 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.8](/changelogs/core-2024.8) diff --git a/source/changelogs/core-2024.8.markdown b/source/changelogs/core-2024.8.markdown new file mode 100644 index 00000000000..a44af057cf2 --- /dev/null +++ b/source/changelogs/core-2024.8.markdown @@ -0,0 +1,488 @@ +--- +title: Full changelog for Home Assistant Core 2024.8 +description: Detailed changelog for the Home Assistant Core 2024.8 release +replace_regex: \s\(\[?[a-z0-9\-\s_]+\]?\)$ +--- + +These are all the changes included in the Home Assistant Core 2024.8 release. + +For a summary in a more readable format: +[Release notes blog for this release](/blog/2024/08/07/release-20248/). + +## All changes + +- Bump version to 2024.8.0dev0 ([@frenck] - [#120577]) +- Adapt Roborock to runtime_data ([@edenhaus] - [#120578]) ([roborock docs]) +- Update pylint to 3.2.4 ([@cdce8p] - [#120606]) ([influxdb docs]) ([owntracks docs]) ([solarlog docs]) (dependency) +- Add some more VolDictType annotations ([@cdce8p] - [#120610]) +- Install libturbojpeg in hassfest job [ci] ([@cdce8p] - [#120611]) +- Prevent importing PLATFORM_SCHEMA/_BASE from config validation ([@epenet] - [#120571]) +- Address device helper review comments ([@dougiteixeira] - [#120615]) +- Bump awesomeversion from 24.2.0 to 24.6.0 ([@ludeeus] - [#120642]) (dependency) +- Remove unnecessary .coveragerc entries ([@davet2001] - [#120620]) +- Add release url to lamarzocco update ([@zweckj] - [#120645]) ([lamarzocco docs]) +- Improve type hints in emulated_hue tests ([@epenet] - [#120664]) ([emulated_hue docs]) +- Improve type hints in esphome tests ([@epenet] - [#120674]) ([esphome docs]) +- Add capsys to enforce-type-hints plugin ([@epenet] - [#120653]) ([srp_energy docs]) +- Improve type hints in enphase_envoy tests ([@epenet] - [#120676]) ([enphase_envoy docs]) +- Improve type hints in evil_genius_labs tests ([@epenet] - [#120677]) ([evil_genius_labs docs]) +- Bump ring-doorbell to 0.8.12 ([@sdb9696] - [#120671]) ([ring docs]) (dependency) +- Fix SIM300 ([@joostlek] - [#120725]) +- Improve type hints in auth tests ([@epenet] - [#120655]) +- Improve type hints in flux_led tests ([@epenet] - [#120734]) ([flux_led docs]) +- Add unit and state_class to heating sensor in ista EcoTrend ([@tr4nt0r] - [#120728]) ([ista_ecotrend docs]) +- Improve type hints in flux tests ([@epenet] - [#120733]) ([flux docs]) +- Fix ruff type comparison E721 ([@joostlek] - [#120731]) +- Improve type hints in fjaraskupan tests ([@epenet] - [#120732]) ([fjaraskupan docs]) +- Fix ruff manual-dict-comprehension PERF403 in tests ([@joostlek] - [#120738]) ([recorder docs]) +- Fix ruff redefined-argument-from-local PLR1704 ([@joostlek] - [#120729]) +- Bump aiomaps with fixed license classifier ([@devbis] - [#120654]) ([yandex_transport docs]) (dependency) +- Improve type hints in flo tests ([@epenet] - [#120730]) ([flo docs]) +- Bump xiaomi-ble to 0.30.1 ([@joostlek] - [#120743]) ([xiaomi_ble docs]) (dependency) +- Improve type hints in forked_daapd tests ([@epenet] - [#120735]) ([forked_daapd docs]) +- Improve type hints in frontend tests ([@epenet] - [#120739]) ([frontend docs]) +- Fix ruff manual-dict-comprehension PERF403 ([@joostlek] - [#120723]) +- Bump ruff to 0.5.0 ([@joostlek] - [#120749]) ([websocket_api docs]) ([command_line docs]) ([v2c docs]) ([weatherflow_cloud docs]) (dependency) +- Cleanup mqtt platform tests part 6 (last) ([@jbouwh] - [#120736]) ([mqtt docs]) +- Cleanup mqtt platform tests part 5 ([@jbouwh] - [#120719]) ([mqtt docs]) +- Bump Wallbox to 0.7.0 ([@kotope] - [#120768]) ([wallbox docs]) (dependency) +- Catch exceptions in service calls by buttons/switches in pyLoad integration ([@tr4nt0r] - [#120701]) ([pyload docs]) +- Fix stale docstring in recorder queries ([@bdraco] - [#120763]) ([recorder docs]) +- Link Generic Thermostat helper entity to actuator entity device ([@dougiteixeira] - [#120767]) ([generic_thermostat docs]) +- Link Generic Hygrostat helper entity to actuator entity device ([@dougiteixeira] - [#120759]) ([generic_hygrostat docs]) +- Add event platform to unifiprotect ([@bdraco] - [#120681]) ([unifiprotect docs]) (new-platform) +- Cleanup db_schema from_event constructors ([@bdraco] - [#120803]) ([recorder docs]) +- Remove legacy foreign key constraint from sqlite states table ([@bdraco] - [#120779]) ([recorder docs]) +- Bump pyOverkiz to 1.13.12 ([@iMicknl] - [#120819]) ([overkiz docs]) (dependency) +- Bump plexapi to 4.15.14 ([@jjlawren] - [#120832]) ([plex docs]) (dependency) +- Use eventing for some of the upnp sensors, instead of polling ([@StevenLooman] - [#120262]) ([upnp docs]) ([yeelight docs]) ([dlna_dmr docs]) ([samsungtv docs]) ([ssdp docs]) ([dlna_dms docs]) +- Store runtime data inside the config entry in solarlog ([@dontinelli] - [#120773]) ([solarlog docs]) +- Add linked doorbell event support to HomeKit ([@bdraco] - [#120834]) ([homekit docs]) +- Bump google-cloud-texttospeech to 2.16.3 ([@tronikos] - [#120845]) ([google_cloud docs]) (dependency) +- Use TextToSpeechAsyncClient in Google Cloud TTS ([@tronikos] - [#120847]) ([google_cloud docs]) +- Do not set gender if voice name is specified in Google Cloud TTS ([@tronikos] - [#120848]) ([google_cloud docs]) +- Handle error when validating options in Google Cloud TTS ([@tronikos] - [#120850]) ([google_cloud docs]) +- Use runtime_data for BMW ([@rikroe] - [#120837]) ([bmw_connected_drive docs]) +- Axis improve fixture naming ([@Kane610] - [#120844]) ([axis docs]) +- Store runtime data inside the config entry in fyta ([@dontinelli] - [#120761]) ([fyta docs]) +- Correctly return file extension in Google Cloud TTS ([@tronikos] - [#120849]) ([google_cloud docs]) +- Use SelectSelector in BMW config flow ([@rikroe] - [#120831]) ([bmw_connected_drive docs]) +- Simplify UniFi uptime sensor test ([@Kane610] - [#120794]) ([unifi docs]) +- Change schema to TextSelector to enable autocomplete ([@dontinelli] - [#120771]) ([fyta docs]) +- Improve UniFi device tracker tests Pt2 ([@Kane610] - [#120796]) ([unifi docs]) +- Improve UniFi device tracker tests ([@Kane610] - [#120795]) ([unifi docs]) +- Migrate Ecowitt to runtime_data ([@edenhaus] - [#120675]) ([ecowitt docs]) +- Fix unifi device tracker test imports ([@rikroe] - [#120864]) ([unifi docs]) +- Add valve domain to HomeKit ([@sander1988] - [#115901]) ([homekit docs]) +- Bump github/codeql-action from 3.25.10 to 3.25.11 (@dependabot - [#120899]) (dependency) +- Use service_calls fixture in deconz tests ([@epenet] - [#120905]) ([deconz docs]) +- Import Generator from collections.abc (1) ([@cdce8p] - [#120914]) +- Import Generator from collections.abc (4) ([@cdce8p] - [#120917]) +- Import Generator from collections.abc (2) ([@cdce8p] - [#120915]) +- Import Generator from collections.abc (3) ([@cdce8p] - [#120916]) +- Add typing to Panasonic Viera ([@joostlek] - [#120772]) ([panasonic_viera docs]) +- First step towards fixtures in deCONZ tests ([@Kane610] - [#120863]) ([deconz docs]) +- Use service_calls fixture in google_translate tests ([@epenet] - [#120920]) ([google_translate docs]) +- Use TypeVar defaults for Generator ([@cdce8p] - [#120921]) +- Remove OverloadUT as codeowner from Ecovacs ([@edenhaus] - [#120517]) ([ecovacs docs]) +- Add Context to service_calls fixture ([@epenet] - [#120923]) +- Use service_calls fixture in knx tests ([@epenet] - [#120930]) ([knx docs]) +- Use service_calls fixture in hue tests ([@epenet] - [#120928]) ([hue docs]) +- Improve flume test coverage ([@allenporter] - [#120851]) ([flume docs]) +- Use service_calls fixture in lutron_caseta tests ([@epenet] - [#120934]) ([lutron_caseta docs]) +- Use service_calls fixture in homeassistant tests ([@epenet] - [#120922]) ([homeassistant docs]) +- Use service_calls fixture in lcn tests ([@epenet] - [#120931]) ([lcn docs]) +- Use fixtures in deCONZ select tests ([@Kane610] - [#120943]) ([deconz docs]) +- Use service_calls fixture in media_extractor tests ([@epenet] - [#120935]) ([media_extractor docs]) +- Use service_calls fixture in lg_netcast tests ([@epenet] - [#120932]) ([lg_netcast docs]) +- Add exception translations ([@timmo001] - [#120937]) ([azure_devops docs]) +- Use fixtures in deCONZ scene tests ([@Kane610] - [#120936]) ([deconz docs]) +- Use fixtures in deCONZ number tests ([@Kane610] - [#120938]) ([deconz docs]) +- Use service_calls fixture in litejet tests ([@epenet] - [#120933]) ([litejet docs]) +- Replace GoogleAPICallError with GoogleAPIError ([@tronikos] - [#120902]) ([google_generative_ai_conversation docs]) +- Remove a useless line in Google Generative AI test ([@tronikos] - [#120903]) ([google_generative_ai_conversation docs]) +- Use service_calls fixture in kodi tests ([@epenet] - [#120929]) ([kodi docs]) +- Use service_calls fixture in homekit_controller tests ([@epenet] - [#120927]) ([homekit_controller docs]) +- Use service_calls fixture in geo_location tests ([@epenet] - [#120911]) ([geo_location docs]) +- Use service_calls fixture in conversation tests ([@epenet] - [#120906]) ([conversation docs]) +- Use fixtures in deCONZ logbook tests ([@Kane610] - [#120947]) ([deconz docs]) +- Use fixtures in deCONZ lock tests ([@Kane610] - [#120948]) ([deconz docs]) +- Use fixtures in deCONZ switch tests ([@Kane610] - [#120944]) ([deconz docs]) +- Simplify Bang & Olufsen media_image_url property ([@mj23000] - [#120951]) ([bang_olufsen docs]) +- Use service_calls fixture in core platform tests [a-l] ([@epenet] - [#120904]) +- Use fixtures in deCONZ fan tests ([@Kane610] - [#120953]) ([deconz docs]) +- Use fixtures in deCONZ cover tests ([@Kane610] - [#120954]) ([deconz docs]) +- Use fixtures in deCONZ button tests ([@Kane610] - [#120958]) ([deconz docs]) +- Use service_calls fixture in netatmo tests ([@epenet] - [#120986]) ([netatmo docs]) +- Use service_calls fixture in shelly tests ([@epenet] - [#120991]) ([shelly docs]) +- Use service_calls fixture in samsungtv tests ([@epenet] - [#120992]) ([samsungtv docs]) +- Use service_calls fixture in mqtt tests ([@epenet] - [#120984]) ([mqtt docs]) +- Use common registry fixtures in hue ([@epenet] - [#121003]) ([hue docs]) +- Use common registry fixtures in tplink ([@epenet] - [#121002]) ([tplink docs]) +- Use service_calls fixture in microsoft tests ([@epenet] - [#120983]) ([microsoft docs]) +- Use service_calls fixture in zone tests ([@epenet] - [#120995]) ([zone docs]) +- Use service_calls fixture in sun tests ([@epenet] - [#120990]) ([sun docs]) +- Use service_calls fixture in yolink tests ([@epenet] - [#120997]) ([yolink docs]) +- Use common fixtures in philips_js tests ([@epenet] - [#120988]) ([philips_js docs]) +- Use common registry fixtures in lifx ([@epenet] - [#121004]) ([lifx docs]) +- Use service_calls fixture in core platform tests [m-z] ([@epenet] - [#121001]) +- Use common registry fixtures in solarlog ([@epenet] - [#121005]) ([solarlog docs]) +- Use service_calls fixture in zwave_js tests ([@epenet] - [#120994]) ([zwave_js docs]) +- Use service_calls fixture in xiaomi_ble tests ([@epenet] - [#120998]) ([xiaomi_ble docs]) +- Use fixtures in deCONZ diagnostics tests ([@Kane610] - [#120968]) +- Improve type hints in analytics tests ([@epenet] - [#121012]) ([analytics docs]) +- Adjust Generator type hints in tests ([@epenet] - [#121013]) ([homekit docs]) ([tibber docs]) ([incomfort docs]) ([flume docs]) ([drop_connect docs]) +- Fix typo in post_schema_migration ([@emontnemery] - [#121017]) ([recorder docs]) +- Use service_calls fixture in nest tests ([@epenet] - [#120987]) ([nest docs]) +- Use common fixtures in tasmota tests ([@epenet] - [#121000]) ([tasmota docs]) +- Bump amberelectric to 1.1.1 ([@madpilot] - [#121010]) ([amberelectric docs]) (dependency) +- Update voluptuous to 0.15.2 ([@cdce8p] - [#120631]) (dependency) +- Bump orjson to 3.10.6 ([@bdraco] - [#121028]) (dependency) +- Improve type hints in home_connect tests ([@epenet] - [#121014]) ([home_connect docs]) +- Add Beoconnect Core as selectable Bang & Olufsen device ([@mj23000] - [#121015]) ([bang_olufsen docs]) +- Remove BaseTableManager active attribute ([@emontnemery] - [#121020]) ([recorder docs]) +- Bump pytechnove to 1.3.0 ([@Moustachauve] - [#120975]) ([technove docs]) (dependency) +- Bump uiprotect to 5.0.0 ([@bdraco] - [#121034]) ([unifiprotect docs]) (dependency) +- Add monkeypatch type hints to shelly tests ([@epenet] - [#121057]) ([shelly docs]) +- Add conversation supported feature CONTROL ([@balloob] - [#121036]) ([conversation docs]) +- Use async_setup_recorder_instance fixture in recorder migration tests ([@emontnemery] - [#121050]) ([recorder docs]) +- Remove unused diagnostics fixtures ([@epenet] - [#121066]) ([google docs]) ([local_calendar docs]) +- Cleanup deprecated json utils ([@epenet] - [#121069]) +- Add CONTROL supported feature to OpenAI conversation entities ([@balloob] - [#121064]) ([conversation docs]) ([openai_conversation docs]) +- Improve logic when retrying establishing database connection ([@emontnemery] - [#121047]) ([recorder docs]) +- Use async_setup_recorder_instance fixture in recorder auto_repairs tests ([@emontnemery] - [#121077]) ([recorder docs]) +- Fix async knocki function ([@joostlek] - [#121048]) ([knocki docs]) +- Bump uiprotect to 5.2.0 ([@bdraco] - [#121079]) ([unifiprotect docs]) (dependency) +- Cleanup v32 recorder migration test ([@bdraco] - [#121083]) ([recorder docs]) +- Small speed up to writing entity state ([@bdraco] - [#121043]) +- Fix leak of SQLAlchemy engine objects in recorder ([@emontnemery] - [#121085]) ([recorder docs]) +- Make the async_setup_recorder_instance fixture a context manager ([@emontnemery] - [#121086]) ([recorder docs]) ([logbook docs]) ([history_stats docs]) +- Fix event loop blocking I/O in command_line tests ([@bdraco] - [#121098]) ([command_line docs]) +- Fix event loop blocking I/O in generic tests ([@bdraco] - [#121100]) ([generic docs]) +- Remove schema option for mqtt vacuum configs ([@jbouwh] - [#121093]) ([mqtt docs]) (breaking-change) +- Fix blocking I/O in demo mailbox ([@bdraco] - [#121097]) ([demo docs]) +- Remove unnecessary lambdas in timeout tests ([@bdraco] - [#121101]) +- Fix blocking process call in process tests ([@bdraco] - [#121104]) +- Add monkeypatch type hints to switcher_kis tests ([@epenet] - [#121055]) ([switcher_kis docs]) +- Add monkeypatch type hints to webostv tests ([@epenet] - [#121054]) ([webostv docs]) +- Add recorder test fixture for skipping tests by DB engine ([@emontnemery] - [#121118]) ([recorder docs]) +- Fix blocking I/O in event loop in kira test ([@bdraco] - [#121127]) ([kira docs]) +- Fix blocking I/O in event loop in google_assistant test ([@bdraco] - [#121126]) ([google_assistant docs]) +- Bump nextcloudmonitor to 1.5.1 ([@meichthys] - [#120356]) ([nextcloud docs]) (dependency) +- Use async_test_recorder fixture in recorder auto_repairs tests ([@emontnemery] - [#121125]) ([recorder docs]) +- Fix blocking I/O in media_extractor tests ([@bdraco] - [#121139]) ([media_extractor docs]) +- Fix blocking I/O in mqtt tests ([@bdraco] - [#121140]) ([mqtt docs]) +- Fix blocking I/O in stream tests ([@bdraco] - [#121142]) ([stream docs]) +- Fix blocking I/O in tts tests ([@bdraco] - [#121143]) ([tts docs]) +- Fix blocking I/O in config tests ([@bdraco] - [#121144]) +- Update pytechnove to 1.3.1 ([@Moustachauve] - [#121146]) ([technove docs]) (dependency) +- Bump thermobeacon-ble to 0.7.0 ([@bdraco] - [#121136]) ([thermobeacon docs]) (dependency) +- Fix blocking I/O in event loop in core test ([@bdraco] - [#121128]) +- Add port mapping entry count sensor to upnp ([@StevenLooman] - [#120263]) ([upnp docs]) +- Add recorder test fixture to enable persistent SQLite database ([@emontnemery] - [#121137]) ([recorder docs]) +- Improve type hints in group tests ([@epenet] - [#121174]) ([group docs]) +- Improve type hints in gpslogger tests ([@epenet] - [#121173]) ([gpslogger docs]) +- Improve type hints in geofency tests ([@epenet] - [#121168]) ([geofency docs]) +- Improve type hints in google_travel_time tests ([@epenet] - [#121171]) ([google_travel_time docs]) +- Improve type hints in generic_hygrostat/thermostat tests ([@epenet] - [#121167]) ([generic_thermostat docs]) ([generic_hygrostat docs]) +- Improve type hints in generic tests ([@epenet] - [#121166]) ([generic docs]) +- Convert async_get_conversation_languages from async to callback ([@balloob] - [#121162]) ([conversation docs]) ([assist_pipeline docs]) +- Improve type hints in google_generative_ai tests ([@epenet] - [#121170]) ([google_generative_ai_conversation docs]) +- Enable ruff asyncio event loop blocking detection rules ([@bdraco] - [#120799]) +- Improve type hints in google_pubsub tests ([@epenet] - [#121172]) ([google_pubsub docs]) +- Add monkeypatch type hints to numato tests ([@epenet] - [#121056]) ([numato docs]) +- Add event platform to doorbird ([@bdraco] - [#121114]) ([doorbird docs]) (new-platform) +- Use fixtures in deCONZ config flow tests PT1 ([@Kane610] - [#121121]) ([deconz docs]) +- Use fixtures in deCONZ sensor tests PT1 ([@Kane610] - [#121116]) ([deconz docs]) +- Add support for event entity motion sensors to HomeKit ([@bdraco] - [#121123]) ([homekit docs]) +- Improve type hints in guardian tests ([@epenet] - [#121175]) ([guardian docs]) +- Use recorder test fixtures in recorder init tests ([@emontnemery] - [#121176]) ([recorder docs]) +- Fix Google assistant SDK broadcasting command for italian ([@giulianoriccio] - [#116198]) ([google_assistant_sdk docs]) +- Fix some typos in core.py ([@emontnemery] - [#121189]) +- Add test fixture to control recorder migration ([@emontnemery] - [#121180]) ([recorder docs]) +- Use fixtures in deCONZ alarm control panel tests ([@Kane610] - [#120967]) ([deconz docs]) +- Use fixtures in deCONZ binary sensor tests ([@Kane610] - [#120966]) ([deconz docs]) +- Use fixtures in deCONZ light tests PT1 ([@Kane610] - [#121112]) ([deconz docs]) +- Use fixtures in deCONZ device trigger tests ([@Kane610] - [#121103]) ([deconz docs]) +- Use fixtures in deCONZ service tests ([@Kane610] - [#121108]) ([deconz docs]) +- Improve type hints in google tests ([@epenet] - [#121169]) ([google docs]) +- Use fixtures in deCONZ sensor tests PT2 ([@Kane610] - [#121204]) ([deconz docs]) +- Use fixtures in deCONZ config flow tests PT2 ([@Kane610] - [#121203]) ([deconz docs]) +- Add type hints to matrix events fixtures ([@epenet] - [#121213]) ([matrix docs]) +- Improve type hints in habitica tests ([@epenet] - [#121212]) ([habitica docs]) +- Add type hints to homekit events fixture ([@epenet] - [#121211]) ([homekit docs]) +- Add new integration for Dio Chacon cover devices ([@cnico] - [#116267]) ([dio_chacon docs]) (new-integration) +- Drop use of async_setup_recorder_instance fixture in recorder migration tests ([@emontnemery] - [#121196]) ([recorder docs]) +- Drop use of async_setup_recorder_instance fixture in recorder purge tests ([@emontnemery] - [#121193]) ([recorder docs]) +- Add support for the Select platform in Matter ([@jvmahon] - [#119769]) ([matter docs]) (new-platform) +- Update short_name in web app manifest ([@pkoenig10] - [#121223]) ([frontend docs]) +- Update uiprotect to 5.2.2 ([@bdraco] - [#121227]) ([unifiprotect docs]) (dependency) +- Use Generator from abc instead of typing_extensions in Matter discovery ([@marcelveldt] - [#121236]) ([matter docs]) +- Import AsyncGenerator from collections.abc in tests ([@epenet] - [#121019]) ([twitch docs]) ([youtube docs]) +- Add .coveragerc to core files ([@epenet] - [#121182]) +- Add warnings for deprecated json helpers ([@epenet] - [#121161]) (deprecation) +- Bump pytrafikverket to 1.0.0 ([@gjohansson-ST] - [#121210]) ([trafikverket_weatherstation docs]) ([trafikverket_train docs]) ([trafikverket_ferry docs]) ([trafikverket_camera docs]) (dependency) +- Fix AprilAire case ([@chamberlain2007] - [#120895]) ([aprilaire docs]) +- Add MINI Connected virtual integration ([@rikroe] - [#120874]) ([mini_connected docs]) (new-integration) +- Bump `nettigo_air_monitor` to version 3.3.0 ([@bieniu] - [#120901]) ([nam docs]) (dependency) +- Improve type hints in ezviz tests ([@epenet] - [#120679]) ([ezviz docs]) +- Use service_calls fixture in webostv tests ([@epenet] - [#120999]) ([webostv docs]) +- Update laundrify_aio to v1.2.2 ([@xLarry] - [#121068]) ([laundrify docs]) (dependency) + +[#115901]: https://github.com/home-assistant/core/pull/115901 +[#116198]: https://github.com/home-assistant/core/pull/116198 +[#116267]: https://github.com/home-assistant/core/pull/116267 +[#119769]: https://github.com/home-assistant/core/pull/119769 +[#120262]: https://github.com/home-assistant/core/pull/120262 +[#120263]: https://github.com/home-assistant/core/pull/120263 +[#120356]: https://github.com/home-assistant/core/pull/120356 +[#120517]: https://github.com/home-assistant/core/pull/120517 +[#120571]: https://github.com/home-assistant/core/pull/120571 +[#120577]: https://github.com/home-assistant/core/pull/120577 +[#120578]: https://github.com/home-assistant/core/pull/120578 +[#120606]: https://github.com/home-assistant/core/pull/120606 +[#120610]: https://github.com/home-assistant/core/pull/120610 +[#120611]: https://github.com/home-assistant/core/pull/120611 +[#120615]: https://github.com/home-assistant/core/pull/120615 +[#120620]: https://github.com/home-assistant/core/pull/120620 +[#120631]: https://github.com/home-assistant/core/pull/120631 +[#120642]: https://github.com/home-assistant/core/pull/120642 +[#120645]: https://github.com/home-assistant/core/pull/120645 +[#120653]: https://github.com/home-assistant/core/pull/120653 +[#120654]: https://github.com/home-assistant/core/pull/120654 +[#120655]: https://github.com/home-assistant/core/pull/120655 +[#120664]: https://github.com/home-assistant/core/pull/120664 +[#120671]: https://github.com/home-assistant/core/pull/120671 +[#120674]: https://github.com/home-assistant/core/pull/120674 +[#120675]: https://github.com/home-assistant/core/pull/120675 +[#120676]: https://github.com/home-assistant/core/pull/120676 +[#120677]: https://github.com/home-assistant/core/pull/120677 +[#120679]: https://github.com/home-assistant/core/pull/120679 +[#120681]: https://github.com/home-assistant/core/pull/120681 +[#120701]: https://github.com/home-assistant/core/pull/120701 +[#120719]: https://github.com/home-assistant/core/pull/120719 +[#120723]: https://github.com/home-assistant/core/pull/120723 +[#120725]: https://github.com/home-assistant/core/pull/120725 +[#120728]: https://github.com/home-assistant/core/pull/120728 +[#120729]: https://github.com/home-assistant/core/pull/120729 +[#120730]: https://github.com/home-assistant/core/pull/120730 +[#120731]: https://github.com/home-assistant/core/pull/120731 +[#120732]: https://github.com/home-assistant/core/pull/120732 +[#120733]: https://github.com/home-assistant/core/pull/120733 +[#120734]: https://github.com/home-assistant/core/pull/120734 +[#120735]: https://github.com/home-assistant/core/pull/120735 +[#120736]: https://github.com/home-assistant/core/pull/120736 +[#120738]: https://github.com/home-assistant/core/pull/120738 +[#120739]: https://github.com/home-assistant/core/pull/120739 +[#120743]: https://github.com/home-assistant/core/pull/120743 +[#120749]: https://github.com/home-assistant/core/pull/120749 +[#120759]: https://github.com/home-assistant/core/pull/120759 +[#120761]: https://github.com/home-assistant/core/pull/120761 +[#120763]: https://github.com/home-assistant/core/pull/120763 +[#120767]: https://github.com/home-assistant/core/pull/120767 +[#120768]: https://github.com/home-assistant/core/pull/120768 +[#120771]: https://github.com/home-assistant/core/pull/120771 +[#120772]: https://github.com/home-assistant/core/pull/120772 +[#120773]: https://github.com/home-assistant/core/pull/120773 +[#120779]: https://github.com/home-assistant/core/pull/120779 +[#120794]: https://github.com/home-assistant/core/pull/120794 +[#120795]: https://github.com/home-assistant/core/pull/120795 +[#120796]: https://github.com/home-assistant/core/pull/120796 +[#120799]: https://github.com/home-assistant/core/pull/120799 +[#120803]: https://github.com/home-assistant/core/pull/120803 +[#120819]: https://github.com/home-assistant/core/pull/120819 +[#120831]: https://github.com/home-assistant/core/pull/120831 +[#120832]: https://github.com/home-assistant/core/pull/120832 +[#120834]: https://github.com/home-assistant/core/pull/120834 +[#120837]: https://github.com/home-assistant/core/pull/120837 +[#120844]: https://github.com/home-assistant/core/pull/120844 +[#120845]: https://github.com/home-assistant/core/pull/120845 +[#120847]: https://github.com/home-assistant/core/pull/120847 +[#120848]: https://github.com/home-assistant/core/pull/120848 +[#120849]: https://github.com/home-assistant/core/pull/120849 +[#120850]: https://github.com/home-assistant/core/pull/120850 +[#120851]: https://github.com/home-assistant/core/pull/120851 +[#120863]: https://github.com/home-assistant/core/pull/120863 +[#120864]: https://github.com/home-assistant/core/pull/120864 +[#120874]: https://github.com/home-assistant/core/pull/120874 +[#120895]: https://github.com/home-assistant/core/pull/120895 +[#120899]: https://github.com/home-assistant/core/pull/120899 +[#120901]: https://github.com/home-assistant/core/pull/120901 +[#120902]: https://github.com/home-assistant/core/pull/120902 +[#120903]: https://github.com/home-assistant/core/pull/120903 +[#120904]: https://github.com/home-assistant/core/pull/120904 +[#120905]: https://github.com/home-assistant/core/pull/120905 +[#120906]: https://github.com/home-assistant/core/pull/120906 +[#120911]: https://github.com/home-assistant/core/pull/120911 +[#120914]: https://github.com/home-assistant/core/pull/120914 +[#120915]: https://github.com/home-assistant/core/pull/120915 +[#120916]: https://github.com/home-assistant/core/pull/120916 +[#120917]: https://github.com/home-assistant/core/pull/120917 +[#120920]: https://github.com/home-assistant/core/pull/120920 +[#120921]: https://github.com/home-assistant/core/pull/120921 +[#120922]: https://github.com/home-assistant/core/pull/120922 +[#120923]: https://github.com/home-assistant/core/pull/120923 +[#120927]: https://github.com/home-assistant/core/pull/120927 +[#120928]: https://github.com/home-assistant/core/pull/120928 +[#120929]: https://github.com/home-assistant/core/pull/120929 +[#120930]: https://github.com/home-assistant/core/pull/120930 +[#120931]: https://github.com/home-assistant/core/pull/120931 +[#120932]: https://github.com/home-assistant/core/pull/120932 +[#120933]: https://github.com/home-assistant/core/pull/120933 +[#120934]: https://github.com/home-assistant/core/pull/120934 +[#120935]: https://github.com/home-assistant/core/pull/120935 +[#120936]: https://github.com/home-assistant/core/pull/120936 +[#120937]: https://github.com/home-assistant/core/pull/120937 +[#120938]: https://github.com/home-assistant/core/pull/120938 +[#120943]: https://github.com/home-assistant/core/pull/120943 +[#120944]: https://github.com/home-assistant/core/pull/120944 +[#120947]: https://github.com/home-assistant/core/pull/120947 +[#120948]: https://github.com/home-assistant/core/pull/120948 +[#120951]: https://github.com/home-assistant/core/pull/120951 +[#120953]: https://github.com/home-assistant/core/pull/120953 +[#120954]: https://github.com/home-assistant/core/pull/120954 +[#120958]: https://github.com/home-assistant/core/pull/120958 +[#120966]: https://github.com/home-assistant/core/pull/120966 +[#120967]: https://github.com/home-assistant/core/pull/120967 +[#120968]: https://github.com/home-assistant/core/pull/120968 +[#120975]: https://github.com/home-assistant/core/pull/120975 +[#120983]: https://github.com/home-assistant/core/pull/120983 +[#120984]: https://github.com/home-assistant/core/pull/120984 +[#120986]: https://github.com/home-assistant/core/pull/120986 +[#120987]: https://github.com/home-assistant/core/pull/120987 +[#120988]: https://github.com/home-assistant/core/pull/120988 +[#120990]: https://github.com/home-assistant/core/pull/120990 +[#120991]: https://github.com/home-assistant/core/pull/120991 +[#120992]: https://github.com/home-assistant/core/pull/120992 +[#120994]: https://github.com/home-assistant/core/pull/120994 +[#120995]: https://github.com/home-assistant/core/pull/120995 +[#120997]: https://github.com/home-assistant/core/pull/120997 +[#120998]: https://github.com/home-assistant/core/pull/120998 +[#120999]: https://github.com/home-assistant/core/pull/120999 +[#121000]: https://github.com/home-assistant/core/pull/121000 +[#121001]: https://github.com/home-assistant/core/pull/121001 +[#121002]: https://github.com/home-assistant/core/pull/121002 +[#121003]: https://github.com/home-assistant/core/pull/121003 +[#121004]: https://github.com/home-assistant/core/pull/121004 +[#121005]: https://github.com/home-assistant/core/pull/121005 +[#121010]: https://github.com/home-assistant/core/pull/121010 +[#121012]: https://github.com/home-assistant/core/pull/121012 +[#121013]: https://github.com/home-assistant/core/pull/121013 +[#121014]: https://github.com/home-assistant/core/pull/121014 +[#121015]: https://github.com/home-assistant/core/pull/121015 +[#121017]: https://github.com/home-assistant/core/pull/121017 +[#121019]: https://github.com/home-assistant/core/pull/121019 +[#121020]: https://github.com/home-assistant/core/pull/121020 +[#121028]: https://github.com/home-assistant/core/pull/121028 +[#121034]: https://github.com/home-assistant/core/pull/121034 +[#121036]: https://github.com/home-assistant/core/pull/121036 +[#121043]: https://github.com/home-assistant/core/pull/121043 +[#121047]: https://github.com/home-assistant/core/pull/121047 +[#121048]: https://github.com/home-assistant/core/pull/121048 +[#121050]: https://github.com/home-assistant/core/pull/121050 +[#121054]: https://github.com/home-assistant/core/pull/121054 +[#121055]: https://github.com/home-assistant/core/pull/121055 +[#121056]: https://github.com/home-assistant/core/pull/121056 +[#121057]: https://github.com/home-assistant/core/pull/121057 +[#121064]: https://github.com/home-assistant/core/pull/121064 +[#121066]: https://github.com/home-assistant/core/pull/121066 +[#121068]: https://github.com/home-assistant/core/pull/121068 +[#121069]: https://github.com/home-assistant/core/pull/121069 +[#121077]: https://github.com/home-assistant/core/pull/121077 +[#121079]: https://github.com/home-assistant/core/pull/121079 +[#121083]: https://github.com/home-assistant/core/pull/121083 +[#121085]: https://github.com/home-assistant/core/pull/121085 +[#121086]: https://github.com/home-assistant/core/pull/121086 +[#121093]: https://github.com/home-assistant/core/pull/121093 +[#121097]: https://github.com/home-assistant/core/pull/121097 +[#121098]: https://github.com/home-assistant/core/pull/121098 +[#121100]: https://github.com/home-assistant/core/pull/121100 +[#121101]: https://github.com/home-assistant/core/pull/121101 +[#121103]: https://github.com/home-assistant/core/pull/121103 +[#121104]: https://github.com/home-assistant/core/pull/121104 +[#121108]: https://github.com/home-assistant/core/pull/121108 +[#121112]: https://github.com/home-assistant/core/pull/121112 +[#121114]: https://github.com/home-assistant/core/pull/121114 +[#121116]: https://github.com/home-assistant/core/pull/121116 +[#121118]: https://github.com/home-assistant/core/pull/121118 +[#121121]: https://github.com/home-assistant/core/pull/121121 +[#121123]: https://github.com/home-assistant/core/pull/121123 +[#121125]: https://github.com/home-assistant/core/pull/121125 +[#121126]: https://github.com/home-assistant/core/pull/121126 +[#121127]: https://github.com/home-assistant/core/pull/121127 +[#121128]: https://github.com/home-assistant/core/pull/121128 +[#121136]: https://github.com/home-assistant/core/pull/121136 +[#121137]: https://github.com/home-assistant/core/pull/121137 +[#121139]: https://github.com/home-assistant/core/pull/121139 +[#121140]: https://github.com/home-assistant/core/pull/121140 +[#121142]: https://github.com/home-assistant/core/pull/121142 +[#121143]: https://github.com/home-assistant/core/pull/121143 +[#121144]: https://github.com/home-assistant/core/pull/121144 +[#121146]: https://github.com/home-assistant/core/pull/121146 +[#121161]: https://github.com/home-assistant/core/pull/121161 +[#121162]: https://github.com/home-assistant/core/pull/121162 +[#121166]: https://github.com/home-assistant/core/pull/121166 +[#121167]: https://github.com/home-assistant/core/pull/121167 +[#121168]: https://github.com/home-assistant/core/pull/121168 +[#121169]: https://github.com/home-assistant/core/pull/121169 +[#121170]: https://github.com/home-assistant/core/pull/121170 +[#121171]: https://github.com/home-assistant/core/pull/121171 +[#121172]: https://github.com/home-assistant/core/pull/121172 +[#121173]: https://github.com/home-assistant/core/pull/121173 +[#121174]: https://github.com/home-assistant/core/pull/121174 +[#121175]: https://github.com/home-assistant/core/pull/121175 +[#121176]: https://github.com/home-assistant/core/pull/121176 +[#121180]: https://github.com/home-assistant/core/pull/121180 +[#121182]: https://github.com/home-assistant/core/pull/121182 +[#121189]: https://github.com/home-assistant/core/pull/121189 +[#121193]: https://github.com/home-assistant/core/pull/121193 +[#121196]: https://github.com/home-assistant/core/pull/121196 +[#121203]: https://github.com/home-assistant/core/pull/121203 +[#121204]: https://github.com/home-assistant/core/pull/121204 +[#121210]: https://github.com/home-assistant/core/pull/121210 +[#121211]: https://github.com/home-assistant/core/pull/121211 +[#121212]: https://github.com/home-assistant/core/pull/121212 +[#121213]: https://github.com/home-assistant/core/pull/121213 +[#121223]: https://github.com/home-assistant/core/pull/121223 +[#121227]: https://github.com/home-assistant/core/pull/121227 +[#121236]: https://github.com/home-assistant/core/pull/121236 +[@Kane610]: https://github.com/Kane610 +[@Moustachauve]: https://github.com/Moustachauve +[@StevenLooman]: https://github.com/StevenLooman +[@allenporter]: https://github.com/allenporter +[@balloob]: https://github.com/balloob +[@bdraco]: https://github.com/bdraco +[@bieniu]: https://github.com/bieniu +[@cdce8p]: https://github.com/cdce8p +[@chamberlain2007]: https://github.com/chamberlain2007 +[@cnico]: https://github.com/cnico +[@davet2001]: https://github.com/davet2001 +[@devbis]: https://github.com/devbis +[@dontinelli]: https://github.com/dontinelli +[@dougiteixeira]: https://github.com/dougiteixeira +[@edenhaus]: https://github.com/edenhaus +[@emontnemery]: https://github.com/emontnemery +[@epenet]: https://github.com/epenet +[@frenck]: https://github.com/frenck +[@giulianoriccio]: https://github.com/giulianoriccio +[@gjohansson-ST]: https://github.com/gjohansson-ST +[@iMicknl]: https://github.com/iMicknl +[@jbouwh]: https://github.com/jbouwh +[@jjlawren]: https://github.com/jjlawren +[@joostlek]: https://github.com/joostlek +[@jvmahon]: https://github.com/jvmahon +[@kotope]: https://github.com/kotope +[@ludeeus]: https://github.com/ludeeus +[@madpilot]: https://github.com/madpilot +[@marcelveldt]: https://github.com/marcelveldt +[@meichthys]: https://github.com/meichthys +[@mj23000]: https://github.com/mj23000 +[@pkoenig10]: https://github.com/pkoenig10 +[@rikroe]: https://github.com/rikroe +[@sander1988]: https://github.com/sander1988 +[@sdb9696]: https://github.com/sdb9696 +[@timmo001]: https://github.com/timmo001 +[@tr4nt0r]: https://github.com/tr4nt0r +[@tronikos]: https://github.com/tronikos +[@xLarry]: https://github.com/xLarry +[@zweckj]: https://github.com/zweckj diff --git a/source/images/blog/2024-08/actions-developers-tools.png b/source/images/blog/2024-08/actions-developers-tools.png new file mode 100644 index 00000000000..60c2edef548 Binary files /dev/null and b/source/images/blog/2024-08/actions-developers-tools.png differ diff --git a/source/images/blog/2024-08/badges-add-visibility.png b/source/images/blog/2024-08/badges-add-visibility.png new file mode 100644 index 00000000000..8b7471906e8 Binary files /dev/null and b/source/images/blog/2024-08/badges-add-visibility.png differ diff --git a/source/images/blog/2024-08/data-tables-created-modified-columns-sorting.png b/source/images/blog/2024-08/data-tables-created-modified-columns-sorting.png new file mode 100644 index 00000000000..c54034a2f4a Binary files /dev/null and b/source/images/blog/2024-08/data-tables-created-modified-columns-sorting.png differ diff --git a/source/images/blog/2024-08/knx-panel-for-creating-entities.png b/source/images/blog/2024-08/knx-panel-for-creating-entities.png new file mode 100644 index 00000000000..0c7107ef33d Binary files /dev/null and b/source/images/blog/2024-08/knx-panel-for-creating-entities.png differ diff --git a/source/images/blog/2024-08/llama-3.1-iteration.png b/source/images/blog/2024-08/llama-3.1-iteration.png new file mode 100644 index 00000000000..90d5d9fc639 Binary files /dev/null and b/source/images/blog/2024-08/llama-3.1-iteration.png differ diff --git a/source/images/blog/2024-08/social.png b/source/images/blog/2024-08/social.png new file mode 100644 index 00000000000..fc093608e7e Binary files /dev/null and b/source/images/blog/2024-08/social.png differ