Skip to content

Commit 2c47e83

Browse files
authored
2026.3.2 (#165675)
2 parents f552b82 + e3c6a21 commit 2c47e83

File tree

58 files changed

+631
-140
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+631
-140
lines changed

homeassistant/components/alexa_devices/entity.py

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
"""Defines a base Alexa Devices entity."""
22

3-
from aioamazondevices.const.devices import SPEAKER_GROUP_DEVICE_TYPE
43
from aioamazondevices.structures import AmazonDevice
54

65
from homeassistant.helpers.device_registry import DeviceInfo
@@ -25,20 +24,15 @@ def __init__(
2524
"""Initialize the entity."""
2625
super().__init__(coordinator)
2726
self._serial_num = serial_num
28-
model = self.device.model
2927
self._attr_device_info = DeviceInfo(
3028
identifiers={(DOMAIN, serial_num)},
3129
name=self.device.account_name,
32-
model=model,
30+
model=self.device.model,
3331
model_id=self.device.device_type,
3432
manufacturer=self.device.manufacturer or "Amazon",
3533
hw_version=self.device.hardware_version,
36-
sw_version=(
37-
self.device.software_version
38-
if model != SPEAKER_GROUP_DEVICE_TYPE
39-
else None
40-
),
41-
serial_number=serial_num if model != SPEAKER_GROUP_DEVICE_TYPE else None,
34+
sw_version=self.device.software_version,
35+
serial_number=serial_num,
4236
)
4337
self.entity_description = description
4438
self._attr_unique_id = f"{serial_num}-{description.key}"

homeassistant/components/alexa_devices/manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,5 @@
88
"iot_class": "cloud_polling",
99
"loggers": ["aioamazondevices"],
1010
"quality_scale": "platinum",
11-
"requirements": ["aioamazondevices==13.0.0"]
11+
"requirements": ["aioamazondevices==13.0.1"]
1212
}

homeassistant/components/alexa_devices/switch.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,10 @@ async def _switch_set_state(self, state: bool) -> None:
101101
assert method is not None
102102

103103
await method(self.device, state)
104-
await self.coordinator.async_request_refresh()
104+
self.coordinator.data[self.device.serial_number].sensors[
105+
self.entity_description.key
106+
].value = state
107+
self.async_write_ha_state()
105108

106109
async def async_turn_on(self, **kwargs: Any) -> None:
107110
"""Turn the switch on."""

homeassistant/components/anglian_water/manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,5 @@
99
"iot_class": "cloud_polling",
1010
"loggers": ["pyanglianwater"],
1111
"quality_scale": "bronze",
12-
"requirements": ["pyanglianwater==3.1.0"]
12+
"requirements": ["pyanglianwater==3.1.1"]
1313
}

homeassistant/components/august/__init__.py

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,20 @@
55
from pathlib import Path
66
from typing import cast
77

8-
from aiohttp import ClientResponseError
8+
from aiohttp import ClientError
99
from yalexs.exceptions import AugustApiAIOHTTPError
1010
from yalexs.manager.exceptions import CannotConnect, InvalidAuth, RequireValidation
1111
from yalexs.manager.gateway import Config as YaleXSConfig
1212

1313
from homeassistant.config_entries import ConfigEntry
1414
from homeassistant.const import EVENT_HOMEASSISTANT_STOP
1515
from homeassistant.core import HomeAssistant
16-
from homeassistant.exceptions import ConfigEntryAuthFailed, ConfigEntryNotReady
16+
from homeassistant.exceptions import (
17+
ConfigEntryAuthFailed,
18+
ConfigEntryNotReady,
19+
OAuth2TokenRequestError,
20+
OAuth2TokenRequestReauthError,
21+
)
1722
from homeassistant.helpers import device_registry as dr, issue_registry as ir
1823
from homeassistant.helpers.config_entry_oauth2_flow import (
1924
ImplementationUnavailableError,
@@ -45,11 +50,18 @@ async def async_setup_entry(hass: HomeAssistant, entry: AugustConfigEntry) -> bo
4550
august_gateway = AugustGateway(Path(hass.config.config_dir), session, oauth_session)
4651
try:
4752
await async_setup_august(hass, entry, august_gateway)
53+
except OAuth2TokenRequestReauthError as err:
54+
raise ConfigEntryAuthFailed from err
4855
except (RequireValidation, InvalidAuth) as err:
4956
raise ConfigEntryAuthFailed from err
5057
except TimeoutError as err:
5158
raise ConfigEntryNotReady("Timed out connecting to august api") from err
52-
except (AugustApiAIOHTTPError, ClientResponseError, CannotConnect) as err:
59+
except (
60+
AugustApiAIOHTTPError,
61+
OAuth2TokenRequestError,
62+
ClientError,
63+
CannotConnect,
64+
) as err:
5365
raise ConfigEntryNotReady from err
5466
await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS)
5567
return True

homeassistant/components/august/manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,5 +30,5 @@
3030
"integration_type": "hub",
3131
"iot_class": "cloud_push",
3232
"loggers": ["pubnub", "yalexs"],
33-
"requirements": ["yalexs==9.2.0", "yalexs-ble==3.2.7"]
33+
"requirements": ["yalexs==9.2.0", "yalexs-ble==3.2.8"]
3434
}

