Just updated a couple of HA systems to 2024.1.4 and it worked fine.
All other updates went just fine. No issues. Except for this one. And it seems I am not the only one.
Don’t see any errors either. It looks like it updates, but when it’s back online, it’s not. Really strange.
Yes, I had the same problem last night. I tried again a few minutes ago and it is still happening.
I’m not sure if this is related, but I found it in home-assistant.log.1:
2024-01-20 07:36:53.905 ERROR (MainThread) [root] Uncaught exception
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "/usr/src/homeassistant/homeassistant/__main__.py", line 221, in <module>
sys.exit(main())
^^^^^^
File "/usr/src/homeassistant/homeassistant/__main__.py", line 209, in main
exit_code = runner.run(runtime_conf)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/runner.py", line 188, in run
return loop.run_until_complete(setup_and_run_hass(runtime_config))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/asyncio/base_events.py", line 653, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/runner.py", line 154, in setup_and_run_hass
hass = await bootstrap.async_setup_hass(runtime_config)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/bootstrap.py", line 147, in async_setup_hass
config_dict = await conf_util.async_hass_config_yaml(hass)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/config.py", line 501, in async_hass_config_yaml
await merge_packages_config(hass, config, core_config.get(CONF_PACKAGES, {}))
File "/usr/src/homeassistant/homeassistant/config.py", line 1029, in merge_packages_config
PACKAGES_CONFIG_SCHEMA(packages)
File "/usr/src/homeassistant/homeassistant/helpers/config_validation.py", line 588, in verify
return cast(dict, schema(value))
^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 272, in __call__
return self._compiled([], data)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 595, in validate_dict
return base_validate(path, iteritems(data), out)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 433, in validate_mapping
raise er.MultipleInvalid(errors)
voluptuous.error.MultipleInvalid: expected a dictionary for dictionary value @ data['alert']
Ah yes. I see I have a rollback log.
2024-01-20 10:50:03.592 ERROR (MainThread) [root] Uncaught exception
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "/usr/src/homeassistant/homeassistant/__main__.py", line 221, in <module>
sys.exit(main())
^^^^^^
File "/usr/src/homeassistant/homeassistant/__main__.py", line 209, in main
exit_code = runner.run(runtime_conf)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/runner.py", line 188, in run
return loop.run_until_complete(setup_and_run_hass(runtime_config))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/asyncio/base_events.py", line 653, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/runner.py", line 154, in setup_and_run_hass
hass = await bootstrap.async_setup_hass(runtime_config)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/bootstrap.py", line 147, in async_setup_hass
config_dict = await conf_util.async_hass_config_yaml(hass)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/config.py", line 501, in async_hass_config_yaml
await merge_packages_config(hass, config, core_config.get(CONF_PACKAGES, {}))
File "/usr/src/homeassistant/homeassistant/config.py", line 1029, in merge_packages_config
PACKAGES_CONFIG_SCHEMA(packages)
File "/usr/src/homeassistant/homeassistant/helpers/config_validation.py", line 588, in verify
return cast(dict, schema(value))
^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 272, in __call__
return self._compiled([], data)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 595, in validate_dict
return base_validate(path, iteritems(data), out)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 433, in validate_mapping
raise er.MultipleInvalid(errors)
voluptuous.error.MultipleInvalid: expected a dictionary for dictionary value @ data['conversation']
Same here. [CAUSE : An empty homeassistant.yaml file…]
2024-01-20 14:48:44.307 ERROR (MainThread) [root] Uncaught exception
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "/usr/src/homeassistant/homeassistant/__main__.py", line 221, in <module>
sys.exit(main())
^^^^^^
File "/usr/src/homeassistant/homeassistant/__main__.py", line 209, in main
exit_code = runner.run(runtime_conf)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/runner.py", line 188, in run
return loop.run_until_complete(setup_and_run_hass(runtime_config))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/asyncio/base_events.py", line 653, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/runner.py", line 154, in setup_and_run_hass
hass = await bootstrap.async_setup_hass(runtime_config)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/bootstrap.py", line 147, in async_setup_hass
config_dict = await conf_util.async_hass_config_yaml(hass)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/config.py", line 501, in async_hass_config_yaml
await merge_packages_config(hass, config, core_config.get(CONF_PACKAGES, {}))
File "/usr/src/homeassistant/homeassistant/config.py", line 1029, in merge_packages_config
PACKAGES_CONFIG_SCHEMA(packages)
File "/usr/src/homeassistant/homeassistant/helpers/config_validation.py", line 588, in verify
return cast(dict, schema(value))
^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 272, in __call__
return self._compiled([], data)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 595, in validate_dict
return base_validate(path, iteritems(data), out)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 433, in validate_mapping
raise er.MultipleInvalid(errors)
voluptuous.error.MultipleInvalid: expected a dictionary for dictionary value @ data['homeassistant']
Getting rid of a couple of empty yaml files fixed it for me. Thank you!
Where did you remove the empty yaml files from? I don’t see any obvious ones at first glance.
Check configuration.yaml
for lines containing the !include
directive. They point to other files. Check those other files if they’re empty.
If you use packages, there may be a package containing empty files.
Thank you. I had an alarm.yaml
file in my packages
directory that had all of the lines commented out because they weren’t being used since moving to Alarmo. I renamed the file to alarm.yaml.unused
and all is good again.
It took me longer than I care to admit to find the offending empty file. But I was finally able to get the update to complete successfully. Thanks.
same issue for me
edit: removed (empty) scenes.yaml and scripts.yaml, which resulted in reboot in recovery mode. Recreated the files and now after reboot everything was ok (2024.1.3 → 2024.1.5)
It was fixed in 2024.1.5 anyway…
was struggling updating from 2024.1.3 to 2024.1.5 till found this thread. Renaming unused files helped
Installed version 2024.1.5
Latest version 2024.1.6
I have the same issue again, annoying recurring problem
I am also unable to update past 2024.1.5 but errors look different.
2024-02-02 12:52:19.747 ERROR (MainThread) [root] Uncaught exception
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "/usr/src/homeassistant/homeassistant/__main__.py", line 221, in <module>
sys.exit(main())
^^^^^^
File "/usr/src/homeassistant/homeassistant/__main__.py", line 209, in main
exit_code = runner.run(runtime_conf)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/runner.py", line 188, in run
return loop.run_until_complete(setup_and_run_hass(runtime_config))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/asyncio/base_events.py", line 684, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/runner.py", line 154, in setup_and_run_hass
hass = await bootstrap.async_setup_hass(runtime_config)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/bootstrap.py", line 203, in async_setup_hass
await async_from_config_dict(config_dict, hass) is not None
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/bootstrap.py", line 319, in async_from_config_dict
await async_load_base_functionality(hass)
File "/usr/src/homeassistant/homeassistant/bootstrap.py", line 296, in async_load_base_functionality
await asyncio.gather(
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 1354, in async_initialize
entries[entry_id] = config_entry
~~~~~~~^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 1148, in __setitem__
self._domain_unique_id_index.setdefault(entry.domain, {})[
TypeError: unhashable type: 'list'
There are no blank yaml files, I can’t seem to find this list that’s creating an error.
@tybo611 Did you get this fixed as I am having the same issue?
my rollback log looks like this
2024-02-07 16:28:36.019 ERROR (MainThread) [root] Uncaught exception
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "/usr/src/homeassistant/homeassistant/__main__.py", line 221, in <module>
sys.exit(main())
^^^^^^
File "/usr/src/homeassistant/homeassistant/__main__.py", line 209, in main
exit_code = runner.run(runtime_conf)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/runner.py", line 188, in run
return loop.run_until_complete(setup_and_run_hass(runtime_config))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/asyncio/base_events.py", line 684, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/runner.py", line 154, in setup_and_run_hass
hass = await bootstrap.async_setup_hass(runtime_config)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/bootstrap.py", line 203, in async_setup_hass
await async_from_config_dict(config_dict, hass) is not None
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/bootstrap.py", line 319, in async_from_config_dict
await async_load_base_functionality(hass)
File "/usr/src/homeassistant/homeassistant/bootstrap.py", line 296, in async_load_base_functionality
await asyncio.gather(
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 1354, in async_initialize
entries[entry_id] = config_entry
~~~~~~~^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 1148, in __setitem__
self._domain_unique_id_index.setdefault(entry.domain, {})[
TypeError: unhashable type: 'list'
Yes. My error ended up being a custom component that wasn’t maintained anymore since core had picked up the integration. In my case it was schlage encode wifi. Took a little to figure it out but once removed upgrade went fine.
I found it by taking a full backup then systematically deleting integrations and trying the update. Just kept going until it worked, rolled back to the backup, deleted the problem and upgraded.
and yet again with 2024.2.0 → 2024.2.1
edit: a force reload YAML + full reboot and another update attempt did the trick. Guess some kind of pre-upgrade validation needs some TLC