Skip to content

Releases: frequenz-floss/frequenz-api-microgrid

v0.15.4

13 Sep 12:51
v0.15.4
ac7c7a1
Compare
Choose a tag to compare

Frequenz Microgrid API Release Notes

Bug Fixes

  • Fix a dependency issue by pinning the grpcio version and related libraries.

What's Changed

Full Changelog: v0.15.3...v0.15.4

v0.17.1

10 Sep 13:13
v0.17.1
f5c4161
Compare
Choose a tag to compare

Frequenz Microgrid API Release Notes

Bug Fixes

  • Fix a dependency issue by pinning the grpcio version and related libraries.

What's Changed

Full Changelog: v0.17.0...v0.17.1

v0.17.0

10 May 15:09
v0.17.0
b12e4d9
Compare
Choose a tag to compare

Frequenz Microgrid API Release Notes

Summary

In this release, the Microgrid API has been updated to use the latest version of frequenz-api-common, in addition to a few improvements and a bug fix.

Upgrading

  • This release upgrades frequenz-api-common to version v0.6.1. Please refer to the release notes for v0.6.0 and v0.6.1 of frequenz-api-common for more information.

  • A new RPC named AddComponentBounds has been introduced, which accepts only inclusive bounds. The old RPCs AddComponentInclusionBounds and AddComponentExclusionBounds have been removed.

  • The enum ComponentBoundsTargetMetric has been removed in favour of the Metric enum from frequenz-api-common.

  • The polarity of reactive power has been changed to follow the IEEE 1459-2010 standard definitions. In this standard, positive reactive power is inductive (current is lagging the voltage), and negative reactive power is capacitive (current is leading the voltage).

New Features

  • The AddComponentBoundsRequest message has a field validity_duration which allows the user to specify the duration for which the bounds are valid. The bounds will be automatically removed after the specified duration. The client can select between 5 seconds, 1 minute, 5 minutes, and 15 minutes. If set to UNSPECIFIED, the bounds will be valid for a default duration of 5 seconds.

  • The request messages SetComponentPowerActiveRequest and SetComponentPowerReactiveRequest have a new field named request_lifetime which allows the user to specify the duration for which the power setpoints are valid. If this field is not specified in a request, the power setpoint will be valid for 60 seconds.

Bug Fixes

  • The CI was unable to catch unused imports in the proto file before. This has been fixed by adding a new step to the CI to build using protoc with the --fatal-warnings flag.

What's Changed

Full Changelog: v0.16.1...v0.17.0

v0.16.1

25 Mar 17:15
v0.16.1
32ec80e
Compare
Choose a tag to compare

Frequenz Microgrid API Release Notes

Summary

This release cleans up of unused imports and fixes field names in HTTP annotations.

Bug Fixes

  • Removed unused imports

  • Fixed field names in HTTP annotations

What's Changed

Read more

v0.15.3

01 Feb 10:04
v0.15.3
2332734
Compare
Choose a tag to compare

Frequenz Microgrid API Release Notes

Summary

This release bumps the frequenz-api-common dependency to v0.5.3, allowing downstream projects to use a newer frequenz-api-common version too.

Please note that the googleapis-common-protos dependency is also bumped to v1.56.4, which is the version that api-common v0.5.4 depends on.

Strictly speaking, this is a breaking change, as you might need to bump your googleapis-common-protos dependency to v1.56.4 too if it is specified explicitly, but this is highly unlikely to happen and very easy to fix.

What's Changed

  • Bump the api-common dependency to v0.5.4 by @llucax in #205

Full Changelog: v0.15.2...v0.15.3

v0.16.0

22 Nov 15:44
v0.16.0
30d75b3
Compare
Choose a tag to compare

Frequenz Microgrid API Release Notes

Summary

This version of the API introduces a number of breaking changes, and is not
backwards compatible with the previous version. The changes primarily include:

  • RPC renames
  • Upgrade to frequenz.api.common v0.5.0

