Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Интеграция HA-YandexWeather перестала работать в HA 2024.1.0 #90

Closed
4 tasks done
vkogan2005 opened this issue Jan 3, 2024 · 21 comments · Fixed by #92
Closed
4 tasks done
Assignees
Labels
bug Something isn't working
Milestone

Comments

@vkogan2005
Copy link

vkogan2005 commented Jan 3, 2024

В чем проблема?

Logger: homeassistant.loader
Source: loader.py:842
First occurred: 00:21:54 (1 occurrences)
Last logged: 00:21:54

Unexpected exception importing platform custom_components.yandex_weather.weather
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/loader.py", line 842, in get_platform
    cache[full_name] = self._import_platform(platform_name)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/loader.py", line 859, in _import_platform
    return importlib.import_module(f"{self.pkg_path}.{platform_name}")
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/config/custom_components/yandex_weather/weather.py", line 74, in <module>
    class YandexWeather(WeatherEntity, CoordinatorEntity, RestoreEntity):
  File "/config/custom_components/yandex_weather/weather.py", line 230, in YandexWeather
    @WeatherEntity.condition.setter
     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'cached_property' object has no attribute 'setter'

При использовании какой версии интеграции возникает проблема?

3.1.1

Какая версия Home Assistant используется?

core-2024.1.0

Какой способ установки Home Assistant используется?

Home Assistant OS

Самопроверка по созданию ключа

  • при добавлении ключа в кабинете разработчика он добавлялся как "тестовый"
  • тип ключа в кабинете разработчика был изменен на "погода для сайта"
  • после изменения типа ключа прошло не менее 20 минут
  • в кабинете разработчка я вижу что с запросы делаются именно с этим ключом

Есть что-нибудь полезное в логе?

Logger: homeassistant.loader
Source: loader.py:842
First occurred: 00:21:54 (1 occurrences)
Last logged: 00:21:54

Unexpected exception importing platform custom_components.yandex_weather.weather
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/loader.py", line 842, in get_platform
    cache[full_name] = self._import_platform(platform_name)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/loader.py", line 859, in _import_platform
    return importlib.import_module(f"{self.pkg_path}.{platform_name}")
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/config/custom_components/yandex_weather/weather.py", line 74, in <module>
    class YandexWeather(WeatherEntity, CoordinatorEntity, RestoreEntity):
  File "/config/custom_components/yandex_weather/weather.py", line 230, in YandexWeather
    @WeatherEntity.condition.setter
     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'cached_property' object has no attribute 'setter'

Дополнительная информация

No response

@LordArrin
Copy link

Screenshot_20240104-092152_Home Assistant
Logger: homeassistant.config_entries
Source: config_entries.py:561
First occurred: 07:24:30 (6 occurrences)
Last logged: 09:17:51

Error unloading entry Яндекс.Погода for sensor
Error unloading entry Яндекс.Погода for weather
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 561, in async_unload
result = await component.async_unload_entry(hass, self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/sensor/init.py", line 152, in async_unload_entry
return await component.async_unload_entry(entry)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 203, in async_unload_entry
raise ValueError("Config entry was never loaded!")
ValueError: Config entry was never loaded!

Same error here.

@alex-msk
Copy link

alex-msk commented Jan 4, 2024

Та же проблема

@siaua
Copy link

siaua commented Jan 4, 2024

Присоединяюсь

@Gmarapet
Copy link

Gmarapet commented Jan 4, 2024

Та же проблема.

@Skeptik966
Copy link

Такая же проблема после обновления на версию HA 2024.1.0

@Timuridze1
Copy link

Подтверждаю

@destman
Copy link

destman commented Jan 4, 2024

Скорее всего связанно с этим:
https://developers.home-assistant.io/blog/2023/12/19/constant-deprecation

В gw3 та же беда.
AlexxIT/XiaomiGateway3#1246

@dronix27
Copy link

dronix27 commented Jan 4, 2024

Скорее всего связанно с этим: https://developers.home-assistant.io/blog/2023/12/19/constant-deprecation

В gw3 та же беда. AlexxIT/XiaomiGateway3#1246

Верно. А решить-то как? Для программистов уровня копипаста )))

@vkogan2005
Copy link
Author

vkogan2005 commented Jan 4, 2024

Скорее всего связанно с этим: https://developers.home-assistant.io/blog/2023/12/19/constant-deprecation
В gw3 та же беда. AlexxIT/XiaomiGateway3#1246

Верно. А решить-то как? Для программистов уровня копипаста )))

Для Yandex Weather закомментить 230ю строку в custom_components/yandex_weather/weather.py
Должно быть так: #@WeatherEntity.condition.setter

@dronix27
Copy link

dronix27 commented Jan 4, 2024

Скорее всего связанно с этим: https://developers.home-assistant.io/blog/2023/12/19/constant-deprecation
В gw3 та же беда. AlexxIT/XiaomiGateway3#1246

