Calling all brave souls! We need your help to test the upcoming version 2.0 of HACS. Be among the first to experience the exciting new features and improvements, and help us make this release the best it can be!
Prerequisites
Before you dive into the testing, make sure you meet the following requirements:
You are currently using HACS version 1.34.0.
You are running Home Assistant OS or Supervised.
You are running Home Assistant 2024.4.1 or newer.
How to join the alpha test
Backup your configuration: Ensure you have a backup of your Home Assistant configuration.
Install HACS: Get add-on: Install the “HACS: Get” add-on.
Switch to development channel: Change the hidden “channel” setting to “development” under the add-on configuration tab.
Start the add-on: Start the add-on and watch the logs; when it tells you to restart Home Assistant, do so.
Start using it!: When Home Assistant starts up again, you can start using the alpha versions of HACS.
Explore the new documentation: Browse the draft for the upcoming documentation at https://www.hacs.dev/.
Whenever you need to update HACS during this alpha, just start the add-on again and restart Home Assistant after it states it in its log.
Important caveats
No backwards compatibility: These alpha/beta versions of HACS are NOT backwards compatible. If you need to revert to version 1.34.0, you must restore from a backup of your Home Assistant configuration directory.
Limited to OS/Supervised: While the alpha/beta can be replicated on core/container, the add-on simplifies the process, so we are limiting this testing phase to OS/Supervised users for now.
Reporting issues
We value your feedback! Report any issues through the following channels:
Discord: Use the “use” channel and the “tester” tag on Discord
Forum post: Share your feedback in this designated forum post.
What to look out for
HACS 2.0 brings a multitude of changes and improvements. Here’s what you can expect:
New frontend: Experience a brand new frontend based on the data tables in Home Assistant! Check it out.
Template management: Utilize the new template type to enhance your Jinja templates.
Update entities: Track updates for all your downloaded repositories with the new update entities.
Switch entities: Choose to consider pre-releases with the new switch entities.
Repair issues: Receive repair issue notifications when something needs attention, like pending restarts.
Remote data handling: Enjoy drastically reduced API usage with the new remote dataset handling.
Renaming of things: Things HACS can manage have been renamed from “category” to “type”. Learn more.
Dashboard: UI elements, previously referred to as “Lovelace”, are now called “dashboard”.
Faster downloads: Downloading large repositories, like those providing icons, will be significantly faster.
Features being removed
As with any major version change, some features will be deprecated:
YAML configuration: YAML configuration of HACS itself has been removed.
README.md template rendering: Template rendering of the README.md file for repositories has been removed, the README.md files themselves will still be rendered as before.
info.md usage: The use of the info.md file has been discontinued.
Netdaemon type: The repository type “netdaemon” has been removed.
Download beta selector: The beta selector has been removed, and from now you have to use the switch entity or the update service.
/hacsfiles/ endpoint: The endpoint for themes has been removed, for dashboard this is still in use.
Custom events: Custom hacs/* events have been removed.
Join us in making HACS 2.0 the best version yet! Your feedback is invaluable and will help shape the future of HACS. Thank you for being a part of our community, and happy testing!
Update 2024-08-14: Reclassified from alpha to beta
Make it more maintainable by reusing core HA features instead of duplicating logic.
Removing that checks both those items, having this in there means that an additional API call would have been done regardless if you needed it or not.
This (to my knowledge) was mostly used to “roll back” something to a previous version, which it actually does not do as it only do the repository content, and not the data produced by it which in some cases is not compatible, leaving restoring a backup as the best option to do that.
However, the update.install service call takes a version argument, so you can still do that if you really wanted to.
I use it mostly to help 3rd party developers by testing their beta versions when HA core updates breaks something for them. This is not an uncommon occurrence.
I see! You can still do that with the same version argument.
You can even do dev branches if their repository supports it (so it has even more flexibility in that regard, since they do not have to do a pre-release).
For pre-releases to show in the update entity directly, I hope to have something before this release is published.
I agree, I use beta all the time for the integrations I develop. Then I can easily validate the latest version on my prod instance before I move to full release. Yes you can still do it using the service, but not as simple as just clicking upgrade.
A little note; while it can be used with Home Assistant 2024.4.1(for now) and newer, to have the best experience you should be using 2024.7.0 (or newer).
In the HA-logs, after the installation of HACS, this keeps returning after every reboot of HA:
Logger: homeassistant.helpers.frame
Bron: helpers/frame.py:184
Detected that custom integration 'hacs' calls hass.http.register_static_path which is deprecated because it does blocking I/O in the event loop, instead call `await hass.http.async_register_static_paths([StaticPathConfig("/hacsfiles/iconset.js", "/config/custom_components/hacs/iconset.js", True)])`; This function will be removed in 2025.7 at custom_components/hacs/frontend.py, line 57: hass.http.register_static_path(, please create a bug report at https://github.com/hacs/integration/issues
and
Logger: homeassistant.helpers.frame
Bron: helpers/frame.py:184
Detected that custom integration 'hacs' accesses hass.components.frontend. This is deprecated and will stop working in Home Assistant 2024.9, it should be updated to import functions used from frontend directly at custom_components/hacs/frontend.py, line 68: hass.components.frontend.async_register_built_in_panel(, please create a bug report at https://github.com/hacs/integration/issues
and
Logger: homeassistant.helpers.frame
Bron: helpers/frame.py:184
Detected that custom integration 'hacs' calls hass.http.register_static_path which is deprecated because it does blocking I/O in the event loop, instead call `await hass.http.async_register_static_paths([StaticPathConfig("/hacsfiles", "/config/www/community", True)])`; This function will be removed in 2025.7 at custom_components/hacs/base.py, line 1162: self.hass.http.register_static_path(, please create a bug report at https://github.com/hacs/integration/issues
and, finally:
Logger: homeassistant.helpers.frame
Bron: helpers/frame.py:184
Detected that custom integration 'hacs' accesses hass.helpers.event. This is deprecated and will stop working in Home Assistant 2024.11, it should be updated to import functions used from event directly at custom_components/hacs/base.py, line 642: self.hass.helpers.event.async_track_time_interval(, please create a bug report at https://github.com/hacs/integration/issues