Skip to content

Releases: frequenz-floss/frequenz-sdk-python

v1.0.0-rc2206

06 May 15:53
Immutable release. Only release title and notes can be modified.
v1.0.0-rc2206
27ee98e

Choose a tag to compare

Frequenz Python SDK Release Notes

Upgrading

  • The minimum required version of frequenz-microgrid-component-graph is now 0.4.

Improvements

  • Formula fallbacks are now more stable during initialization (when component data might be more flaky).
  • Fixed some documentation issues.

What's Changed

New Contributors

Full Changelog: v1.0.0-rc2205...v1.0.0-rc2206

v1.0.0-rc2205

01 Apr 08:40
Immutable release. Only release title and notes can be modified.
v1.0.0-rc2205
eb7afc4

Choose a tag to compare

v1.0.0-rc2205 Pre-release
Pre-release

Frequenz Python SDK Release Notes

New Features

  • Resampler: The resampler can now be configured to have the resampling window closed to the right (default) or left, and to also set the resampler timestamp to the right (default) or left end of the window being resampled. You can configure setting the new options closed and label in the ResamplerConfig.

Bug Fixes

  • Improved formula validation: Consistent error messages for invalid formulas and conventional span semantics.

  • This fixes a rare power distributor bug where some battery inverters becoming unreachable because of network outages would lead to excess power values getting set. This is fixed by measuring the power of the unreachable inverters through their fallback meters and excluding that power from what is distributed to the other inverters.

  • Fixed stopping formulas: It will now also stop the evaluator and sub-formulas correctly.

What's Changed

New Contributors

Full Changelog: v1.0.0-rc2204...v1.0.0-rc2205

v1.0.0-rc2204

18 Feb 15:29
Immutable release. Only release title and notes can be modified.
v1.0.0-rc2204
487773e

Choose a tag to compare

v1.0.0-rc2204 Pre-release
Pre-release

Frequenz Python SDK Release Notes

Upgrading

  • The minimum required version of frequenz-microgrid-component-graph is now 0.3.4. This reverts the formula generation to what it was like before the migration to the external component graph library. So
    • in component formulas, meters get used as primary sources and inverters, ev chargers, etc. as fallback sources.
    • consumer formula are generated by excluding producer and battery powers from the grid power, or when there is no grid meter, by adding all the non battery and producer meters.

New Features

  • The SDK's data pipeline now supports retrieving telemetry from CHPs.

Bug Fixes

  • Fixed an off-by-one calculation in OrderedRingBuffer.count_covered by switching to integer timedelta division, ensuring accurate sample counting for all window sizes and sampling periods.
  • Component IDs are validated during creation of battery, pv and ev charger pools, so that errors are caught early and we don't end up getting cryptic failures from somewhere else.

What's Changed

  • Fix off-by-one in OrderedRingBuffer.count_covered and add consistency test by @malteschaaf in #1343
  • Disable tests that need adapting to the new component graph by @llucax in #1346
  • Upgrade to repo-config v0.14.0 by @llucax in #1349
  • Validate component IDs when creating component pools by @shsms in #1340
  • Bump the minor group across 1 directory with 3 updates by @dependabot[bot] in #1351
  • Add auto-dependabot GitHub Action workflow by @llucax in #1352
  • Bump the patch group across 1 directory with 5 updates by @dependabot[bot] in #1350
  • Bump actions/download-artifact from 6 to 7 by @dependabot[bot] in #1334
  • Bump types-protobuf from 6.32.1.20251105 to 6.32.1.20251210 by @dependabot[bot] in #1339
  • Bump async-solipsism from 0.8 to 0.9 by @dependabot[bot] in #1338
  • Cleanup power formula tests by @shsms in #1353
  • Support fetching CHP data from the DataSourcingActor by @shsms in #1355
  • Prepare for release of v1.0.0-rc2204 by @shsms in #1357

New Contributors

Full Changelog: v1.0.0-rc2203...v1.0.0-rc2204

v1.0.0-rc2203

16 Dec 15:19
Immutable release. Only release title and notes can be modified.
v1.0.0-rc2203
bcc902e

Choose a tag to compare

v1.0.0-rc2203 Pre-release
Pre-release

Frequenz Python SDK Release Notes

Bug fixes

  • FormulaEngine and FormulaEngine3Phase are now type aliases to Formula and Formula3Phase, fixing a typing issue introduced in v1.0.0-rc2202.

What's Changed

  • Replace FormulaEngine subclasses with type aliases by @shsms in #1331

Full Changelog: v1.0.0-rc2202...v1.0.0-rc2203

v1.0.0-rc2202

16 Dec 14:29
Immutable release. Only release title and notes can be modified.
v1.0.0-rc2202
f539389

Choose a tag to compare

v1.0.0-rc2202 Pre-release
Pre-release

Frequenz Python SDK Release Notes

Upgrading

  • The FormulaEngine is now replaced by a newly implemented Formula type. This doesn't affect the high level interfaces. FormulaEngine is now a deprecated wrapper to Formula.

  • The ComponentGraph has been replaced by the frequenz-microgrid-component-graph package, which provides python bindings for the rust implementation.

New Features

  • The power manager algorithm for batteries can now be changed from the default ShiftingMatryoshka, by passing it as an argument to microgrid.initialize()

