hass-core/homeassistant
J. Nick Koston 3a4c64b0a7
Fix missing timeout exception check in powerwall config flow (#107899)
* Fix missing timeout exception check in powerwall config flow

powerwall recently switched to asyncio, and every place we
check for unreachable we need to check for timeout error.
There was one missed

```
09:08 homeassistant homeassistant[546]: 2024-01-12 10:09:08.899 ERROR (MainThread) [homeassistant.components.powerwall.config_flow] Unexpected exception
Jan 12 20:09:08 homeassistant homeassistant[546]: Traceback (most recent call last):
Jan 12 20:09:08 homeassistant homeassistant[546]:   File "/usr/src/homeassistant/homeassistant/components/powerwall/config_flow.py", line 168, in _async_try_connect
Jan 12 20:09:08 homeassistant homeassistant[546]:     info = await validate_input(self.hass, user_input)
Jan 12 20:09:08 homeassistant homeassistant[546]:            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jan 12 20:09:08 homeassistant homeassistant[546]:   File "/usr/src/homeassistant/homeassistant/components/powerwall/config_flow.py", line 76, in validate_input
Jan 12 20:09:08 homeassistant homeassistant[546]:     site_info, gateway_din = await _login_and_fetch_site_info(
Jan 12 20:09:08 homeassistant homeassistant[546]:                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jan 12 20:09:08 homeassistant homeassistant[546]:   File "/usr/src/homeassistant/homeassistant/components/powerwall/config_flow.py", line 43, in _login_and_fetch_site_info
Jan 12 20:09:08 homeassistant homeassistant[546]:     await power_wall.login(password)
Jan 12 20:09:08 homeassistant homeassistant[546]:   File "/usr/local/lib/python3.12/site-packages/tesla_powerwall/powerwall.py", line 58, in login
Jan 12 20:09:08 homeassistant homeassistant[546]:     return await self.login_as(User.CUSTOMER, password, email, force_sm_off)
Jan 12 20:09:08 homeassistant homeassistant[546]:            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jan 12 20:09:08 homeassistant homeassistant[546]:   File "/usr/local/lib/python3.12/site-packages/tesla_powerwall/powerwall.py", line 49, in login_as
Jan 12 20:09:08 homeassistant homeassistant[546]:     response = await self._api.login(user, email, password, force_sm_off)
Jan 12 20:09:08 homeassistant homeassistant[546]:                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jan 12 20:09:08 homeassistant homeassistant[546]:   File "/usr/local/lib/python3.12/site-packages/tesla_powerwall/api.py", line 172, in login
Jan 12 20:09:08 homeassistant homeassistant[546]:     return await self.post(
Jan 12 20:09:08 homeassistant homeassistant[546]:            ^^^^^^^^^^^^^^^^
Jan 12 20:09:08 homeassistant homeassistant[546]:   File "/usr/local/lib/python3.12/site-packages/tesla_powerwall/api.py", line 146, in post
Jan 12 20:09:08 homeassistant homeassistant[546]:     response = await self._http_session.post(
Jan 12 20:09:08 homeassistant homeassistant[546]:                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jan 12 20:09:08 homeassistant homeassistant[546]:   File "/usr/local/lib/python3.12/site-packages/aiohttp/client.py", line 601, in _request
Jan 12 20:09:08 homeassistant homeassistant[546]:     await resp.start(conn)
Jan 12 20:09:08 homeassistant homeassistant[546]:   File "/usr/local/lib/python3.12/site-packages/aiohttp/client_reqrep.py", line 960, in start
Jan 12 20:09:08 homeassistant homeassistant[546]:     with self._timer:
Jan 12 20:09:08 homeassistant homeassistant[546]:   File "/usr/local/lib/python3.12/site-packages/aiohttp/helpers.py", line 735, in __exit__
Jan 12 20:09:08 homeassistant homeassistant[546]:     raise asyncio.TimeoutError from None
Jan 12 20:09:08 homeassistant homeassistant[546]: TimeoutError

```

* cov
2024-01-12 21:39:27 +01:00
..
auth Switch formatting from black to ruff-format (#102893) 2023-11-27 14:38:59 +01:00
backports Update mypy to 1.6.0 (#101780) 2023-10-11 13:25:11 +02:00
brands Add Rainforest RAVEn integration (#80061) 2024-01-05 14:00:54 +01:00
components Fix missing timeout exception check in powerwall config flow (#107899) 2024-01-12 21:39:27 +01:00
generated Add myUplink integration (#86522) 2024-01-12 12:17:07 +01:00
helpers Use identity checks for CoreState (#107846) 2024-01-12 10:21:26 +01:00
scripts Remove logic converting empty or falsy YAML to empty dict (#103912) 2023-12-05 18:08:11 +01:00
util Enable strict typing for ios (#107382) 2024-01-12 14:43:17 +01:00
__init__.py
__main__.py Make it possible to restart core in safe mode (#102606) 2023-10-24 14:47:58 +02:00
block_async_io.py
bootstrap.py Signficantly reduce executor contention during bootstrap (#107312) 2024-01-07 22:55:40 -05:00
config.py Deprecate legacy_templates (#105556) 2023-12-22 00:42:16 +01:00
config_entries.py Use identity checks for CoreState (#107846) 2024-01-12 10:21:26 +01:00
const.py Include deprecated constants in wildcard imports (#107114) 2024-01-05 11:46:45 +01:00
core.py Use identity checks for CoreState (#107846) 2024-01-12 10:21:26 +01:00
data_entry_flow.py Make step_id parameter to FlowHandler.async_show_progress optional (#107802) 2024-01-11 21:05:20 +01:00
exceptions.py Raise and suppress stack trace when reloading yaml fails (#102410) 2023-11-24 17:34:45 +01:00
loader.py Reduce zeroconf matcher complexity (#105880) 2023-12-23 11:04:05 +01:00
package_constraints.txt Update frontend to 20240112.0 (#107886) 2024-01-12 17:56:43 +01:00
requirements.py Signficantly reduce executor contention during bootstrap (#107312) 2024-01-07 22:55:40 -05:00
runner.py Make it possible to restart core in safe mode (#102606) 2023-10-24 14:47:58 +02:00
setup.py Use modern platform path when reporting platform config errors (#104238) 2023-12-05 15:06:13 +01:00
strings.json Improve OAuth error handling in configuration flows (#103157) 2023-11-11 11:02:51 +01:00