Releases: Acumatica/Acuminator
Releases · Acumatica/Acuminator
v3.1.3
Acuminator 3.1.3: October 24, 2023
Acuminator 3.1.3 includes the bug fixes and enhancements described in this section, as well as the features that have been implemented in previous versions.
Enhancements
In Acuminator 3.1.3, the following enhancements have been implemented:
- The Acuminator code refactoring mechanism that changed weakly typed old graph event handlers into strongly typed generic event handlers has been converted into a new diagnostic PX1041.
The default severity of the new diagnostic is Information because Acumatica Framework supports both types of event handlers. Now you can use the new diagnostic to convert graph event handlers to generic ones in the entire document, project, and solution. - The category of Acuminator diagnostics has been changed to "Acuminator". You can see this category in Error List window of Visual Studio if you group diagnostics by Category as shown in the following screenshot.
Fixed Bugs
In this version of Acuminator, the following bugs have been fixed:
- Visual Studio 17.7 crashed when the static code analysis was configured to be executed in the Visual Studio process (in process mode).
The crashes were caused by the asynchonous code in old Acuminator analyzers.
v3.1.2
Acuminator 3.1.2: June 8, 2023
Acuminator 3.1.2 includes the bug fixes and enhancements described in this section, as well as the features that have been implemented in previous versions.
Enhancements
In Acuminator 3.1.2, the following enhancements have been implemented:
- The PX1096 diagnostic has been added to check the signature of methods with the
PXOverride
attribute: The diagnostic checks whether the base graph or base graph extensions contain a base method that is compatible with thePXOverride
method. - The PX1007 diagnostic has been updated in the following ways:
- The diagnostic now supports the
inheritdoc
tag for DACs, DAC extensions, and their properties. The diagnostic also checks that mapped DAC field properties of projection DACs have theinheritdoc
tag with thecref
attribute pointing to the corresponding DAC field property of the original DAC. - A new code fix can generate the
inheritdoc
tag for a mapped DAC property of a projection DAC.
This code fix also removes incorrect documentation tags such assummary
or incorrectly declaredinheritdoc
. - Code fixes of the diagnostic can now generate documentation correctly even for badly formatted code. Also, in the properties of mapped fields of projection DACs, incorrect documentation tags can be removed. The code fixes also support documentation tags declared as empty XML elements, such as
<summary/>
. - The diagnostic no longer checks the following DAC fields for a code annotation:
Selected
Attributes
GroupMask
CompanyID
CompanyMask
DeletedDatabaseRecord
- The Suppress with a local comment code fix of Acuminator now supports the Fix All functionality of Visual Studio for the PX1007 diagnostic. The diagnostic can be suppressed for a whole DAC. Suppressing the diagnostic could be useful when you do not plan to write the documentation immediately and want to leave it to the documentation team.
- The diagnostic now supports the
Fixed Bugs
In this version of Acuminator, the following bugs have been fixed:
- In Visual Studio 2022, Acuminator analysis did not work in the out-of-process mode (that is, when the Run code analysis in separate process check box is selected in Visual Studio options).
- The PX1023 diagnostic showed a false alert for the
INUnit
attribute. - It was possible to suppress the PX1007 diagnostic for DAC extensions by marking the class with the
PXHidden
attribute. - The PX1016 diagnostic showed a false alert for generic non-abstract graph extensions.