Build Notes (1213) - 17 Dec 2024
Command Line(Und)
- Add C# Preprocessor Symbols setting to und.
- Und report command improve error messages for invalid codecheck inspections.
Compare
- Potential fix for an inconsistent crash accessing comparison db from an ireport.
General
- Fix rescan not updating file list
API
- C++ namespace comments now available by default instead of requiring a kind spec
- Change public ib() api call to default to 1 level of expansion per field, to avoid unexpected long waits in worst case scenarios
Graphs
- Fix scaling when legend is turned on
Indexer
- Fix potential crash on corrupted instant search index
Info Browser
- Restore global information browser shortcuts broken in last build with sync changes
Installer
- Add plugins to CLI build kit
Interactive Reports
- Ireports add optional target parameter to init method for Python plugins.
Metrics
- Ensure values for disabled metric plugins can still be accessed by id from the API.
VS Code Plugin
- Remove errors/warnings of files under deleted or renamed folders
Search
- Fix whole words match in search inside search results.
- Fix stale instant search results for deleted files
Settings
- Fix display of python version in the configuration panel when the user has specified an installed executable
Language - Fortran
- Fixed invalid syntax error on some select type guards in fixed format fortran.
- Fixed some invalid parser errors on array constructor syntax. Fixed lookup problem in use-only statements where referenced entity is defined in a generic interface.
Fixes/Extensions
- Fix for script in duplicate lines of code interactive report
- Shared Tasks CSV: fix long name and -help argument
- Shared Tasks: fix "Objects: Shared only" option and improve CSV CLI
- Shared Tasks: Fix object parents, fix member function name
- Extend the Most Complex Functions chart to work for files and architectures in addition to databases, allow modifying the complexity metric and the number of entities shown.
New Charts
- Function Metrics Histogram - display metric values in a histogram for the functions in a file, architecture, or database.
New IReports
- Line Metrics
- HIS Metrics
- Complexity Metrics Report
- Metrics Table
- Halstead Metrics
New Metric Plugins
- Comment Lines (Includes Comments Before Functions)
- Comment to Code Ratio (Includes Comments Before Functions)
- Maximum Call Depth (HIS LEVEL)
- Calls
- Unique Calls (HIS CALLS)
- Called By
- Unique Called By (HIS CALLING)
- Goto Statements (HIS GOTO)
- Parameters (HIS PARAM)
- MinRecursiveDepth (related to HIS AP_CG_CYCLE)
- Exits
- Early Exits (HIS RETURN)
- Language Scope (HIS VOCF)
- Stability (HIS S)
- Halstead Distinct Operators (n1)
- Halstead Distinct Operands (n2)
- Halstead Total Operators (N1)
- Halstead Total Operands (N2)
- Halstead Vocabulary (n)
- Halstead Length (N)
- Halstead Difficulty (D)
- Halstead Effort (E)
- MISRA HIS Subset Violations (HIS NOMV)
New CodeCheck Checks
- MISRA23_25.5.3, MISRA23_21.20: The pointer returned by the C++ Standard Library functions asctime, ctime, gmtime, localtime, localeconv, getenv, setlocale or strerror must not be used following a subsequent call to the same function
- VHDL 28: unlabeled processes
- MISRA23_8.14.1: The right-hand operand of a logical && or || operator should not contain persistent side effects
- CPP_T061: Use const whenever possible
- CPP_DD022: Magic Numbers
- CPP_D055: Non-virtual Destructors in Base Classes
- CPP_VF002: Virtual Call in Constructor/Destructor
- CPP_DD023: Use the same for in corresponding uses of new and delete
- CPP_P058: Store newed objects in smart pointers in standalone statements
- CPP_P060: Prefer pass-by-reference-to-const to pass by value
- CPP_DD024: Postpone variable definitions as long as possible
- CPP_E087: Minimize casting
- CPP_DD025: Avoid hiding inherited names
- CPP_F070: Consider alternatives to virtual functions
- CPP_DD026: Never redefine an inherited non-virtual function
Known Issues
- Unable to add multiple files to "Favorites" group
- Line numbers may be incorrect for Fortran analysis errors and warnings
- Incorrect control flow graph when simplify macro expansion is enabled