Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
24 changes: 0 additions & 24 deletions homeassistant/components/backup/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,6 @@ def from_dict(cls, data: StoredBackupConfig) -> Self:
schedule=BackupSchedule(
days=days,
recurrence=ScheduleRecurrence(data["schedule"]["recurrence"]),
state=ScheduleState(data["schedule"].get("state", ScheduleState.NEVER)),
time=time,
),
)
Expand Down Expand Up @@ -453,7 +452,6 @@ class StoredBackupSchedule(TypedDict):

days: list[Day]
recurrence: ScheduleRecurrence
state: ScheduleState
time: str | None


Expand All @@ -462,7 +460,6 @@ class ScheduleParametersDict(TypedDict, total=False):

days: list[Day]
recurrence: ScheduleRecurrence
state: ScheduleState
time: dt.time | None


Expand All @@ -486,32 +483,12 @@ class ScheduleRecurrence(StrEnum):
CUSTOM_DAYS = "custom_days"


class ScheduleState(StrEnum):
"""Represent the schedule recurrence.

This is deprecated and can be remove in HA Core 2025.8.
"""

NEVER = "never"
DAILY = "daily"
MONDAY = "mon"
TUESDAY = "tue"
WEDNESDAY = "wed"
THURSDAY = "thu"
FRIDAY = "fri"
SATURDAY = "sat"
SUNDAY = "sun"


@dataclass(kw_only=True)
class BackupSchedule:
"""Represent the backup schedule."""

days: list[Day] = field(default_factory=list)
recurrence: ScheduleRecurrence = ScheduleRecurrence.NEVER
# Although no longer used, state is kept for backwards compatibility.
# It can be removed in HA Core 2025.8.
state: ScheduleState = ScheduleState.NEVER
time: dt.time | None = None
cron_event: CronSim | None = field(init=False, default=None)
next_automatic_backup: datetime | None = field(init=False, default=None)
Expand Down Expand Up @@ -610,7 +587,6 @@ def to_dict(self) -> StoredBackupSchedule:
return StoredBackupSchedule(
days=self.days,
recurrence=self.recurrence,
state=self.state,
time=self.time.isoformat() if self.time else None,
)

Expand Down
3 changes: 0 additions & 3 deletions homeassistant/components/backup/websocket.py
Original file line number Diff line number Diff line change
Expand Up @@ -331,9 +331,6 @@ async def handle_config_info(
"""Send the stored backup config."""
manager = hass.data[DATA_MANAGER]
config = manager.config.data.to_dict()
# Remove state from schedule, it's not needed in the frontend
# mypy doesn't like deleting from TypedDict, ignore it
del config["schedule"]["state"] # type: ignore[misc]
connection.send_result(
msg["id"],
{
Expand Down
2 changes: 1 addition & 1 deletion homeassistant/components/cloud/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,6 @@
"integration_type": "system",
"iot_class": "cloud_push",
"loggers": ["acme", "hass_nabucasa", "snitun"],
"requirements": ["hass-nabucasa==0.111.1"],
"requirements": ["hass-nabucasa==0.111.2"],
"single_config_entry": true
}
2 changes: 1 addition & 1 deletion homeassistant/components/huum/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,5 @@
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/huum",
"iot_class": "cloud_polling",
"requirements": ["huum==0.8.0"]
"requirements": ["huum==0.8.1"]
}
2 changes: 1 addition & 1 deletion homeassistant/components/miele/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
"iot_class": "cloud_push",
"loggers": ["pymiele"],
"quality_scale": "bronze",
"requirements": ["pymiele==0.5.2"],
"requirements": ["pymiele==0.5.3"],
"single_config_entry": true,
"zeroconf": ["_mieleathome._tcp.local."]
}
8 changes: 1 addition & 7 deletions homeassistant/components/switchbot/vacuum.py
Original file line number Diff line number Diff line change
Expand Up @@ -87,8 +87,7 @@ class SwitchbotVacuumEntity(SwitchbotEntity, StateVacuumEntity):

_device: switchbot.SwitchbotVacuum
_attr_supported_features = (
VacuumEntityFeature.BATTERY
| VacuumEntityFeature.RETURN_HOME
VacuumEntityFeature.RETURN_HOME
| VacuumEntityFeature.START
| VacuumEntityFeature.STATE
)
Expand All @@ -108,11 +107,6 @@ def activity(self) -> VacuumActivity | None:
status_code = self._device.get_work_status()
return SWITCHBOT_VACUUM_STATE_MAP[self.protocol_version].get(status_code)

@property
def battery_level(self) -> int:
"""Return the vacuum battery."""
return self._device.get_battery()

