Releases: frequenz-floss/frequenz-api-dispatch
v1.0.0
Frequenz Dispatch API Release Notes
Summary
This is the v1.0.0 release. It is equivalent to v1.0.0-rc3 and introduces a period of API stabilization.
What's Changed
- Extend documentation of
durationby @Marenz in #200 - Bump the required group across 1 directory with 13 updates by @dependabot[bot] in #201
- Bump the required group with 2 updates by @dependabot[bot] in #203
- Rename selector to target by @Marenz in #204
- Changed time interval to be inclusive on both sides by @Marenz in #207
- Reset release notes by @Marenz in #209
- Improve documentation by @Marenz in #208
- Add
start_immediatelyto create RPC by @Marenz in #206 - Bump the required group with 7 updates by @dependabot[bot] in #211
- Prepare release notes by @Marenz in #212
- Bump setuptools-scm[toml] from 7.1.0 to 8.1.0 by @dependabot[bot] in #215
- Bump the required group with 9 updates by @dependabot[bot] in #213
- Add proper permissions to the protolint job in the CI workflow by @llucax in #220
- Bump the required group across 1 directory with 2 updates by @dependabot[bot] in #219
- Bump the required group with 6 updates by @dependabot[bot] in #222
- Bump types-markdown from 3.7.0.20240822 to 3.7.0.20241204 by @dependabot[bot] in #223
- Allow targeting specific battery, inverter and EV charger types by @llucax in #217
- Make category/type update backwards compatible. by @Marenz in #224
- Bump black from 24.10.0 to 25.1.0 by @dependabot[bot] in #226
- Bump the required group with 7 updates by @dependabot[bot] in #225
- Bump isort from 5.13.2 to 6.0.0 by @dependabot[bot] in #227
- Bump nox from 2024.10.9 to 2025.2.9 by @dependabot[bot] in #229
- Update to repo-config v0.13.2 by @llucax in #233
- Bump the patch group with 7 updates by @dependabot[bot] in #234
- Bump setuptools from 75.8.0 to 78.1.0 by @dependabot[bot] in #237
- Bump types-markdown from 3.7.0.20241204 to 3.7.0.20250322 by @dependabot[bot] in #238
- Bump pydoclint from 0.6.0 to 0.6.5 by @dependabot[bot] in #239
- Bump the minor group with 3 updates by @dependabot[bot] in #235
- Rename Timestamp fields to follow Protobuf guidelines by @Marenz in #241
- Bump pydoclint from 0.6.5 to 0.6.6 by @dependabot[bot] in #247
- Bump the patch group with 4 updates by @dependabot[bot] in #244
- Bump grpc-stubs from 1.53.0.5 to 1.53.0.6 by @dependabot[bot] in #246
- Bump the minor group with 4 updates by @dependabot[bot] in #245
- Bump the patch group with 6 updates by @dependabot[bot] in #249
- Bump mypy from 1.15.0 to 1.16.0 in the minor group by @dependabot[bot] in #250
- Bump setuptools from 78.1.0 to 80.9.0 by @dependabot[bot] in #251
- dependabot: Group grpc/protobuf updates together by @llucax in #257
- Bump the patch group with 6 updates by @dependabot[bot] in #254
- Bump the minor group across 1 directory with 2 updates by @dependabot[bot] in #258
- Bump the compatible group with 2 updates by @dependabot[bot] in #267
- Bump mkdocs-material from 9.6.15 to 9.6.16 in the patch group by @dependabot[bot] in #261
- Bump mkdocstrings[python] from 0.29.1 to 0.30.0 in the mkdocstrings group by @dependabot[bot] in #263
- Update to common-proto api v0.8.0 by @Marenz in #259
- Use types from common repo alpha8 by @Marenz in #260
- Add id and q filter options by @Marenz in #268
- Bump types-markdown from 3.8.0.20250415 to 3.8.0.20250708 by @dependabot[bot] in #265
- Bump mypy from 1.16.1 to 1.17.1 in the minor group by @dependabot[bot] in #262
- docs: Clarify indefinite and recurring dispatches by @Marenz in #273
- Mark deprecated fields with
deprecatedoption in protobuf by @Copilot in #269 - Use Event message from common api by @Marenz in #270
- Update dispatch.proto to clarify payload usage by @Marenz in #274
- Bump types-markdown from 3.8.0.20250708 to 3.8.0.20250809 by @dependabot[bot] in #280
- Bump pydoclint from 0.6.6 to 0.7.0 by @dependabot[bot] in #282
- Bump the patch group with 3 updates by @dependabot[bot] in #279
- Bump setuptools-scm[toml] from 8.3.1 to 9.2.0 by @dependabot[bot] in #278
- Bump mkdocstrings-python from 1.16.12 to 1.18.2 in the mkdocstrings group by @dependabot[bot] in #277
- Bump actions/download-artifact from 4 to 5 in the artifacts group by @dependabot[bot] in #275
- Bump actions/checkout from 3 to 5 by @dependabot[bot] in #276
- Bump the minor group with 6 updates by @dependabot[bot] in #285
- Bump actions/labeler from 5.0.0 to 6.0.1 by @dependabot[bot] in #283
- Bump the patch group across 1 directory with 4 updates by @dependabot[bot] in #286
New Contributors
- @Copilot made their first contribution in #269
Full Changelog: v0.15.1...v1.0.0
v1.0.0-rc3
Frequenz Dispatch API Release Notes
Summary
- Use
frequenz.api.common.v1alpha8.streaming.Eventmessage instead of the localEventmessage. - Updated all
frequenz.api.commonimports fromv1tov1alpha8. - Removed the
TimeIntervalFiltermessage, replacing its usage with the newfrequenz.api.common.v1alpha8.types.Intervaltype. - In the
DispatchFiltermessage, thestart_time_interval,end_time_interval, andupdate_time_intervalfields were updated to use the newIntervaltype. - In the
TargetComponentsmessage:- The
CategorySetmessage'scategoriesfield was updated to use the newElectricalComponentCategoryenum. - The
CategoryAndTypemessage'scategoryfield was also updated to use the newElectricalComponentCategoryenum, and the nestedbattery,inverter, andev_chargerfields were updated to use their corresponding new types.
- The
- The
ListMicrogridDispatchesRequestmessage'spagination_paramsfield was updated to use the newPaginationParamstype. - The
ListMicrogridDispatchesResponsemessage'spagination_infofield was updated to use the newPaginationInfotype.
Upgrading
- The
CategorySetmessage andcomponent_categoriesfield inTargetComponentsare now properly marked as deprecated in the protobuf schema using thedeprecatedoption. Code generators will now emit deprecation warnings when these deprecated elements are used. UseCategoryTypeSetandcomponent_categories_typesinstead.
New Features
- In the
DispatchFiltermessage, new fieldsdispatch_ids, andquerieswere added to allow filtering dispatches by ID and a free-text search query across theidandtypefields.
Bug Fixes
What's Changed
- Bump the patch group with 6 updates by @dependabot[bot] in #249
- Bump mypy from 1.15.0 to 1.16.0 in the minor group by @dependabot[bot] in #250
- Bump setuptools from 78.1.0 to 80.9.0 by @dependabot[bot] in #251
- dependabot: Group grpc/protobuf updates together by @llucax in #257
- Bump the patch group with 6 updates by @dependabot[bot] in #254
- Bump the minor group across 1 directory with 2 updates by @dependabot[bot] in #258
- Bump the compatible group with 2 updates by @dependabot[bot] in #267
- Bump mkdocs-material from 9.6.15 to 9.6.16 in the patch group by @dependabot[bot] in #261
- Bump mkdocstrings[python] from 0.29.1 to 0.30.0 in the mkdocstrings group by @dependabot[bot] in #263
- Update to common-proto api v0.8.0 by @Marenz in #259
- Use types from common repo alpha8 by @Marenz in #260
- Add id and q filter options by @Marenz in #268
- Bump types-markdown from 3.8.0.20250415 to 3.8.0.20250708 by @dependabot[bot] in #265
- Bump mypy from 1.16.1 to 1.17.1 in the minor group by @dependabot[bot] in #262
- docs: Clarify indefinite and recurring dispatches by @Marenz in #273
- Mark deprecated fields with
deprecatedoption in protobuf by @Copilot in #269 - Use Event message from common api by @Marenz in #270
- Update dispatch.proto to clarify payload usage by @Marenz in #274
New Contributors
- @Copilot made their first contribution in #269
Full Changelog: v1.0.0-rc2...v1.0.0-rc3
v1.0.0-rc2
Frequenz Dispatch API Release Notes
Summary
This update introduces the possibility to target specific types of batteries, inverters and EV chargers.
Deprecations
- In the
TargetComponentsmessage, the fieldcomponents.component_categoriesis now deprecated. See the upgrading section for details.
Changes
- Renamed several
google.protobuf.Timestampfields in Protobuf messages to align with Google API Design Guide naming conventions (*_timesuffix):DispatchMetadata.modification_timeis nowupdate_time.TimeIntervalFilter.fromis nowfrom_time.TimeIntervalFilter.tois nowto_time.RecurrenceRule.EndCriteria.untilis nowuntil_time.- Note: This is a breaking change for clients using the old field names.
Upgrading
- The
TargetComponentsmessage now accepts an optionaltypetoo..components.component_categoriesis now deprecated. Instead.components.component_categories_types, a newCategoryAndTypemessage that has a requiredcategory(ComponentCategory) and an optionaltype(oneof BatteryType, EVChargerType, InverterType) should be used.
New Features
- Now specific types of batteries, inverters and EV chargers can be targeted.
Bug Fixes
What's Changed
- Prepare release notes by @Marenz in #212
- Bump setuptools-scm[toml] from 7.1.0 to 8.1.0 by @dependabot in #215
- Bump the required group with 9 updates by @dependabot in #213
- Add proper permissions to the protolint job in the CI workflow by @llucax in #220
- Bump the required group across 1 directory with 2 updates by @dependabot in #219
- Bump the required group with 6 updates by @dependabot in #222
- Bump types-markdown from 3.7.0.20240822 to 3.7.0.20241204 by @dependabot in #223
- Allow targeting specific battery, inverter and EV charger types by @llucax in #217
- Make category/type update backwards compatible. by @Marenz in #224
- Bump black from 24.10.0 to 25.1.0 by @dependabot in #226
- Bump the required group with 7 updates by @dependabot in #225
- Bump isort from 5.13.2 to 6.0.0 by @dependabot in #227
- Bump nox from 2024.10.9 to 2025.2.9 by @dependabot in #229
- Update to repo-config v0.13.2 by @llucax in #233
- Bump the patch group with 7 updates by @dependabot in #234
- Bump setuptools from 75.8.0 to 78.1.0 by @dependabot in #237
- Bump types-markdown from 3.7.0.20241204 to 3.7.0.20250322 by @dependabot in #238
- Bump pydoclint from 0.6.0 to 0.6.5 by @dependabot in #239
- Bump the minor group with 3 updates by @dependabot in #235
- Rename Timestamp fields to follow Protobuf guidelines by @Marenz in #241
- Bump pydoclint from 0.6.5 to 0.6.6 by @dependabot in #247
- Bump the patch group with 4 updates by @dependabot in #244
- Bump grpc-stubs from 1.53.0.5 to 1.53.0.6 by @dependabot in #246
- Bump the minor group with 4 updates by @dependabot in #245
Full Changelog: v1.0.0-rc1...v1.0.0-rc2
v1.0.0-rc1
Frequenz Dispatch API Release Notes
New Features
- Added
start_immediatelyto the create RPC.
What's Changed
- Extend documentation of
durationby @Marenz in #200 - Bump the required group across 1 directory with 13 updates by @dependabot in #201
- Bump the required group with 2 updates by @dependabot in #203
- Rename selector to target by @Marenz in #204
- Changed time interval to be inclusive on both sides by @Marenz in #207
- Reset release notes by @Marenz in #209
- Improve documentation by @Marenz in #208
- Add
start_immediatelyto create RPC by @Marenz in #206 - Bump the required group with 7 updates by @dependabot in #211
Full Changelog: v0.15.1...v1.0.0-rc1
v0.15.1
Frequenz Dispatch API Release Notes
Summary
This update focuses on pagination.
Upgrading
- Updated to the latest common-api which provides slighlty modified pagination messages.
New Features
- Added more detailed documentation on how to use pagination.
Bug Fixes
- Fixed pagination fields in the response (
pagination_params->pagination_info)
What's Changed
- Fix pagination response and add docu by @Marenz in #196
- Bump the required group with 8 updates by @dependabot in #197
- Update release notes for v0.16 by @Marenz in #198
Full Changelog: v0.15.0...v0.15.1
v0.15.0
Frequenz Dispatch API Release Notes
Summary
This is just a minor update that changes the Dispatch message structure a bit.
Upgrading
DispatchDetailis nowDispatchDispatchbecameDispatchData- Member part of
Dispatchis now the new messageDispatchMedatata
What's Changed
- Reset release notes by @Marenz in #192
- Split & Rename the Dispatch object by @Marenz in #194
- Update release notes for release by @Marenz in #195
Full Changelog: v0.14.0...v0.15.0
v0.14.0
Frequenz Dispatch API Release Notes
Summary
In this release, we have made some changes to the API to improve the user experience and to fix some bugs.
This might be the last breaking release, at least I tried hard to make it so.
Fingers crossed.
Note: The API supporting a feature does not mean that the service or client supports it as well, just yet.
Upgrading
- The dispatch message was split into into metadata and data.
microgrid_idis required for all requests.idwas renamed todispatch_idin all requests.- Naming conventions were updated to match API projects.
- The possibility to update the
dry_runandtypefields was removed. - The ComponentSelector now can contain multiple component categories.
- Improve description of the
EndCriteria.untilfield.
New Features
- Create and Update request now returns the new dispatch object.
- Documentation about authentication and encryption was added.
- Enhanced
payloaddocumentation. - Add RPC streaming methods.
- Add YEARLY frequency to the recurrence definition.
- Add parameters for pagination and sorting.
- Documentation of valid values for
countandintervalfields was added. - Extended
DispatchFilterto support filtering byrecurrenceandend_time. - Add new field
end_timeto theDispatchDetail.
Bug Fixes
- The field
bymonthdaysthe recurrence definition also supports negative values and was updated accordingly.
What's Changed
- Bump yoheimuta/action-protolint from 1.0.0 to 1.3.0 by @dependabot in #149
- Reset release notes by @Marenz in #160
- Bump the required group with 6 updates by @dependabot in #168
- Bump the required group with 7 updates by @dependabot in #169
- Clarify component IDs of different categories are not supported by @llucax in #171
- Update bymonthdays to support negative values by @Marenz in #170
- API Update PR! by @Marenz in #172
- Add documentation for payload field by @Marenz in #173
- Add Yearly to frequency by @Marenz in #174
- Update bymonthdays in update request by @Marenz in #175
- Bump the required group with 7 updates by @dependabot in #178
- Bump brettcannon/check-for-changed-files from 1.2.0 to 1.2.1 by @dependabot in #176
- Bump docker/build-push-action from 5 to 6 by @dependabot in #177
- Add pagination and sort parameters by @Marenz in #181
- Document valid values for
countandintervalby @Marenz in #179 - Add RPC streaming methods by @Marenz in #180
- Update dispatch filter for recurrence and end time [No Enum Alternative] by @Marenz in #184
- Add end_time field by @ela-kotulska-frequenz in #186
- Allow specifying multiple component categories by @Marenz in #187
- Use oneof in recurrence filter by @Marenz in #188
- Rename & Restructure ComponentSelector by @Marenz in #189
- Change description of the EndCriteria.until field. by @ela-kotulska-frequenz in #190
- Prepare release notes for release by @Marenz in #191
New Contributors
- @ela-kotulska-frequenz made their first contribution in #186
Full Changelog: v0.13.0...v0.14.0
v0.13.0
Frequenz Dispatch API Release Notes
Upgrading
- Queries that compare against a time interval filter should check for the end time inside the recurrence rule.
end_timehas been renameduntiland is mutually exclusive withcount.- Update request handlers should check the field mask for which attributes to update.
- The common api dependency has been udpated so that the
v1paths forComponentCategoryis used.
What's Changed
- Bump mkdocs-section-index from 0.3.5 to 0.3.8 by @dependabot in #83
- Bump mkdocs-material from 9.3.2 to 9.4.3 by @dependabot in #93
- Bump repo-config to v0.6.2 by @TalweSingh in #95
- Bump mike from 1.1.2 to 2.0.0 by @dependabot in #109
- Add support for mike 2.0.0 by @tiyash-basu-frequenz in #113
- Update CODEOWNERS by @llucax in #118
- Bump actions/setup-python from 4 to 5 by @dependabot in #120
- Bump actions/download-artifact from 3 to 4 by @dependabot in #123
- Bump actions/upload-artifact from 3 to 4 by @dependabot in #124
- Improve and fix documentation by @llucax in #68
- Update frequenz-api-common to 0.5 by @Marenz in #132
- Bump grpc-stubs from 1.53.0.2 to 1.53.0.5 by @dependabot in #135
- Bump actions/labeler from 4.3.0 to 5.0.0 by @dependabot in #121
- Update repo-config 0.8.0 by @Marenz in #137
- Bump actions/cache from 3 to 4 by @dependabot in #140
- Bump actions/setup-python from 4 to 5 by @dependabot in #142
- Bump actions/{download,upload}-artifact from 3 to 4 by @dependabot in #141
- Bump the optional group with 9 updates by @dependabot in #143
- Update code and api-common submodule to use v1 paths by @Marenz in #138
- Bump black from 23.9.1 to 24.2.0 by @dependabot in #147
- Bump flake8 from 6.1.0 to 7.0.0 by @dependabot in #146
- Bump the optional group with 6 updates by @dependabot in #145
- Add link to high-level overview by @Marenz in #150
- Bump pytest from 7.4.2 to 8.0.2 by @dependabot in #148
- Bump nox from 2023.4.22 to 2024.3.2 by @dependabot in #154
- Bump the optional group with 7 updates by @dependabot in #153
- Bump the optional group with 2 updates by @dependabot in #156
- Fix wrong reference to field in filter comment by @Marenz in #152
- Prepare release notes for release by @Marenz in #159
New Contributors
- @TalweSingh made their first contribution in #95
- @tiyash-basu-frequenz made their first contribution in #113
- @Marenz made their first contribution in #132
Full Changelog: v0.12.0...v0.13.0
v0.12.0
Frequenz Dispatch API Release Notes
Summary
- End time has been moved to the recurrence rule object, replaced by
durationon the base dispatch object. - Update requests now use a
FieldMaskto indicate which fields should be updated.
Upgrading
- Queries that compare against a time interval filter should check for the end time inside the recurrence rule.
end_timehas been renameduntiland is mutually exclusive withcount.- Update request handlers should check the field mask for which attributes to update.
New Features
- Introduced a new field
duration. - Introduced
FieldMaskto the update request.
Bug Fixes
What's Changed
- Bring back the
frequenz.apinamespace by @llucax in #40 - Bump mkdocs-material from 9.2.3 to 9.3.1 by @dependabot in #69
- Bump mkdocs-material from 9.3.1 to 9.3.2 by @dependabot in #76
- Move
end_timetoRecurrenceRuleand adddurationfield by @stefan-brus-frequenz in #78 - Bump pylint from 2.17.5 to 2.17.6 by @dependabot in #85
- Introduce
FieldMaskto update requests by @stefan-brus-frequenz in #87
Full Changelog: v0.11.0...v0.12.0
v0.11.0
Frequenz Dispatch API Release Notes
Summary
This release is mainly about updating the names of some objects, and improving documentation.
Upgrading
- Service and its methods have been renamed to
MicrogridDispatchService DispatchComponentSelectorhas been renamed toComponentSelectorDispatchComponentIDshas been renamed toComponentIDs
New Features
DispatchFilternow supports filtering byis_activeandis_dry_run
Bug Fixes
What's Changed
- Bump pytest from 7.4.0 to 7.4.2 by @dependabot in #63
- Bump mkdocs-literate-nav from 0.6.0 to 0.6.1 by @dependabot in #65
- Bump black from 23.7.0 to 23.9.1 by @dependabot in #66
- Name changes & documentation updates by @stefan-brus-frequenz in #64
Full Changelog: v0.10.0...v0.11.0