Release Notes - 3.5


3.5.3-funcrel

Fixes/Bugs

Customer Ticket Id Customer Details
Fixes missing links from "RPG III/IV FileDisk" to "SQL Table" or "SQL View" objects.
Fixes a parsing issue that led to incorrect generation of objects and links within a specific block or expression.
Stabilizes resolution by removing an unimpactful traceback observed only under Python 3.9 (CAIP 8.4.x). Object and link generation were unaffected, and the issue did not occur in Python 3.4 (CAIP 8.3.x).
Fixes a lexer issue that caused incorrect generation of objects or links within a specific code segment.

New Support

Customer Ticket Id Customer Details
Enables support for *.rpgleinc files.

Enhancement/Improvements

Customer Ticket Id Customer Details
54316 Improve accuracy of rules: 1008014 - Avoid Programs with High Fan-In (RPG400), 1008018 - Avoid Procedures with High Fan-In (RPG400), 1008020 - Avoid Programs with High Fan-Out (RPG400), 1008024 - Avoid Procedures with High Fan-Out (RPG400), 1009014 - Avoid Programs with High Fan-In (RPG300), 1009020 - Avoid Programs with High Fan-Out (RPG300)
Improve documentation of rules: 1008014 - Avoid Programs with High Fan-In (RPG400), 1008016 - Avoid Subroutines with High Fan-In (RPG400), 1008020 - Avoid Programs with High Fan-Out (RPG400), 1008022 - Avoid Subroutines with High Fan-Out (RPG400), 1008024 - Avoid Procedures with High Fan-Out (RPG400), 1008028 - Avoid Programs with High Cyclomatic Complexity (RPG400), 1008030 - Avoid Subroutines with High Cyclomatic Complexity (RPG400), 1008032 - Avoid Procedures with High Cyclomatic Complexity (RPG400), 1008118 - Avoid Programs with more than X lines of code (RPG400), 1008120 - Avoid Subroutines with more than X lines of code (RPG400), 1008122 - Avoid Procedures with more than N lines of code (RPG400), 1009014 - Avoid Programs with High Fan-In (RPG300), 1009016 - Avoid Subroutines with High Fan-In (RPG300), 1009020 - Avoid Programs with High Fan-Out (RPG300), 1009022 - Avoid Subroutines with High Fan-Out (RPG300), 1009028 - Avoid Programs with High Cyclomatic Complexity (RPG300), 1009030 - Avoid Subroutines with High Cyclomatic Complexity (RPG300), 1009118 - Avoid Programs with more than X lines of code (RPG300), 1009120 - Avoid Subroutines with more than X lines of code (RPG300), 1012012 - Avoid Programs with High Cyclomatic Complexity (CL400)
Improve documentation of rules: 1008126 - Avoid defining F-Spec File type if not used (RPG400), 1009126 - Avoid defining F-Spec File type if not used (RPG300)
54270 Improves lexer robustness and resilience to preserve downstream objects and links after encountering malformed characters.
54272 Enhances specific '*PSSR' support for links callLink from RPG III/IV Program or RPG III/ Copy Member to **RPG III/IV Subroutine*.
54271 Enhances specific '*INZSR' support for links callLink from RPG III/IV Program or RPG III/ Copy Member to **RPG III/IV Subroutine*.

3.5.2-funcrel

Stability

Customer Ticket Id Customer Details
Stabilizes the analyzer to better handle corrupted RPG source code from file transfers between IBM i and Microsoft Windows.

Fixes/Bugs

Customer Ticket Id Customer Details
Fixes an issue where the RPG discoverer could mistakenly launch an analysis.
Fixes missing links from "CL Program" to "RPG III Program" or "RPG IV Program".

New Support

Customer Ticket Id Customer Details
Adds support of files containing first 12 numerical characters for RPG source code extracted via "Rational developer".

3.5.1-funcrel

Fixes/Bugs

Customer Ticket Id Customer Details
Fixes a parsing issue that interrupted object and link generation beyond a malformed structure.
Resolved issues in code parsing caused by unrecognized or unexpected characters, improving overall analysis reliability.
Fixes a parsing issue that caused erroneous creation of "RPG IV Procedure Prototype" objects.
Fixes a resolution issue affecting the creation of "RPG IV Missing Procedure" objects.
Fixes End Point status of "CL/ RPG III/RPG IV Call to Generic Program" object.

New Support

