Skip to content

Commit d2d4386

Browse files
committed
Specify timeout policy when constructing Timers
This is because the older constructors were deprecated by channel v1.0.0-rc1. Signed-off-by: Sahas Subramanian <[email protected]>
1 parent e0315f3 commit d2d4386

File tree

3 files changed

+9
-7
lines changed

3 files changed

+9
-7
lines changed

src/frequenz/sdk/actor/power_distributing/_component_status/_battery_status_tracker.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929

3030
# pylint: enable=no-name-in-module
3131
from frequenz.channels import Receiver, Sender, select, selected_from
32-
from frequenz.channels.timer import Timer
32+
from frequenz.channels.timer import SkipMissedAndDrift, Timer
3333
from frequenz.client.microgrid import (
3434
BatteryData,
3535
ComponentCategory,
@@ -147,11 +147,11 @@ def __init__( # pylint: disable=too-many-arguments
147147

148148
self._battery: _ComponentStreamStatus = _ComponentStreamStatus(
149149
component_id,
150-
data_recv_timer=Timer.timeout(max_data_age),
150+
data_recv_timer=Timer(max_data_age, SkipMissedAndDrift()),
151151
)
152152
self._inverter: _ComponentStreamStatus = _ComponentStreamStatus(
153153
inverter_id,
154-
data_recv_timer=Timer.timeout(max_data_age),
154+
data_recv_timer=Timer(max_data_age, SkipMissedAndDrift()),
155155
)
156156

157157
# Select needs receivers that can be get in async way only.

src/frequenz/sdk/timeseries/_resampling.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
from datetime import datetime, timedelta, timezone
1717
from typing import cast
1818

19-
from frequenz.channels.timer import Timer, _to_microseconds
19+
from frequenz.channels.timer import Timer, TriggerAllMissed, _to_microseconds
2020

2121
from .._internal._asyncio import cancel_and_await
2222
from ._base_types import UNIX_EPOCH, Sample
@@ -384,7 +384,7 @@ def __init__(self, config: ResamplerConfig) -> None:
384384
the window end is deterministic.
385385
"""
386386

387-
self._timer: Timer = Timer.periodic(config.resampling_period)
387+
self._timer: Timer = Timer(config.resampling_period, TriggerAllMissed())
388388
"""The timer used to trigger the resampling windows."""
389389

390390
# Hack to align the timer, this should be implemented in the Timer class

src/frequenz/sdk/timeseries/ev_charger_pool/_set_current_bounds.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
from datetime import timedelta
1010

1111
from frequenz.channels import Broadcast, Sender, select, selected_from
12-
from frequenz.channels.timer import Timer
12+
from frequenz.channels.timer import SkipMissedAndDrift, Timer
1313
from frequenz.client.microgrid import ComponentCategory
1414

1515
from ..._internal._asyncio import cancel_and_await
@@ -100,7 +100,9 @@ async def _run(self) -> None:
100100
latest_bound: dict[int, ComponentCurrentLimit] = {}
101101

102102
bound_chan = self._bounds_rx
103-
timer = Timer.timeout(timedelta(self._repeat_interval.total_seconds()))
103+
timer = Timer(
104+
timedelta(self._repeat_interval.total_seconds()), SkipMissedAndDrift()
105+
)
104106

105107
async for selected in select(bound_chan, timer):
106108
meter = meter_data.get()

0 commit comments

Comments
 (0)