Releases: uwol/proleap-cobol-parser
v2.4.0
Several bugs and requests have been issued. This release contains following new features and bug fixes:
Features
- Extended preprocessor with a linked list data structure for COBOL lines. This enables referencing COBOL line predecessors and successors for analysis of line continuations.
Bug fixes
- Fix for COMMA CHAR in string statement.
- Fix for paragraph statement without dot.
- Fix for non-compliant line continuation with quote in column 72.
- Fix for whitespace between two string literals in line continuation.
- Fix for FILE CONTROL paragraphs without
FILE CONTROL
keyword. - Fix for MOVE CORR statement.
v2.3.0
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!
v2.2.0
We were provided with a batch of several hundred real-life finance COBOL files. Following features and bug fixes enable successful parsing of all of these files.
Features
$SET
compiler directives are removed by preprocessor.CBL
andPROCESS
statements are removed by preprocessor. Added numerous compiler options.- added
SET TO ENTRY
statement type. - added
AND
in combined condition. - added null-terminated string.
- added procedure division ASG
USING
andGIVING
clauses.
Bug fixes
- fix for FIXED line format with short line numbers.
- added
NATIONAL-EDITED
to initialize statement. - condition subscript fix.
- fixed
ADD TO GIVING
. - NPE fixes.
v2.1.0
We're very excited to introduce ProLeap COBOL parser 2.1.0. In the last months, the parser was tested with a lot of real-life production COBOL files. As a result, this release contains a lot of bug fixes and optimizations:
- optimized the order of called ASG elements, as they are added to the symbol table
- redefined paragraphs, data description entries etc. do not collide on the symbol table
- comments added to hidden channel
- a lot of fixes in the preprocessor
- a lot of fixes in the AST grammar
- a lot of fixes in the ASG generator
Thanks to @Reinhard-Prehofer, @albertolovato, @acaramia for pull requests and contributions.