This relesase note is a summary of the changes in the OPC UA Modeler and the OPC UA Modeler Extension in its core module @sterfive/opcua-modeler-ex. See below to find the version of the OPC UA Modeler Extension and the node-opcua library that is compatible with the version of the OPC UA Modeler.
Versions table
OPC UA Modeler Cli - Release notes
Release 2.0.0
- feat: upgrade to node-opcua 2.160.0
- fix: adjust to changes in node-opcua 2.160.0
- improve: viewer template and use of frontmatter
Release 1.43.0
- fix: node-opcua 2.158.0 for fixing error in simulator with enumeration dataType
Release 1.42.0
-
(generate) fix styling issue in markdown table generation.
-
(generate) improve error message when referenceType is missing.
-
fix duplicated doc in method markdown generation.
-
feat: improve error reporting with precise YAML location
Significantly enhances the error reporting capabilities when parsing YAML models by pinpointing the exact location of issues within the source file.
-
Integrate the
yamlparser to access detailed source mapping information, including line and column numbers. -
Add a new utility to resolve a conceptual path (e.g.,
MyObject.MyProperty) to its precise location in the YAML document. -
Update the error, warning, and logging context to include the filename, line, and column, making it much easier for users to debug their models.
-
fix test with newest nodesets
-
(reverse) fix issue with abstract DataType extraction.
-
Release 1.41.0
- minor packages update
Release 1.40.0
- fix regression in modellingRule handling.
- adjust json schema.
- feat: allow custom nodeId s=XXX to instances
- fix state machine example
- fix analog data item type (cannot be property)
Release 1.39.0
- add new nodesets, define new alias for new nodesets.
Release 1.38.0
-
add
addInsproperties for add in composition inside an Object or ObjectType -
add
defaultInstanceBrowseNameproperties to an ObjectType declaration -
add promoteToMandatory to specify which properties or componenent of the ObjectType or Variable Type subsub that should be promoted from "Optional" to "Mandatory".
-
fix description generation in FiniteStateMachine state
-
automatically populate availableTransitions and availableStates variables when overloaded in the derived FiniteStateMachine defined in the yaml file.
-
add description in FSM state and tested initial state.
-
add promoteToMandatory and implementInterfaces.
@sterfive/opcua-modeler-ex s- Release notes
4.10.0 - 2026-01-21
Major Features
- Diagramming: Introduced a new "Vertical Spine" diagram layout to improve the visualization of deep class hierarchies.
- Diagramming: Added support for Mermaid diagrams and integrated Puppeteer for high-quality rendering.
- Diagramming: Support for advanced component references (orderedComponents, physicalComponents, containedComponents, attachedComponents) in diagrams.
- Documentation: Completely overhauled Markdown generation with support for nested levels, better table formatting, and improved PlantUML integration.
Added
- TypeScript: Enhanced TypeScript definition generation (.d.ts) for better type safety and code folding regions.
- Validation: Added checks for duplicated enum values in yaml2xml conversion.
- Dependencies: Added puppeteer, mermaid, and svgo to package.json.
Changed
-
Core: Updated core node-opcua libraries to version 2.160.0.
-
Build: Updated TypeScript to version 5.9.3.
-
CI: Updated CI pipelines to support Puppeteer and Chrome Headless execution.
Fixed
- Loader: Fixed issues with type definition overrides and shadow browse name detection.
- Tests: Improved test stability and timeouts for CI environments.
All notable changes to this project will be documented in this file.
3.43.0 - 2026-01-06
Changed
- Graphviz: Improved layout algorithm for hierarchical graphs to be better balanced and more compact using virtual clusters and rows.
- Documentation: Enhanced markdown generation with better table formatting, header normalization, and improved reference tables.
3.42.0 - 2026-01-05
Added
- Validation: Added a new YAML validation script to verify nodeset files against the schema.
- Loader: Implemented strict type definition verification in YAML loader to prevent illegal redefinitions.
- Loader: Added detection for browse name shadowing in type hierarchies.
- Loader: Allow overriding
typeDefinitionin subtypes if the new type is a subtype of the original one.
Changed
- Schema: Updated
nodeset2.schema.ymlto useiso-date-timeforpublicationDateand refinedbrowsePathregex. - Schema: Allowed
accessLevelandvaluefields in instance definitions in the schema.
3.41.0 - 2026-01-02
Added
- Markdown: Added support for
!include(path)directive in markdown files to include external files. - Markdown: Added automatic header normalization when including markdown files.
- TypeScript: Added region comments to generated TypeScript definitions for better code folding.
Changed
- Documentation: Updated
buildDocletto support base directory for relative includes. - TypeScript: Refactored TypeScript definition generation to be cleaner and more structured.
- Yaml: Improved YAML model loading and saving to better handle property overrides and reduce redundancy in exported files.
3.23.0
- Replaced @hcc-js/wasm for graphviz.
- Updated husky config.
- Updated package and fixed structure XML output.
3.22.0
- Added test: overriding default UA namespace.
- Used 2020 instead of 1900 for default date year.
- Added the ability to inject a different version of the UA namespace.
3.20.0
- better handle accessLevel.
3.19.0
- Improved handling of components of an object that are also organized in a folder.
3.18.0
- Fixed symbolFilename variable assignment to include correct file extension.
- Added logging for symbolFilename existence and preset symbols length to provide more information during execution.
- Added extra check to detect badly overwritten components and properties.
- Displayed missing err.message.
- Added consistency check for overridden variable or object from base type.
- Added support for inite state machine with spare state and transition values.
3.16.0
- Fixed a few markdown generation issues with StateMachine.
- Checked import namespace URI consistency.
3.15.0
- Improved resolveNodeSetFilename to locate nodesetfolder when opcua modeler is installed globally as an npm package.
3.14.0
- Updated packages.
3.13.0
- Improved resolveNodeSetFilename to follow links.
- Fixed unbalanced dot graph issue.
3.12.0
- chore and reactoring
3.11.0
- updated graphviz (bug with arrow teetee still present).
- Improved graphviz generation.
3.10.1
- Fixed type in markdownImage doc.
3.10.0
- Added --markdownImage options and improved logging.
- Added ability to provide an empty -g prefix in y2m.
- Added missing tbody in tables.
- Fixed a few markdown formatting issues.
3.9.0
- Updated package.json.
- Handled version and publication date.
- Chased invalid dataType and fixed diagram of abstract state machine.
3.8.0
- Improved Variable support.
- Added support for recursive ObjectType at a deeper level.
3.7.1
- Fixed markdown generation.
3.7.0
- Minor adjustments.
- Updated packages.
3.6.0
- Improved error checking and modellingRule validation.
- Updated schemas.
- Used instead of definition.
- Added organized elements to topology sort.
- Fixed issues with incorrect modellingRule.
- Fixed kitchen in schema.
- Handled OptionalPlaceholder and MandatoryPlaceholder with abstract types.
- Added YAML AST.
- Displayed errors & warnings.
- Used withYamlPath instead of push/pop.
- Added warning message when types are not defined by logical order.
- Handled organizes in ObjectType and Object.
- Added schema validation.
3.5.1
- Fixed text eol.
- Updated packages.
3.5.0
- Updated packages.
- Improved state machine generation.
- Added tool to link node-opcua modules.
- Fixed dataType order processing.
- Ensured reference type starting with HasXXX have inferred inversedName.
3.4.1
- toMarkdownTable.
3.4.0
- Used HTML tables instead of markdown.
- Fixed SVG view port.
- Improved engineering unit inference.
3.3.4
- Fixed optional type (should have one n).
3.3.3
- Fixed state machine header level.
3.3.2
- Fixed XML comparison in tests (Windows).
- Checked correct use of typeDefinition and subtypeOf.
- Reverse: fixed description in method argument.
3.3.1
- Improved import_esm management.
3.3.0
- Fixed SVG generation.
3.2.0
- Updated packages.
3.1.0
- Added use case for derived StructureType.
- Updated packages.
- Added finite state machine support.
- Improved valueRank management.
- Fixed valueRank.
- Improved hasVariableType use case.