| Version | Change log |
| 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 |
| Understand 7.1 Build 12 Oct 14, 2025 |
Global Search: Introducing Understand's Global Search Bar. Easily accessible from the toolbar, start typing to instantly see code entities, commands, plugins, settings, help guides, and more. VS Code Extension improvements: Install the Understand VS Code Extension to access AI overviews harnessing Understand's robust code insights, annotations that sync with Understand, graphs, and references for every entity. Increased CodeCheck performance: CodeCheck now has additional multi-threaded support decreasing the time required for each check. New Features: AI: Add ability to connect to AI Server on another machine Improve results for macros and namespaces Add ability to change AI model VS Code Extension: Add collapsible graph view in extension window Command Line(Und): Und AI: Add ability to select server Exclude "Assembly" from "settings -languages all" Compilers: Add support for IAR EWRX compiler Improve Keil Arm compiler config Metrics Browser: Add context menus for architectures and entities General: Bookmark window now has a toolbar Increase default Recent Files memory from 5 to 20 Icons have been updated with a new look Graphs: Data flow graphs no longer show "use macrodefine" references Import: Set macros associated with /MT[d] and /MD[d] flags in command line import Global Search: Add a Global Search Bar to the Understand toolbar The suggestions panel was removed. Now actions are suggested in Global Search under Commands. Plugins: Customize plugin open user plugins directly instead of creating a copy Plugin Manager install show page for installed plugin Show a popup when customizing a plugin Reports: Add assign references to program unit reports Settings: Add setting to enable/disable AI Key bindings have significantly changed. Users may need to re-add custom key bindings since the underlying setting names have changed in some cases, and some key bindings have been deleted and some new ones have been added. Options dialog (Tools-> |
| Understand 7.1 Build 12 Oct 9, 2025 |
Global Search: Introducing Understand's Global Search Bar. Easily accessible from the toolbar, start typing to instantly see code entities, commands, plugins, settings, help guides, and more. VS Code Extension improvements: Install the Understand VS Code Extension to access AI overviews harnessing Understand's robust code insights, annotations that sync with Understand, graphs, and references for every entity. Increased CodeCheck performance: CodeCheck now has additional multi-threaded support decreasing the time required for each check. New Features: AI: Add ability to connect to AI Server on another machine Improve results for macros and namespaces Add ability to change AI model VS Code Extension: Add collapsible graph view in extension window Command Line(Und): Und AI: Add ability to select server Exclude "Assembly" from "settings -languages all" Compilers: Add support for IAR EWRX compiler Improve Keil Arm compiler config Metrics Browser: Add context menus for architectures and entities General: Bookmark window now has a toolbar Increase default Recent Files memory from 5 to 20 Icons have been updated with a new look Graphs: Data flow graphs no longer show "use macrodefine" references Import: Set macros associated with /MT[d] and /MD[d] flags in command line import Global Search: Add a Global Search Bar to the Understand toolbar The suggestions panel was removed. Now actions are suggested in Global Search under Commands. Plugins: Customize plugin open user plugins directly instead of creating a copy Plugin Manager install show page for installed plugin Show a popup when customizing a plugin Reports: Add assign references to program unit reports Settings: Add setting to enable/disable AI Key bindings have significantly changed. Users may need to re-add custom key bindings since the underlying setting names have changed in some cases, and some key bindings have been deleted and some new ones have been added. Options dialog (Tools-> |
| Understand 7.1 Build 12 Jun 19, 2025 |
Graphs: Add the option to exclude standard library functions to C/C++ Call graphs. Import: Fix compile_command.json import of define flags ending in = and quoted define flags from "arguments" field Python API: Fix crash on entity name conversion for names that contain invalid UTF-8 Settings: Fix handling of missing named-root definitions on project load Language - Java: Fix Java comment collection to ignore generic parameters when associating comments Language - C++ (Strict): Set library for all declarations that come from system headers to "standard" Truncate initial values at 1024 bytes Show default language standards in C++ settings dialog Change Entity::parameters() api to show parameter names, when requested, for unresolved c++ functions Language - Pascal/Delphi: Fix syntax error parsing dfm files. Plugins: New plugin manager user interface with all new descriptive tags, more powerful search, solution pages, enable multiple plugins at once, and the ability to link to other plugins. |
| Understand 7.0 Build 12 May 20, 2025 |
Filter: Bring the CodeCheck file filter dialog back from behind the main window when requested again. CLI: Fix invalid project switch when passed relative argument to the -db flag Python API: Python plugins allow specifying range of integer options. Update Python API documentation for Graph options which in 7.1 allow all option methods. |