v0.19.0
Release Notes
Summary
Upgrading
- Remove
_socformula from the LogicalMeter. This feature has been moved to the BatteryPool. - Upgrade PowerDistributingActor to handle components with the NaN metrics (#247):
- if power bounds are NaN, then it tries to replace them with corresponding power bounds from adjacent component. If these components are also NaN, then it ignores battery.
- if other metrics metrics are NaN then it ignores battery.
- BatteryStatus to track that a component stopped sending messages. If the battery or its adjacent inverter stopped sending messages, then the battery would be considered as not working. (#207)
- PowerDistributing to send battery status to subscribed users (#205)
- Rename microgrid.Microgrid to microgrid.ConnectionManager (#208)
- Change few resampler logs from info to debug, because they were polluting startup logs (#238)
New Features
- A new class
SerializableRingbufferis now available, extending theOrderedRingBufferclass with the ability to load & dump the data to disk. - Add the
run(*actors)function for running and synchronizing the execution of actors. This new function simplifies the way actors are managed on the client side, allowing for a cleaner and more streamlined approach. Users/apps can now run actors simply by calling run(actor1, actor2, actor3...) without the need to manually call join() and deal with linting errors. - The datasourcing actor now automatically closes all sending channels when the input channel closes.
- BatteryPool implementation for aggregating battery-inverter metrics into higher level metrics. (#205)
- Add EV power and current streams to
EVChargerPool(#201)
Bug Fixes
- The resampler now correctly produces resampling windows of exact resampling period size, which only include samples emitted during the resampling window (see #170)
Removing
- Deprecated code (#232):
- frequenz.sdk._data_ingestion
- frequenz.sdk._data_handling
- The pandas(-stubs) and pytz dependencies are no longer needed (#261).
What's Changed
- Serializing Ringbuffer by @mathias-baumann-frequenz in #167
- Rename microgrid.Microgrid to microgrid.ConnectionManager and its Insecure-companion by @christianparpart in #208
- Add EV power and current streams to
EVChargerPoolby @shsms in #201 - Change battery status when component stopped sending data by @ela-kotulska-frequenz in #207
- Remove deprecated code by @ela-kotulska-frequenz in #232
- Fix mypy invocation in noxfile by @leandro-lucarella-frequenz in #219
- Add wrappers for the component data in unit tests by @ela-kotulska-frequenz in #231
- Fix flaky LogicalMeter test_soc by @ela-kotulska-frequenz in #235
- Update MockMicrogrid for use with datasourcing benchmark by @mathias-baumann-frequenz in #224
- Change few resampler logs from info to debug by @ela-kotulska-frequenz in #238
- Add a run() method to run/wait for actors completion by @daniel-zullo-frequenz in #200
- Add & use close channel method in the registry by @mathias-baumann-frequenz in #225
- Add BatteryPool implementation for aggregating battery-inverter data by @ela-kotulska-frequenz in #205
- Remove
_socformula from the LogicalMeter by @ela-kotulska-frequenz in #248 - Increase sampling rate in the flaky formula test by @ela-kotulska-frequenz in #251
- Make resampling window size constant by @leandro-lucarella-frequenz in #236
- Change PowerDistributor to ignore components with NaN metrics by @ela-kotulska-frequenz in #247
- Update release notes by @ela-kotulska-frequenz in #252
- Pin dev/test dependencies by @daniel-zullo-frequenz in #256
- Fix resampler behaviour when resampling is to late by @ela-kotulska-frequenz in #255
- Change BatteryPool to send metrics only when they change by @ela-kotulska-frequenz in #254
- Remove pandas(-stubs) dependencies by @daniel-zullo-frequenz in #261
New Contributors
- @christianparpart made their first contribution in #208
Full Changelog: v0.18.0...v0.19.0