What's Changed

  • Clear release notes by @llucax in #1320
  • Make battery power manager algorithm configurable by @shsms in #1323
  • Switch to the rust component graph by @shsms in #1295
  • Implement lazy subscription for Coalesce function by @shsms in #1322
  • Revert unreleased interface changes by @shsms in #1330

Full Changelog: v1.0.0-rc2201...v1.0.0-rc2202

v1.0.0-rc2201

08 Dec 09:36
Immutable release. Only release title and notes can be modified.
v1.0.0-rc2201
1fd91a2

Choose a tag to compare

v1.0.0-rc2201 Pre-release
Pre-release

Frequenz Python SDK Release Notes

Note

This version is just a re-publishing of version v1.0.0-rc2200, because we had some issue with publishing that versin to PyPI.

Summary

This is a major upgrade, as the underlying version of the microgrid API was changed to use v0.18.x instead.

Upgrading

  • The SDK now depends on the frequenz-client-microgrid v0.18.x series.

    • Check the release notes for the client v0.18.
    • There were a lot of changes, so it might be also worth having a quick look at the microgrid API v0.17 and v0.18 releases.
    • Checking out the API common releases v0.6, v0.7, v0.8 might also be worthwhile, at least if you find any errors about renamed or missing types.
    • Although many of the changes in lower layer are hidden by the SDK, there are some changes that can't be hidden away. For example the Metric enum had some renames, and Component.component_id was renamed to Component.id. Also, there is a new component class hierarchy.
  • ComponentGraph methods arguments were renamed to better reflect what they expect.

    • The components() method now uses matching_ids and matching_types instead of component_ids and component_categories respectively. matching_types takes types inheriting from Component instead of categories, for example Battery or BatteryInverter.
    • The connections() methods now take matching_sources and matching_destinations instead of start and end respectively. This is to match the new names in ComponentConnection.
    • All arguments for both methods can now receiver arbitrary iterables instead of sets, and can also accept a single value.

New Features

Bug Fixes

What's Changed

Full Changelog: v1.0.0-rc2104...v1.0.0-rc2201

v1.0.0-rc2200

05 Dec 12:22
Immutable release. Only release title and notes can be modified.
v1.0.0-rc2200
1fd91a2

Choose a tag to compare

v1.0.0-rc2200 Pre-release
Pre-release

Frequenz Python SDK Release Notes

Important

This release as not PyPI release because there was a failed attempt to release the version 1.0.0-rc2200 in the past that we ended up deleting.

Fortunately PyPI is getting more strict about this, and doesn't allow re-publishing a deleted release using different artifacts, so we can't re-use the failed rc2200 for this release.

The release v1.0.0-rc2201 ships the exact same code as this release (it points to the same commit), and should be used instead.

Summary

This is a major upgrade, as the underlying version of the microgrid API was changed to use v0.18.x instead.

Upgrading

  • The SDK now depends on the frequenz-client-microgrid v0.18.x series.

    • Check the release notes for the client v0.18.
    • There were a lot of changes, so it might be also worth having a quick look at the microgrid API v0.17 and v0.18 releases.
    • Checking out the API common releases v0.6, v0.7, v0.8 might also be worthwhile, at least if you find any errors about renamed or missing types.
    • Although many of the changes in lower layer are hidden by the SDK, there are some changes that can't be hidden away. For example the Metric enum had some renames, and Component.component_id was renamed to Component.id. Also, there is a new component class hierarchy.
  • ComponentGraph methods arguments were renamed to better reflect what they expect.

    • The components() method now uses matching_ids and matching_types instead of component_ids and component_categories respectively. matching_types takes types inheriting from Component instead of categories, for example Battery or BatteryInverter.
    • The connections() methods now take matching_sources and matching_destinations instead of start and end respectively. This is to match the new names in ComponentConnection.
    • All arguments for both methods can now receiver arbitrary iterables instead of sets, and can also accept a single value.

What's Changed

Full Changelog: v1.0.0-rc2104...v1.0.0-rc2200

v1.0.0-rc2104

03 Dec 16:05
Immutable release. Only release title and notes can be modified.
v1.0.0-rc2104
01c97c8

Choose a tag to compare

Frequenz Python SDK Release Notes

Summary

This release improves the documentation for the implementation details of the power manager algorithms.

What's Changed

  • Improve docs for power manager algorithms by @shsms in #1313

Full Changelog: v1.0.0-rc2103...v1.0.0-rc2104

v1.0.0-rc2103

25 Nov 15:14
Immutable release. Only release title and notes can be modified.
v1.0.0-rc2103
afd91e2

Choose a tag to compare

v1.0.0-rc2103 Pre-release
Pre-release

Frequenz Python SDK Release Notes

Bug Fixes

  • Doesn't repeat zero commands to battery inverters anymore, to not interfere with lower level logic that might want to do things only when there are no actors trying to use the batteries.

What's Changed

Full Changelog: v1.0.0-rc2102...v1.0.0-rc2103

v1.0.0-rc2102

24 Nov 10:15
Immutable release. Only release title and notes can be modified.
v1.0.0-rc2102
6bb4615

Choose a tag to compare

v1.0.0-rc2102 Pre-release
Pre-release

Frequenz Python SDK Release Notes

Bug Fixes

  • The log level for when components are transitioning to a WORKING state is lowered to INFO, and the log message has been improved.

  • This fixes a bug in the power manager, that was causing proposals to be ignored when they were proposing bounds that were fully outside the available bounds, under some cases.

What's Changed

Full Changelog: v1.0.0-rc2101...v1.0.0-rc2102