async def async_start(self) -> None:
"""Start or resume the cleaning task."""
self._last_run_success = bool(
Expand Down
9 changes: 7 additions & 2 deletions homeassistant/components/tibber/sensor.py
Original file line number Diff line number Diff line change
Expand Up @@ -299,7 +299,10 @@ async def async_setup_entry(
)
await home.rt_subscribe(
TibberRtDataCoordinator(
entity_creator.add_sensors, home, hass
hass,
entry,
entity_creator.add_sensors,
home,
).async_set_updated_data
)

Expand Down Expand Up @@ -613,15 +616,17 @@ class TibberRtDataCoordinator(DataUpdateCoordinator): # pylint: disable=hass-en

def __init__(
self,
hass: HomeAssistant,
config_entry: ConfigEntry,
add_sensor_callback: Callable[[TibberRtDataCoordinator, Any], None],
tibber_home: tibber.TibberHome,
hass: HomeAssistant,
) -> None:
"""Initialize the data handler."""
self._add_sensor_callback = add_sensor_callback
super().__init__(
hass,
_LOGGER,
config_entry=config_entry,
name=tibber_home.info["viewer"]["home"]["address"].get(
"address1", "Tibber"
),
Expand Down
9 changes: 6 additions & 3 deletions homeassistant/components/vacuum/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,10 @@
_DEPRECATED_STATE_IDLE = DeprecatedConstantEnum(VacuumActivity.IDLE, "2026.1")
_DEPRECATED_STATE_PAUSED = DeprecatedConstantEnum(VacuumActivity.PAUSED, "2026.1")

_BATTERY_DEPRECATION_IGNORED_PLATFORMS = ("template",)
_BATTERY_DEPRECATION_IGNORED_PLATFORMS = (
"mqtt",
"template",
)


class VacuumEntityFeature(IntFlag):
Expand Down Expand Up @@ -333,7 +336,7 @@ def _report_deprecated_battery_properties(self, property: str) -> None:
f"is setting the {property} which has been deprecated."
f" Integration {self.platform.platform_name} should implement a sensor"
" instead with a correct device class and link it to the same device",
core_integration_behavior=ReportBehavior.LOG,
core_integration_behavior=ReportBehavior.IGNORE,
custom_integration_behavior=ReportBehavior.LOG,
breaks_in_ha_version="2026.8",
integration_domain=self.platform.platform_name,
Expand All @@ -358,7 +361,7 @@ def _report_deprecated_battery_feature(self) -> None:
f" Integration {self.platform.platform_name} should remove this as part of migrating"
" the battery level and icon to a sensor",
core_behavior=ReportBehavior.LOG,
core_integration_behavior=ReportBehavior.LOG,
core_integration_behavior=ReportBehavior.IGNORE,
custom_integration_behavior=ReportBehavior.LOG,
breaks_in_ha_version="2026.8",
integration_domain=self.platform.platform_name,
Expand Down
2 changes: 1 addition & 1 deletion homeassistant/package_constraints.txt
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ fnv-hash-fast==1.5.0
go2rtc-client==0.2.1
ha-ffmpeg==3.2.2
habluetooth==4.0.2
hass-nabucasa==0.111.1
hass-nabucasa==0.111.2
hassil==2.2.3
home-assistant-bluetooth==1.13.1
home-assistant-frontend==20250806.0
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ dependencies = [
"fnv-hash-fast==1.5.0",
# hass-nabucasa is imported by helpers which don't depend on the cloud
# integration
"hass-nabucasa==0.111.1",
"hass-nabucasa==0.111.2",
# When bumping httpx, please check the version pins of
# httpcore, anyio, and h11 in gen_requirements_all
"httpx==0.28.1",
Expand Down
2 changes: 1 addition & 1 deletion requirements.txt

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions requirements_all.txt

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions requirements_test_all.txt

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion tests/components/backup/snapshots/test_diagnostics.ambr
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@
'days': list([
]),
'recurrence': 'never',
'state': 'never',
'time': None,
}),
}),
Expand Down
7 changes: 0 additions & 7 deletions tests/components/backup/snapshots/test_store.ambr
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,6 @@
'days': list([
]),
'recurrence': 'never',
'state': 'never',
'time': None,
}),
}),
Expand Down Expand Up @@ -187,7 +186,6 @@
'days': list([
]),
'recurrence': 'never',
'state': 'never',
'time': None,
}),
}),
Expand Down Expand Up @@ -306,7 +304,6 @@
'days': list([
]),
'recurrence': 'never',
'state': 'never',
'time': None,
}),
}),
Expand Down Expand Up @@ -413,7 +410,6 @@
'days': list([
]),
'recurrence': 'never',
'state': 'never',
'time': None,
}),
}),
Expand Down Expand Up @@ -520,7 +516,6 @@
'days': list([
]),
'recurrence': 'never',
'state': 'never',
'time': None,
}),
}),
Expand Down Expand Up @@ -633,7 +628,6 @@
'days': list([
]),
'recurrence': 'never',
'state': 'never',
'time': None,
}),
}),
Expand Down Expand Up @@ -758,7 +752,6 @@
'days': list([
]),
'recurrence': 'never',
'state': 'never',
'time': None,
}),
}),
Expand Down
Loading
Loading