Верно. А решить-то как? Для программистов уровня копипаста )))

Для Yandex Weather закомментить 230ю строку в custom_components/yandex_weather/weather.py Должно быть так: #@WeatherEntity.condition.setter

Да. Теперь работает.

@zzaal
Copy link

zzaal commented Jan 4, 2024

Для Yandex Weather закомментить 230ю строку в custom_components/yandex_weather/weather.py
Должно быть так: #@WeatherEntity.condition.setter

Спасибо!!!
С Новым Годом!

@AndreyKurilovich
Copy link

Скорее всего связанно с этим: https://developers.home-assistant.io/blog/2023/12/19/constant-deprecation
В gw3 та же беда. AlexxIT/XiaomiGateway3#1246

Верно. А решить-то как? Для программистов уровня копипаста )))

Для Yandex Weather закомментить 230ю строку в custom_components/yandex_weather/weather.py Должно быть так: #@WeatherEntity.condition.setter

Огромное спасибо!

@IgorA-XXI
Copy link

IgorA-XXI commented Jan 5, 2024

У меня при загрузке интеграции в 2024.1.0 она уходит в бесконечную рекурсию - RecursionError: maximum recursion depth exceeded :(

2024-01-05 06:56:12.426 ERROR (MainThread) [homeassistant.components.weather] Error adding entities for domain weather with platform yandex_weather
Traceback (most recent call last):
File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/entity_platform.py", line 507, in async_add_entities
await asyncio.gather(*tasks)
File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/entity_platform.py", line 752, in _async_add_entity
await entity.add_to_platform_finish()
File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/entity.py", line 1277, in add_to_platform_finish
await self.async_added_to_hass()
File "/home/homeassistant/.homeassistant/custom_components/yandex_weather/weather.py", line 197, in async_added_to_hass
self.async_write_ha_state()
File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/entity.py", line 941, in async_write_ha_state
self._async_write_ha_state()
File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/entity.py", line 1062, in _async_write_ha_state
state, attr, capabilities, shadowed_attr = self.__async_calculate_state()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/entity.py", line 999, in __async_calculate_state
state = self._stringify_state(available)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/entity.py", line 953, in _stringify_state
return str(state)
^^^^^^^^^^
File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/entity.py", line 1485, in repr
return f"<entity {self.entity_id}={self._stringify_state(self.available)}>"
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/entity.py", line 953, in _stringify_state
return str(state)
^^^^^^^^^^
File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/entity.py", line 1485, in repr
return f"<entity {self.entity_id}={self._stringify_state(self.available)}>"
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/srv/homeassistant/lib/python3.11/site-packages/homeassistant/helpers/entity.py", line 953, in _stringify_state
return str(state)
^^^^^^^^^^
...и дальше последние две строки повторяются до RecursionError: maximum recursion depth exceeded.

Предложенное исправление не помогает - это явно другая ошибка, тоже связанная с переходом на 2024.1.0... аналогичное поведение наблюдалось и в других интеграциях после перехода.

P.S. Заработало после апгрейда на 2024.1.1...

@sweethome29
Copy link

sweethome29 commented Jan 6, 2024

Это у тебя что то, друг.
Изначальная проблема в том что отвалился weather. домен у интеграции в 2024.1. и закоментить 230 строку сработало. Спасибо предложившему решение) Все остальные сенсоры работали как и раньше.
Могу тебе лишь посоветовать соблюдать таймаут по запросам на бесплатном тарифе. И перезагружать ха с этой интеграцией не чаще 10 минут.

@ironkiss
Copy link

ironkiss commented Jan 6, 2024

в 2024.1.1 опять перестало работать, закомментировал, но не помогло.

@FlintFD
Copy link

FlintFD commented Jan 6, 2024

Присоединяюсь, 2024.1.1 опять не работает

@vkogan2005
Copy link
Author

Присоединяюсь, 2024.1.1 опять не работает

Всё работает. Перезагрузите интеграцию. К сожалению, пока только так)

@IATkachenko IATkachenko added the bug Something isn't working label Jan 6, 2024
@IATkachenko
Copy link
Owner

Уххх... съездил отдохнуть... Сейчас гляну что там наделали в 2024.1.
Через пару часов выкачу фикс релиз

@Gmarapet
Copy link

Gmarapet commented Jan 6, 2024

Уххх... съездил отдохнуть... Сейчас гляну что там наделали в 2024.1.
Через пару часов выкачу фикс релиз

Там уже 2024.1.2 выкатили. )

@IATkachenko
Copy link
Owner

Исправлено в v3.1.2

@jankin-y
Copy link

jankin-y commented Jan 6, 2024

Спасибо, v3.1.2 все поднялось без ошибок на 2024.1.2!

@IATkachenko IATkachenko unpinned this issue Feb 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.