homeassistant/components/cast/manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"integration_type": "hub",
1616
"iot_class": "local_polling",
1717
"loggers": ["casttube", "pychromecast"],
18-
"requirements": ["PyChromecast==14.0.9"],
18+
"requirements": ["PyChromecast==14.0.10"],
1919
"single_config_entry": true,
2020
"zeroconf": ["_googlecast._tcp.local."]
2121
}

homeassistant/components/comelit/manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,5 @@
88
"iot_class": "local_polling",
99
"loggers": ["aiocomelit"],
1010
"quality_scale": "platinum",
11-
"requirements": ["aiocomelit==2.0.0"]
11+
"requirements": ["aiocomelit==2.0.1"]
1212
}

homeassistant/components/fritz/switch.py

Lines changed: 12 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -133,26 +133,20 @@ async def _async_wifi_entities_list(
133133
]
134134
)
135135
_LOGGER.debug("WiFi networks count: %s", wifi_count)
136-
networks: dict = {}
136+
networks: dict[int, dict[str, Any]] = {}
137137
for i in range(1, wifi_count + 1):
138138
network_info = await avm_wrapper.async_get_wlan_configuration(i)
139139
# Devices with 4 WLAN services, use the 2nd for internal communications
140140
if not (wifi_count == 4 and i == 2):
141-
networks[i] = {
142-
"ssid": network_info["NewSSID"],
143-
"bssid": network_info["NewBSSID"],
144-
"standard": network_info["NewStandard"],
145-
"enabled": network_info["NewEnable"],
146-
"status": network_info["NewStatus"],
147-
}
141+
networks[i] = network_info
148142
for i, network in networks.copy().items():
149-
networks[i]["switch_name"] = network["ssid"]
143+
networks[i]["switch_name"] = network["NewSSID"]
150144
if (
151145
len(
152146
[
153147
j
154148
for j, n in networks.items()
155-
if slugify(n["ssid"]) == slugify(network["ssid"])
149+
if slugify(n["NewSSID"]) == slugify(network["NewSSID"])
156150
]
157151
)
158152
> 1
@@ -434,13 +428,11 @@ async def _async_fetch_update(self) -> None:
434428
for key, attr in attributes_dict.items():
435429
self._attributes[attr] = self.port_mapping[key]
436430

437-
async def _async_switch_on_off_executor(self, turn_on: bool) -> bool:
431+
async def _async_switch_on_off_executor(self, turn_on: bool) -> None:
438432
self.port_mapping["NewEnabled"] = "1" if turn_on else "0"
439-
440-
resp = await self._avm_wrapper.async_add_port_mapping(
433+
await self._avm_wrapper.async_add_port_mapping(
441434
self.connection_type, self.port_mapping
442435
)
443-
return bool(resp is not None)
444436

445437

446438
class FritzBoxDeflectionSwitch(FritzBoxBaseCoordinatorSwitch):
@@ -525,12 +517,11 @@ async def async_turn_off(self, **kwargs: Any) -> None:
525517
"""Turn off switch."""
526518
await self._async_handle_turn_on_off(turn_on=False)
527519

528-
async def _async_handle_turn_on_off(self, turn_on: bool) -> bool:
520+
async def _async_handle_turn_on_off(self, turn_on: bool) -> None:
529521
"""Handle switch state change request."""
530522
await self._avm_wrapper.async_set_allow_wan_access(self.ip_address, turn_on)
531523
self._avm_wrapper.devices[self._mac].wan_access = turn_on
532524
self.async_write_ha_state()
533-
return True
534525

535526

536527
class FritzBoxWifiSwitch(FritzBoxBaseSwitch):
@@ -541,10 +532,11 @@ def __init__(
541532
avm_wrapper: AvmWrapper,
542533
device_friendly_name: str,
543534
network_num: int,
544-
network_data: dict,
535+
network_data: dict[str, Any],
545536
) -> None:
546537
"""Init Fritz Wifi switch."""
547538
self._avm_wrapper = avm_wrapper
539+
self._wifi_info = network_data
548540

549541
self._attributes = {}
550542
self._attr_entity_category = EntityCategory.CONFIG
@@ -560,7 +552,7 @@ def __init__(
560552
type=SWITCH_TYPE_WIFINETWORK,
561553
callback_update=self._async_fetch_update,
562554
callback_switch=self._async_switch_on_off_executor,
563-
init_state=network_data["enabled"],
555+
init_state=network_data["NewEnable"],
564556
)
565557
super().__init__(self._avm_wrapper, device_friendly_name, switch_info)
566558

@@ -587,7 +579,9 @@ async def _async_fetch_update(self) -> None:
587579
self._attributes["mac_address_control"] = wifi_info[
588580
"NewMACAddressControlEnabled"
589581
]
582+
self._wifi_info = wifi_info
590583

591584
async def _async_switch_on_off_executor(self, turn_on: bool) -> None:
592585
"""Handle wifi switch."""
586+
self._wifi_info["NewEnable"] = turn_on
593587
await self._avm_wrapper.async_set_wlan_configuration(self._network_num, turn_on)

homeassistant/components/frontend/manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,5 @@
2121
"integration_type": "system",
2222
"preview_features": { "winter_mode": {} },
2323
"quality_scale": "internal",
24-
"requirements": ["home-assistant-frontend==20260304.0"]
24+
"requirements": ["home-assistant-frontend==20260312.0"]
2525
}

0 commit comments

Comments
 (0)