Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


  • Source: sonar-channel from SonarQube is merged into SSLR. Change the package name "" into "" for lexing purposes. Depend on sslr-testing-harness instead of sonar-testing-harness for the lexer unit tests.
  • Deprecation: The preprocessor API classes Preprocessor, PreprocessorAction and PreprocessingDirective were deprecated with no drop-in replacements. There no longer will be a unified API for preprocessors.
  • Deprecation: The text API package "org.sonar.sslr.text" has been deprecated with no drop-in replacements. There no longer will be a common way to track the location of preprocessed source code.
  • Behavioral: Parse tree was removed from the parse error report.

SSLR 1.19.2

  • Source: Deprecated hamcrest matchers were removed in preference to Fest-assertions.
  • Behavioral: No difference between usual grammar rule and "recovery rule" - both will be presented in AST and so can be handled via AST visitor. Thus ParseErrorCheck in SonarQube plugins must be reworked, if plugin uses "recovery rule".
  • Behavioral: Modifications made in grammar do not affect lexerless parser, which was created before those modifications.
  • Behavioral: Previously was possible to execute parser with grammar, which contains references on undefined rules, but now this is forbidden.
  • Behavioral: Replace AuditListener by AstScannerExceptionHandler to subscribe to errors
  • Deprecation: Old ways to construct Grammars were marked as deprecated - use Builders instead.