Skip to content

Commit d7f9a71

Browse files
krahabbCopilotemontnemeryepenet
authored
Deprecate TemperatureConverter.convert_interval (#155689)
Co-authored-by: Copilot <[email protected]> Co-authored-by: Erik Montnemery <[email protected]> Co-authored-by: epenet <[email protected]>
1 parent f7a59eb commit d7f9a71

File tree

3 files changed

+18
-3
lines changed

3 files changed

+18
-3
lines changed

homeassistant/components/alexa/handlers.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,10 @@
5858
from homeassistant.helpers import network
5959
from homeassistant.util import color as color_util, dt as dt_util
6060
from homeassistant.util.decorator import Registry
61-
from homeassistant.util.unit_conversion import TemperatureConverter
61+
from homeassistant.util.unit_conversion import (
62+
TemperatureConverter,
63+
TemperatureDeltaConverter,
64+
)
6265

6366
from .config import AbstractConfig
6467
from .const import (
@@ -844,7 +847,7 @@ def temperature_from_object(
844847
temp -= 273.15
845848

846849
if interval:
847-
return TemperatureConverter.convert_interval(temp, from_unit, to_unit)
850+
return TemperatureDeltaConverter.convert(temp, from_unit, to_unit)
848851
return TemperatureConverter.convert(temp, from_unit, to_unit)
849852

850853

homeassistant/util/unit_conversion.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
UnitOfVolumetricFlux,
3939
)
4040
from homeassistant.exceptions import HomeAssistantError
41+
from homeassistant.helpers.deprecation import deprecated_function
4142

4243
# Distance conversion constants
4344
_MM_TO_M = 0.001 # 1 mm = 0.001 m
@@ -707,6 +708,9 @@ def _converter_factory(
707708
)
708709

709710
@classmethod
711+
@deprecated_function(
712+
"TemperatureDeltaConverter.convert", breaks_in_ha_version="2026.12.0"
713+
)
710714
def convert_interval(cls, interval: float, from_unit: str, to_unit: str) -> float:
711715
"""Convert a temperature interval from one unit to another.
712716

tests/util/test_unit_conversion.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1302,11 +1302,19 @@ def test_unit_conversion_factory_allow_none(
13021302
],
13031303
)
13041304
def test_temperature_convert_with_interval(
1305-
value: float, from_unit: str, expected: float, to_unit: str
1305+
value: float,
1306+
from_unit: str,
1307+
expected: float,
1308+
to_unit: str,
1309+
caplog: pytest.LogCaptureFixture,
13061310
) -> None:
13071311
"""Test conversion to other units."""
13081312
expected = pytest.approx(expected)
13091313
assert TemperatureConverter.convert_interval(value, from_unit, to_unit) == expected
1314+
assert (
1315+
"The deprecated function convert_interval was called. It will be removed "
1316+
"in HA Core 2026.12.0. Use TemperatureDeltaConverter.convert instead"
1317+
) in caplog.text
13101318

13111319

13121320
@pytest.mark.parametrize(

0 commit comments

Comments
 (0)