Build Notes (1215) - 9 Jan 2025
Compilers
- Remove 'GNU GCC' compiler option for strict parsing. User should use 'GCC' instead
Jenkins
- Add local license solution Icarus to install kit instead of requiring a separate download
Graphs
- Allow gradients in chart legends
- Improve bar chart layout spacing for node labels.
Favorites
- Allow for the deletion of multiple selected items.
Main Window
- Add a menu item for metric documentation to the metrics menu.
Plugins
- Move plugin enablement settings to be shared with und, upython, etc.
- Remove empty categories on search
Python API
- Add understand.Metric.name function
- Add optional db and filter arguments to understand.Metric.list and include metric plugins in list. Listing metric plugins by kind string requires a database.
- Add optional format argument to metric() functions to allow getting floating values as floats instead of strings, or integer values as strings instead of ints.
Interactive Reports
- Fix potential crash restoring a project interactive report
- Add extra space at the bottom of the report
- Add Average Metrics Interactive Report
- Add chart to Class Metrics Interactive Report
- Allow IReport draw to override graph titles
Welcome Page
- Translate the hints shown on the first analysis
Language - C++ (Strict)
- Fix invalid control flow graphs when the option to simplify macro expansions is enabled
- Fix worker process crash when option to create unique entities for object data members is enabled
CodeCheck Checks
- Add check MISRA23_3.1: The character sequences /* and // shall not be used within a comment
- Add check CPP_P061: Shared pointer capture
- Add description for MISRA C 2023 and MISRA C++ 2023
- Add check MISRA23_21.6.1: Dynamic memory should not be used
- Add check MISRA23_19.1.2: All #else, #elif and #endif preprocessor directives shall reside in the same file as the #if, #ifdef or #ifndef directive to which they are related
Known Issues
- File open dialogs may unexpectedly disappear on macOS 15.2