Skip to content

Releases: TypeCobolTeam/TypeCobol

v1.6.2

03 May 12:03
0efe35b
Compare
Choose a tag to compare

Bug fix

  • WI #2471 Extend allowed characters in partial cobol word (#2507)
  • WI #2319 Fix bug during AST building for nested programs after invalid statements (#2510)

v1.6.1

27 Apr 12:22
ba01479
Compare
Choose a tag to compare

New syntax support

Bugfix

  • WI #2491 Support qualified name in RECORD KEY IS (#2494)
  • WI #2484 Fix duplicate data resolution in CrossChecker for WRITE statements (#2485)

Internal / Tooling

  • WI #2467 Add change generator for document rewriting in reverse order (#2486)
  • WI #2096 Remove Analytics project (#2487)
  • WI #1312 Rename some ExecutionSteps (#2492)
  • WI #2498 Add documentation for Cobol 6 (#2499)

v1.6.0

22 Mar 16:13
bafe58f
Compare
Choose a tag to compare

v1.6.0

This is major release focusing on incremental parsing robustness, incremental performance and REPLACE directives handling.

Best case scenario when a single line is updated, processing time of incremental steps (Scanner, Preprocessor and SyntaxCheck) is now close to 0ms.
Non-incremental steps (SemanticCheck and CrossCheck) are not updated by this release.
Worst cast scenarios are when we need to rescan the whole file. This can happens when following instructions are modified : replace, debugging mode, data division, procedure division.

Changelog

Incremental parsing bug fixes

  • WI #2388 Avoid code element duplication when falling back to full reparsing (#2405)
  • WI #2389 Check last fetched token to avoid code element duplication (#2404)
  • WI #2406 Fix incremental line break insertion (#2410)
  • WI #2420 Fix diagnostic line after incremental changes for scanner and preprocessor (#2421)
  • WI #1673 Fix continuation group scanning in incremental mode (#2445)
  • WI #2444 Defer diagnostic reset during incremental parsing to avoid missing/unwanted diagnostics (#2458)
  • WI #2455 Fix backward navigation when trying to find previous CodeElement (#2459)
  • WI #2456 Fix incremental parsing when adding a blank line in source (#2460)
  • WI #2457 Improve incremental parsing for compiler directives (#2468)

Incremental parsing optimizations

  • WI #2416 Optimize text update by using line update mechanism when possible (#2423)
  • WI #2235 Optimize code elements parser step in incremental mode (#2433)
  • WI #2442 Optimize line iteration in PreprocessorStep in incremental mode (#2449)
  • WI #2482 Rescan whole document during didSave only if LSP server doesn't lag (#2483)

REPLACE directives handling

  • WI #2427 Improve REPLACE directive handling in incremental mode (#2428)
  • WI #2217 Use original columns layout when rescanning tokens after a REPLACE (#2350)
  • WI #2315 Track ScanState while applying REPLACE operations (#2464)
  • WI #2190 Handle Picture Character String replacement as Partial Cobol Word replacement (#2465)
  • WI #2212 Do not apply subsequent REPLACE operations if one matched prior (#2466)
  • WI #2463 Fix the COPY / REPLACING / REPLACE mechanism using new TokensLinesIterators (#2474)

Bug fix

  • WI #2422 Preserve final blank line when loading a document (#2424)
  • WI #2366 Ensure COPYs inside COPYs are correctly collected in CompilationDocument (#2386)
  • WI #2452 #2184 Remove dependent copies after copy change notification (#2462)

Misc.

  • WI #2440 Optimize diagnostics collection (#2448)

Internal / Tooling

  • WI #2401 Add incremental parsing testing capability (#2402)
  • WI #2403 Regroup all text update into parser, introduce RangeUpdate class (#2407)
  • WI #2414 Prepare migration to new TestUnit/FolderTester classes (#2408)
  • WI #2412 Add basic edits and structural edits tests (#2413)
  • WI #2414 Migrate existing tests to new test classes (#2415)
  • WI #2235 Add advanced incremental tests (#2417)
  • WI #2418 Add new incremental performance tests (#2419)
  • WI #2434 Rename test file to match new test file format
  • WI #2364 Define automatic incremental changes strategies for tests (#2435)
  • WI #2439 Detect anomalous line index (#2443)
  • WI #2441 Rename test file to match new test file format
  • WI #2235 Track current REPLACE directive for each line (#2473)
  • WI #2457 Exclude temporarily failing tests for ClearDocumentThenRewriteLineByLine (#2479)

v1.5.27

16 Feb 12:59
b202f38
Compare
Choose a tag to compare

Hotfix

  • WI #2434 #2441 Check builder state before attempting to close current statement (#2450)

v1.5.26

08 Feb 12:55
f86b5f1
Compare
Choose a tag to compare

Hotfix

  • WI #2434 Improve CUP error recovery with automatic statement closing (#2436)
  • WI #2432 Refactor method TypeCobolServer.OnDefinition (#2437)

v1.5.25

02 Feb 14:38
d68801a
Compare
Choose a tag to compare

Hotfix

  • WI #2185 #2319 Split file structure and source code into multiple traces (#2430)

This release is a hotfix improving debug traces.

v1.5.24

31 Jan 12:53
b0eed6e
Compare
Choose a tag to compare

Hotfix

  • WI #2185 #2319 Add last 5 incremental changes into debug trace

This release is a hotfix adding details on last incremental changes in some traces.

v1.5.23

06 Dec 08:52
f440b77
Compare
Choose a tag to compare

Changelog

Bug fix

  • WI #2393 Check for duplicate sorting keys in OCCURS clause (#2399)

Internal

v1.5.22

29 Nov 08:10
7799d7e
Compare
Choose a tag to compare

Changelog

New feature

  • WI #1860 Add semantic support for environment mnemonics (#2369)

Bug fix

  • WI #2374 Allow comma as separator between REPLACE clauses (#2384)
  • WI #2356 Ensure "literal not correctly delimited" diagnostic is reported for continuation lines (#2380)
  • WI #2387 Fix numeric literal creation when decimal part is missing (#2394)

Internal

  • WI #2372 Improve accuracy of performance counters (#2396)

v1.5.21

08 Nov 12:44
9061c86
Compare
Choose a tag to compare

Changelog

Bug fix

  • WI #2339 Do not create invalid IntegerValue for MaxBlockSize of a file description (#2376)
  • WI #2347 Check for null LevelNumbers in completion operations (#2378)
  • WI #2381 Handle REPLACE OFF syntax correctly in scanner's scan state (#2382)

Internal

  • WI #2367 Force uppercase on suffix and pre-suffix in EI Legacy replacing syntax (#2375)