Release History
| Version | Date |
|---|---|
| 3.1.1 | 17 November 2025 |
| 3.1.0 | 17 August 2025 |
| 3.0.0 | 18 April 2025 |
| 2.20.1 | 07 April 2025 |
| 2.20.0 | 04 April 2025 |
| 2.19.1 | 10 April 2025 |
| 2.19.0 | 22 January 2025 |
| 2.18.0 | 22 October 2024 |
| 2.17.0 | 21 June 2024 |
| 2.16.0 | 07 June 2024 |
| 2.15.2 | 07 February 2024 |
| 2.15.1 | 29 November 2023 |
| 2.15.0 | 27 November 2023 |
| 2.14.0 | 07 February 2023 |
| 2.13.0 | 07 September 2022 |
| 2.12.0 | 22 September 2021 |
| 2.11.0 | 28 May 2021 |
| 2.10.0 | 06 April 2021 |
| 2.9.0 | 01 February 2021 |
| 2.8.0 | 13 January 2021 |
| 2.7.0 | 11 November 2020 |
| 2.6.0 | 08 September 2020 |
| 2.5.0 | 04 September 2020 |
| 2.4.0 | 26 August 2020 |
| 2.3.0 | 18 August 2020 |
| 2.2.0 | 04 August 2020 |
| 2.1.0 | 24 July 2020 |
| 2.0.0 | 15 June 2020 |
| 1.1.0 | 21 June 2019 |
| 1.0.0 | 7 March 2019 |
[3.1.1]
Breaking Changes
- For EE, the connection point identifier name of each
UsagePointis now the premise number rather than the NMI. The NMI is still added as a name, using aNameTypeof "NMI". As a consequence,config.processing.meters.connectionPointIdentifiercannot be "NMI" for EE.
New Features
- Virtual
UsagePoints are added to distribution transformers and feeder heads to represent load aggregation points. - Connection to a load database may be specified via
common.output.loadDb, similar tocommon.output.metrics. If this is specified, mappings for load aggregation will be written (CPI → CPI-level UP → dist-TX-level UP → feeder-head-level UP)
Enhancements
- The mRID of customer
UsagePoints have been made consistent per connection point identifier. For CPPAL and UE, this is the NMI of the meter. For EE, this is the premise number of the meter.
Fixes
- Made UE meters unique by concatenating with NMI. Cleaned meter number/code will now exist only in
Meter.name
Notes
- None.
[3.1.0]
Breaking Changes
- Substation voltage regulator settings processing logic for EE has been made the same as CPPAL, and UE. The input file has changed accordingly, see documentation for details.
- The mRID used to seed areas of network with unknown phases has potentially changed. This may mean you get different (still consistent) phases than in previous versions for some areas of the network.
New Features
- None.
Enhancements
- Added LoopedLineFixer for removing conductors that are connected to the same
ConnectivityNodeon both terminals. - Added name processing for LV circuit head switches for UE
- Split
CustomerKindConverterinto specific UE and CPPAL classes
Fixes
- Updated VoltageProcessor to use the
VoltageLevelVoltageAssignerfrom the migrator sdk. This should give more correct spreading of voltages. - Updated MeterMappingProcessorUE to no longer do LV simplification as the meter mapping file does not have this information.
- Corrected issue tracking for counting the number of customers that are missing a EnergyConsumer in the network.
- Fixed UE DER register processors to not over-allocate DER to EnergyConsumers/NMIs.
- Phases are now correctly assigned to the LV side of an LV2 transformer that is in parallel with a previously energised LV1 transformer.
- Fixed an error introduced in
v2.19.0for CPPAL equivalent branches created below SWER ISO transformers, which were incorrectly allocated an intermediate voltage of the SWER line, instead of LV. The voltages were corrected before the database was written, but not until after LV feeders were created, causing LV feeders to be missed for these tertiary LV windings. LoopedLineFixerno longer removingPerLengthSequenceImpedanceassociated with removed equipment.- When creating transformer ends off adjacent voltages, they will now always be created in the correct order (primary voltage first)
Notes
- CIM database version updated to 59.
[3.0.0]
Breaking Changes
- None.
New Features
- Added the ability to exclude conductors based on an attribute. The file containing the attribute definitions can be specified in
common.input.conductorExclusionConfigPath. See documentation for details.
Enhancements
- Phase consistency processing now spreads from sources rather than feeder heads, with loops being processed in a single direction to prevent many edge cases
found in poor quality data from derailing the process. Please use
common.processing.phases.terminalStationPatternto control the detection of terminal stations. If this is mis-configured, they will just be treated as zone substations and not be processed at a higher priority. - Added support for split phase conductors with incorrect 3-phase overhead wires extended into the split with an underground-to-overhead converted per phase.
Fixes
- Correctly clean up EHV overlap with the feeder where step-up transformers below the feeder head exist.
- Fixed phase assignment to things with unknown voltages by putting a placeholder voltage for all HV/subtrans equipment before running the phase consistency processing, preventing the use of LV phases.
- The following fixes have been made to the phase consistency processing:
- Stopped assigning
Nto service equipment with no known phases. - Allowed sub-transmission transformers to detect their types.
- Stopped assigning
Notes
- None.
[2.20.1]
Fixes
- Reduced the amount of memory used for filtering of nodes based on attribute values.
[2.20.0]
Breaking Changes
- Command line arguments have been moved the processor config. There are too many of these to add explicit instructions in the change log.
- The default config file location update for
processor-config.json->config.json. - Conductor stitching no longer creates mid-span terminals, but instead creates a
Clampwhere the mid-span connections occur. - Updated to optionally write the metrics to a PostgresSQL database.
New Features
- Added support to upload output files to S3 using the new
common.output.cloudUploaderoptions (note: region is optional):"cloudUploader": {
"provider": "s3",
"region": "us-east-1",
"bucketName": "my-test-bucket"
} - You can now control how phases are added to equipment with unknown phases via
common.processing.phases.defaultPhaseOption:THREE_PHASE- Mark all unknown equipment as 3-phase (default).SPREAD- Spread the phases from known attached equipment before assigning all remaining equipment as 3-phase.
- Added a new option
common.output.saveOnExceptionwhich allows exceptions in processing that would have crashed the migrator to be trapped, logged and cause the application to exit with a failed to process message. The processing will stop at the point of the exception, but the databases will still be created ( potentially in a broken state). - The way missing node configuration mappings are handled can be controlled by
common.input.onMissingNodeMappingHandler. One ofREPLACE_WITH_JUNCTIONorEXCEPTION, defaulting toEXCEPTIONto match existing functionality. - You can now exclude objects using the
excludedkey in the nodes configuration file. See documentation for details.
Enhancements
- You can now disable the phase consistency processing using the config option
common.processing.phases.applyPhaseConsistency. - Feeders that are normally open no longer report they have off-supply equipment as this is the expected state.
- Support for an LV phase code of "3.5" has been added. It will now be treated as
ABCN. - Phase consistency debug logging now:
- Logs normal phases as these are used in several of the phase consistency steps and provides insight into what is going on.
- Ignores unknown items rather than generating errors.
Fixes
- Updates migrator-sdk to:
- Fix TCS queries against Oracle databases.
- Correct default processing for transformer impedances so no Infinity/NaNs end up in x/r.
- Deduplicate hierarchy equipment container names.
- Fixed performance issues with the phase consistency processing of large networks (e.g. including LV).
- The
DroppedPhaseLoopFixernow handles loops in single phase networks. - Restored feeders to the UE model that were lost in the v2.19.0 release.
- Locations of removed connectors are no longer written to the database.
Notes
- To facilitate filtering of nodes based on attribute values, all attributes are now kept when reading the GIS data, which increases the memory usage.
[2.19.1]
- Correctly clean up EHV overlap with the feeder where step-up transformers below the feeder head exist.
[2.19.0]
Breaking Changes
- The following configuration has moved from command line arguments to the processor config file:
- Company configuration
-com, is now"company": "..."in the processor config - Cable types configuration
-tcis now"conductorTypes"in the processor config. See below note for how its definition has changed as well. - Quality checks configuration
-qcand output-qa
- Company configuration
- Conductor types now supports different configurations per Company: CPPAL:
{
"conductorTypes": {
"cppal": {
"conductorTypes": "/path/to/conductor-types.json",
"hvDefaultConductorTypes": "/path/to/hv-default-types.csv"
}
}
}
EE:
{
"conductorTypes": {
"ee": "/path/to/sincal.db"
}
}
UE:
{
"conductorTypes": {
"cppal": {
"hvOverheadConductorTypes": "/path/to/overhead-conductor-types.csv",
"hvUndergroundConductorTypes": "/path/to/underground-conductor-types.csv",
"lvConductorTypes": "/path/to/lv-conductor-types.csv"
}
}
}
- EquivalentBranches will now be created where required with a voltage matching the network they are connected to. For example an EquivalentBranch below a distribution transformer will have an LV voltage. This is a semantic breaking change, however there are currently no known downstream impacts.
New Features
- Added support for processing UE GIS data. Use
"company": "UE"in ProcessorConfig to support UE. - Added support for processing conductor types for UE data. Allows specifying 3 conductor type CSVs -
hvOverheadConductorTypes,hvUndergroundConductorTypes, andlvConductorTypes - Added callback to send a status (SUCCESS/FAILURE) to the configured URL on the completion of the ingestion.
- Added support for processing EE subtransmission network
- Line regulators are now supported for EE in the same format as CPPAL.
Enhancements
- Added a new UE specific processor to fix HV and LV being lumped together in the source data.
- Updated to migrator SDK 0.21.0 for EhvHierarchyAssigner support for EE and CPPAL. No other changes from 0.20.0 are relevant.
Fixes
- Removed Names that reference no longer existing IdentifiedObjects in the network after post-processing.
- We now print out corrupt JSON that can't be deserialised during JSON reading stage.
- VoltageExtender will now stop spreading voltages when it doubles back on network it has already hit.
- UsagePoints are now added to created DER
locationForAddressnow skips addresses that are blank, which fixes indexing performance issues.- Fixed CPPAL substation transformer tap settings to have correct neutral positions
- Removed side effects from inside the quality checks to prevent flow on effects when disabling the quality check.
- Removed Names that reference no longer existing IdentifiedObjects in the network after post-processing
- If a transformer has a HV end with a mismatched voltage to what is connected upstream, we now assign any left over HV terminal to that end
Notes
- None.
[2.18.0]
Breaking Changes
- None.
New Features
- Metrics are now created for each run of the extractor. This includes counts for each equipment type and total line length at each level of the network.
- Added EE-specific metrics for types of transformers based on their name in the source data:
- The regex pattern
^d{1,2}-(.*)$is used to match the transformer name. Transformers whose name does not match this pattern increment thefailed transformer countmetric. - If the captured expression after the hyphen starts with
V, theregulator countmetric is incremented. - If the captured expression after the hyphen starts with
PSUB, thepsub countmetric is incremented.
- The regex pattern
- The phase consistency processing now takes into consideration of the
phaseCodevalue ofUsagePointassociated with theEnergyConsumerto determine the correctphaseCodeofEnergyConsumerterminal.
Enhancements
- The phase consistency processing now adds neutrals to LV switches in loops that have more than one phase. These neutrals will be removed by other existing processors if they aren't required, and prevents the incorrect removal of neutrals due to bad phase data for switches in the source data.
Fixes
nulllink references no longer cause an exception in the EE TCS processing.- Added support for
TCS.CD_CUST_PROPERTY_ASSOC.USAGE_END_DATEwith non-date column types. - Parallel transformers now correctly identify which terminal belongs to each voltage level when they are directly connected to each other.
Notes
- None.
[2.17.0]
Breaking Changes
- None.
New Features
- None.
Enhancements
- Suppressed warnings about invalid Neara fields when they are not specified, only logging errors if there is an invalid value.
- The TCS database reader will now filter out unused customers (those without a current reference to a property).
- EE TCS properties with a link starting with
$are now excluded from the TCS processing. - Added metrics for counting types of transformers missing asset info:
other transformer without asset info countvoltageRegulator without asset info countdistributionTransformer without asset info countisolationTransformer without asset info countautotransformer without asset info countpowerTransformer without asset info countsecondaryTransformer without asset info count
Fixes
- Usage points that have been assigned to a transformer that is removed as a duplicate are now moved onto the transformer that is kept.
- The processing of feeders with a split from the first node now correctly identifies the EHV when connected via a connector rather than a real node.
- The poles database processing has been updated to read from the table
RDS_GSA_ASSET.pole_curr_VWrather thanPoles. - EE TCS processing has been updated to pull the NMI from
TCS.CD_CUST_PROPERTY_ASSOC.LINK_REFERENCE. - Fixed the TCS customer classification/type mapping error that was incorrectly fixed as 'CT1'.
Notes
- None.
[2.16.0]
Breaking Changes
- The output has been split into three databases for compatibility with schema 52.
- The pole data path configuration has been moved from a command line argument to the processor config. You will need move any parameters passed previously to
the
-plcommand line argument into thepoleDataLocationattribute in the processor config.
New Features
- Added support for SQL server PoF connections. This includes the following new processor configuration parameters:
pofDatabaseTypeallows you to choose between anORACLEorSQL_SERVERdatabase. Defaults toORACLE.sqlServerIntegratedSecurityflag allows you to turn on Windows integrated security rather than using a username/password.enmacSchemaandtcsSchemathat can be used to control the names (case-sensitive) of the schemas containing the PoF data.
- Meters can now be processed from the PoA/PoF TCS schema instead of a meter mapping file by setting the processor configuration option
meterSourcetoTCS. When usingTCSas the meter source, you should populate thetcsCustomerTypeMappingsin the processor configuration. - You can now control the logging level via the
GIS_EXTRACTOR_LOG_LEVELenvironment variable rather than having to create your own logback. Use one of [TRACE,DEBUG,INFO,WARN,ERROR], Defaults toINFO. - Pole data ingestion can now accept a JDBC path as a replacement for json files path via the
poleDataLocationattribute in the processor config. - Span ratings can be processed from a CSV file specified via the
spanRatingsPathattribute in the processor config. See documentation for file format details.
Enhancements
- Added support for CPPAL/UE processing for feeders without three-digit, zero-padded feeder numbering.
- Added logging for processed feeders with disconnected sections of network (including in the LV)
- Updated the default value assigner to use underground cable detection.
- Unused columns in the EE source impedance and tap settings CSVs are no longer required.
- Added support for linking to EE PoA/PoF components via alias and user reference matching. Previously this could only be done via an attribute.
Fixes
- Updated logic to run the duplicatePathConductorRemover process before the missingTransformerTerminalCreator process. This was done to fix an issue where removing duplicate conductors after creating the missing terminals would result in transformers with a single terminal.
- Feeder
firstNodeentries withrealNodesnow correctly create a feeder in the output model. - Feeders with a split from the first node no longer mark half the feeder as the substation when no EHV is processed.
- Removed Names that reference no longer existing IdentifiedObjects in the network after post-processing
Notes
- None.
[2.15.2]
Breaking Changes
- None.
New Features
- None.
Enhancements
- None.
Fixes
- Creation of a
Locationfor an object created from the mapping file is now opt in using the processor configuration file:EnergyConsumerviacreateEnergyConsumerLocations.EquivalentBranchviacreateEquivalentBranchLocations.
- Disabled the
EEtransformer fixing algorithms when running asCPPAL.
Notes
- None.
[2.15.1]
Breaking Changes
- None.
New Features
- None.
Enhancements
- None.
Fixes
- EquivalentBranches now have their locations created correctly.
Notes
- None.
[2.15.0]
Breaking Changes
- Switches are now guaranteed to have two terminals. Open switches with more than two connections in the GIS data may result in unintended connectivity, and
each of these will be logged at a
WARNlevel. - Source impedance csv (
-si) is now configured in the processor config file under the propertysourceImpedancesPath. Please remove-siarguments as they will be ignored. - Specific LV1 phases will no longer be trusted without the
--trust-lv1-phasescommand line option. Without the option, all LV1 phases will be treated asXN. - Running with company
EEno longer supports the powercor JSON format, only the GEOJSON format.
New Features
- Added support for processing multiple real node connections per connector.
- Added processing of DER register files for CPPAL.
- Added creation of default substation transformers. When no substation internals or sub-transmission network is present a default transformer will be created inside each Substation for every voltage level present off connected feeders.
- Added creation of default tap changer settings for substation transformers.
- Added creation and population of TapChangerControl settings for substation transformers based off regulator settings CSVs. These can be provided through the
processor config file using the field
regulatorSettingsPath. - Added population of the bch field of a PerLengthSequenceImpedence from the cable_types.json file (new field F_km).
- Added option the following new options:
-f3p,--force-three-phase-lvto force the LV network below a 3-phase transformer to ignore the phasing of the backbone and replace it with 3-phase.-pdn,--phase-debug-namesto append the phases before and after phase consistency processing to the names of all conductors.-qo,--quality-outputto change the quality output directory.
- Incorrectly connected isolating transformers that join the LV network to the upstream side of the transformer are now corrected. Any LV conductors that connect only to HV nodes will be removed, and the remaining LV network will be connected to an LV terminal. There may be graphical breaks due to the conductor removals, but the network will be connected.
- Added LineRegulatorSettingsProcessor with an implementation for CPPAL. This takes a CSV file (lineRegulatorSettingsPath) with configuration for regulators outside the sub-transmission network, and will create TapChangerControls for these regulators with the provided data.
- Added VoltageRegulatorSettingsProcessors with an implementation for CPPAL and EE. These take a CSV file (regulatorSettingsPath) with configuration for regulators inside Substations, and will create TapChangerControls for these regulators with the provided data.
- Added DefaultLineRegulatorTapSettingsProcessor which will create a default
RatioTapChangerfor voltage regulators that were missing them (all of them at the moment). This applies for both EE and CPPAL. - Added SubstationTransformerTapSettingsProcessor with an implementation for CPPAL and EE. The CPPAL implementation takes a csv file ( substationTransformerTapSettingsPath) which will be used to create RatioTapChangers for zone substation transformers. The EE implementation will create default RatioTapChangers for all zone substation transformers.
- Added creation and population of
RatioTapChangersettings for distribution transformers based off a tap settings CSV. These can be provided through the processor config file using the fieldtxTapsPath. If you are processing asCPPAL, you must also providetxTapsMappingPathCPPAL. See docs for file formats. - Added multi argument option
--phase-consistency-debug-idswhich can be used to debug the phases of an item throughout the phase consistency processing. - Support for reading Sincal SQLite databases for conductors/transformers.
Enhancements
- The network processor now ensures that every transformer end has a terminal, creating one if it was missing from the source data.
- Greatly improved the performance of the
VoltageLevelAssigner. - Improved logging about empty JSON files in the source data directory.
- Filtered the attributes being read from the GIS source files to save substantial amounts of memory.
- Support migrator-sdk 0.12.0
- Added source impedance processing for CPPAL.
- Updated the PCOR formatted data processing to support LV phases.
- Transformers with unknown configration now default to 3-phase if they have a rating of 100 kVA or more.
- Subtrans busbars will now default to 3-phase if no other phase information is given.
- Transformer end terminals will now be matched by voltage even when the source data has a mix of L-L and L-N voltages.
- Nodes that are not transformers or switches wil now be moved to the side (and attached) to allow a conductor to have its segments stitched.
- Power transformer LV terminals that do not match an ends ratedU exactly, will be assigned to any available LV end.
- All vestigial lines will now be removed from transformers with more than two terminals rather than only if there was exactly one.
- Busbars will now default to 3-phase if their phases are unknown.
- CPPAL meter numbers are now used to set the number of phases on an energy consumer. A and CZ: single-phase, B and DZ: 3-phase.
Fixes
- Old transformer delta files in the GIS data directory are no longer incorrectly processed.
- 3 winding transformers will now have transformer codes correctly applied
- Transformers with extra downstream terminals without matching ends will now be reconfigured to have a single downstream terminal.
- We will now create ends and specify voltages off adjacent equipment for transformers in CPPAL's network if no voltage JSON properties are present.
- Transformer ratings are now correctly read from
Nameplate Rating (MVA)in the sub-trans network. - Correctly connecting LV and HV when they use a mix of real and logical connectors.
- The terminals on a transformer that are connected to any removed vestigial conductors are now correctly removed.
- Added the following fixes to the phase consistency processing:
TransformerPhaseProcessorno longer marks downstream loops from transformers as upstream terminals. This was caused by looping back through the transformer and finding an upstream path.- Prevent cross phasing bug when a dual site single-phase transformer has an extra connection to the HV bus.
- Transformers supplying LV2 phases are correctly applied if the upstream terminal knows its phases.
- LV2 phases are correctly considered valid phases for the LV side of a single-phase or SWER transformer.
- Only 3-phase transformers will be processed before spreading phases to prevent incorrect replacement of LV2 network segments.
- Stopped spreading repaired 3-phase splits through transformers and open switches.
- Upstream paths from known single-phase transformers correctly resolve conflicts using
ABC. - Tertiary LV terminals on isolating SWER transformers are no longer replaced with SWER phasing.
- Dropped the phase spreading priority of
ABCN, as many underground cables are markedABCNeven when all cores are not energised. - Loop processing now correctly updates all the terminals on
ConductingEquipmentit modifies, rather than just the terminals involved in the loop. - Phases are now spread in subtrans.
- Split phase processing is now applied in subtrans and LV.
IncompatiblePhaseFixerhas had the following fixes applied:- no longer replaces correct phases on split phase LV.
- no longer breaks split phase loops with junctions.
- repairs transformer upstreams with conflicting, known single-phase transformers correctly via a junction.
- transformers in a loop are now checked when detecting if an incompatible phases can be spread downstream.
- repairs the high voltage (upstream) side of a transformer if it is in a loop (e.g. dual transformer site).
SplitThreePhaseRepairernow handles incorrect extension of cable before split with junctions.- Invalid downstream phases are now replaced when chained through unknown equivalents that hide the conflict. e.g.
AB -> XY -> BCwill be replaced withAB -> AB -> AB. SplitThreePhaseRepairerwill no longer convert three transformer SWER sites to a 3-phase split.- The
XyPhaseProcessorwill now search downstream for hints on what phases to apply when there are multiple options. TransformerPhaseProcessorwill now leave updated terminals as X/Y phases to prevent phase inconsistencies in the following processors.- Regulators will no longer use their phases to determine connectivity as the phases specified on a regulator are the phases being regulated, so some regulators (e.g. open delta) drop phases incorrectly. This will need to be updated in the future if we need to mmodel these regulators fully.
- Transformer ends are now assigned the correct terminal when they are a mix of L2L and L2N voltages that are the same voltage level (e.g. 22kV and 12.7kV), rather than being assigned based on the order in the source files.
- Attributes containing "unknown" or empty values are now excluded when searching for values in multiple attributes. e.g. phases or names.
- Fixed potential concurrent modification in MultipleWindingTxProcessor when disconnecting terminals.
Notes
- None.
[2.14.0]
Breaking Changes
- Conductors with no line type information that are simulated, internal or busbars are now given an impedance of
ZEPBEN_ZERO_IMP_PLSIand assetInfo ofZEPBEN_UNRATED_WIRE_INFO, which are excluded from the "most common" checks in the default value assigner.
New Features
- LV feeders are now added on the secondary terminal of each distribution transformer.
- Added support for split 3-phase backbones, where three single core cables are run underground.
- Added "repairing" of CPPAL regulators. See doco for more details.
- Added nodes config parameter
reactorClasses, an array of GIS class names, which is used to define whichLinearShuntCompensatorsshould be created with a reactive susceptance (negativebPerSection). If the rating of the reactive susceptance is unknown, it will be set to the equivalent value of the nodes config parameterdefaultReactorSizeKVAR, which defaults to 25 kVAR. - Defaults for
WireInfo,PerLengthSequenceImpedance, andPowerTransformerInfocan now be specified in the processor config.
Enhancements
- Enabled voltage processing for CPPAL now that the LV GIS files correctly connect the LV circuit for ISO transformers to the transformer, rather than to the HV primary connector. This processing provides voltages to the LV simplification to ensure they are placed on LV feeders.
- The network hierarchy can now contain
depotsbetweenregionsandzones. These are not processed in the EWB network model, but no longer break the processing. - Equipment above a feeder head is now added to the substation of that feeder, even when subtrans is not loaded.
- The evolve-sdk now correctly assign AuxiliaryEquipment and ProtectionEquipment to Feeders and LvFeeders.
Fixes
- None.
Notes
- None.
v2.13.0
Breaking Changes
- Generating new database schema.
- Relocated connection point identifiers (e.g. NMI) to be stored as a 'Name' associated with a
UsagePointrather than as thenameof aLocationassigned to aMeter.serviceLocation. - LV
UsagePointinstances that can not find theirEnergyConsumerare no longer associated directly to aPowerTransformer. They are now connected via a generatedEnergyConsumervia anEquivalentBranchto the LV side of thePowerTransformer - Setting
EnergySource.isExternalGridrather than creatingEnergySourcePhaseinstances on external grid sources. - White-spacing in feeder names is replaced with an underscore when processing geojson.
- Updated phase extension to extend downstream first, and not through transformers.
- The phases of transformer terminals are now corrected based on the transformer type. The terminals on either side of a transformer can now be assigned different phases
- Added logic to remove incorrect duplicate substation sites when processing EE data.
- Added logic to reconfigure transformers incorrectly arranged in series to be in parallel when processing EE data.
- Added logic to prevent saving and assigning EE 'NOCODE' cable type.
New Features
- The connection point identifier can now be specified via the optional command-line option
-cpi, -connection-point-identifier <IDENTIFIER>. If this option is not specified it will default toNMI. - Added functionality to assign default values for transformer and lines if possible.
- Added functionality to run use case validation for the created EWB db.
- Populating
PowerTransformer.function. - Unknown phases are now "random" allocated to primary phases.
- You can now suppress the "missing feeder" warning via the processor config option
warnOnMissingFeeder, which defaults totrue. - Added quality checks with command-line argument
--quality-checksfor controlling which checks run. - Support has been added for importing source impedance values. See
--source-impedancescommand line argument. - Added new processor configuration option
includeLonelyMetersto control inclusion of meters which do not map to the processed network. Should only be used for limited scope network processing, otherwise it will suppress warnings about meter data quality. See processor configuration help for details.
Enhancements
- Added logic to spread voltage based on the highest ratedU of PowerTransformerEnds in a voltage level for EE processing.
- Added logic post-process transformers with more than 2 windings for EE processing:
- Every N > 2 winding transformer at the HV level, is updated so that only 2 ends are kept, all upstream lines are moved to the primary side of the transformer, and all downstream are moved to the secondary side.
- Every N > 2 winding transformer at the LV level is removed and the lines that come off of it are connected.
- Added logic to assign specific default PerLengthSequenceImpedance and WireInfo to service lines for EE data processing.
- Improved logging of processing so there are no longer times when you are not told what is being processed.
- CPPAL conductors will now extract generic phases from "no cores" when "phase colour" is not available.
Fixes
- Fixed bug that caused PowerElectronicConnections to get assigned incorrect phases when processing EE data.
- Added missing baseVoltage to PowerTransformerEnds when processing EE data.
- Updated TransformerEndProcessor logic to assign terminals to ends, it now takes into account the closest voltage instead of the directly adjacent one. This change fixes ends being disconnected when they had their directly adjacent conducting equipment without voltage.
- Updated simplified lv creation logic to assign the PowerTransformer's lv terminal's phases to its associated EquivalentBranch.
Notes
- None.
v2.12.0
Breaking Changes
- Updated to support nullable primitives and latest database schema.
- Renamed command line configuration option
-c(--cable-types) to-tc(--types-config). - Extracted cable-type r, x, r0,and x0 values from access-db are now correctly converted to ohm/m.
- Updated processing of meter mapping files for EE to process a new file which maps transformer-premises-nmis. After this change premises map to UsagePoints and nmis to meters.
New Features
- You can now import catalog information from a sincal master database. The following tables are supported:
StdLineStdTwoWindingTransformerStdThreeWindingTransformer
Enhancements
- None.
Fixes
- None.
Notes
- None.
v2.11.0
Breaking Changes
- The tool no longer outputs an
id-correlations.jsonfile and instead populates the GIS id as additional name against the node or the conductor. - Removed prettify json output
-pflag used by the id correlations writer.
New Features
- None.
Enhancements
- None.
Fixes
- None.
Notes
- None.
v2.10.0
Breaking Changes
- None.
New Features
- None.
Enhancements
- None.
Fixes
- Fixed issue where lv switches were not getting flagged as open after the addition of the "realNodes" property to the conductors in lv json files.
- Fixed issue with photo voltaic units not being extracted from essential data due to incorrect key.
Notes
- None.
v2.9.0
Breaking Changes
- None.
New Features
- None.
Enhancements
- None.
Fixes
- None.
Notes
- None.
v2.8.0
Breaking Changes
- Added functionality to remove vestigial lines connected to transformers in CPPAL data.
New Features
- Now populating the metadata with the extractor name and version.
- Added processing for regulator ratings.
- Now populating susceptance for linear shunt compensators.
Enhancements
- None.
Fixes
- None.
Notes
- None.
v2.7.0
Breaking Changes
- None.
New Features
- Added low voltage threshold cmdline argument to set the upper limit at which voltage is considered low voltage.
- PowerTransformerEnds are now created and populated with voltage and rating information if available.
Enhancements
- Voltages can now be specified in MV and V in addition to kV. Voltages without units will be parsed as V.
- Voltages of 'LV' and 'service' are now parsed.
- Added support for neutral phases to the conductor stitcher.
Fixes
- The conductor stitching has been fixed to handle an overlapping segment attached to the first connector of a multi segment line.
- Removed unnecessary warning about SWER voltages with ABC phasing when the extract-phases arg is set to false.
- Correctly combining multiple candidate phases when stitching conductors.
- Fixed bug that would cause the gis extractor to replace valid SWER phases (A,B,C) with unknown SWER phases (X).
Notes
- None.
v2.6.0
Breaking Changes
- Updated PoleData to get the property "LIS_NUMBER" instead of "NEW_POLE_NO".
New Features
- None.
Enhancements
- None.
Fixes
- None.
Notes
- None.
v2.5.0
Breaking Changes
- None.
New Features
- None.
Enhancements
- Terminal sequence numbers are now indexed from 1 rather than 0 to be in line with the CIM.
- ID correlations are now added for usage points.
Fixes
- None.
Notes
- None.
v2.4.0
Breaking Changes
- None.
New Features
- Added logic to remove excess white spacing from Pole descriptions.
- Added phase processing. This can be disabled via the command line using the
--extract-phasesoption. - Added phase inference when phase information is clearly wrong. See Notes for details.
Enhancements
- None.
Fixes
- Fixed a bug that would cause HV conducting equipment to have no lngLats and wrong names.
Notes
Phases will be inferred with the following rules:
All segments with a SWER voltage will be marked as SWER.
e.g. X - X - BR => X - X - X.
Segments in the middle of a run that differ from the segments at the end of the run will be changed to match the ends.
e.g. RWB - BR - BR - RWB => RWB - RWB - RWB - RWB or WB - RWB - WB => WB - WB - WB.
Single phase lines will be updated such that all single phases segments match the phases of the tee off.
e.g. RWB - RW - WB => RWB - RW - RW.
v2.3.0
Breaking Changes
- Now exporting to the CIM version of the database.
New Features
- Added processing for poles.
- Added limited support for
realNodes. Processes only the first entry if there are multiple.
Enhancements
- None.
Fixes
- None.
Notes
- None.
v2.2.0
Breaking Changes
- None.
New Features
- None.
Enhancements
- No longer creating circuits if the name is the same as a feeder or substation.
- Improved error message when circuit names do not contain substations.
- Added support for
hv_termination_jointnodes.
Fixes
- Correctly identifying head breakers at both ends of parallel feeders.
- Correctly handling normally open feeders with no distribution side network.
Notes
- None.
v2.1.0
Breaking Changes
- Now exporting to the CIM version of the database (v16.0).
New Features
- Unused connectors have been removed from feeder breakers.
- Now populating EHV classes if there is a sub-transmission file included in the source data.
Enhancements
- Conductor names now use the
name plateattribute if it is available. - Substation transformers names have been improved.
Fixes
- Stopped creating mid-span terminals for stitched conductors when the terminal is unused.
- We are now correctly detecting conductors with reversed IDs as duplicates.
- Stopped the conductor stitcher from removing feeder heads when there are errors in the source data.
- Correctly identifying feeders with dashes in their names and underscores in their filename.
- Detecting distribution side of a feeder when there are no distribution transformers.
Notes
- None.
v2.0.0
Breaking Changes
- Now exporting to the CIM version of the database (v14.0).
- Changed the format of the cable types configuration JSON to have the previous array nested in an object with a key of
cableTypes. See notes for more details.
New Features
- Conductor paths are now processed.
- Added support for processing LV files.
- Added support for processing sub-transmission files.
- Operational restrictions can now be extracted via a connection to PowerOn Fusion. Please refer to the documentation for details.
Enhancements
- None.
Fixes
- Voltages are now spread correctly to nodes.
- Now only collapsing junctions when stitching conductors.
- Populating feeder names from the
hvFeederfield rather than the filename, fixing the names of feeders when there is a date/time in the filename.
Notes
- Cables types configration needs to be updated in the following manor:
{
"cableTypes": <OLD_CONFIG_CONTENTS>
}
v1.1.0
Breaking Changes
- Now exporting to v10.0 of the network database.
New Features
- None.
Enhancements
- Removed node to node fake connections.
- Moved feeder start point to the first node.
Fixes
- Removed trailing ",1" from all single segment conductors.
Notes
- None.
v2.7.0
Breaking Changes
- None.
New Features
- None.
Enhancements
- Voltages can now be specified in MV and V in addition to kV. Voltages without units will be parsed as V.
- Voltages of 'LV' and 'service' are now parsed.
Fixes
- The conductor stitching has been fixed to handle an overlapping segment attached to the first connector of a multi segment line.
Notes
- None.
v2.6.0
Breaking Changes
- Updated PoleData to get the property "LIS_NUMBER" instead of "NEW_POLE_NO".
New Features
- None.
Enhancements
- None.
Fixes
- None.
Notes
- None.
v2.5.0
Breaking Changes
- None.
New Features
- None.
Enhancements
- Terminal sequence numbers are now indexed from 1 rather than 0 to be in line with the CIM.
- ID correlations are now added for usage points.
Fixes
- None.
Notes
- None.
v2.4.0
Breaking Changes
- None.
New Features
- Added logic to remove excess white spacing from Pole descriptions.
- Added phase processing. This can be disabled via the command line using the
--extract-phasesoption. - Added phase inference when phase information is clearly wrong. See Notes for details.
Enhancements
- None.
Fixes
- Fixed a bug that would cause HV conducting equipment to have no lngLats and wrong names.
Notes
- Phases will be inferred with the following rules:
All segments with a SWER voltage will be marked as SWER.
e.g. X - X - BR => X - X - X.
Segments in the middle of a run that differ from the segments at the end of the run will be changed to match the ends.
e.g. RWB - BR - BR - RWB => RWB - RWB - RWB - RWB or WB - RWB - WB => WB - WB - WB.
Single phase lines will be updated such that all single phases segments match the phases of the tee off.
e.g. RWB - RW - WB => RWB - RW - RW.
v2.3.0
Breaking Changes
- Now exporting to the CIM version of the database.
New Features
- Added processing for poles.
- Added limited support for
realNodes. Processes only the first entry if there are multiple.
Enhancements
- None.
Fixes
- None.
Notes
- None.
v2.2.0
Breaking Changes
- None.
New Features
- None.
Enhancements
- No longer creating circuits if the name is the same as a feeder or substation.
- Improved error message when circuit names do not contain substations.
- Added support for
hv_termination_jointnodes.
Fixes
- Correctly identifying head breakers at both ends of parallel feeders.
- Correctly handling normally open feeders with no distribution side network.
Notes
- None.
v2.1.0
Breaking Changes
- Now exporting to the CIM version of the database (v16.0).
New Features
- Unused connectors have been removed from feeder breakers.
- Now populating EHV classes if there is a sub-transmission file included in the source data.
Enhancements
- Conductor names now use the
name plateattribute if it is available. - Substation transformers names have been improved.
Fixes
- Stopped creating mid-span terminals for stitched conductors when the terminal is unused.
- We are now correctly detecting conductors with reversed IDs as duplicates.
- Stopped the conductor stitcher from removing feeder heads when there are errors in the source data.
- Correctly identifying feeders with dashes in their names and underscores in their filename.
- Detecting distribution side of a feeder when there are no distribution transformers.
Notes
- None.
v2.0.0
Breaking Changes
- Now exporting to the CIM version of the database (v14.0).
- Changed the format of the cable types configuration JSON to have the previous array nested in an object with
a key of
cableTypes. See notes for more details.
New Features
- Conductor paths are now processed.
- Added support for processing LV files.
- Added support for processing sub-transmission files.
- Operational restrictions can now be extracted via a connection to PowerOn Fusion. Please refer to the documentation for details.
Enhancements
- None.
Fixes
- Voltages are now spread correctly to nodes.
- Now only collapsing junctions when stitching conductors.
- Populating feeder names from the
hvFeederfield rather than the filename, fixing the names of feeders when there is a date/time in the filename.
Notes
- Cables types configration needs to be updated in the following manor:
{
"cableTypes": <OLD_CONFIG_CONTENTS>
}
v1.1.0
Breaking Changes
- Now exporting to v10.0 of the network database.
New Features
- None.
Enhancements
- Removed node to node fake connections.
- Moved feeder start point to the first node.
Fixes
- Removed trailing ",1" from all single segment conductors.
Notes
- None.
[1.0.0]
Initial release