Build Notes (1129) - 15 Dec 2022

Build

  • Update minor version number to 6.3.

General

  • Change dependency analysis settings from global settings to project settings and make the default mode link time.
  • Update warnings in Tools->Options->General for settings that require Understand to restart.
  • Change sound defaults to off (Tools->Options->User Interface ->Alerts->Audible Alerts).
  • Project overview bar chart make change so it doesn't elide labels in full-screen.

Import

  • Fix xcode project import failure to include .hpp files.

Change

  • Clicking on nodes in a comparison treemap opens a diff view. The diff view, used by both the comparison treemap and locate changed entities no longer becomes the active window on sync events.

CodeCheck

  • Fix crash when running CodeCheck on an architecture containing unresolved entities.

Graphs

  • Restore ability to call API draw function from scripts run through the Understand GUI.
  • Move graph styling controls from Tools->Options->Graphs to the graph legend.
  • Graph styles: Add metric color scale options.
  • Graph styles: Allow different graphs to have different graph styles, and add a style for object references.
  • Added Data Flow graphs. 
  • Avoid defaulting to a comparison graph variant when drawing from the API.
  • Fix plugin legend display of dashed arrow style and #RRGGBBAA colors.
  • Graphs allow showing comments and annotations on a per-node basis.
  • Updated how clusters block child edges to match dependency graphs.

API

  • Add a file_type() method for entities to the Perl and Python APIs.
  • Changed the Python and Perl API version method (.version()) to return 'Major_version '." Minor_version '.' build number'. 

User API

  • C-api: Add missing Python library RPATH entry to the C API shared library

Metrics

  • For web - Javascript, Typescript and Php, fixed bug where average line metrics were incorrect for some files.

Refactor

  • Refactor Rename for files moves files on disk.

Search Results

  • Fixed the Search Results find shortcut. Keyboard shortcut (Ctrl+F) was not working in Search Results.


Language - Basic

  • For Visual Basic, fixed invalid syntax error on use of an array variable in a 'for each' statement.

Language - C++ (Strict) Metrics

  • Add support for the CyclomaticStrictModified metric: Logical operators (AND, OR, NOT) in conditional expressions add one (1) to the complexity for each occurrence.
  • Change the mechanism for calculating cyclomatic complexity to be more consistent with the other languages
  • Add missing control flow graph support for C++11 range-based for loops and Objective-C collection for-in loops.

Language - C# 11

  • Support added for C# 11

Language - Web

  • For Web/Typescript, fixed bug where a function defined using a 'const' set to an 'arrow function' created an unnamed function entity instead of just a function with the name given in the const declaration. This prevented call trees from following into the body of the defined function.





Known Issues

  • Cannot load nested classes with entity names containing “$” in Java 
  • Incorrect control flow graph when simplify macro expansion is enabled
  • Collapsed code no longer accessible when modifying first line of a collapsed block