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

2024.12.2 #132846

Merged
merged 26 commits into from
Dec 10, 2024
Merged

2024.12.2 #132846

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
f343dce
Enable additional entities on myUplink model SMO20 (#131688)
astrandb Dec 9, 2024
4e56f9c
Bump pydrawise to 2024.12.0 (#132015)
dknowles2 Dec 1, 2024
1f6c5b4
Fix API change for AC not supporting floats in SwitchBot Cloud (#132231)
SeraphicRav Dec 8, 2024
d6a4a7f
Update pyrisco to 0.6.5 (#132493)
agmckaybro Dec 6, 2024
5d01f7d
Fix PyTado dependency (#132510)
erwindouna Dec 6, 2024
b0005ce
Bump pycups to 2.0.4 (#132514)
bdraco Dec 6, 2024
f128417
Update debugpy to 1.8.8 (#132519)
frenck Dec 6, 2024
af5f718
bump total_connect_client to 2023.12 (#132531)
austinmroczek Dec 7, 2024
db141ce
Bump aiounifi to v81 to fix partitioned cookies on python 3.13 (#132540)
Kane610 Dec 7, 2024
0096ffb
Update twentemilieu to 2.2.0 (#132554)
frenck Dec 8, 2024
a33c69a
Bump yalexs-ble to 2.5.2 (#132560)
bdraco Dec 7, 2024
26012ac
Bump plugwise to v1.6.1 (#131950)
bouwew Dec 1, 2024
ef89563
Bump plugwise to v1.6.2 and adapt (#132608)
bouwew Dec 8, 2024
382d32c
Fix config flow in Husqvarna Automower (#132615)
Thomas55555 Dec 8, 2024
1993142
Bump ZHA dependencies (#132630)
puddly Dec 8, 2024
da344a4
Bump plugwise to v1.6.3 (#132673)
bouwew Dec 9, 2024
8fc50c7
Bump yt-dlp to 2024.12.06 (#132684)
joostlek Dec 9, 2024
cac4eef
Revert "Bump pyezviz to 0.2.2.3" (#132715)
srescio Dec 9, 2024
c8e5a6d
Bump intents to 2024.12.9 (#132726)
synesthesiam Dec 9, 2024
e239871
Update frontend to 20241127.7 (#132729)
bramkragten Dec 9, 2024
e4765c4
Bump reolink-aio to 0.11.5 (#132757)
starkillerOG Dec 9, 2024
60e8a38
Catch Hydrawise authorization errors in the correct place (#132727)
dknowles2 Dec 10, 2024
fc34c61
Pass an application identifier to the Hydrawise API (#132779)
dknowles2 Dec 10, 2024
01a9a58
Bump deebot-client to 9.3.0 (#132834)
edenhaus Dec 10, 2024
5a5bb13
Bump aioacaia to 0.1.11 (#132838)
zweckj Dec 10, 2024
238cf69
Bump version to 2024.12.2
frenck Dec 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion homeassistant/components/acaia/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,5 @@
"integration_type": "device",
"iot_class": "local_push",
"loggers": ["aioacaia"],
"requirements": ["aioacaia==0.1.10"]
"requirements": ["aioacaia==0.1.11"]
}
2 changes: 1 addition & 1 deletion homeassistant/components/august/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,5 +28,5 @@
"documentation": "https://www.home-assistant.io/integrations/august",
"iot_class": "cloud_push",
"loggers": ["pubnub", "yalexs"],
"requirements": ["yalexs==8.10.0", "yalexs-ble==2.5.1"]
"requirements": ["yalexs==8.10.0", "yalexs-ble==2.5.2"]
}
2 changes: 1 addition & 1 deletion homeassistant/components/conversation/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@
"documentation": "https://www.home-assistant.io/integrations/conversation",
"integration_type": "system",
"quality_scale": "internal",
"requirements": ["hassil==2.0.5", "home-assistant-intents==2024.12.4"]
"requirements": ["hassil==2.0.5", "home-assistant-intents==2024.12.9"]
}
2 changes: 1 addition & 1 deletion homeassistant/components/cups/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,5 @@
"documentation": "https://www.home-assistant.io/integrations/cups",
"iot_class": "local_polling",
"quality_scale": "legacy",
"requirements": ["pycups==1.9.73"]
"requirements": ["pycups==2.0.4"]
}
2 changes: 1 addition & 1 deletion homeassistant/components/debugpy/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@
"integration_type": "service",
"iot_class": "local_push",
"quality_scale": "internal",
"requirements": ["debugpy==1.8.6"]
"requirements": ["debugpy==1.8.8"]
}
2 changes: 1 addition & 1 deletion homeassistant/components/ecovacs/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@
"documentation": "https://www.home-assistant.io/integrations/ecovacs",
"iot_class": "cloud_push",
"loggers": ["sleekxmppfs", "sucks", "deebot_client"],
"requirements": ["py-sucks==0.9.10", "deebot-client==9.2.0"]
"requirements": ["py-sucks==0.9.10", "deebot-client==9.3.0"]
}
2 changes: 1 addition & 1 deletion homeassistant/components/ezviz/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@
"documentation": "https://www.home-assistant.io/integrations/ezviz",
"iot_class": "cloud_polling",
"loggers": ["paho_mqtt", "pyezviz"],
"requirements": ["pyezviz==0.2.2.3"]
"requirements": ["pyezviz==0.2.1.2"]
}
2 changes: 1 addition & 1 deletion homeassistant/components/frontend/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,5 +20,5 @@
"documentation": "https://www.home-assistant.io/integrations/frontend",
"integration_type": "system",
"quality_scale": "internal",
"requirements": ["home-assistant-frontend==20241127.6"]
"requirements": ["home-assistant-frontend==20241127.7"]
}
4 changes: 2 additions & 2 deletions homeassistant/components/husqvarna_automower/config_flow.py
Original file line number Diff line number Diff line change
Expand Up @@ -53,10 +53,10 @@ async def async_oauth_create_entry(self, data: dict[str, Any]) -> ConfigFlowResu
tz = await dt_util.async_get_time_zone(str(dt_util.DEFAULT_TIME_ZONE))
automower_api = AutomowerSession(AsyncConfigFlowAuth(websession, token), tz)
try:
data = await automower_api.get_status()
status_data = await automower_api.get_status()
except Exception: # noqa: BLE001
return self.async_abort(reason="unknown")
if data == {}:
if status_data == {}:
return self.async_abort(reason="no_mower_connected")

structured_token = structure_token(token[CONF_ACCESS_TOKEN])
Expand Down
5 changes: 3 additions & 2 deletions homeassistant/components/hydrawise/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
from homeassistant.core import HomeAssistant
from homeassistant.exceptions import ConfigEntryAuthFailed

from .const import DOMAIN
from .const import APP_ID, DOMAIN
from .coordinator import (
HydrawiseMainDataUpdateCoordinator,
HydrawiseUpdateCoordinators,
Expand All @@ -30,7 +30,8 @@ async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry) -> b
raise ConfigEntryAuthFailed

hydrawise = client.Hydrawise(
auth.Auth(config_entry.data[CONF_USERNAME], config_entry.data[CONF_PASSWORD])
auth.Auth(config_entry.data[CONF_USERNAME], config_entry.data[CONF_PASSWORD]),
app_id=APP_ID,
)

main_coordinator = HydrawiseMainDataUpdateCoordinator(hass, hydrawise)
Expand Down
17 changes: 11 additions & 6 deletions homeassistant/components/hydrawise/config_flow.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@
from typing import Any

from aiohttp import ClientError
from pydrawise import auth, client
from pydrawise import auth as pydrawise_auth, client
from pydrawise.exceptions import NotAuthorizedError
import voluptuous as vol

from homeassistant.config_entries import SOURCE_REAUTH, ConfigFlow, ConfigFlowResult
from homeassistant.const import CONF_PASSWORD, CONF_USERNAME

from .const import DOMAIN, LOGGER
from .const import APP_ID, DOMAIN, LOGGER


class HydrawiseConfigFlow(ConfigFlow, domain=DOMAIN):
Expand All @@ -29,16 +29,21 @@ async def _create_or_update_entry(
on_failure: Callable[[str], ConfigFlowResult],
) -> ConfigFlowResult:
"""Create the config entry."""

# Verify that the provided credentials work."""
api = client.Hydrawise(auth.Auth(username, password))
auth = pydrawise_auth.Auth(username, password)
try:
# Don't fetch zones because we don't need them yet.
user = await api.get_user(fetch_zones=False)
await auth.token()
except NotAuthorizedError:
return on_failure("invalid_auth")
except TimeoutError:
return on_failure("timeout_connect")

try:
api = client.Hydrawise(auth, app_id=APP_ID)
# Don't fetch zones because we don't need them yet.
user = await api.get_user(fetch_zones=False)
except TimeoutError:
return on_failure("timeout_connect")
except ClientError as ex:
LOGGER.error("Unable to connect to Hydrawise cloud service: %s", ex)
return on_failure("cannot_connect")
Expand Down
4 changes: 4 additions & 0 deletions homeassistant/components/hydrawise/const.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,12 @@
from datetime import timedelta
import logging

from homeassistant.const import __version__ as HA_VERSION

LOGGER = logging.getLogger(__package__)

APP_ID = f"homeassistant-{HA_VERSION}"

DOMAIN = "hydrawise"
DEFAULT_WATERING_TIME = timedelta(minutes=15)

Expand Down
2 changes: 1 addition & 1 deletion homeassistant/components/hydrawise/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@
"documentation": "https://www.home-assistant.io/integrations/hydrawise",
"iot_class": "cloud_polling",
"loggers": ["pydrawise"],
"requirements": ["pydrawise==2024.9.0"]
"requirements": ["pydrawise==2024.12.0"]
}
2 changes: 1 addition & 1 deletion homeassistant/components/media_extractor/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@
"iot_class": "calculated",
"loggers": ["yt_dlp"],
"quality_scale": "internal",
"requirements": ["yt-dlp[default]==2024.12.03"],
"requirements": ["yt-dlp[default]==2024.12.06"],
"single_config_entry": true
}
6 changes: 6 additions & 0 deletions homeassistant/components/myuplink/helpers.py
Original file line number Diff line number Diff line change
Expand Up @@ -95,11 +95,17 @@ def find_matching_platform(
)

PARAMETER_ID_TO_INCLUDE_SMO20 = (
"40013",
"40033",
"40940",
"44069",
"44071",
"44073",
"47011",
"47015",
"47028",
"47032",
"47398",
"50004",
)

Expand Down
13 changes: 2 additions & 11 deletions homeassistant/components/plugwise/climate.py
Original file line number Diff line number Diff line change
Expand Up @@ -191,17 +191,8 @@ def hvac_action(self) -> HVACAction:
self._previous_action_mode(self.coordinator)

# Adam provides the hvac_action for each thermostat
if self._gateway["smile_name"] == "Adam":
if (control_state := self.device.get("control_state")) == "cooling":
return HVACAction.COOLING
if control_state == "heating":
return HVACAction.HEATING
if control_state == "preheating":
return HVACAction.PREHEATING
if control_state == "off":
return HVACAction.IDLE

return HVACAction.IDLE
if (action := self.device.get("control_state")) is not None:
return HVACAction(action)

# Anna
heater: str = self._gateway["heater_id"]
Expand Down
2 changes: 1 addition & 1 deletion homeassistant/components/plugwise/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,6 @@
"integration_type": "hub",
"iot_class": "local_polling",
"loggers": ["plugwise"],
"requirements": ["plugwise==1.6.0"],
"requirements": ["plugwise==1.6.3"],
"zeroconf": ["_plugwise._tcp.local."]
}
2 changes: 1 addition & 1 deletion homeassistant/components/reolink/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,5 @@
"documentation": "https://www.home-assistant.io/integrations/reolink",
"iot_class": "local_push",
"loggers": ["reolink_aio"],
"requirements": ["reolink-aio==0.11.4"]
"requirements": ["reolink-aio==0.11.5"]
}
2 changes: 1 addition & 1 deletion homeassistant/components/risco/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@
"documentation": "https://www.home-assistant.io/integrations/risco",
"iot_class": "local_push",
"loggers": ["pyrisco"],
"requirements": ["pyrisco==0.6.4"]
"requirements": ["pyrisco==0.6.5"]
}
4 changes: 3 additions & 1 deletion homeassistant/components/switchbot_cloud/climate.py
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,8 @@ class SwitchBotCloudAirConditioner(SwitchBotCloudEntity, ClimateEntity):
_attr_hvac_mode = HVACMode.FAN_ONLY
_attr_temperature_unit = UnitOfTemperature.CELSIUS
_attr_target_temperature = 21
_attr_target_temperature_step = 1
_attr_precision = 1
_attr_name = None
_enable_turn_on_off_backwards_compatibility = False

Expand All @@ -97,7 +99,7 @@ async def _do_send_command(
)
await self.send_api_command(
AirConditionerCommands.SET_ALL,
parameters=f"{new_temperature},{new_mode},{new_fan_speed},on",
parameters=f"{int(new_temperature)},{new_mode},{new_fan_speed},on",
)

async def async_set_hvac_mode(self, hvac_mode: HVACMode) -> None:
Expand Down
2 changes: 1 addition & 1 deletion homeassistant/components/tado/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,5 @@
},
"iot_class": "cloud_polling",
"loggers": ["PyTado"],
"requirements": ["python-tado==0.17.7"]
"requirements": ["python-tado==0.17.6"]
}
2 changes: 1 addition & 1 deletion homeassistant/components/totalconnect/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@
"documentation": "https://www.home-assistant.io/integrations/totalconnect",
"iot_class": "cloud_polling",
"loggers": ["total_connect_client"],
"requirements": ["total-connect-client==2024.5"]
"requirements": ["total-connect-client==2024.12"]
}
2 changes: 1 addition & 1 deletion homeassistant/components/twentemilieu/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@
"integration_type": "service",
"iot_class": "cloud_polling",
"loggers": ["twentemilieu"],
"requirements": ["twentemilieu==2.1.0"]
"requirements": ["twentemilieu==2.2.0"]
}
2 changes: 1 addition & 1 deletion homeassistant/components/unifi/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"integration_type": "hub",
"iot_class": "local_push",
"loggers": ["aiounifi"],
"requirements": ["aiounifi==80"],
"requirements": ["aiounifi==81"],
"ssdp": [
{
"manufacturer": "Ubiquiti Networks",
Expand Down
2 changes: 1 addition & 1 deletion homeassistant/components/yale/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,5 @@
"documentation": "https://www.home-assistant.io/integrations/yale",
"iot_class": "cloud_push",
"loggers": ["socketio", "engineio", "yalexs"],
"requirements": ["yalexs==8.10.0", "yalexs-ble==2.5.1"]
"requirements": ["yalexs==8.10.0", "yalexs-ble==2.5.2"]
}
2 changes: 1 addition & 1 deletion homeassistant/components/yalexs_ble/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@
"dependencies": ["bluetooth_adapters"],
"documentation": "https://www.home-assistant.io/integrations/yalexs_ble",
"iot_class": "local_push",
"requirements": ["yalexs-ble==2.5.1"]
"requirements": ["yalexs-ble==2.5.2"]
}
2 changes: 1 addition & 1 deletion homeassistant/components/zha/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
"zha",
"universal_silabs_flasher"
],
"requirements": ["universal-silabs-flasher==0.0.25", "zha==0.0.41"],
"requirements": ["universal-silabs-flasher==0.0.25", "zha==0.0.42"],
"usb": [
{
"vid": "10C4",
Expand Down
2 changes: 1 addition & 1 deletion homeassistant/const.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
APPLICATION_NAME: Final = "HomeAssistant"
MAJOR_VERSION: Final = 2024
MINOR_VERSION: Final = 12
PATCH_VERSION: Final = "1"
PATCH_VERSION: Final = "2"
__short_version__: Final = f"{MAJOR_VERSION}.{MINOR_VERSION}"
__version__: Final = f"{__short_version__}.{PATCH_VERSION}"
REQUIRED_PYTHON_VER: Final[tuple[int, int, int]] = (3, 12, 0)
Expand Down
4 changes: 2 additions & 2 deletions homeassistant/package_constraints.txt
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ habluetooth==3.6.0
hass-nabucasa==0.86.0
hassil==2.0.5
home-assistant-bluetooth==1.13.0
home-assistant-frontend==20241127.6
home-assistant-intents==2024.12.4
home-assistant-frontend==20241127.7
home-assistant-intents==2024.12.9
httpx==0.27.2
ifaddr==0.2.0
Jinja2==3.1.4
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "homeassistant"
version = "2024.12.1"
version = "2024.12.2"
license = {text = "Apache-2.0"}
description = "Open-source home automation platform running on Python 3."
readme = "README.rst"
Expand Down
Loading
Loading