Skip to content

Releases: powsybl/powsybl-core

v4.2.0

25 May 07:54
Compare
Choose a tag to compare

To fix any issues due to migration, please go to the migration guide. Labels Deprecated and Breaking Change are clickable and lead to the section of the migration guide corresponding to the associated described change.

Release notes

CGMES

  • CGMES conversion: check minP <= maxP during import (#1681)
  • CGMES: add support for Equivalent Branches at boundaries (#1685)
  • CGMES SV: export flows for branches and three windings transformers (#1684)
  • Consider transformers at boundaries during conversion (#1682)
  • Add extension on Boundary Points specifying if they model DC Points and the EIC code of the line they are associated with if it exists (#1677) Breaking Change
  • When importing a CGM, boundary lines are orientated so that side1 ID < side2 ID (#1721)
  • Allow bPerSection to be equals to zero and modify CGMES ShuntConversion (#1714)
  • Handle missing information on ControlArea and TieFlow during CGMES import (#1723)
  • Add CGMES import option to import control areas or not (#1726)
  • HVDC. Fix duplicated dcLineSegment id when the configuration is two converters and one dcLineSegment (#1695)
  • Fix CGMES export node/breaker when building bus-TN mapping (#1729 & #1738)
  • Add fixes for TYNDP (#1740)
    • step x is not set --> set X to 0
    • Inconsistent voltage limit range [43560.0, 242.0] --> switch min and max values
    • temporary limit value is not set --> skip this temporary limit ?
    • phase regulation cannot be on if mode is FIXED --> set the regulation to OFF ?

IIDM

  • Fix HalfLine creation and its Boundary object (#1691)
  • Improve network notification performance (#1708)
  • Add missing invalidateCache in N/B Voltage Level (#1710)
  • Fix connect bug (#1720)
  • Add a bus cache to network implementation (#1722)
  • Allow bPerSection to be equals to zero (#1714) Breaking Change
  • NullPointerException on terminal ref id not found at XIIDM import (#1730)

JSON

  • Fix JsonUtil::readExtensions and JsonUtil::writeExtensions, don't do an infinite busy loop on bad input (#1712)
  • Fix JSONUtil::skip, skip arrays and don't do an infinite busy loop when skipping starts precisely on next END_OBJECT (#1711)

Math

  • Create a row matrix from an array (#1692)

PSSE

  • PSS/E Add new dataBlocks (#1668)
  • Psse. Import to IIDM Two Terminal DC converters (#1698)

Scalable

  • Add a new scalable on dangling line (#1674)
  • Add the possibility to specify the scaling convention when creating dangling line scalables (#1697)

Load Flow

  • Add synchronous and connected components num to ComponentResult (#1719)
  • Add new parameters to load flow parameters : dcUseTransformerRatio, countriesToBalance and connectedComponentMode (#1724 ) Breaking Change

Security Analysis

  • Allow properties when exporting SecurityAnalysisResult to XML (#1688)

Time Series

  • Fix univocity csv parser max column limit (#1676)
  • Check uncompressed length with sum of step length (#1599)

Triplestore

  • Remove blazegraph (#1706) Breaking Change

Quality

  • Remove useless utilities in commons (#1683) Breaking Change
  • Add Slack badge and link in README (#1686)
  • Add CII badge. (#1694)
  • Fix license and copyright headers (#1696 and #1703)
  • Bump logback to 1.2.3 (#1713)
  • Bump commons-io from 2.5 to 2.7 (#1702)
  • use ServiceLoader.load with the current classloader instead of the context classloader (#1727)

v4.2.0-RC1

17 May 09:41
Compare
Choose a tag to compare
v4.2.0-RC1 Pre-release
Pre-release

To fix any issues due to migration, please go to the migration guide. Labels Deprecated and Breaking Change are clickable and lead to the section of the migration guide corresponding to the associated described change.

Release notes

CGMES

  • CGMES conversion: check minP <= maxP during import (#1681)
  • CGMES: add support for Equivalent Branches at boundaries (#1685)
  • CGMES SV: export flows for branches and three windings transformers (#1684)
  • Consider transformers at boundaries during conversion (#1682)
  • Add extension on Boundary Points specifying if they model DC Points and the EIC code of the line they are associated with if it exists (#1677) Breaking Change
  • When importing a CGM, boundary lines are orientated so that side1 ID < side2 ID (#1721)
  • Allow bPerSection to be equals to zero and modify CGMES ShuntConversion (#1714)
  • Handle missing information on ControlArea and TieFlow during CGMES import (#1723)
  • Add CGMES import option to import control areas or not (#1726)
  • HVDC. Fix duplicated dcLineSegment id when the configuration is two converters and one dcLineSegment (#1695)
  • Fix CGMES export node/breaker when building bus-TN mapping (#1729)

IIDM

  • Fix HalfLine creation and its Boundary object (#1691)
  • Improve network notification performance (#1708)
  • Add missing invalidateCache in N/B Voltage Level (#1710)
  • Fix connect bug (#1720)
  • Add a bus cache to network implementation (#1722)
  • Allow bPerSection to be equals to zero (#1714) Breaking Change
  • NullPointerException on terminal ref id not found at XIIDM import (#1730)

JSON

  • Fix JsonUtil::readExtensions and JsonUtil::writeExtensions, don't do an infinite busy loop on bad input (#1712)
  • Fix JSONUtil::skip, skip arrays and don't do an infinite busy loop when skipping starts precisely on next END_OBJECT (#1711)

Math

  • Create a row matrix from an array (#1692)

PSSE

  • PSS/E Add new dataBlocks (#1668)
  • Psse. Import to IIDM Two Terminal DC converters (#1698)

Scalable

  • Add a new scalable on dangling line (#1674)
  • Add the possibility to specify the scaling convention when creating dangling line scalables (#1697)

Load Flow

  • Add synchronous and connected components num to ComponentResult (#1719)
  • Add new parameters to load flow parameters : dcUseTransformerRatio, countriesToBalance and connectedComponentMode (#1724 ) Breaking Change

Security Analysis

  • Allow properties when exporting SecurityAnalysisResult to XML (#1688)

Time Series

  • Fix univocity csv parser max column limit (#1676)
  • Check uncompressed length with sum of step length (#1599)

Triplestore

  • Remove blazegraph (#1706) Breaking Change

Quality

  • Remove useless utilities in commons (#1683) Breaking Change
  • Add Slack badge and link in README (#1686)
  • Add CII badge. (#1694)
  • Fix license and copyright headers (#1696 and #1703)
  • Bump logback to 1.2.3 (#1713)
  • Bump commons-io from 2.5 to 2.7 (#1702)
  • use ServiceLoader.load with the current classloader instead of the context classloader (#1727)

v4.1.2

28 Apr 08:50
Compare
Choose a tag to compare

Release notes

Bug fixes

Contingency API

  • Fix contingency element deserializer (#1704)

v4.1.1

19 Apr 12:20
Compare
Choose a tag to compare

Release notes

Bug fixes

IIDM

  • Bug fix: completing the creation of a control area should NOT return the implementation (#1689)
  • Rename correctly CgmesControlAreasAdderImplProvider (#1693)

v4.1.0

08 Apr 15:53
Compare
Choose a tag to compare

To fix any issues due to migration, please go to the migration guide. Labels Deprecated and Breaking Change are clickable and lead to the section of the migration guide corresponding to the associated described change.

Release notes

CGMES

  • Move CGMES extensions to a new module (#1614)
  • Fix CGMES voltage limit import: if inconsistent, ignore (#1633)
  • CGMES.normalPF is imported as a property (#1642)
  • SV export: use Boundary to export V and angle at boundary topological node (#1652)
  • Import CGMES area exchanges (#1651 & #1660) Breaking Change
  • Allow SV Export for CGMES node breaker networks (#1540 & #1661) Breaking Change
  • Make optional the description attribute of CGMES model objects (#1662)
  • Fix: import ControlArea even if no associated TieFlows or netInterchange (#1673)

IIDM

  • Add some information for mergedxnode extension (#1607)
  • Make slack terminal XML serializer versionable (#1628)
  • Bug fix: iterate over vertex capacity, not vertex count for a topology export (#1632)
  • Optimise Network.getBusBreakerView.getBus(String) in case if bus/breaker topology (#1645)
  • Bug fix in MergedBus : getConnectedTerminalCount does not use the connected terminals but all (#1647)
  • Fix BusBreakerVoltageLevel export style for switch edges (#1657)
  • Merging view: implement BusAdapter.getConnectedTerminals and BusAdapter.getConnectedTerminalStream (#1679)
  • Warn instead of throwing an exception if P/Q are undefined (#1672)

Logs

PSSE

  • Convert PSSE model to PowSyBl model (#1590)
  • Support of PSSE version 32 (#1626)
  • Convert voltage and angle of star bus as properties (#1636)
  • Improve performance of the transformer data block (#1641)
  • Sort the shunt blocks of the non-linear model (#1646)
  • Discard controls regulating isolated buses. Do not remove comments inside quotes (#1654)
  • Validate the imported model before converting it to IIDM (#1656)

Simulation

  • Remove simulation-api module (#1637) Breaking Change

Scalable

  • Replace an exception thrown in Scalable.scale() by an error log if inital setpoint of an injection is not in block interval (#1671)

Sensitivity

  • BusVoltagePerTargetV sensitivity factor (#1640)

UCTE

  • Fix some invalid validation messages in UCTE converter. (#1630)
  • Extending the min/max range if tap position is outside range with UCTE import (#1663)
  • Correct randomness of voltage level import order in UCTE import (#1670)

Time Series

  • Timeseries.split, correctly split when chunks do not perfectly align with multiple newChunkSize (#1616, fixes #1610)

Contingency DSL

  • We can now specify predefined import in the script (#1649).

Quality

  • Bump jackson-databind version to 2.10.5.1 and other jackson version to 2.10.5 (#1664)

v4.1.0-RC1

01 Apr 15:17
Compare
Choose a tag to compare
v4.1.0-RC1 Pre-release
Pre-release

To fix any issues due to migration, please go to the migration guide. Labels Deprecated and Breaking Change are clickable and lead to the section of the migration guide corresponding to the associated described change.

Release notes

CGMES

  • Move CGMES extensions to a new module (#1614)
  • Fix CGMES voltage limit import: if inconsistent, ignore (#1633)
  • CGMES.normalPF is imported as a property (#1642)
  • SV export: use Boundary to export V and angle at boundary topological node (#1652)
  • Import CGMES area exchanges (#1651 & #1660) Breaking Change
  • Allow SV Export for CGMES node breaker networks (#1540 & #1661) Breaking Change
  • Make optional the description attribute of CGMES model objects (#1662)
  • Fix: import ControlArea even if no associated TieFlows or netInterchange (#1673)

IIDM

  • Add some information for mergedxnode extension (#1607)
  • Make slack terminal XML serializer versionable (#1628)
  • Bug fix: iterate over vertex capacity, not vertex count for a topology export (#1632)
  • Optimise Network.getBusBreakerView.getBus(String) in case if bus/breaker topology (#1645)
  • Bug fix in MergedBus : getConnectedTerminalCount does not use the connected terminals but all (#1647)
  • Fix BusBreakerVoltageLevel export style for switch edges (#1657)

Logs

  • Functional logs POC (#1666)

PSSE

  • Convert PSSE model to PowSyBl model (#1590)
  • Support of PSSE version 32 (#1626)
  • Convert voltage and angle of star bus as properties (#1636)
  • Improve performance of the transformer data block (#1641)
  • Sort the shunt blocks of the non-linear model (#1646)
  • Discard controls regulating isolated buses. Do not remove comments inside quotes (#1654)
  • Validate the imported model before converting it to IIDM (#1656)

Simulation

  • Remove simulation-api module (#1637) Breaking Change

Scalable

  • Replace an exception thrown in Scalable.scale() by an error log if inital setpoint of an injection is not in block interval (#1671)

Sensitivity

  • BusVoltagePerTargetV sensitivity factor (#1640)

UCTE

  • Fix some invalid validation messages in UCTE converter. (#1630)
  • Extending the min/max range if tap position is outside range with UCTE import (#1663)
  • Correct randomness of voltage level import order in UCTE import (#1670)

Time Series

  • Timeseries.split, correctly split when chunks do not perfectly align with multiple newChunkSize (#1616, fixes #1610)

Contingency DSL

  • We can now specify predefined import in the script (#1649).

Quality

  • Bump jackson-databind version to 2.10.5.1 and other jackson version to 2.10.5 (#1664)

v3.8.1

15 Feb 10:41
Compare
Choose a tag to compare

Release notes

Action

  • Clean LoadScalable and GeneratorScalable implementation to avoid internal call to minimumValue and maximumValue without scaling convention (#1577)

CGMES

  • Tap changer is regulating if both control is enabled and tap changer is control-enabled (#1554)
  • Fix regulating equipment control enabled (generators) (#1547)
  • Always write model description dates referred to UTC (#1563)
  • Do not create DanglingLine.Generation during CGMES import if there is no explicit values (#1559)

IIDM

  • Bus/breaker topology export: add names and show parallel switches (#1551)
  • Revert DanglingLine generation creation (#1568)
  • Improve ShuntCompensatorAdder implementation (#1562)
  • Deprecate useless extension writer in XmlWriterContext (#1560)
  • Add Kosovo country (#1582)
  • Throw a comprehensive exception when a terminal ref of a busbar section is written in bus-breaker or bus-branch (#1595)
  • Warning instead of error log when extensions have not been found (#1605)
  • Bug fix in serialization XIIDM of t3w: not writing non supported subequipment in version < 1.1 in LOG_ERROR version compatibility
  • Always read and write regulating status of ratio tap changer even if loadtapchangingcapabilities is set to false
  • Fix empty alias type management (#1611)
  • Check on RTC regulation only throws exception if loadTapChangingCapabilities is true, else it logs a warning (#1625)

UCTE

  • UCTE export: ignore fictitious YNodes introduced for transformers at boundary (#1566)
  • UCTE import: Throw a specific error when a node is not found (#1574)

Quality

  • Add missing automatic module name (#1571)

v4.0.1

11 Feb 15:19
Compare
Choose a tag to compare

Release notes

XIIDM

  • Check on RTC regulation only throws exception if loadTapChangingCapabilities is true, else it logs a warning (#1625)

v4.0.0

05 Feb 13:36
89beee6
Compare
Choose a tag to compare

To fix any issues due to migration, please go to the migration guide. Labels Deprecated and Breaking Change are clickable and lead to the section of the migration guide corresponding to the associated described change.

Release notes

Action DSL

  • Clean LoadScalable and GeneratorScalable implementation to avoid internal call to minimumValue and maximumValue without scaling convention. (#1577)
  • Add an up and down scalable (#1572)

CGMES

  • Always write model description dates referred to UTC (#1563)
  • CGMES SSH export using only Network data (#1485)
  • Fix: tap changer is regulating if both control is enabled and tap changer is control-enabled (#1554)
  • Fix regulating equipment control enabled (generators) (#1547)
  • Do not create DanglingLine.Generation during CGMES import if there is no explicit value (#1559)
  • Convert CIM anonymizer main into a itools command (#1578)
  • CGMES Import all operational limits (#1589) Breaking Change

Contingency API

  • Improve the API to allow contingency creation more easily (#925, #1550, #1556) Deprecated

Dynamic simulation

  • Enrich result API with time series (#1539)

IIDM

  • Add new iidm hvdc extensions (#1587)
  • Bug fix in serialization XIIDM of t3w: not writing non supported subequipment in version < 1.1 in LOG_ERROR version compatibility (#1606)
  • Bug fix: Always read and write regulating status of ratio tap changer even if loadtapchangingcapabilities is set to false (#1606) Breaking Change
  • Addition of the sort parameter in the xml export options (#1546)
  • Bus/breaker topology export: add names and show parallel switches (#1551)
  • Update DanglingLine.Generation creation (#1552)
  • Improve ShuntCompensatorAdder implementation (#1562)
  • powsybl-iidm-util has been removed and all its classes have been moved to powsybl-iidm-api (#1575) Breaking Change
  • powsybl-iidm-api extensions have been moved to powsybl-iidm-extensions (#1576) Breaking Change
  • Deprecate useless extension writer in XmlWriterContext (#1560) Deprecated
  • Throw a comprehensive exception when a terminal ref of a busbar section is written in bus-breaker or bus-branch (#1595) Breaking Change
  • Update IIDM/XIIDM version from 1.4 to 1.5 Breaking Change
    • Introduce concept of Boundary for DanglingLine and TieLine (#1488)
    • IIDM operational limits (#1359, #1592 & #1588)
  • Warning instead of error log when extensions have not been found (#1605)

PSS/E

  • Add support of raw and rawx formats version 33 and 35 (#1461)
  • Psse, add the following data blocks: switchedShuntData, TransformerImpedanceCorrectionTables, MultiSectionLineGrouping, InterareaTransferData and FactsDeviceData (#1586)

Sensitivity Analysis

  • Use List<Contingency> instead of ContingenciesProvider in SensitivityAnalysis (#1553) Breaking Change
  • Add a method to get factors for a given contingency (#1570 & #1623)

Time series

  • Improve time series parser by supporting different time formats and optional version column (#1543 )

UCTE

  • UCTE export: ignore fictitious YNodes introduced for transformers at boundary (#1566)
  • UcteImporter: throw a specific error when a node is not found (#1574)
  • Add Kosovo to the list of UCTE countries (#1582)
  • Add alphabetical sort criterion to determine the main node in order to have name invariance of a substation (#1573)
  • UCTE: quality of datasets and calculations support (#1567)

Quality

  • Add powsybl-core dependencies in the pom dependenciesManagement in order to retrieve all powsybl-core modules with compatible versions (#1596 & #1598)
  • Add missing automatic module name (#1571)
  • Remove super-csv dependency (not mainted anymore, not compatible Java9 modules). Code have been migrated to univocity parser (#1581)
  • Remove TrueVFS dependency (not compatible with Java9 modules and redundant with apache compress) (#1583)
  • Using Java11 (#1580) Breaking Change

v4.0.0-RC1

20 Jan 12:56
Compare
Choose a tag to compare
v4.0.0-RC1 Pre-release
Pre-release

To fix any issues due to migration, please go to the migration guide. Labels Deprecated and Breaking Change are clickable and lead to the section of the migration guide corresponding to the associated described change.

Release notes

Action DSL

  • Clean LoadScalable and GeneratorScalable implementation to avoid internal call to minimumValue and maximumValue without scaling convention. (#1577)
  • Add an up and down scalable (#1572)

CGMES

  • Always write model description dates referred to UTC (#1563)
  • CGMES SSH export using only Network data (#1485)
  • Fix: tap changer is regulating if both control is enabled and tap changer is control-enabled (#1554)
  • Fix regulating equipment control enabled (generators) (#1547)
  • Do not create DanglingLine.Generation during CGMES import if there is no explicit value (#1559)
  • Convert CIM anonymizer main into a itools command (#1578)
  • CGMES Import all operational limits (#1589) Breaking Change

Contingency API

  • Improve the API to allow contingency creation more easily (#925, #1550, #1556) Deprecated

Dynamic simulation

  • Enrich result API with time series (#1539)

IIDM

  • Addition of the sort parameter in the xml export options (#1546)
  • Bus/breaker topology export: add names and show parallel switches (#1551)
  • Update DanglingLine.Generation creation (#1552)
  • Improve ShuntCompensatorAdder implementation (#1562)
  • powsybl-iidm-util has been removed and all its classes have been moved to powsybl-iidm-api (#1575) Breaking Change
  • powsybl-iidm-api extensions have been moved to powsybl-iidm-extensions (#1576) Breaking Change
  • Deprecate useless extension writer in XmlWriterContext (#1560) Deprecated
  • Throw a comprehensive exception when a terminal ref of a busbar section is written in bus-breaker or bus-branch (#1595) Breaking Change
  • Update IIDM/XIIDM version from 1.4 to 1.5 Breaking Change
    • Introduce concept of Boundary for DanglingLine and TieLine (#1488)
    • IIDM operational limits (#1359, #1592 & #1588)

PSS/E

  • Add support of raw and rawx formats version 33 and 35 (#1461)
  • Psse, add the following data blocks: switchedShuntData, TransformerImpedanceCorrectionTables, MultiSectionLineGrouping, InterareaTransferData and FactsDeviceData (#1586)

Sensitivity Analysis

  • Use List<Contingency> instead of ContingenciesProvider in SensitivityAnalysis (#1553) Breaking Change
  • Add a method to get factors for a given contingency (#1570)

Time series

  • Improve time series parser by supporting different time formats and optional version column (#1543 )

UCTE

  • UCTE export: ignore fictitious YNodes introduced for transformers at boundary (#1566)
  • UcteImporter: throw a specific error when a node is not found (#1574)
  • Add Kosovo to the list of UCTE countries (#1582)
  • Add alphabetical sort criterion to determine the main node in order to have name invariance of a substation (#1573)
  • UCTE: quality of datasets and calculations support (#1567)

Quality

  • Add powsybl-bom (#1596)
  • Add missing automatic module name (#1571)
  • Remove super-csv dependency (not mainted anymore, not compatible Java9 modules). Code have been migrated to univocity parser (#1581)
  • Remove TrueVFS dependency (not compatible with Java9 modules and redundant with apache compress) (#1583)
  • Using Java11 (#1580) Breaking Change