Skip to content

v2.3.0

Compare
Choose a tag to compare
@uwol uwol released this 13 Dec 14:21
· 122 commits to main since this release

Several bugs and requests have been issued. This release contains following new features and bug fixes:

Features

  • Replaced the copy books list parameter with an optional param object, which contains (1) a copy book files list, (2) a copy book directories list and (3) a copy book extensions list:
final CobolParserParams params = new CobolParserParamsImpl();
params.setCopyBookDirectories(...);
params.setCopyBookFiles(...);
params.setCopyBookExtensions(Lists.newArrayList("cpy"));
final Program program = new CobolParserRunnerImpl().analyzeFile(inputFile, CobolSourceFormatEnum.FIXED, params);
  • Improved the copy book resolver for all kinds of COPY statement variants, including COPY statements with paths and with or without extensions.
  • The parser now throws a RuntimeException on syntax errors. Can be disabled by:
final CobolParserParams params = new CobolParserParamsImpl();
params.setIgnoreSyntaxErrors(true);
final Program program = new CobolParserRunnerImpl().analyzeFile(inputFile, CobolSourceFormatEnum.FIXED, params);
  • Added a charset parameter for COBOL files, which are not UTF-8:
final CobolParserParams params = new CobolParserParamsImpl();
params.setCharset(...);
final Program program = new CobolParserRunnerImpl().analyzeFile(inputFile, CobolSourceFormatEnum.FIXED, params);
  • Added support for a lot of COBOL preprocessor options such as CBL ADV.
  • Added <> operator.

Bug fixes

  • Fix for reserved keywords in the preprocessor.
  • Fix for ACCEPT statement.
  • Fix for STRING statement.
  • Fix for counter-intuitive names of DIVIDE sub-statements.
  • Fix for comment entries marker.

A big thank you to @Reinhard-Prehofer and @albertolovato for their steady contributions!