| Version | Change log |
| Understand 7.2 Build 12 Mar 11, 2026 |
New Features: Localization: Add Japanese translation files for the plugin manager. Editor: Add syntax highlighting for Markdown Entity Filter: Add 'Unused Methods' to entity filter for Basic Add 'Unused Objects' to entity filter for Python Interactive Reports: Convert batch graph plugin from Perl to Python and add ability to generate graphs for architectures Metrics: Add more architecture structural metrics (percentages of parent/root, recursive child count). Settings: Add ability to remove files from Analysis Log errors - "Remove Missing files" right click menu added to the the project->config->Files dialog. Improved handling of project configuration changes so that a language option change does not force a full reparse of files of other languages Settings: AI settings now show the model for providers like LM Studio. Python MCP Server: Update get_architecture_details tool to be more useful and actionable. Update mcp_server_for_understand_llm_optimized.py to allow launching in sse mode. Update mcp_server_for_understand_llm_optimized.py to use a strict json schema. VS Code Extension: Add auto-complete for the strings . :: and -> Language - Web: For Javascript, added 'Assign Initial' reference from properties to the initial value entity. Added ‘Renamecall’ and 'Call Indirect Possible' references for calls made through an exported object literal property. CodeCheck Checks: Allow running Dependency Checks and Compiler Warnings without a CodeCheck license. Added New MISRA23_6.4.3 CPP_DD031: A name that is present in a dependent base shall not be resolved by unqualified lookup Added new MISRA23_11.6.2: The value of an object must not be read before it has been set Added new MISRA23_15.8.1: User-provided copy assignment operators and move assignment operators shall handle self-assignment Added new MISRA23_28.6.4 and CPP_L046 The result of std::remove, std::remove_if, std::unique and empty shall be used Add check MISRA23_8.18.1: An object or subobject |
| Understand 7.2 Build 12 Feb 11, 2026 |
New Features: VS Code Extension: Improve hover text CodeCheck Checks: Added check CPP_DD031: Static Keyword in Array Brackets Added check MISRA23_28.6.3: An object shall not be used while in a potentially moved-from state Added check MISRA23_8.2.1: A virtual base class shall only be cast to a derived class by means of dynamic_cast Added check MISRA23_8.2.11: An argument passed via ellipsis shall have an appropriate type Added check MISRA23_8.2.4: Casts shall not be performed between pointer to function and other types Added check MISRA23_8.7.1 / CPP_P065: Pointer arithmetic shall not form an invalid pointer Added check PYTH_02: Static Checking – mypy Added option “Permissive error number macros” for DCL37-C Command Line (Und): Added web module search paths setting to und AI & MCP Server: Add more tools for architectures get_entity_source tool show source code at first reference for entities without source code Project: Added contextual Expand All to Project Browser; Expand/Collapse now respects selection Language – C#: Added Assign / AssignBy references for C# Bug Fixes: CodeCheck Checks: Improved accuracy of Unions checks: MISRA12_19.2, MISRA23_19.2, MISRA23_12.3.1, CPP_S006 Improved accuracy and options for Preprocessor #undef checks: MISRA04_19.6, MISRA08_16-0-3, MISRA12_20.5, MISRA23_20.5, CPP_P026 Updated keyword and identifier lists for: MISRA04_20.1, MISRA08_17-0-1, CPP_P023 Fixed false negative with nested parenthesized bitwise expressions in EXP46-C Compilers: Fixed handling of inline, __inline, and __inline__ keywords when using the GHS ARM compiler Project: Fixed issue where “Store analysis data in project folder” option did not create the local folder (applies to both Und and Understand) Plugins: Shared Tasks: Renamed option “Shared Tasks by Object Graph” for clarity Language – Java: Fixed missing assign references in some cases Fixed parser crash on certain Java source files Fixed slowdown when parsing Java files introduced in build 12 |
| Understand 7.2 Build 12 Jan 28, 2026 |
New Features: CodeCheck Checks: Added new MISRA C++ 2023 checks: MISRA23_15.1.4 – Ensure all direct, non-static data members are initialized before object access MISRA23_8.2.2 – Disallow C-style and functional notation casts MISRA23_9.2.1 – Prevent explicit type conversions as expression statements MISRA23_8.0.1 – Require parentheses to clarify expression meaning Added new C/C++ check: CPP_P034 – Invalid header name detection AI & MCP Server: Updated recommended AI models for analysis workflows Added new architecture analysis tools to the MCP server Introduced tooling to locate nested entities within architectures Improved MCP server behavior for smaller LLM context windows Clarified MCP tool descriptions and argument formats for better LLM integration Added an alternate MCP server, reorganized server layout, and expanded documentation Visualization & UI: SVG graph exports now support dotted and dashed line styles Shared Tasks Graph: Renamed “Function instances” to “Instance references” for clarity Improved performance when working with large task graphs Tooling & Integrations: VS Code extension now supports: Navigating directly from graphs to source code Viewing entity information in the sidebar from graphs Java projects now default to compiler versions 10–21 when created via the New Project Wizard CodeCheck configuration imports now use the file base name for new files, improving usability Documentation & Samples: Updated metrics documentation and manuals Updated landing page to include CodeCheck links Reorganized sample metric test projects for easier access Bug Fixes & Stability Improvements: CodeCheck Checks: Fixed false positives and reporting issues across several MISRA and CERT rules Corrected handling of unnamed entities and class detection in specific MISRA checks Resolved duplicate and conflicting check definitions Fixed incorrect parameter counting in selected HIS and metric rules Expanded support for declarations across multiple file |
| Understand 7.2 Build 12 Jan 14, 2026 |
New Features: AI: Add ability to use 3rd-party services with HTTPS and an API key Add more LLM models to choose from Annotations: Update the Move Annotations dialog to have the initial line set to the current line Architectures: Add Architecture plugins for namespace architectures CodeCheck: Add "Project Dependency Check" tag to dependency checks Compilers: Add support for inline variations in GHS V850 compiler Graphs: Add built-in Assigned To and Assignments graphs for Java and Ada Add IReports "Shared Tasks Graph" and "Shared Tasks Graph AI" that list the nodes and edges in a Shared Tasks Graph Add graph "Data Sequence Diagram" to show data interactions within a function Add graph "Input Output Diagram" to show how a function's inputs affect a function's outputs Project Browser: Now sorts case insensitive for Windows, Mac and Linux Settings: Add a help link for AI Models. VS Code Extensions: Add Metrics view Language - C/C++: Add support for showing c++ function-call operators on the right-click context menu of the object involved in the call Language - Java: Add 'java Assign/Assignby' references CodeCheck Checks: Add check MISRA23_1.5, CPP_DD030: Storage Class Specifiers Not At Beginning Add check MISRA23_22.7, CPP_L042: EOF Macro Misuse Add check MISRA23_22.12, CPP_L043: Thread Data Misuse Add check MISRA23_23.7, CPP_T067: Generic Expression Not Always Evaluated Once Add check MISRA23_22.19, CPP_V040: Mutexes with One Condition Variable Add check MISRA23_10.2.3: The numeric value of an unscoped enumeration with no fixed underlying type shall not be used Add check MISRA23_7.0.6: Assignment between numeric types shall be appropriate Add check MISRA23_22.15: Thread synchronization objects and thread-specific storage pointers shall not be destroyed Add check MISRA23_22.18: Non-recursive mutexes shall not be recursively locked Add check MISRA23_22.3: The same file shall not be open for read and write access at the sam |
| Understand 7.2 Build 12 Dec 10, 2025 |
Ada: Made changes to put missing compilation unit and multiple units with the same name warnings inside a file context so they will be saved with violations. AI: Fix AI Overview background generation setting update when settings is changed from Tools->options. Add ability to specify external server when using Ollama and LM Studio Annotations: Annotations add ability to use a selected line range from the Annotation Viewer and Move Annotations dialog. Bookmarks: Bookmark shortcut now always opens the bookmark window instead of toggling Graphs: Add pictures to Mermaid Graph interactive report descriptions. Input Output Diagram update to handle "switch" like "if". Help: Update Help Menu actions order and add actions for SciTools Blog and SciTools YouTube Channel. Language - C++ (Strict): Fix kind of references on the right hand side of binary operators used in return statements Metrics: Add metrics for object uses, sets, and modifications. Project Config: Project Configuration Dialog user interface updates CodeCheck Checks: Add check MISRA23_1.5, CPP_DD030: Storage Class Specifiers Not At Beginning Add check MISRA23_22.12, CPP_L043: Thread Data Misuse Add check MISRA23_22.15: Thread synchronization objects and thread-specific storage pointers shall not be destroyed Add check MISRA23_22.16: All mutex objects locked by a thread shall be explicitly unlocked by the same thread Add check MISRA23_22.18: Non-recursive mutexes shall not be recursively locked Add check MISRA23_22.19, CPP_V040: Mutexes with One Condition Variable Add check MISRA23_22.3: The same file shall not be open for read and write access at the same time on different streams Add check MISRA23_22.7, CPP_L042: EOF Macro Misuse Add check MISRA23_23.3, CPP_T065: Unconditional Generic Add check MISRA23_23.7, CPP_T067: Generic Expression Not Always Evaluated Once Add check MISRA23_23.8, CPP_T066: Generic Default Not First or Last Add check: MISRA23_4.6.1 Add no-op check MISRA23_23.4 A gener |
| Understand 7.2 Build 12 Nov 26, 2025 |
New Features: AI: Tools ??' Options (Preferences): better messages for AI models being downloaded CodeCheck Add Heatmap for CodeCheck: Don't allow skipping the modified file CodeCheck warning box Add warning for duplicate check IDs to the “Select Checks” dialog, and an interactive report to display them Compilers: Add support for #pragma asm to LAPIS CCU8 compiler support Add support for SDCC compiler: Improve GHS V850 compiler configuration with more predefined macros and extended keywords Editor: Add status bar to released editor windows General: Dependency Structure Matrix improve responsiveness, fix counts for top level entities Favorites: Selecting a Favorite will jump to the code location The “Add Location to Favorite” now does not require a selection Global Search: Clear the number of suggestions from the line edit when the clear button is clicked. API: API update error message when lexer creation fails Exclude OpenSSL DLLs on Windows: Project Browser: Now sorts case insensitive on Windows Reports: Add assign references to Object Cross Reference report Change object cross reference report enumerator init value back to the calculated value Search: Sort the searches in the Search Results Window by date and time of the search, instead of just the time Language – C#: Add warning for multiple types with the same name in a project Language – C++ (Strict): Add separate option to disable C++ standard library include directories Change call by field for C++ objects to distinguish set, use and modify access references when in full reference mode Show call by field for C++ enumerators: Language – Java: Add “Multiple classes with same name” errors inside a file context so they will be saved with violations Language – Pascal/Delphi: Add all missing unit and multiple unit messages inside a file context so they will be saved with violations Language – Web: Made changes to put missing import messages inside a file context so they will be saved with viol |
| Understand 7.2 Build 12 Nov 25, 2025 |
New Features: Compilers: Add support for '#pragma asm' to LAPIS CCU8 compiler support Plugins Changes: Add check MISRA23_13.13, CPP_L036: Character Function Misuse Add check MISRA23_17.9: Invalid _Noreturn Add check MISRA23_18.10, CPP_T064: Pointer to Variable-length Array Add check MISRA23_21.15, CPP_L037: Incompatible Pointers Add check MISRA23_21.6.3: Advanced memory management shall not be used Add check MISRA23_6.8.4: Member functions returning references to their object should be ref-qualified appropriately Add check: MISRA23_12.5, CPP_P016: Size of Array Parameter Add all non implemented MITRE CWE Top 25 rules as noop checks Add all non implemented SEI CERT C++ rules as noop checks Add check MISRA23_22.1: All resources obtained dynamically by means of Standard Library functions shall be explicitly released Add check MISRA23_18.5 Declarations should contain no more than two levels of pointer nesting Add check MISRA12_10.7, MISRA23_10.7, CPP_T063: Implicit Casts of Operations Add check MISRA12_16.7, MISRA23_16.7, CPP_CF009: Switch Boolean Bug Fixes: Omnibar: Fix clicking on the Omnibar x button doesn't work in 'Search File Contents' mode Language - C#: Fix bug where refresh parse could result in 'missing type' and 'missing namespace' errors for types used only as generic parameters. Plugins Changes: Fix bug in MISRA23_14.2 caused by incorrect check when comparing if ref was in bounds of curly braces causing false positives Fix false positives in MISRA12_13.4 |
| Understand 7.1 Build 12 Nov 1, 2025 |
New Features: Compilers: Add support for '#pragma asm' to LAPIS CCU8 compiler support Plugins Changes: Add check MISRA23_13.13, CPP_L036: Character Function Misuse Add check MISRA23_17.9: Invalid _Noreturn Add check MISRA23_18.10, CPP_T064: Pointer to Variable-length Array Add check MISRA23_21.15, CPP_L037: Incompatible Pointers Add check MISRA23_21.6.3: Advanced memory management shall not be used Add check MISRA23_6.8.4: Member functions returning references to their object should be ref-qualified appropriately Add check: MISRA23_12.5, CPP_P016: Size of Array Parameter Add all non implemented MITRE CWE Top 25 rules as noop checks Add all non implemented SEI CERT C++ rules as noop checks Add check MISRA23_22.1: All resources obtained dynamically by means of Standard Library functions shall be explicitly released Add check MISRA23_18.5 Declarations should contain no more than two levels of pointer nesting Add check MISRA12_10.7, MISRA23_10.7, CPP_T063: Implicit Casts of Operations Add check MISRA12_16.7, MISRA23_16.7, CPP_CF009: Switch Boolean Bug Fixes: Omnibar: Fix clicking on the Omnibar x button doesn't work in 'Search File Contents' mode Language - C#: Fix bug where refresh parse could result in 'missing type' and 'missing namespace' errors for types used only as generic parameters. Plugins Changes: Fix bug in MISRA23_14.2 caused by incorrect check when comparing if ref was in bounds of curly braces causing false positives Fix false positives in MISRA12_13.4 |
| Understand 7.1 Build 12 Oct 23, 2025 |
New Features: VS Code Extension: Add button to regenerate last AI response Add support for CodeCheck baselines Add button to delete all ai chat messages Compilers: Update GHS V800/V850 compiler config and make suitable for strict C++ parsing Editor: Show parameter default values in function hover text Project: Show analysis progress in the global progress spinner in the upper right in addition to the normal status bar location in the bottom left Settings: Add the options for plugin metrics, configurable from project configuration Add a "Sync Selection" key binding option that can be set by the user, this will sync the selected entity across sync enabled windows Change the default value of the "Delayed Template Parsing" option to off Move "Enable AI" setting from Automation settings page to Data settings page Show a warning if AI was slow on Tools->Options->Data page Bug Fixes: Language - Visual Basic/C#: Fix crash parsing invalid code with recursive inheritance involving generic classes Fix invalid syntax error on some ternary operators with expressions containing null conditional indexers Language - Fortran: Fix API lexer hang on fixed format Fortran files containing C-style comments Fix crash on some macro definitions Editor: Fix for removed editor key bindings not staying removed. General: Fix bug with split workspace not getting restored correctly Import: Respect the -x flag for setting the language mode in compile command import Graphs: Fix dependency violation graph "cannot indirectly depend" graph sometimes showing references out of the "from" architecture twice Fix split workspace restoration of graphs on Windows Refactor: Fix ignoring a CodeCheck violation by annotation putting the annotation one line too high |
| Understand 7.1 Build 12 Oct 16, 2025 |
Bug Fixes: Fix deprecated plugins causing errors Fix AI summary generation poor performance on Windows Fix for Ada package "Calls & Called By" graph not showing children correctly Fix crash viewing history from database frozen at a Git Commit on Windows |