Skip to content

Commit ab0f903

Browse files
Remove deprecated code (#232)
Rebased #220 There are no dependencies on the _data_ingestion and the _data_handling packages anymore and can be removed. Removing them shaves of a little over a minute from a single nox run.
2 parents 1bee61a + 17e0342 commit ab0f903

38 files changed

+36
-8006
lines changed

benchmarks/data_ingestion/benchmark_microgrid_data.py

Lines changed: 0 additions & 577 deletions
This file was deleted.

examples/power_distribution.py

Lines changed: 36 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -14,22 +14,28 @@
1414
import logging
1515
from datetime import datetime, timezone
1616
from queue import Queue
17-
from typing import Any, List, Optional, Set
17+
from typing import List, Optional, Set
1818

1919
from frequenz.channels import Bidirectional, Broadcast, Receiver, Sender
2020

2121
from frequenz.sdk import microgrid
22-
from frequenz.sdk._data_handling import TimeSeriesEntry
23-
from frequenz.sdk._data_ingestion import MicrogridData
24-
from frequenz.sdk._data_ingestion.formula_calculator import FormulaCalculator
25-
from frequenz.sdk.actor import actor
22+
from frequenz.sdk.actor import (
23+
ChannelRegistry,
24+
ComponentMetricRequest,
25+
ComponentMetricsResamplingActor,
26+
DataSourcingActor,
27+
ResamplerConfig,
28+
actor,
29+
)
2630
from frequenz.sdk.actor.power_distributing import (
2731
PowerDistributingActor,
2832
Request,
2933
Result,
3034
Success,
3135
)
3236
from frequenz.sdk.microgrid.component import Component, ComponentCategory
37+
from frequenz.sdk.timeseries import Sample
38+
from frequenz.sdk.timeseries.logical_meter import LogicalMeter
3339

3440
_logger = logging.getLogger(__name__)
3541
HOST = "microgrid.sandbox.api.frequenz.io" # it should be the host name.
@@ -113,7 +119,7 @@ class DataCollectingActor:
113119
def __init__(
114120
self,
115121
request_channel: Sender[List[float]],
116-
active_power_data: Receiver[TimeSeriesEntry[Any]],
122+
active_power_data: Receiver[Sample],
117123
) -> None:
118124
"""Create actor instance.
119125
@@ -154,27 +160,33 @@ async def run() -> None:
154160
)
155161
await microgrid.initialize(HOST, PORT)
156162

157-
# await initialize(HOST, PORT) # in v0.8.0
163+
channel_registry = ChannelRegistry(name="Microgrid Channel Registry")
158164

159-
# Create MicrogridData
160-
microgrid_data_channels = {
161-
"batteries_active_power": Broadcast[TimeSeriesEntry[Any]](
162-
"batteries_active_power_formula", resend_latest=True
163-
),
164-
}
165+
data_source_request_channel = Broadcast[ComponentMetricRequest](
166+
"Data Source Request Channel"
167+
)
165168

166-
formula_calculator = FormulaCalculator(microgrid.get().component_graph)
167-
microgrid_data = MicrogridData(
168-
microgrid_client=microgrid.get().api_client,
169-
# microgrid_client=microgrid_api.microgrid_api, # in v0.8.0
170-
component_graph=microgrid.get().component_graph,
171-
outputs={
172-
key: channel.new_sender()
173-
for key, channel in microgrid_data_channels.items()
174-
},
175-
formula_calculator=formula_calculator,
169+
resampling_actor_request_channel = Broadcast[ComponentMetricRequest](
170+
"Resampling Actor Request Channel"
176171
)
177172

173+
_ds_actor = DataSourcingActor(
174+
request_receiver=data_source_request_channel.new_receiver(),
175+
registry=channel_registry,
176+
)
177+
178+
_resampling_actor = ComponentMetricsResamplingActor(
179+
channel_registry=channel_registry,
180+
data_sourcing_request_sender=data_source_request_channel.new_sender(),
181+
resampling_request_receiver=resampling_actor_request_channel.new_receiver(),
182+
config=ResamplerConfig(resampling_period_s=1.0),
183+
)
184+
185+
logical_meter = LogicalMeter(
186+
channel_registry,
187+
resampling_actor_request_channel.new_sender(),
188+
microgrid.get().component_graph,
189+
)
178190
sending_actor_id: str = "SendingActor"
179191
# Bidirectional channel is used for one sender - one receiver communication
180192
power_distributor_channels = {
@@ -212,15 +224,12 @@ async def run() -> None:
212224

213225
client_actor = DataCollectingActor(
214226
request_channel=power_dist_req_chan.new_sender(),
215-
active_power_data=microgrid_data_channels[
216-
"batteries_active_power"
217-
].new_receiver(name="DecisionMakingActor"),
227+
active_power_data=await logical_meter.grid_power(),
218228
)
219229

220230
# pylint: disable=no-member
221231
await service_actor.join() # type: ignore[attr-defined]
222232
await client_actor.join() # type: ignore[attr-defined]
223-
await microgrid_data.join() # type: ignore[attr-defined]
224233
await power_distributor.join() # type: ignore[attr-defined]
225234

226235

noxfile.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -219,9 +219,6 @@ def pylint(session: nox.Session, install_deps: bool = True) -> None:
219219
"pylint",
220220
"--extension-pkg-whitelist=pydantic",
221221
*paths,
222-
## ignore deprecated paths that will be removed soon.
223-
"--ignore-paths=tests/data_ingestion,\ntests/utils/data_generation.py,\n"
224-
"tests/test_data_handling,\ntests/test_microgrid_data_no_unnecessary_computations.py",
225222
)
226223

227224

src/frequenz/sdk/_data_handling/__init__.py

Lines changed: 0 additions & 10 deletions
This file was deleted.

src/frequenz/sdk/_data_handling/formula.py

Lines changed: 0 additions & 78 deletions
This file was deleted.

src/frequenz/sdk/_data_handling/gen_historic_data_features.py

Lines changed: 0 additions & 54 deletions
This file was deleted.

0 commit comments

Comments
 (0)