Customer Ticket Id Customer Details
Activates "natural metrics" for CL/RPG III & RPG IV artifacts. This enables the "All technologies" rules for RPG Analyzer, i.e: 7126 - "Avoid Artifacts with high Commented-out Code Lines/Code Lines ratio" and 7156 - "Avoid Too Many Copy Pasted Artifacts".
Improves support for IBM i NetServer commands : they are now recognized as dedicated "IBM i NetServer Utilities" rather than "Call to Generic Program calls".

Enhancement/Improvements

Customer Ticket Id Customer Details
Improve accuracy for RPG IV Program and RPG IV Copy Member detection.

3.5.0-funcrel

Fixes/Bugs

Customer Ticket Id Customer Details
Fixes a parsing issue that interrupted object and link generation beyond a malformed structure.
Fixes an issue where a subregion was misparsed, causing loss of associated objects and links.
Fixes an issue where a subregion was misparsed, causing loss of associated objects and links.
Fixes an issue affecting the creation of "RPG400SQLStructure" objects.
Fixes a lexer issue that caused loss of object and link generation after a malformed token sequence.
Resolved issues in code parsing caused by unrecognized or unexpected characters, improving overall analysis reliability.

Enhancement/Improvements

Customer Ticket Id Customer Details
52653 Improve documentation of rules: 1008078 - "Avoid using obsolete "Arithmetic Operations" Statement in RPG Programs (RPG-IV only) (RPG400)" 1008080 - "Avoid using obsolete "String Operations" statements in RPG Programs (RPG-IV only) (RPG400)" 1008082 - "Avoid using obsolete "Assignment Operations" statements in RPG Programs (RPG-IV only) (RPG400)" 1008084 - "Avoid using obsolete "Conditional Operations" statements in RPG Subroutines (RPG-IV only) (RPG400)" 1008086 - "Avoid using obsolete "Date Operations" statements in RPG Programs (RPG-IV only) (RPG400)" 1008088 - "Avoid using obsolete "Definition/Allocation/Array Operations" statements in RPG Programs (RPG-IV only) (RPG400)" 1008090 - "Avoid using obsolete "Bit Operations" statements in RPG Programs (RPG400)" 1008092 - "Avoid using obsolete "Call Operations" statements in RPG Programs (RPG-IV only) (RPG400)"
Improve accuracy for RPG III Program detection.
Improves "Sql Query" property for "RPG300SQLStructure" and "RPG400SQLStructure" objects.
Fixes a resolution error caused by an unhandled use case, which led to a traceback and partial loss in object/link generation.

3.5.0-beta2

Fixes/Bugs

Customer Ticket Id Customer Details
Fixes an issue affecting the creation of "CL Call to Sql File" objects.
52245 Improved accuracy in identifying RPG IV Missing Procedure objects.
Improved accuracy in identifying RPG IV Procedure Prototype objects.
Resolved issues in code parsing caused by unrecognized or unexpected characters, improving overall analysis reliability.
Improve accuracy of the string SQL Query property on EXEC SQL objects.
Fixes an issue affecting the creation of "CL Data Area" objects.

New Support

Customer Ticket Id Customer Details
Improved support for Axway: Transfer CFT operations are now identified as a dedicated "Axway Transfer CFT Utility" object rather than "Call To Generic Program".
Improved support for IBM i: Native SNADS commands are now recognized as dedicated "IBM i SNADS Utilities" rather than "Call to Generic Program calls".

Enhancement/Improvements

Customer Ticket Id Customer Details
Improve accuracy for RPG IV Program or RPG IV Module detection for *.cpyle files.
Improve accuracy for RPG IV Program detection.
Improve accuracy for RPG IV Module detection.

3.5.0-beta1

Other Updates

Details
Fixed compatibility issues present when using the extension in v3/8.4 in a Linux/Docker environment.

New Support

Summary Details
Support of RUNQRY command in CL Support provided for RUNQRY commands and associated QRY, QRYFILE and OUTFILE parameters. See the documentation for further details.

3.5.0-alpha1

Other Updates

Details
An update to ensure that the following deprecated objects are no longer created: DDS Join Structure, DDS Section, DDS Record Structure LF, DDS Record Structure PF
The documentation has been updated and improved, see here.

New Support

Summary Details
Support of Data Area in CL Support provided for CRTDTAARA, CHGDTAARA, RTVDTAARA, DSPDTAARA, DLTDTAARA commands. See the documentation for further details.

Performance

Summary
Improved performance by avoiding to create and then delete deprecated objects and links (DDS Join Structure, DDS Section, DDS Record Structure LF, DDS Record Structure PF).