Skip to content

Migration guide v6.6.0

Olivier Perrin edited this page Nov 29, 2024 · 15 revisions

Breaking Change Breaking changes for all users

IIDM

Network events

In this release, NetworkListener has been modified with breaking changes:

  • onUpdate and onExtensionUpdate overload without variant ID have been removed, we expect now to have one with variant ID to use everywhere and with a null variantId in case of an attribute that does not depend on variant.
  • onElementAdded has been renamed onPropertyAdded and default empty implementation has been removed
  • onElementReplaced has been renamed onPropertyReplaced and default empty implementation has been removed
  • onElementRemoved has been renamed onPropertyRemoved and default empty implementation has been removed
  • default empty implementation of onVariantCreated, onVariantOverwritten, onVariantRemoved have been removed

Substation geographicalTags attribute is no more an (old) element type notification but a standard attribute notification

CGMES

Line and substation containers

  • Conversion.getFictitiousVoltageLevelForNodeInContainer(String containerId, String nodeId) was removed.
    Instead, use SubstationIdMapping.getFictitiousVoltageLevelForContainer(String containerId, String nodeId).

  • CgmesModel has two new methods that should be implemented if you have classes implementing this interface:

    • Optional<String> node(CgmesTerminal t, boolean nodeBreaker);
    • Optional<CgmesContainer> nodeContainer(String nodeId);
  • SubstationIdMapping was renamed to NodeContainerMapping.
    As a consequence, method substationIdMapping() of com.powsybl.cgmes.conversion.Context was renamed to nodeContainerMapping().

Non-linear shunt conversion performances

Interface CgmesModel has a new method that should be implemented if you have classes implementing this interface:

  • PropertyBags nonlinearShuntCompensatorPoints()

Math

UndirectedGraph notification deactivation

Starting from this release, default implementations for addVertexIfNotPresent and vertexExists methods have been removed from UndirectedGraph interface.


Custom IIDM Impl Notice for custom IIDM implementations maintainers

New method in Boundary interface

Custom IIDM implementations that are implementing the Boundary interface (which is not necessarily the case) should add the following method to their implementation:

  • getI()

New method in RemoteReactivePowerControl extension

Custom IIDM implementation maintainers should implement the following method in their RemoteReactivePowerControl implementations:

  • RemoteReactivePowerControl setRegulatingTerminal(Terminal regulatingTerminals);

Test Data Change Changes in the test data

CGMES

Simplifying unit tests

The following methods of CgmesConformity1ModifiedCatalog, were removed:

  • miniGridNodeBreakerMissingVoltageLevel()
  • miniNodeBreakerCimLine()
  • miniNodeBreakerSwitchBetweenVoltageLevelsOpen()
  • miniNodeBreakerJoinVoltageLevelSwitch()
  • miniNodeBreakerJoinVoltageLevelTx()
  • miniNodeBreakerSubstationNode()

They were used for unit testing, but they relied on big CGMES files ; this slowed the tests execution. If you still need to use them, you can retrieve the methods at this URL and the corresponding CGMES files in this directory.

Generator targetV in Eurostag tutorial tests

There was an inconsistency in the following methods of EurostagTutorialExample1Factory:

  • createWithRemoteVoltageGenerator()
  • createWithRemoteReactiveAndVoltageGenerators()

To solve it, the targetV on generator of ID "GEN" is now set to 399 kV instead of 24.5 kV for these methods.
This may have an impact on your projects' unit tests if you use them.

Clone this wiki locally