Release History
| Version | Released |
|---|---|
| 0.6.1 | 03 December 2025 |
| 0.6.0 | 02 October 2025 |
| 0.5.1 | 18 August 2025 |
| 0.5.0 | 30 July 2025 |
NOTE: This library is not yet stable, and breaking changes should be expected until a 1.0.0 release.
[0.6.1]
Breaking Changes
- Dropped and recreated the
qa_event_logtable in the results database. The table now include a newidcolumn in the primary key to uniquely identify events within the execution of a SYF. Thesecondcolumn has also been changed from Integer to Double.
New Features
- Added new field
inputDb.forecastEquipmentCommissionMonthDayto configuration. This value is passed to the model generator as a command line argument--forecast-equipment-commission-month-day.
Enhancements
-
Add configuration for requesting pqv-fallback functionality from the model processor.
-
All timestamp strings being parsed to Kotlin/Java types must include seconds. This is due to the update of kotlinx-datetime to 0.6.1.
-
Result queues are now assumed to be streams, so a compatible version of opendss-jvm-executor must be used.
-
RabbitMQ instance must use the
rabbitmq_streamplugin and thestream.advertised_hostandstream.advertised_portmust be configured.resources.rabbitmq.streamPortForContainersin the HC service config must matchstream.advertised_port. -
Configuration change from hosting-capacity-utils
- Added new configuration class
SyfConfigto group variables moved out ofWorkPackageRequestandWorkPackageConfig.ForecastConfig- Functionally similar to old set up where it holds a list of feeders, years, scenarios and load time.FeederConfigs- Holds a list of individual feeder settings so each feeder can run a hosting capacity study with distinct settings.
- Added new configuration class
LoadTimeandLocalLoadTimewhich holds load specific variables.FixedTime/LocalFixedTime- Fixed time setting for the study, includes an optional map ofFixedTimeLoadOverrides.TimePeriod/LocalTimePeriod- Time period setting for the study, includes an optional map ofTimePEriodLoadOverrides.
- Major refactoring of configuration.
WorkPackageRequest- Moved
feeders,years,scenarios,timePeriodandfixedTimeintoSyfConfigandLocalLoadTime.
- Moved
WorkPackageConfig- Moved
feeders,years,scenarios,timePeriodandfixedTimeintoSyfConfigandLocalLoadTime.
- Moved
CommonConfig- Moved
timePeriodandfixedTimeintoLoadTime.
- Moved
ModelConfig- Moved
fixedTimeLoadOverrideandtimePeriodLoadOverrideintoLoadTimeandLocalLoadTime
- Moved
- Introducing
WorkPackageInputchange and access of load time.
- Added new configuration class
New Features
- Support intervention
- PRRP is run at the start of a work package (before model generation) if
intervention.cadidateGenerationis specified in the work package's request. - Intervention config is passed through to the model generator via the
Jobprotobuf message.
- PRRP is run at the start of a work package (before model generation) if
- Schema migration scripts for load, result and input db.
- From hosting-capacity-utils, volumes can now be specified for docker container templates. Notably useful when combined with the config field
generator.cli.outputModelsPath, by settinggenerator.containers.volumes.<volume name>to the same directory name e.g./opendss-models. - Support applying transformer tap settings from input db by specifying a
transformerTapSettingsin the model config when building models. - Added new config option
ewb.accessTokento allow authenticating to EWB with an EAS generated AccessToken. - Added new table
calibrated_tapsto the input database to store transformer tap settings for use by the model generator. - Create new end point for hosting capacity work package cost estimation
/v1/estimate - Added new table
calibration_meter_resultsto the results database to store meter level voltage results from a calibration run. - Takes in
FixedTimeLoadOverrideorTimePeriodLoadOverrideinappConfigto allow load profile overriding for specified meters.
Enhancements
- Supports kubernetes image pull secrets in container template configuration.
- Added support for passing a ewb authentication issuer and audience to the model generator.
- Can now specify service account name in the template for kubernetes containers.
- Now the service will clean up queues left over by work package failures.
- Models output from the generator to disk are now suffixed by the work package ID.
Fixes
- Fixed the configured client secret for authenticating with EWB using M2M auth not getting passed to the opendss-generator.
- Fixed issue where the hosting capacity service did not support config outputs from zconf.
- Fixed issue where you had to specify both cpu and memory for kubernetes resource limits and request.
- Cluster autoscaler will no longer evict jobs created by this service when using Kubernetes
Notes
- Changelog for upcoming load schema placed in
resources/db/changelog/load2. Work still needs to be done to support generic aggregations.
[0.6.0]
Breaking Changes
- Renamed configuration property
maxActivePipelinestomaxActiveWorkPackagesas part of the refactor to support running multiple work packages concurrently.
New Features
- Support running multiple work packages concurrently. This simplifies the service's architecture and allows for more efficient use of RabbitMQ resources.
- Added new table
node_level_resultsto the results database to support node level opendss results. - Added
useSpanLevelThreshold,simplifyPLSIThreshold,spanLevelThreshold, andemergAmpScalingtoModelConfigsimplifyPLSIThresholdis required to EnableImpedanceNormalizreinNetworkSimplifierspanLevelThresholdcan be supplied toCommonImpedanceCollapsorto includeDesignedRatingofConductorto be considered duringAcLineSegmentcollapse.- if
useSpanLevelThresholdis set to true, designRating will be used during current comparison duringCommonImpedanceCollapsorinstead ofratedCurrent emergAmpScalingis used to calculate theemergAmpsofLineCode. It was previously hard set to 1.5 times but now exposed as a configuration.
- Added new table
inverter_control_profilesto the input database to support translating generators to PvSystems in OpenDss(Advanced PV). - Containers started using the Kubernetes Runtime are now also labelled with the work package id
Enhancements
- Support Super-Pom 0.45.1
- Support up to
com.zepben.commonsandcom.zepben.ewbv1.1.0
Fixes
- None.
Notes
- None.
[0.5.1]
Breaking Changes
- Rework load schema with a new set of Liquibase migrations, starting with version 0.5.0. This new schema was previously placed in the
load2folder, which has since been removed. You will need to create a new database (possibly in the same Postgres server) and point to it for the new schema, then migrate any data from old tables (e.g.network_hierarchy). - PQV schema has been updated to be long form with more types of values supported. This will break anything using the pqv schema.
- Existing
calibration_meter_resultstable will be dropped and recreated with a new schema. Deleting any existing data in the table.
New Features
- None.
Enhancements
- Support up to Super-Pom 0.39.0
Fixes
- None.
Notes
- None.\n\n---\n
[0.5.0]
Breaking Changes
- None.
New Features
- None.
Enhancements
- None.
Fixes
- Support configuration of impedance collapsing and span thresholds for ratings.
Notes
- None.\n\n---\n