2024.4.30.125849
(Apr 30, 2024)
#Core
[important] upgrade to LabVIEW 2017 for plugin and other features
#Side-Loop Support
[update] update palette
#Addon
[change] change csm log file extension to .csmlog
#DebugTool
[important] add pop-up menu plugin
[add] #167 pop-up menu for script constant string: Make Argument Safe/Revert Safe String
[add] pop-up menu for script constant string: Hightlight CSM Script
[add] add CSM - Remove all CSM Bookmarks tool to remove all comment bookmarks of CSM template
[update] add error log window in LogViewer to highlight error occurred
[update] some minor improvement
#Utility
[add] add CSM Data Type String.vi in palette
[add] add CSM Data Type String to Enum.vi in palette
#Documentation
[update] #256 update icons
yao
was a contributor to this release
2024.3.29.140305 (Mar 29, 2024)
#Core
[fix] #258 Terminated CSM will not be included in CSM - List Modules.vi any more.
[fix] #262 Advanced operation(register,unregister,status,interrupt..) will not be filtered by CSM - Filter Messages to Non-Existing Modules.vi any more.
[add] IMPORTANT: #259 User defined operation "->" is permitted. You can now assign a user-defined tag to a local CSM message, which offers greater flexibility for creating add-ons.
#Side-Loop Support
[add] Add option of immediately(F) option for CSM - Request CSM to Post Message.vi and CSM - Request CSM to Broadcast Status Change.vi
[add] Add CSM - Module Exit Event.vi for triggering Non-CSM side loop exit.
[add] #249 Add "CSM - Flood of Events Handler Side Loop" template
#DebugTool
[add] IMPORTANT: add a new tool: CSM Debug Console.
[improve] LogViewer: 1. Add Clear History Button; 2. Add History Length Entry; 3. Add Back to Top Button; 4. Add Log File Support
[improve] Improved names for built-in tools in the tool launcher.
[improve] all tool window will be open in the center the primitive screen.
#Addons
[add] LoopSupport: addon to define a loop in CSM, which is used in NEVSTOP-Lab project
[add] FileLoggerSupport: addon to log CSM activities to log file.
#documentation
[improve] #260 improve pre-build action script to fix palette VI names
#installer
[improve] #257 reduce installation time
[improve] Improvement according to vi-analyzer
yao
was a contributor to this release
2024.3.3.173442 (Mar 03, 2024)
#GlobalEvent
[improve] improve release logic. Use watchdog for background thread exit
[improve] minor fix #254
#Utility
[add] #251 add "CSM - Filter Messages to Non-Existing Modules.vi"
#Tool
[add] #252 add a toolbar entry to launcher CSM tools
#Documentation
[fix] #246 fix vipm.io links
[improve] #245 improve user experience
[improve] Update example VIs' icons/Palette icons
yao
was a contributor to this release
2024.1.31.114102 (Jan 31, 2024)
#Core
[update] #242 For async-message, if target turned invalid before response, no ¡°target error¡± throw out
[fix] Clear Last Message's Error before new remote message, to avoid some misinformation
#Arguments
[fix] Fix the error input of "CSM - Convert HexStr to Data.vi"
[fix] minor fix #237
#Global Event
[add] #240 add "Module Created" and "Module Destroyed" log to global log system
[fix] #238 Align global event ref lifecycle with a background thread, rather than the caller VI
#Utility
[add] Add "CSM - Remove Duplicated Following Messages.vi", to remove duplicated message
[add] Add "CSM - Replace Substitution Marks in Messages.vi", to help build multiple-line states easily
#Documentation
[add] Create web wiki for CSM: https://nevstop-lab.github.io/CSM-Wiki/
yao
was a contributor to this release
2023.12.25.111604 (Dec 25, 2023)
# Core
[Critical] #207 ¡°Target Busy Error¡± is absolete. Now a sync-call message will not generate "Target Busy Error" but waiting until timeout.
[fix] #219 #225 #226 fix bug that the cache system is ineffective when CSMs start/exit in the same microsecond
[fix] #197 fix the bug of timeout behavior of CSM - Send Message and Wait for Reply.vi
[fix] #196 fix the bug that status of agent(worker Mode) could not trigger registered action
[fix] #215 now CSM - Module Turns Invalid (CSM) support Agent & Chain
[fix] #217 fix the bug that Single Character could not be used as module name
#GlobalLog
[add] #214 add Error Handler which logs error in global log if any.
[update] #220 #221 Log Error Information in CSM - Generate User Global Log.vi
[fix] #212 Remove some meaningless items in log
#Utility
[add] #209 add Build Exit Messages of CSMs.vi
[add] #216 add two sync-up VI: CSM - Wait for All Modules to Exit.and CSM - Wait for All Modules to be Alive
[add] add Random Change Flag.vi for internal bug fix.
# Installer
[improvement] #203 Change post-install action window to JKISM
[update] #228 show relative path in post-install action window
# Template
[add] add CSM - No-Event Structure Template - Tiny.vi
[minor update] #211 #223
yao
was a contributor to this release
2023.11.29.94143 (Nov 29, 2023)
# Core
[add] #144 add build-in chain of responsibility mode "$" as key words in module name.
[add] add CSM - Break Down Multiple States String.vi
[add] #184 add CSM - Keywords.vi for exposing keywords of CSM
[add] #161 Response/Async Response carry the Error information from target CSM module
[add] Allowed Messages(Empty for all) terminal for Parse State Queue++.vi
[improve] make Parse State Queue++.vi block diagram clear
[imporve] #140 Improve CSM - Send Message and Wait for Reply.vi and CSM - Post Message.vi
[fix] #173 fix bug that sync message(-@) is blocking by mass of async message(->).
[fix] fix No source module name for "Macro: Exit"
[fix] show pre-state argument for Response(sync-call)
[fix] show pre-state/pre-argument for "Target Error","Target Timeout Error" or "Traget Busy Error"
# Arguments
[add] Convert Error with Argument API and example
# Template
[critical] Change Error Status Arguments to SafeString as Default in template
[add] add a stub string constant which is for exiting sub-modules
[update] #186 show "Init State("Macro: Initialize")" control for templates
[update] init error shift resgister in front of loop
[fix] #179 Show documentation case by default
# documentation
[fix] #180 Update description of quick-drop VIs in documentation palette
yao
was a contributor to this release
2023.10.29.195953 (Oct 29, 2023)
[critical]#169 show both source message and arguments for response/async response, which will broken old module but easy to fix.
[add] #158 Add State Table - DebugTool
[add] #156 Create CSM_Tool_Launcher entry in Tool Menu
[add] #154 Create stub folder [labview]\templates\Communicable State Machine(CSM) for template VIs
[add] Apache License 2.0 License
[add] update More template palette tool
[add] Example of demostration of build-in error handling framework
[improve] #160 improve debug tools of CSM
[improve] #174 Show all keyword in template
[improve] #168 template: add case in Response/Async Response
[fix] #153 Small fix and update to templates
[fix] #150 Fix description in pages of vipm.io
[fix] #157 Fix QD of CSM_Tool_Launcher
[fix] #164 fix // is not included in Make Argument Safe.vi
[fix] #171 register status@* should exclude itself from list, to prevent recursive call.
yao
was a contributor to this release
2023.10.2.123812 (Oct 03, 2023)
1. Template of JKISM++ Module
- With Event Structure Template
- No-Event Strcture Template
- With Event Structure Template(Tiny)
2. Advance API for Module Managment
- List Modules
- Check if Module Exists
- Start Async/Sync Call
3. Examples
- Base Concepts
- Create a reuse Module
- Caller is JKISM Scenario
- Caller is Other Framework Scenario
- Advance Examples
- JKISM with Side Loop as a Module
- Action Workers Example
4. Tools
- Localization API/Template Tool
- Debug Tool for monitoring system change
- Debug Tool for status dashboard
yao
was a contributor to this release