2021.12: New configuration menu, the button entity, and gorgeous area cards!

The customization UI is the very bottom button on the Configuration page.

2 Likes

Thanks god… I was terrified, but it results that I am just stupid :sweat_smile:

1 Like

You beautiful people, thank you!

Looks great!

I get a spinning forever wheel when doing configuration validation now:

and I can’t restart:
image

just me :frowning: ?

Logger: homeassistant.components.websocket_api.http.connection
Source: custom_components/alexa_media/__init__.py:16
Integration: Home Assistant WebSocket API (documentation, issues)
First occurred: 21:30:06 (2 occurrences)
Last logged: 21:30:13

[140262684471056] function() argument 'code' must be code, not str
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 185, in handle_call_service
    await hass.services.async_call(
  File "/usr/src/homeassistant/homeassistant/core.py", line 1495, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1530, in _execute_service
    await handler.job.target(service_call)
  File "/usr/src/homeassistant/homeassistant/components/hassio/__init__.py", line 586, in async_handle_core_service
    errors = await conf_util.async_check_ha_config_file(hass)
  File "/usr/src/homeassistant/homeassistant/config.py", line 938, in async_check_ha_config_file
    res = await check_config.async_check_ha_config_file(hass)
  File "/usr/src/homeassistant/homeassistant/helpers/check_config.py", line 218, in async_check_ha_config_file
    platform = p_integration.get_platform(domain)
  File "/usr/src/homeassistant/homeassistant/loader.py", line 530, in get_platform
    cache[full_name] = self._import_platform(platform_name)
  File "/usr/src/homeassistant/homeassistant/loader.py", line 535, in _import_platform
    return importlib.import_module(f"{self.pkg_path}.{platform_name}")
  File "/usr/local/lib/python3.9/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 972, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 850, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/config/custom_components/alexa_media/__init__.py", line 16, in <module>
    from alexapy import (
  File "/usr/local/lib/python3.9/site-packages/alexapy/__init__.py", line 16, in <module>
    from .alexaapi import AlexaAPI
  File "/usr/local/lib/python3.9/site-packages/alexapy/alexaapi.py", line 21, in <module>
    from alexapy.aiohttp import ClientConnectionError, ClientResponse
  File "/usr/local/lib/python3.9/site-packages/alexapy/aiohttp/__init__.py", line 6, in <module>
    from .client import (
  File "/usr/local/lib/python3.9/site-packages/alexapy/aiohttp/client.py", line 35, in <module>
    from . import hdrs, http, payload
  File "/usr/local/lib/python3.9/site-packages/alexapy/aiohttp/http.py", line 7, in <module>
    from .http_parser import (
  File "/usr/local/lib/python3.9/site-packages/alexapy/aiohttp/http_parser.py", line 15, in <module>
    from .helpers import NO_EXTENSIONS, BaseTimerContext
  File "/usr/local/lib/python3.9/site-packages/alexapy/aiohttp/helpers.py", line 667, in <module>
    class CeilTimeout(async_timeout.timeout):
TypeError: function() argument 'code' must be code, not str
6 Likes

Anyone having problems with 2021.12.0 and webrtc? Mine won’t load and nothing in logs.

They’re imported as disabled entities by default. You can enable the ones you want from settings.

1 Like

I believe need to update the Alexa Media custom integration to the latest version to fix this.

I do not want to hijack this marvelous release thread so I’ll stop about this topic here and create a separate one.

Be aware… anyone having alexa media player custom component installed might face this issue.

It seems to be the alexa media plugin disabling the option to restart/check config. Although there is some mentioning in the release notes, it does not solve my restart problem.

All beta’s versions in HACS, do not work including latest 3.10.15. Have submitted a bug report there.

There is some “mentioning” of this in the custom_component section on github however, but if installed I cannot restart homeassistant.

EDIT: complete reboot of the OS “solved” it

2 Likes

It looks like the version of Alexa Media which fixes this is a beta release, so you will need to enable beta releases for it in HACS to see it.

1 Like

Thanks a lot to everyone who has contributed!
Upgrade went smooth, nice xmas gift.

Happy Holidays

Yes, I’m having a problem with webrtc too:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/setup.py", line 229, in _async_setup_component
    result = await task
  File "/config/custom_components/webrtc/__init__.py", line 75, in async_setup
    utils.register_static_path(hass.http.app, url_path, path)
  File "/config/custom_components/webrtc/utils.py", line 74, in register_static_path
    app['allow_cors'](route)
  File "/usr/local/lib/python3.9/site-packages/aiohttp/web_app.py", line 186, in __getitem__
    return self._state[key]
KeyError: 'allow_cors'

Looks like someone already entered a ticket for this…

You are not stupid. It was not well described in the release note. I also wondered what it was all about

1 Like

Also having problems with Frigate, it won’t start and this is found in the logs:

Setup failed for frigate: Unable to import component: cannot import name 'HTTP_BAD_REQUEST' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)

image

EDIT:

Looks like there’s a HACS update to fix Frigate. :exploding_head:

That was a VERY BAD idea to move from this menu:

to this menu:

Now I spend a lot of time to get to a section I need:

  • because of MORE clicks
  • because I simple do not keep in mind where some section is located

If you really need to make a menu compact:

  • add an “expand-collapse” for top items;
  • memorize these states locally.

With my all due respect…

39 Likes

Is it me or is the documentation for 2021.12 somewhat unclear and confusing?

For example, I have re-read the secion on removal of the Customization UI and I still have no idea what it’s saying. As I understand, some of that should be a part of the Entities UI (but it’s not, for me anyway). Same for Button entities - I see I can’t create those myself, but what does it mean? Where can I see these? How do I know an integration creates these or not? I’d expect a couple of examples, maybe a “Restart HA” button. Also, the documentation says they can be customized in Customization section, but that no longer exists…

I usually don’t have too much problems reading HA documentation and I’m using it for almost three years, but this particular release docs just seem rushed and unpolished.

4 Likes

As I understand it, it is as simple as “there is no customization ui any more, you have to do it in yaml.”

4 Likes

in that case, what does this mean? “In case you used this to change how, for example, a cover or door contact entity is shown, you can now change that by editing the entity in the UI.” See? Unclear.

One example: my door sensor was customized via the old Customization UI to act like a window sensor. The documentation tells me " additionally we have added the capability, to adjust the common device_class changes using the “Show as” feature while editing the entity from UI." but I definitely don’t see a way to do that. Not in the very entity’s UI nor Entities settings panel.

1 Like

Yeah, a bit confusing.

Is this referring to the ability to use the icon chooser?

Yeah, I kind of agree with this.

It would be nice if all the configuration sections were cards, and we could just make our own configuration dashboard :wink:

2 Likes

Yeah for benefit of others: install the master version from hacs.

Hacs, integrations, click the overflow menu for webrtc, redownload, choose master version.

3 Likes