DYN-10078: info messages version fix2#16924
Conversation
I've added the new method OnLogInfoMessage(string message, Version introducedInVersion) in the LogWarningMessageEvent class. This will allow that when a node is raising a info message it could provide the Version in which was introduced in this way in new Dynamo version we won't be showing the info message. In DynamoModel is the logic that will decide if it will show the info message or not based in the Version that was used to create a dyn file and the current Dynamo version. Finally I've updated the PublicAPI.Unshipped.txt file adding the public methods. Also I've added 6 unit tests for validating the next cases: - Empty FileName (new workspace) and non-null IntroducedInVersion → suppresses info messages - Empty FileName (new workspace) and no IntroducedInVersion → log info messages - No IntroducedInVersion → always logs info messages - workspaceVersion < introducedInVersion → logs info messages - workspaceVersion >= introducedInVersion → suppresses info messages
Fixing PublicAPI.Unshipped.txt and PublicAPI.Shipped.txt
There was a problem hiding this comment.
See the ticket for this pull request: https://jira.autodesk.com/browse/DYN-10078
|
@aparajit-pratap |
There was a problem hiding this comment.
Pull request overview
This PR implements version-aware info message filtering for Dynamo nodes. The feature allows info messages to be conditionally displayed based on the Dynamo version used to create a workspace, preventing redundant messages for users working with newer workspace versions.
Changes:
- Added new
OnLogInfoMessageoverload accepting aVersionparameter to specify when an info message was introduced - Modified
LogWarningMessageEventArgsto include an optionalIntroducedInVersionproperty - Implemented version comparison logic in
DynamoModelto suppress versioned info messages for workspaces created at or after the specified version - Added workspace version preservation logic during engine resets to maintain correct version tracking
- Created comprehensive unit tests covering all versioned message filtering scenarios
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| src/NodeServices/MessageEvents.cs | Adds new constructor and property for versioned messages; changes LogInfoMessage event from internal to public; adds OnLogInfoMessage overload with version parameter |
| src/NodeServices/PublicAPI.Unshipped.txt | Declares new public API members for the versioned info message feature |
| src/NodeServices/PublicAPI.Shipped.txt | Moves original OnLogInfoMessage signature to shipped API list |
| src/DynamoCore/Models/DynamoModel.cs | Implements version filtering logic; adds workspace version preservation during engine resets |
| test/Engine/FFITarget/TestMessageLog.cs | Adds test helper class with methods to trigger versioned and non-versioned info messages |
| test/DynamoCoreTests/VersionedInfoMessageTests.cs | Comprehensive test suite covering all versioned message filtering scenarios |
| test/core/versionedinfomessage/workspace_v2.0.0.dyn | Test fixture for workspace version 2.0.0 |
| test/core/versionedinfomessage/workspace_v3.0.0.dyn | Test fixture for workspace version 3.0.0 |
| test/core/versionedinfomessage/workspace_v4.0.0.dyn | Test fixture for workspace version 4.0.0 |
| doc/distrib/xml/en-US/FFITarget.xml | Adds XML documentation for new test helper methods |
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
fixing src\NodeServices\PublicAPI.Unshipped.txt
After merging master latest changes in feature branch the PublicAPI.Unshipped.txt and PublicAPI.Shipped.txt were replaced so I added again the entries in PublicAPI.Unshipped.txt
jasonstratton
left a comment
There was a problem hiding this comment.
LGTM, but Dynamo SelfServe is failing
|
|
merging, @RobertGlobant20 can you document this in a wiki, how we can leverage this and share with devs, so that they can use it in future? |



Purpose
Show/Hide node info messages according to the Dynamo version in which the graph was created.
I've added the new method OnLogInfoMessage(string message, Version introducedInVersion) in the LogWarningMessageEvent class. This will allow that when a node is raising a info message it could provide the Version in which was introduced in this way in new Dynamo version we won't be showing the info message. In DynamoModel is the logic that will decide if it will show the info message or not based in the Version that was used to create a dyn file and the current Dynamo version. Finally I've updated the PublicAPI.Unshipped.txt file adding the public methods. Also I've added 6 unit tests for validating the next cases:
Declarations
Check these if you believe they are true
Release Notes
Show/Hide node info messages according to the Dynamo version in which the graph was created.
Reviewers
@aparajit-pratap @zeusongit
FYIs