objectscriptQuality 1.2.0

SonarQube compatibility

6.5, 6.4, 6.3, 6.2, 6.1, 6.0, 5.6 (LTS), 5.5, 5.4, 5.3, 5.2

Caché compatibility

2017.1, 2016.2

Java compatibility

Oracle JDK 8

Release notes

This version ends support for SonarQube 5.1 or previous one. You need to upgrade to a newer SonarQube version if you have not done it already.

What's new

  • Compatibility with SonarQube 5.2 or higher
  • Added support for MAC/INT/INC in UDL (appeared in 2016.2) or RO format
  • Added ##SafeExpression directive support
  • Added #include preprocessor directive
  • #def1arg preprocessor directive
  • Support for ##sql directive
  • $zobj(var/mode/ref) functions added
  • Support for private/public procedures
  • CodeMode accepts generator for Trigger


  • Macro in #Define can start with %
  • Fixes errors in parsing XData body
  • Ignore case for ##continue directive
  • Only '%' it is also valid identifier for methods or for variables.
  • SqlName modifier for classes and methods can be in quotes
  • Allow comments in flow control before code block
  • Fixed grammar for BREAK command
  • WHILE command can have multiple comma delimited conditions
  • @indirection with global variable
  • BREAK command with an argument (extend or flag)
  • CLOSE command with multiple arguments
  • Allow comment just after DO command dots line in the same line with label
  • Legacy if command without any arguments
  • $ZT is a short for $ZTRAP command
  • In a block with curly braces, first statement can be without space
  • Fixed error with macro comments
  • #Dim with "class" in double-quotes
  • Trigger code syntax access to property
  • Triple slash comment for documentation
  • Fixes in Pattern Matching