Releases: Riverside-Software/sonar-openedge
Version 2.24
- Fast branch analysis (requires SonarQube 9.9+, and Developer Edition / Enterprise Edition / Datacenter Edition)
- All unchanged files in the current branch will be ignored. If include files are changed, CABL will scan the
.pct
directory for dependencies, and analyze all files where the include file is referenced. - Feature is only activated when
-Dsonar.pullrequest.branch=current_branch_name
is present in the sonar-scanner commandline
- All unchanged files in the current branch will be ignored. If include files are changed, CABL will scan the
- Various changes for ABL Language Server
- Fixed issues #928, #1077, #1081, #1084, #1092
Hotfix 2.24.3, released on Jan. 26th 2024, for issue #1109
Version 2.23
- Support for overloaded methods in Proparse expression engine (#1059, #1063, #1068)
- Fixed issues #1043 #1048 #1057 #1058 #1065 #1072 #1075 #1076
- New rule: detection of methods / procedures with too many parameters (deprecates Call has too many parameters rule)
Hotfix 2.23.2 (rules only) contains the fix for #1082
Version 2.22
Version 2.21
Version 2.20
- Upgrade SonarQube dependencies to 8.x. While this 2.20 version is still compatible with 7.x, we don't do regression tests anymore against SQ 7.x. You should at least upgrade SonarQube to 8.9 (previous LTS) or 9.9 (current LTS).
- Various improvements to Proparse for LSP
- Various bugfixes (#1000, #1021, #1028, #1030)
- Property in Field class to know whether it has
MANDATORY
attribute (#1026) - Display message if profiler directory doesn't exist (instead of crashing scanner) + Report RuntimeException instead of failing the analysis if profiler file is invalid (#1023)
- SonarLint 6.2.2222 now compatible with SonarQube 9.9 on PDSOE 11.7 (#1031)
- SonarLint 7.6.2312: read hierarchy from PL (#1025)
Version 2.19
- Various parser fixes + code completion engine for language server
- Prepare compatibility with SonarLint 7.x
- New
sonar.oe.rtb
boolean property: if set to true, read XREF and listing fromlist
directory (generated by Roundtable) instead of the usual location - Various rules bugfixes and enhancements: #1001, #1003, #1013, #1016
Version 2.18
- New
sonar.oe.classdoc
property: comma-separated list of class documentation JSON files (use JsonDocumentation task in PCT). First rule will report deprecated methods usage (planned for 2.18.1) - Proparse: support for
AGGREGATE
keyword (#995) +FOREIGN-KEY-HIDDEN
in dataset declaration (#1011) - Fixed (not so) random InvalidRCodeException when reading rcode on slow disks (#1005)
- VSCode support: improved method signatures checks
- Minor enhancements to DF parser (latest version of meta-schema + ColumnLabel property)
- New KeywordCase rule (UpperCaseKeywords and LowerCaseKeywords now flagged as deprecated)
- Fixed ExpressionNoEffect which incorrectly reports QUERY-OPEN, QUERY-CLOSE, ...
Hotfix 2.18.4: fix CABL license management screen under SQ 9.7
Version 2.17.0
-
Another set of changes in Proparse for the ABL Language Server
-
Parser improvements (package-private/protected constructors + issues #955, #956 and #971)
-
Rules improvements and bugfixes (#925, #971, #976, #986, #992)
-
Improved CABL license screen ; license key can be uploaded from this screen, no need to go to the properties
-
Breaking change in Proparse: RECORD_NAME nodes in queries are now wrapped in a RECORD_SEACH node. One RECORD_SEARCH node per buffer in a FOR statement.
-
Hotfix
2.17.12.17.2 only required with SonarQube 9.7. No need to upgrade if running SonarQube up to 9.6.
Version 2.16.0
-
Another set of changes in Proparse for the ABL Language Server
- A side effect is that new parser failures can be raised: previous versions of proparse were silently discarding syntax errors when in the last statements of the file. This is not the case anymore, so read the log output after the migration !
-
Various bugfixes (DF parser #969), support for final properties,
ACCUMULATE SUM
(#974), better error messages (#970 and #975), FORM statement in class (#973), -
Rule changes:
-
SonarLint plugin: parser errors are now displayed in the SonarLint console view. Details are only visible in the analysis log, but the idea is to make sure the developer is aware that rules can't be executed because of the syntax error
-
API Change: parameters are now wrapped in a
PARAMETER_ITEM
structure (inside aPARAMETER_LIST
structure), so that they can easily be iterated. -
If you feel adventurous, you can try the new VSCode plugin in the Marketplace
EDIT: Version 2.16.1 now available, hotfix for issue #988
Version 2.15.0
- Report total number of Proparse directives as a metric (Size domain)
- Prevent BackslashInString rule from being triggered on all
{&WINDOW-NAME}
instances - Parse engine internal changes (VSCode support)
- Generics and elvis operator (
?:
) support - DF parser changes (PR #957)
- Various rule improvements: