Skip to content

Migration guide v5.0.0

miovd edited this page Nov 29, 2022 · 4 revisions

Breaking changes

Contingency status for security analysis

Status have been added to PreContingencyResult and PostContingencyResult indicating the status (CONVERGED, FAILED, NO_IMAPCT, etc) for each contingency.

Merge iidm-converter-api and iidm-api

From this version, artifact powsybl-iidm-converter-api does not exist anymore, please use powsybl-iidm-api instead. Furthermore, several features have been reworked regarding import and export of networks. For instance, instance of using:

Network network = Importers.loadNetwork(path);

now use:

Network network = Network.read(path);

IdentifiableShortCircuit restrictions

IdentifiableShortCircuit can now only extend VoltageLevel, BusbarSection and Bus.

Topology Processing

When going through a network, components with only a single bus used to be taken into account. They are now ignored.

Changes in FourSubstationsNetwork

A ratio tap changer has been added to the test network in FourSubstationsNetwork. Please update your unit tests accordingly.

StandbyAutomaton

StandbyAutomaton has been moved from powsybl-rte-core/powsybl-iidm-cvg-extensions to powsybl-core/powsybl-iidm/powsybl-iidm-extensions.

Refactoring of action deserializers/serializers

All action serializers and deserializers have been moved in package com.powsybl.security.json.action

CGMES Import/Export without topological mapping

The topological mapping (between IIDM bus-breaker buses and CGMES toplogical nodes) has been deleted. When you export a node-breaker network in CGMES after a CGMES import, TP file must now be exported to have consistent files: the topological nodes will have different IDs from the original files.

Remove dangling switches when removing connectable

Starting from this release Connectable::remove(boolean removeDanglingSwitches) has been removed and is replaced by a NetworkModification called RemoveFeederBay. Hence, replace

connectable.remove(true);

with

new RemoveFeederBay(connectable.getId()).apply(network);

CGMES functional logs

In this release, a few functional logs have been added to CGMES import. To that end, the CgmesModel::read methods all have a Reporter as an additional argument. Either call read with an implementation of Reporter API or use dummy implementation Reporter.NO_OP if you do not want any reports.

Replace tee point by voltage level on line

Some renamings have been done in ReplaceTeePointByVoltageLevelOnLine and its builder. Please refer to the javadoc for more details.

Connect voltage level on line

Starting from this release

  • the deprecated ConnectVoltageLevelOnLine constructors have been removed, and the remaining constructor is now package private; please use ConnectVoltageLevelOnLineBuilder instead
  • ConnectVoltageLevelOnLineBuilder::withPercent has been replaced by ConnectVoltageLevelOnLineBuilder::withPositionPercent
  • ConnectVoltageLevelOnLineBuilder::withVoltageLevelId has been removed as it is redundant

Create line on line

Starting from this release

  • the deprecated CreateLineOnLine constructors have been removed, please use CreateLineOnLineBuilder instead
  • CreateLineOnLineBuilder::withPercent has been replaced by CreateLineOnLineBuilder::withPositionPercent
  • CreateLineOnLineBuilder::withVoltageLevelId has been removed as it is redundant
Clone this wiki locally