Upgrading

  • The CanStreamData RPC has been removed. Users are recommended to check it
    by calling the StreamComponentData RPC.

  • The message microgrid.Location has been removed, and
    frequenz.api.common.location.Location is being used instead. The Location
    message from the common API also has a country_code member.

  • The following gRPC methods have been renamed:
    StreamComponentData -> ReceiveComponentDataStream
    AddExclusionBounds -> AddComponentExclusionBounds
    AddInclusionBounds -> AddComponentInclusionBounds
    SetPowerActive -> SetComponentPowerActive
    SetPowerReactive -> SetComponentPowerReactive
    Start -> StartComponent
    HotStandby -> HotStandbyComponent
    ColdStandby -> PutComponentInStandby
    Stop -> StopComponent
    ErrorAck -> AckComponentError

  • The following gRPC method have been removed: HotStandby

  • Introduced a dedicated RPC method for listing sensors in the microgrid,
    separating them from the "component" category.

  • The RPC parameters have been renamed to be more consistent with the RPC names,
    and with each other.

  • The package names have been changed from frequenz.api.microgrid.<package> to
    frequenz.api.microgrid.v1.<package>. v1 is the API's major version, and
    will be incremented for breaking changes.

  • The common protobuf dependency has been upgraded to v0.5.0. The protobuf
    messages returned by the RPCs are now in the frequenz.api.common.v1 package.
    As a result, all files besides microgrid.proto became obsolete, and
    therefore, have been removed.

  • The request messages for receiving data streams have now been extended to
    consist of a list of metrics to be streamed. This allows the user to request
    only the metrics they are interested in, instead of receiving all of them.
    If this list is empty, then no data will be streamed, and the service will
    return an error.

  • The RPC SetComponentPowerActivenow returns a timestamp until which the
    command will stay in effect. The component's active power will be set to 0
    after this timestamp, if the API receives no further requests to change it
    before then. By default, this timestamp will be the current time plus 60
    seconds.

  • The RPC SetComponentPowerReactivenow returns a timestamp until which the
    command will stay in effect. The component's reactive power will be set to 0
    after this timestamp, if the API receives no further requests to change it
    before then. By default, this timestamp will be the current time plus 60
    seconds.

What's Changed

Read more

v0.15.2

09 Aug 07:38
v0.15.2
901ee57
Compare
Choose a tag to compare

Frequenz Microgrid API Release Notes

Summary

This release doesn't introduce any visible changes, it's done mainly to be able to build the new documentation website.

What's Changed

New Contributors

Full Changelog: v0.15.1...v0.15.2

v0.15.1

07 Jun 11:21
v0.15.1
5bd9d38
Compare
Choose a tag to compare

Frequenz Migrogrid API Release Notes

Summary

Bug fixes.

Upgrading

None

New Features

None

Bug Fixes

What's Changed

Full Changelog: v0.15.0...v0.15.1

v0.15.0

06 Jun 12:06
v0.15.0
c20fa34
Compare
Choose a tag to compare

Frequenz Migrogrid API Release Notes

Summary

This release upgrades the submodule frequenz-api-common to v0.3.0, and
renames the message EVCharger to EvCharger.

Upgrading

  • Upgraded frequenz-api-common to v0.3.0

    The submodule frequenz-api-common has been upgraded to v0.3.0.
    This version renames the enum representing EV charger types to EvChargerType
    and defined the MetricAggregation message, which was previously defined in
    frequenz-api-microgrid.

    Since the message MetricAggregation is now being imported from the common
    specs, it has been removed from the file common.proto.

  • Renamed message EVCharger to EvCharger

    This is done to use same naming convention as frequenz-api-common.
    Note that a similar renaming was done in frequenz-api-common v0.3.0 to
    improve the code quality of the derived rust code using prost.

New Features

None

Bug Fixes

None

What's Changed

New Contributors

Full Changelog: v0.14.0...v0.15.0

v0.14.0

26 May 15:15
v0.14.0
2b316db
Compare
Choose a tag to compare

Frequenz Migrogrid API Release Notes

Summary

In this release, the protobuf definitions here are being updated to use shared
definitions from frequenz-api-common.
The frequenz-api-common repository contains shared protobuf definitions that
are common to all frequenz APIs.

The frequenz-api-microgrid python library has also been updated to
use the frequenz-api-common
library as a dependency.

This release upgrades the minimum required python version for the library
frequenz-api-microgrid to 3.11.

This release also extends the API by adding new component states, and a new RPC
to set reactive power level of applicable components.

Upgrading

  • Using frequenz-api-common for common proto definitions

    The following proto definitions have been removed, and are being used from the
    frequenz-api-common repository instead:

    • ComponentCategory -> frequenz.api.common.components.ComponentCategory
    • battery.Type -> frequenz.api.common.components.BatteryType
    • common.Bounds -> frequenz.api.common.metrics.Bounds
    • common.Metric -> frequenz.api.common.metrics.Metric
    • common.Ac -> frequenz.api.common.metrics.electrical.Ac
    • common.Dc -> frequenz.api.common.metrics.electrical.Dc
    • ev_charger.Type -> frequenz.api.common.components.EVChargerType
    • inverter.Type -> frequenz.api.common.components.InverterType
    • sensor.Type -> frequenz.api.common.components.SensorType

    The pypi package frequenz-api-common is being added as a dependency to the
    python package definition, instead of generating the proto definitions using
    protoc. This is required, otherwise each proto library depending on
    frequenz-api-common will generate its own python modules for
    frequenz-api-common, resulting in multiple definition of the common data
    structures.

  • Upgraded minimum required python version for the python library to 3.11

    The change to use the frequenz-api-common definitions forces the minimum
    required python version of the frequenz-api-microgrid package to be 3.11,
    as a transitive dependency inherited from the frequenz-api-common package.

New Features

Bug Fixes

None

What's Changed

Full Changelog: v0.13.0...v0.14.0