Crossbow Release Notes Version 5


Version 5.0.394.0

Release Version 5.0.394.0

Release date: 07 April 2026

This release 5.0.394.0 contains the following updates:

Fixes:

  • Improved support for DB2 VARCHAR_FORMAT and CHAR(TIME, FORMAT) functions in COBOL DB2 programs. (Ticket 1158910134)

  • Fixed handling of SYSOUT print files defined with OUTPUT= only and no SYSOUTCLASS. (Ticket 1158937272)

  • Fixed an issue when using DCB=(EROPT=ACC) in JCL definitions. (Ticket 1158911428)

  • Added support for index creation on the session table. (Ticket 1158915864)

  • Fixed an issue where temporary files were created using ISO‑1252 encoding instead of UTF‑8. (Ticket 1158927746)

  • Fixed lack of support for GDGs with multiple record lengths. (Ticket 1158911524)

  • Allowed empty values for AVGREC in JCL definitions. (Ticket 1158863824)

Improvements:

  • SORT now tolerates any DYNALLOC values and ignores the VSCORE parameter.

Release Version 5.0.388.0

Release date: 25 March 2026

This release 5.0.388.0 contains the following updates:

Fixes:

  • Ticket 1158888934: INZUTILB - Fixed an issue where INZUTILB returned RC03 without producing output.

  • Ticket 1158853564: Stored Procedure - Resolved the platform compatibility error involving Microsoft.Data.SqlClient.

  • Ticket 1158841618: PLUS / ReportsKeyword - Corrected issues with unresolved PLUS statements and unsupported ReportsKeyword clauses.

Improvements:

  • SFTP: Added clearer error messages.

  • SFTPAUTH: Improved logging and added keyfile= parameter support.

Documentation & Setup:

  • RadaR: Updated documentation and corrected execution and installation scripts.

Release Version 5.0.385.0

Release date: 19 March 2026

This release 5.0.385.0 contains the following updates:

MISCELLANEOUS:

  • Ticket 1158817256: Unimplemented feature in SQL module

  • Ticket 1158817316: Unable to resolve unqualified *

  • Ticket 1158817340: Unable to resolve qualified *

  • Ticket 1158873912: IMSql - current position after a GE if the SSA contains unique sequence

  • Ticket 1158853592: IDCMS Parsing

  • VSAM SQL: separate connection and transaction for DATA & VSAM_META

  • Ticket 1158816626: Incorrect reading dataset meta data from .meta file correction in FileCacheHelper

  • Fix for READ using alternate index of VSAMSQL in CICS

Release Version 5.0.380.0

Release date: 12 March 2026

This release 5.0.380.0 contains the following updates:

MISCELLANEOUS:

  • [VSAMSQL] - Improved connection reuse for more efficient database access. Fix locking issues when nested programs access the same VSAM files

  • [VSAMSQL] - Added MSSQL logging and ensured pooled SqlCommand objects are disposed when connections close.

  • Ticket 1158817120: Unexpected usage of function CONCAT

  • Ticket 1158817154: Unexpected usage of function LAST_DAY with arguments [VARCHAR(4)]

  • Ticket 1158823554: Raincode Console stores and Displays the Connection String in Plain Text format

  • Ticket 1158824852: Unsupported type: sql_variant - multiple CTE

  • Ticket 1158822682: Error parsing Statement LABEL= or EXPDT= DCB= without sub parameters

  • Ticket 1158805008: [Record Editor] - Importing files into catalog doesn't save the file content

  • [QIX.Cmd] - Delay password rewrite

  • [QIX] - Add passwordMapping to processing server

  • [zTrieve] - DATECONV macro in C#

  • Ticket 1158839266: [IEBCOPY] - Catch the unsupported parm in the db instead of throwing an error

  • Ticket 1158838908: [ISRSUPC] - Ignore extraneous pipe added during serialization in scanonly mode

  • Ticket 1158817142: TIMESTAMPADD rewriting rule

  • Ticket 1158817136: SUBSTR with DECIMAL SQL rewriting

  • Ticket 1158802720: To_char Datetime2 SqlRewriting

  • Ticket 1158819042: Recognize structure as sql varchar

  • Ticket 1158829672: Fix stored proc gen when parameters are structure WIP

Release Version 5.0.371.0

Release date: 27 February 2026

This release 5.0.371.0 contains the following updates:

MISCELLANEOUS:

  • Ticket 1158822608: Use cobol name for stored proc parameter names

  • [JCL]: Add %%LIBSYM %%MEMSYM support

  • [ICETOOL]: Feature Expansion, Parser Modernization, and Stability Improvements

  • Ticket 1158805188: emit an error when the object of an ODO is not a DataField

  • Ticket 1158800804: IMSql - Correctly memorize position for multiple positioning PCB

  • Ticket 1158793648: Change in Install.ps1 script due to EBCDIC Collating Sequence

  • [VSAMSql]: Add Support for concurrent connections using VSAMSql Server

  • Ticket 1158792592: Documentation Update on the Stored Procedure

  • Ticket 1158792652: Update to the TSQL Creation Logic in Stored Procedure Compilation

  • Ticket 1158792666: Enable the settings ==> -AutoMapAssembly="RainCodeQueue" for Raincode QIX Terminal Server and QIX Processing

  • Ticket 1158800564: Issue when executing a Stored Procedure on DECIMAL field

  • Ticket 1158818682: Issue in creating a stored proc when linkage section field has X(22500) as a length

  • Ticket 1158819042: Unable to generate T-sql and C# file due to EXEC SQL....END-EXEC present immediate after linkage section

Release Version 5.0.365.0

Release date: 18 February 2026

This release 5.0.365.0 contains the following updates:

MISCELLANEOUS:

  • Ticket 1158793898: COMP-X implementation for Microfocus

  • Ticket 1158768368: Catalog - create and delete datasets in loop

  • Ticket 1158768390: SysoutStream.write_string(message); falls into endless loop

  • Ticket 1158688446: Ambiguous Columns

  • Ticket 1158688470: Compilations issue - OPTIMIZE and FETCH ONLY

  • Ticket 1158694108: Compilation issue (Unimplemented feature) - UPDATE multiple columns

  • Ticket 1158694148: Raincode Compilation issue (unexpected usage of operator - with arguments [, ])

  • Ticket 1158696860: Raincode Compilation issue - DATE Function

  • Ticket 1158696966: Raincode Compilation issue (POWER Function)

  • Ticket 1158696992: Raincode Compilation issue (SUM Function)

  • Ticket 1158775866: Stored Procedure errors

Release Version 5.0.360.0

Release date: 12 February 2026

This release 5.0.360.0 contains the following updates:

MISCELLANEOUS:

  • Container BatchRunner: And AzureLogger configuration

  • [IMSql] search for PSB into search path and not only in current directory

  • [JSON GENERATE]: Mainframe Aligned Padding - Remaining unused spaces in JSON output are now filled with 0x00, matching mainframe behavior.

  • [JSON GENERATE]: Dynamic Array Support - Added support for dynamic arrays, with array sizes passed in the same manner as for XML GENERATE.

  • Ticket 1158688464: Cannot resolve the parameters types (Compilation issue)

  • Ticket 1158696966: Raincode Compilation issue (POWER Function)

  • Ticket 1158696982: Raincode compilation issue (Quarter Function)

  • Ticket 1158696948: Raincode Compilation issue ( DEC FUNC)

Release Version 5.0.354.0

Release date: 03 February 2026

This release 5.0.354.0 contains the following updates:

MISCELLANEOUS:

  • Ticket 1158562030: [IDCAMS] PRINT missing support for FROMKEY / TOKEY

  • [IMSql]: Add KEY sensitivity on concatenated segments

  • [SUPERC]: Added CMPCOLM support and expanded Batch utility capabilities, including multi‑statement SYSIN processing for dataset comparisons.

  • [Raincode Console]: Modernized JCL UI with Kendo, added JCL home page, improved job listing, and introduced locked‑job filtering.

Release Version 5.0.346.0

Release date: 23 January 2026

This release 5.0.346.0 contains the following updates:

MISCELLANEOUS:

  • Ticket 1158676290: Multiple DBs usage in single program

  • Ticket 1158545654: IMSql - RRMS stuck in loop and causes the system to crash

  • Ticket 1158710140: IMSql - GAD CAS Prod - IMS1 Database Connection Dropping Overnight

  • Ticket 1158706486: GAD CAS IMS1 - View Product Structure Occurrence Data - RRHL - RRMS Failed to Open Via PF Key 10 from RRHL

  • Ticket 1157584894: VALUE doesn't fit error ...

Release Version 5.0.340.0

Release date: 16 January 2026

This release 5.0.340.0 contains the following updates:

MISCELLANEOUS:

  • [JSON GENERATE]: Improved JSON GENERATE with new syntax options, stronger validation, and more reliable REDEFINES processing

  • Dual SQL Runtime: improved docs and samples, added QIX mode, and strengthened configuration validation

  • Ticket 1158557738: IEFBR14 VSAM File Deletion causes in subsequent steps "SQL logic error no such column: KEY"

  • Ticket 1158687160: VsamSql - DBGenerator should create several SQL one per connection

  • [QIX]: Login transaction in a QIX

  • Ticket 1158584388: IMSql - GAD CAS RRMA Transaction Output from CODAC and CAS Do Not Match

  • Ticket 1155170108: [KREP-21758] Multi-line annotations

  • Ticket 1157306886: [KREP-24526] SCROLL_LOCK instead of SCROLL in cursor without WHERE (.sp file)

  • Ticket 1156832632: [KREP-23642] Select canonicity no longer depends on WHERE clause canonicity

  • Ticket 1156729390: [KREP-23284] canonic versions of simple UPDATE/DELETE (UPDATE/DELETE without WHERE CURRENT)

  • Ticket 1156685118: [KREP-23248] UPDATE/DELETE WHERE CURRENT OF - Canonic versions

  • Ticket 1156685128: [KREP-23213] New property bool RowsetPositioning in SqlCursorStatement

  • Ticket 1156653526: [KREP-23216] SchemaCacheGenerator.exe - hangs on table name length more than 30 characters

  • Ticket 1156441442: [KREP-22957] SQL cursor Sequential property

  • Ticket 1156286686: [KREP-22692] select unique index columns and selected columns in CANONIC stored procedures

  • Ticket 1156258664: [KREP-22757] Cobol missing sign

  • Ticket 1156034898: [KREP-22334] Canonic property FetchRowsCount

  • Ticket 1156032488: [KREP-22327] Missing "dbo" schema prefix in sql procedures generated "*CANONIC"

  • Ticket 1155756706: [KREP-22205] FUNCTION Raincode.SUBSTR returns wrong result length when spaces end input variable

  • Ticket 1155756280: [KREP-22204] SqlCodeAfterInsert.rcs - fail on clause FROM FINAL TABLE and break compilation

  • Ticket 1157772262: [KREP-25412] Register modules and entries after initialization.

  • [Qix]: Add functionality to reload server

  • Ticket 1158529514: IMSql - Invalid 3270 stream

  • VSAM SQLlite "NOJOURNAL" SUBSytem parameter

Release Version 5.0.333.0

Release date: 07 January 2026

This release 5.0.333.0 contains the following updates:

MISCELLANEOUS:

  • [VsamSQL]: Local Copy Mechanism Implementation

  • [VsamSQL]: Improuvement in VsamSQL by refining the way the key is created and used on MS SQL Server

  • VSAM SQLite the addition of the "EXCLUSIVE' and 'NOJOURNAL'

  • [IMSql]: Add field of the source segment of paired logical virtual child

Release Version 5.0.328.0

Release date: 02 January 2026

This release 5.0.328.0 contains the following updates:

MISCELLANEOUS:

  • Ticket 1158588476: [IMSql] - GAD CAS Transaction RRMS Output from CAS & CODAC Do Not Match

  • Ticket 1158643554: [IMSql] - If input message is empty, don't disconnect. display the error screen

  • Ticket 1158576528: [IMSql] - GAD CAS - View Conversion Modification Defintion Data - RRHX Failed

  • Ticket 1158529514: [IMSql] - GAD CAS Transcode RRRH via PF Key from RRIH Transaction Screen Not Found

  • Ticket 1158582856: [IEBCOPY] - syntax issue

  • Ticket 1158584380: [IMSql] - GAD CAS Transaction RRSE Outputs from CODAC and CAS Do Not Match

  • Ticket 1158532132: [IMSql] - GAD CAS RRFN Transaction Outputs From CODAC and CAS Do not Match

  • Ticket 1158114188: [KREP-24958] - Unexpected behavior of VARCHAR_FORMAT_NUMERIC - Implement Nullable property for DSNTIAUL output format null indicator

  • Ticket 1158281750: [KREP-26424] - [Raincode].[CHAR_DECIMAL](@theDec sql_variant) - function fix

  • SMTPMAIL - Support for CC

  • Ticket 1158532150: [IMSql] - Correctly memorize position for multiple positioning PCB

  • Ticket 1158584410: [IMSql] - Variable length segment with path

  • Ticket 1158545654: [IMSql] - Correctly memorize position for multiple positioning PCB

  • Ticket 1158518728: [IMSql] - Virtual logical child views

Release Version 5.0.306.0

Release date: 01 December 2025

This release 5.0.306.0 contains the following updates:

MISCELLANEOUS:

  • Ticket 1158529570: IMSql - replace 0x00 in field value by space

  • Ticket 1158528862: IDCAMS REPRO missing support for FROMKEY / TOKEY

  • Ticket 1158555560: IMSql - Plugin to customize terminal name

  • Ticket 1158519284: In case of identical DSNs, Catalog Explorer deletes the dataset on attempting to delete the folder

  • Ticket 1158545622: IMSql - Read variable length segments

  • Ticket 1158532140: IMSql - Use SCA of the output message

  • [QIX]: Authentication & Session Management - Improved login flow: better password field signaling, credentials passed to the session, username/groups displayed after approval, and refined sign-off handling with updated user naming in the Default Security Manager.

  • [QIX]: DFHSNLE/DFHSNP Screen Enhancements - Screen behavior refined: support for custom 4-character auth transaction names, corrected GroupID field offset, highlighted underline for empty values, and improved cursor placement on the USERID field.

  • Ticket 1158533816: Add secondary index "SEARCH_SUBSEQ_FIELD" field

  • Ticket 1158473704: Normal IDCAMS Delete with Mask deletes to many files

  • Ticket 1157286726: Correction for the function DIRDEL too many files are deleted

  • [IDCAMS]: VOLUME in DEFINE and DELETE GDG

  • Ticket 1158528884: COUNT not supported by ICETOOL

  • Ticket 1158529006: DFSPARM vs SYSIN in SORT

Release Version 5.0.299.0

Release date: 21 November 2025

This release 5.0.299.0 contains the following updates:

Runtime::

  • Corrected Memory Handling: Runtime memory handling has been corrected to prevent leaks during extended workloads.

Release Version 5.0.298.0

Release date: 20 November 2025

This release 5.0.298.0 contains the following updates:

MISCELLANEOUS:

  • [QIX]: TerminalServer add -IgnoreLocalHostPing to ignore heartbeat connection done by Azure container apps

  • [VsamSql]: Optimize - Dynamic PrefetchCount , prepare all querry

  • Ticket 1158514804: IMSql - PURG wih IOAREA

  • [IMSql]: Accept command code D in not all the SSA of the hierarchy

  • Ticket 1158400704: Catalog validation at jcl start is optional (default false) S949 StrictCatalogValidation

  • [QIX] Better Transaction Control and Config Reload(New region flags, Reload/Allow enabling/disabling)

  • Ticket 1158488482: Improve compiler generated traces

  • [QIX]: QIXMonitor Work with Ipv4 when IpV6 is not enabled

  • Ticket 1158356498: Error S949 occured after job using PASS dispositon

  • Ticket 1158460028: Replacement for DADBBI utility

  • Ticket 1158460930: Enablement of IPv4 in the CICS Setup for Linux

  • Ticket 1158529700: GAD CAS RRMK Transaction Did Not Produce Output

Release Version 5.0.289.0

Release date: 10 November 2025

This release 5.0.289.0 contains the following updates:

MISCELLANEOUS::

  • Ticket 1158489430: CAS GAD Transactions Timing Out on Execution

  • Ticket 1158496020: CAS GAD - System Times out After PF Key Navigation from RRFT to RRID Transaction

Release Version 5.0.288.0

Release date: 07 November 2025

This release 5.0.288.0 contains the following updates:

MISCELLANEOUS::

  • Ticket 1158472284: [SMTPMAIL] Support for Custom "From" Address and Alias in SMTPIN

  • [QIX]: OracleRuntime integration for Oracle compatibility

  • Ticket 1158465722: SESSION table name is optional in DGTT

  • Ticket 1158245520: Support procedure-pointer comparison to null

  • Ticket 1158488974: [IMSql] Adding "clear key" support to IMSql.TerminalServer

  • [IMSql]: improve SSA V command

COBOL:

  • Conditional ignoring of SqlCleanupStoredProcedure based on naming convention

  • Refactored Oracle classes for AT dbName support

  • Support for Oracle connect strings in user/password@service

  • Skip Arithmetic intermediate Representation for unsigned numeric display moves

  • Fix EXECUTE IMMEDIATE behavior

  • Avoid NullReferenceException during cursor close

VsamSql:

  • Disable Auto-Enlistment for SQLite connections

  • Removed Close() Method from IVsamSqlCommand

  • [VsamLite]: Safeguard commit and rollback with try/catch

Release Version 5.0.283.0

Release date: 03 November 2025

This release 5.0.283.0 contains the following updates:

MISCELLANEOUS::

  • [QIX]: MaxThreads added as a region setting to control the number of concurrent transactions.

  • [VsamSql]: Don't remove records from update cache while reading a DataReader.

  • [VsamSql]: Introduced prefetching logic for `START =` operations to optimize targeted reads.

  • [IDCAMS]: Reinforced index creation logic to ensure alternate indexes are only created once.

Release Version 5.0.281.0

Release date: 31 October 2025

This release 5.0.281.0 contains the following updates:

MISCELLANEOUS::

  • [VsamSql]: VsamSql.Load correctly create entry in VSAM_META table for indexed files

  • [IDCAMS]: Implement DELETE CLUSTER

  • Update rcextfh_dll

  • DIsam increase index page size for large keys and compression

  • [CICS/BMS]: Ajust the sequence number since the addition of RC_CICS_PARAM shifted the overall sequence numbers across tables

  • [CICS/BMS]: Provide the full path of the bms file

  • [COBOL/PLI]: Monitor the value of most cics command clauses

  • [CICS/BMS]: Add scanOnly mode in the bms compiler to list the bms maps that have been compiled

  • Ticket 1157624912: Enhancement better file information (DD, DSN, PATH) / Handling Restart Error S949

  • Ticket 1158184872: [KREP-18771] JCL temporary files not removed from SYS\TEMP

Release Version 5.0.278.0

Release date: 28 October 2025

This release 5.0.278.0 contains the following updates:

VSPlugin:

  • Added support for rclaunch project type

  • Improved accuracy of adapter debug profile resolution

  • Bug fixes and restore COBOL-SQL highlighting

QIX:

  • [QIX.Cmd]: Update parsing of CSD file to allow LIST GROUP(GROUP_NAME*) OBJECTS

  • [QIX.Cmd]: Allow filtering servers based on the region

  • Add support for the Oracle runtime for application databases

  • Ticket 1158435076: Reference from FileConfig to Catalog not working.

COBOL:

  • Fix handling of x REDEFINES y when there are fields (without redefines) between x and y

  • Implement PI & E

  • Fix structure layout computation to handle sync and ODO correctly

  • Add validation on ReturnStatement

IMSql:

  • Correct IMSql.Cmd edit-region

VsamSql:

  • Load file using the complete path

MISCELLANEOUS::

  • Ticket 1153406552: [RE]WRITE requires a file record, found a FD entry instead

  • [IDCAMS]: DEFINE ALTERNATEINDEX correctly set alternate key length and offset

  • [RainBox]: Enable user to pass the loglevel to rainbox API

  • [RainBox]: Rainbox in RaincodeMetal

Release Version 5.0.267.0

Release date: 15 October 2025

This release 5.0.267.0 contains the following updates:

IMSql:

  • Fixed incorrect computation of output message size in PLI.

  • Added support for PCB structures with multiple positions.

  • Improved maintenance routine for secondary indexes.

  • Corrected behavior of _GN function for logical DBDs.

  • Check PCB vs DBD consistency check at program start.

VSPlugin:

  • Fixed issue causing error list to gain focus while typing.

  • Added support for launching and debugging Docker containers, including integration with other Visual Studio Docker services.

Release Version 5.0.258.0

Release date: 09 October 2025

This release 5.0.258.0 contains the following updates:

IMSql:

  • Multiple Positioning in PCB: Added support for multiple positioning, enabling more flexible segment navigation.

  • Parentage Handling on GU/GN Failures: When GU/GN calls fail, parentage now defaults to the last successful segment.

  • TN3270 Field Sorting: Sort fields are now rendered to avoid overlap in TN3270 screen layouts.

  • SSA Command Code V Support: SSA command code 'V' is now recognized and processed correctly.

  • LEVEL Field Formatting Fix: LEVEL in DB PCB now uses instead of for consistent PIC 99 formatting.

RemoteDebugger:

  • Debugger Extension Setup: Introduced directory and file to support enhanced debugging workflows..

Release Version 5.0.252.0

Release date: 01 October 2025

This release 5.0.252.0 contains the following updates:

IMSql:

  • Correct SSA AND/OR precedence

  • Concatenated segment: add fields of the second source

  • IMSql.Load don't load segment with SOURCE

COMPILERS:

  • Use ilasm 9.0.0

JCL:

  • Add .rcexe in nuget package

VSPLUGIN:

  • Make VS window the owner of publisher window

  • Always switch to VS UI thread before accessing VS registry

  • Force msbuild to handle false duplicates gracefulluy when publishing project

  • Publish rcproj projects from the comfort of VS

  • Improve custom extensions and icons association logic

  • [JclDebugger] Debug server support remote source file streaming

  • [RCDebugAdapter] Support remote source files streaming

  • [RCRemoteDebugTooling] The installer now searches for child process backend DLLs in both AppData\Local and AppData\Roaming, increasing robustness across environments.

QIX:

  • Add a bit of logging around SetTerminal to report UCTRAN flags

Tickets:

  • Ticket 1158244214: Ignore elementary fillers and use field descriptor offset

Release Version 5.0.246.0

Release date: 22 September 2025

This release 5.0.246.0 contains the following updates:

IMSql:

  • Enhanced Logical Relationship Support: Improved handling of bidirectional virtually paired logical relationships, enabling more accurate and flexible data modeling

  • Expanded SSA Operator Compatibility: Added support for the operator in SSA expressions, increasing query expressiveness and alignment with logical syntax.

VsamSql:

  • Enhanced Large Record Support: Updated cache logic and modified table creation rules to properly handle records exceeding 8000 bytes.

  • Improved Type Handling: Applied key type casting when is to ensure compatibility and prevent runtime issues.

PLI:

  • Simplified Tab Skipping Logic: Replaced label jumps with in , improving readability and control flow.

  • Cleaner Parameter Handling: Used instead of label jumps in for more maintainable call logic.

  • Optimized Aggregate Index Expansion: Omitted cached expressions when the aggregate assignment index is referenced only once, reducing unnecessary overhead.

  • Improved Loop Serialization: Switched from to during PL/I loop expansion to prevent redundant serialization and streamline output.

Release Version 5.0.244.0

Release date: 18 September 2025

This release 5.0.244.0 contains the following updates:

QIX:

  • Improved trace messages for better diagnostics.

  • Updated run options for enhanced flexibility

  • Introduced idle timeout handling for terminal connections.

  • Idle Timeout for terminal connections

  • Enabled VSAM READ, UPDATE, and DELETE operations without RIDFLD.

  • Implemented WRITE RBA changes on sequential files

  • Fixed logic for WRITE operations without RIDFLD.

  • Introduced new region option: UCTRANST.

  • Added support for CICS WRITE with RBA and no RIDFLD on ESDS files

Vsam & VsamSql:

  • Set logical name as the complete path

  • Corrected RESP and RESP2 handling on duplicate keys.

RC_DEBUGGER:

  • [VSPlugin]: Added syntax highlighting and error reporting for COBOL SQL with balanced parentheses.

  • Now supports propagation of local variables from parent scope into nested procedures.

CONSOLE:

  • Fixed display errors affecting certain MFS and DBD elements.

COBOL:

  • Enabled debugging of COBOL fillers.

Release Version 5.0.235.0

Release date: 09 September 2025

This release 5.0.235.0 contains the following updates:

MISCELLANEOUS:

  • [QiX]: Improved handling and consistency of sequential read operations.

  • [VsamSql]: Separated counting of database operations (delete, insert, update, select) for clearer profiling.

  • [Vsam]: Corrected RIDFLD value handling during READPREV operations.

  • [Vsam]: Replaced getcurrent with default logic for improved consistency.

  • [Vsam]: Enabled processing of VSAM files with multiple alternate indexes.

  • [RC_DEBUGGER]: Normalized naming for COBOL FILLER fields to ensure correct identification in conditional expressions.

  • [RC_DEBUGGER]: Refined expression parsing to support evaluation of COBOL FILLER fields in the debugger's watch window.

  • IEBCOPY]: Disambiguated parsing logic for datasets in the INDD statement.

  • [VsamSql]: Log profiling in INFO level, to make it consistent with update cache logs.

  • [IMSql]: Added computation of PCB LEVEL, SEGMENT, and concatenated key when queries fail.

  • [IMSql]: Introduced handling for virtual logical child relationships.

  • [ZBridge] Applied updates to ZBridge for enhanced PostgreSQL compatibility

Release Version 5.0.230.0

Release date: 01 September 2025

This release 5.0.230.0 contains the following updates:

MISCELLANEOUS:

  • [QiX]: Adding parsing for RUN TRANSID, FETCH ANY, FETCH CHILD, and more INQUIRE ASSOCIATION options

  • Ticket 1158245496: Wrong value when moving to a variable with P in the picture clause

  • Ticket 1158242304: Wrong comparison of numeric edited with display

  • Ticket 1158247008: [KREP-24948] differences in result type between DB2 and sqlServer

  • [JCL]: Add IEBCOPY

  • Ticket 1158257014: Customize xml serialization so we can better match mainframe behavior

  • [IMSql]: AIBTDLI add INQY MSGINFO

  • [CopybookViewGenerator]: Add PliDisplayNumericTypeInfo

  • [IMSql]: Allow optional PROCOPT on DB PCB

  • rcextfh_dll Fix EACCESS and EPERM reporting

  • [IMSql]: Add AIBTDLI

  • [VsamSql]: Add partion number in some queries for optimization

  • [IMSql]: Replace console by logger

  • [VSAMSql]: Add AllowCommitRollback property to RecordBaseFile class to enable/disable commit/rollback behavior

  • Ticket 1158230474: No META mean SYSOUT

Release Version 5.0.218.0

Release date: 19 August 2025

This release 5.0.218.0 contains the following updates:

MISCELLANEOUS:

  • [VSAMSQL]: Default update cache size = 100

  • [VSAMSql]: Avoid flush while commiting

  • [VSamSql]: Configure default cache size in catalog configuration

  • [QIX]: Add implementation of ASSIGN ABCODE, with our inferred behavior regarding CICS LINK

  • [IMSql]: If a LCHILD doesn't have a DBD name, use the physical DBD

  • Publish Raincode Public API

  • [VsamSql]: Add the "fileId" in the where clause of the rewriteIndexToDb

  • [zTrieve]: Add StringRuntimeEncoding flag

  • Ticket 1158257034, 1158257026: Fix formatting of COMP-5 data items in XML GENERATE

  • Ticket 1158257104: WITH ENCODING clause ignored in XML GENERATE?

  • Ticket 1158257192: XML GENERATE: value with only spaces should output a single space instead of an empty string

  • Ticket 1158244560: Compare ALL ZERO like ZERO

  • Ticket 1158256954: Incorrect element name for XML field starting with 'xml'

  • Ticket 1157451738: Lack of meaningful compilation error for use of GOTO.

  • Ticket 1158246386: Add VALUE clause validation

  • Ticket 1158245588: Add support for null terminated string literals in COBOL

  • Ticket 1158246060: Add compiler and runtime validation on HEX-TO-CHAR

  • Ticket 1158246300: Fix REM with floating point

  • Ticket 1158254054: [VsamSql] - VsamSql.Load bcp don't save the RDW in the data file

  • [DSNUTILB] - Support for ScanOnly

  • Ticket 1158246306: Ensure the high bit of parameter addresses is cleared

  • Ticket 1158244572: Improve FUNCTION MIN with nested arrays

  • Ticket 1158244622: validate using list of entry statements

  • Ticket 1157989492: [KREP-25895] Unexpected RC:S949 Metadata file not found / Locking

  • Ticket 1157624912: Spelling DIRDEL

  • [QIX.Cmd]: Add default value for region options APPLID and SYSID

  • [QIX.Cmd]: Service broker services

  • [QIX.Cmd]: Add command multiple transactions

  • [QIX.Cmd]: Allow multiple commands

  • [QIX.Cmd]: ParallelDestination

  • [QIX.Cmd]: update flags for better consistency with RegionCreator

  • [IMSql]: [IMSql.DbGenerator] Don't generate views and stored procedure for some logical segments

  • [IMSql]: [IMSql.DbGenerator] Insertion in secondary index in a stored procedure

  • [JCL]: SUBSYS VSAM SQL UPDATECAHE=xxx

  • [COBOL]: Fix SORT when the runtime encoding is EBCDIC.

  • [ASM] Hex floating point constants in ASM + new implementation of Decimal

  • [IDCAMS]: Allow DATA/Index Swap in syntax

  • QIX]: Improve the documentation about the plugins and make the plugin buildable on a client machine

  • [QiX]: Handling of shared memory beyond just CWA part 2

  • [QiX]: Handling of shared memory beyond just CWA part 1

  • [Runtime]: TopLevelAllocator can now accept an offset to start allocating

  • [QiX]: Added a script for service broker DB. Added the CWA and shared mem table there.

  • [QiX]: Added enum with region options possible values

Release Version 5.0.206.0

Release date: 04 August 2025

This release 5.0.206.0 contains the following updates:

MISCELLANEOUS:

  • [QIX]: Add LTEQ option

  • Ticket 1158211112: [CopybookViewGenerator] Add RC_DISPLAY_SIGNED_TRAILING_TO_SMALLINT function

  • [QIX]: Add verb WEB CONVERSE

  • Ticket 1158164720: Do rounding directly in Cv_F64_P31

  • Ticket 1158162456: Fix issue caused by mismatch between a comp-5's declared number of digits and the actual number of digits

  • Ticket 1158189312: Issues with division

  • [CopybookViewGenerator] Generate for VB record

  • [RCS] Added IO.IsATTY, version 2.53

  • Ticket 1158194168: [CoopybookViewGenerator] Duplicate field names

  • Ticket 1158190404:[CopybookViewGenerator] Cast to int/smallint failed if the value isn't valid

  • TLS in QIX and IMSql

  • Ticket 1157973460: [KREP-25571] ListCatCore with asterisks

  • Ticket 1157791700: Second test case Error S949 Catalog coruppted Meta without Seq or Seq without Meta

  • Ticket 1157286726: IDCAMS - optimal removal of datasets by mask / option DELDIR fix using MetaFileCaching

  • Ticket 1158008248: [KREP_25388] Rolling GDG error

  • Align port option description in IMS with QIX.

  • [IDCAMS]: improve parser FREESPACE with a ","

  • [VsamSql]: Add the "outputFormat" option to VsamSql.Load (bcp and insert)

  • [VsamSql]: Generate table with copybook columns

  • [CopybookViewGenerator]: Add specific exceptions

  • [CopybookViewGenerator]: Move generic methods to DeclDescriptors

  • [CopybookViewGenerator]: Use DeclDescriptors

  • [SORT]: REFORMAT alternate FILL syntax

  • [IDCAMS]: Add parser support for the IMBD variant of IMBED

  • [IMSql]: IMSql.Cmd add region/transaction managment commands

  • [IMSql.Cmd]: Use subcommands

  • [JclDebugger]: Debug server support remote source file streaming

  • [IDCAMS]: Add some missing asserts in the tests, so they really fail when they should. Also remove a duplicate test.

  • Ticket 1158161276: [COBOL] Program not abending with invalid sign

  • [PLI]: Fix reinit grammar

Release Version 5.0.180.0

Release date: 02 July 2025

This release 5.0.180.0 contains the following updates:

MISCELLANEOUS:

  • [IDCAMS]: Allow catname in CATALOG of a delete to be an entryname (i.e. fully qualified name)

  • [JCL]: Enforce SMS Validation from Config

  • [IDCAMS]: Storageclas & Dataclass generate error

  • [IDCAMS]: Alter GDG

  • [PLI]: Support reinit

  • [FILEAID]: Left margin changed to 1 as per documentation

  • Ticket 1158142990: IMSql - DISPLAY's doesn't appears in log files

  • [RCDebugAdapter]: Add support to external source files lookup when locally debugging a JCL process

  • [DSNUTILB]: Implement LOADDDN + improve SYSPUNCH generation

  • Parsing support FS-> FB, FBSA -> FBA, VS ->VB, VBSA -> VBA

  • [COBOL]: fix integer type built from float

  • [PLI]: Emit an error on RELEASE statements

  • [DSNUTILB] Use the same format as DSNTIAUL on save for UNLOAD queries

  • Ticket 1158112912: Unexpected overflow in packed decimal multiplication with 31 digits

  • Ticket 1158114188: [KREP-24958] Unexpected behavior of VARCHAR_FORMAT_NUMERIC

  • Ticket 1158068260: [VsamSql] Rewrite of indexed file

Release Version 5.0.170.0

Release date: 16 June 2025

This release 5.0.170.0 contains the following updates:

MISCELLANEOUS:

  • Ticket 1158108540: Concatenation overwrite when calling a proc

  • [IKJEFT01]: Use dllLoglevel instead of UtilityLogLevel

  • [JCL]: LogLevel, DllLogLevel, UtilityLogLevel Rework, add loglevel=Program_output

  • Ticket 1158068260: VsamSql - READ NEXT after a DELETE

  • [DSNUTILB]: Add LoadBufferSize and UseBulk options

  • [DSNUTILB]: Use bulk insert with option SYSDISK

  • Ticket 1158099386: SYSOUT extra information

  • Ticket 1158064034: Long running of LOAD step of JOB PPNMLI13

Release Version 5.0.153.0

Release date: 23 April 2025

This release 5.0.153.0 contains the following updates:

MISCELLANEOUS:

  • Ticket 1158025256: No compiler error for relative subscripting with variable offset

  • Ticket 1157706980: SYSOUT meta switch 3

  • Ticket 1157964580: Procedure name host variable support for DESCRIBE PROCEDURE

  • Ticket 1157263542: Override DD in PROC with inline Data

  • Ticket 1157929316: JCLLISTING Encoding Reading / Dumping JCL

  • Ticket 1157957384: ORA-50029: OracleParameter.ArrayBindSize is inva Lid

  • Ticket 1158003372: Compilation error 2040 - StrictIBM Erroneous PICTURE clause after activating StrictIBM flag

  • Ticket 1157881724: PIC(0) should throw an error

  • [IMSql]: Add "IncludeExtension" option to IMSql.psb and IMSql.mfs

  • [QIX]: Add "-IncludeExtension" to rcbms

  • [IMSql]: Improve PSB parsing

  • [IMSql]: Fixed crash when modifying TransactionMappingOption in the console

  • Ticket 1157868434: JCL Support for EXPORT SYMLIST SYMBOLS

  • [QIX-BMS]: Add support for EJECT and improve error messages a tiny bit

  • [Submit]: Use value of the batch that is executed

  • [Submit]: RCEXE - ParametersAsEnvVar doesn't suppress scan flags

  • [IMSql]: Improve error message + suppress warning

  • [IMSql]: added TransactionMappingOptions read/write into the console

  • [DSNUTILB]: UNLOAD accept INTO TABLE

  • [Submit]: Add DD CHARS grammar

  • [DSNUTILB]: LOADOPT accept ","

  • [Record Editor]: Eliminate CpyRc.exe from crossbow

  • [IMSql]: IMSql.psb - accept TITLE

  • [IMSql]: DFSRRC00 - don't throw exception if number of arguments is to small

  • [Submit]: Add OUTLIM to DD

  • [Submit]: Improve DD AMP parsing

  • [BatchContainer]: Dispatcher multi target runner, Add Scan sysout

  • [IMSql]: DbGenerator - correction of LPID update stored procedure when the concatenated key doesn't contains only unique sequence

  • [DSNUTILB]: LOADOPT RECNUMS

  • Ticket 1157970352: No compiler error for POINTER with ZERO

  • [DSNUTULB]: Load with RUNSTAT

  • [IMSql]: IMSql.DbGenerator better management of incomplete DBGEN

  • [IMSql]: Parse Logical DBD without DATASET

  • [IMSql] IMSql.DbGenerator - Better parsing of logical parent declaration

  • Ticket 1157970240: No compiler error for non-numeric reference modifier

  • Ticket 1157923532: SELECT INTO without ":"

  • Ticket 1157970290: No compile error for INSPECT TALLYING FOR without ALL

  • Ticket 1157970088: No compile error for REDEFINES with VALUE clause

  • Ticket 1157954680: [RC_DEBUGGER] Remove string quotation passed by VS to debugger when assigning values because it produces double-quoted string literals when string is being passed

  • [IMSql] IMSql.DbGenerator - add HDDBD as an alias of DBD

  • Ticket 1157901450: fix init value validation

  • Ticket 1153709044: Invalid MOVE statement (alphabetical text to numeric)

  • Ticket 1153927980: No compile error for 05 W-ZZ9-X PIC X(3) REDEFINES W-ZZ9.

  • Ticket 1153123116: FUNCTION-POINTER not supported (hack : treated as PROCEDURE-POINTER)

  • Ticket 1153925532: Parse errors for DFHRESP(nnnn) symbolic constants

  • Ticket 1153708968: level 88 reference to symbolic characters is not accepted.

  • [DSNUTILB]: Add LOADOPT in UNLOAD

  • [IMSql]: Add DATASET MODEL

  • Ticket 1157917622: add support for level 88 in the EVALUATE statement (wip)

  • Ticket 1157911546: Password plugin during compilation

  • Ticket 1157922346: DSNTEP2 error during job execution

  • Ticket 1157941264: Issue with LOAD while using Plugin QueryTranslation for Submit command

  • Ticket 1157899002: Issue with FLOAT and Microsecond

  • Ticket 1157955682: Null Column value is X'6F' in Mainframe DB2 whereas X'3F' in the SQL Server Table

  • Ticket 1157988572: Issue with FTP job which has Open statement in INPUT Card

  • Ticket 1157991108: Issue with executing the shell s cript

  • Ticket 1157951040: Getting 'Out of memory exception' error, and 'Array dimensions exceeded support range' in "Load" Job

  • Ticket 1158014054: Query providing different value when we are trying to use ROUND OFF FUNCTION

  • Ticket 1157919398: Program accessing multiple Databases in single flow

  • Ticket 1158025122: Long running of Load step

  • Ticket 1158054482: Typecast issue while doing unload on TLP1118 AND TLP1049 tables

  • Ticket 1158064034: Long running of LOAD step of JOB PPNMLI13

Release Version 5.0.110.0

Release date: 31 March 2025

This release 5.0.110.0 contains the following updates:

MISCELLANEOUS:

  • Ticket 1157901450: Validate the initial value for the given data type

  • Ticket 1157881686: Error when equal sign is missing in COMPUTE in StrictIBM

  • Ticket 1157881994: Error when end-perform is missing in StrictIBM

  • Ticket 1156750394: Handling all errors at UserWaitForFilePlugin

  • Ticket 1155277476: Digits of precision in DISPLAY EIBCPOSN?

  • Ticket 1157735744: Difference in behavior between cobol 4.2 and 6.3 when comparing a PIC 9(2) DISPLAY against -0 in an EVALUATE

  • Support multiple lines in the body of SMTPMAIL utility

  • Ticket 1157885482: Difference in behaviour of SORT(OUTREC) utility from Mainframe.

Release Version 5.0.88.0

Release date: 03 March 2025

This release 5.0.88.0 contains the following updates:

MISCELLANEOUS:

  • Ticket 1157791700: Disposition not working correctly on abend situation

  • [IDCAMS]: Improve parsing

  • [Sort]: Several Improvements

  • Ticket 1157804900: COBOL compiler doesn't report all missing copybooks or INCLUDEs when it encounters first missing INCLUDE

  • Ticket 1157805220: Allow spaces in resource file name

  • Ticket 1157819886: Add ability to override the name of the generated module

  • Ticket 1157286726: [IDCAMS] - Optimal removal of datasets by mask

  • Ticket 1157753208: [KREP-25393] Too little diagnostic information see also RCO Ticket 1157340708

  • Ticket 1157624912: Enhancement better file information (DD, DSN, PATH)

  • Ticket 1157753220: [KREP-25392] Allow Autoedit Calendars of type 'Regular'

  • [zTrieve]: Recognize (R) in PARM LINK option

  • [RCDebugAdapter]: Improvements

  • Cobrc accepts ModuleName as a parameter

Release Version 5.0.75.0

Release date: 17 February 2025

This release 5.0.75.0 contains the following updates:

MISCELLANEOUS:

  • Ticket 1157804390: Wrong object segment when multiple segments are present in EXEC DLI GET

  • [VSamSQL] Fix Error when duplicate key

  • Ticket 1156989876: PERFORM 0 TIMES should be forbidden in StrictIBM mode

  • Ticket 1153671008: Not supported: EXAMINE ... TALLYING

  • Ticket 1154722922: Bad Strict IBM WarningAsError in WBA test program.

  • Ticket 1150646790: accept spaces in repeat factor of picture clause

  • Ticket 1154556550: WBA Ignore TITLE in IDENTIFICATION DIVISION?

  • Ticket 1156555332: Internal compiler error: CobUtils:866: bad cast (23)

  • Ticket 1157513532: INITIALIZE WITH FILLER VALUE TO ALL

  • Ticket 1157786848: VS/COBOL search all issues?

  • Ticket 1153681836: Not supported: OTHERWISE

  • [COBOL] add TIOT plugin

  • [COBOL] Builtins TEST-NUMVAL and TEST-NUMVAL-C

  • [IMSql] Add telemetry events

  • [IMSql] Add Lterm test

  • [RaincodeConsole] New option : LogsDirectory

  • Ticket 1157770442: ReportWriter - fix newlines in resulting report

  • Ticket 1157784432: ReportWriter - use position of report as id instead of name

  • Ticket 1157766978: ReportWriter - add defaults when no FIRST DETAIL

  • Ticket 1157769140: ReportWriter - recursively look for line clauses (3.2.2 - 6)

  • Ticket 1157784896: Strict IBM: Identifier exceeds 30 characters when FD name >26 characters

  • Ticket 1157770530: ReportWriter - add newlines when writing a designator

  • Ticket 1157766600: ReportWriter - consider NEXT PAGE as an absolute position instead of relative

  • Ticket 1157766464: ReportWriter - add parsing support for CF FINAL

  • Ticket 1157603616: ReportWriter - replace the empty string with SPACES

  • [ReportWriter]: dont put the full name for testing purposes

  • Add AppInsights plugin

  • Ticket 1157761894: ReportWriter: recursively look for DataItem

  • [Catalog Explorer] Fix parsing failure in Import Wizard

  • [Catalog Explorer] Differentiate between file and folder for delete

  • SMTPMAIL

  • Ticket 1157720606: handle Utf8Input when truncating PL/I source lines

  • [IMSql] Add IMSql.Cmd

  • [VSAMSql] VsamSql.Load - Add -XmlExport

  • [JCL] add JclDebugger

  • Ticket 1157585256: 01 name COPY copyname, with copyname also having an 01.

  • Ticket 1157509468: [PKO] Error redirecting output, StackTrace added

  • Ticket 1157706980: SYSOUT META KEEP / don´t write the META File / changes to handle ARCPRINT

  • [SORT] Improve SortException messages and their reporting in the SortRunner

  • [SORT] Improve parse error reporting: clearer messages, a bit more detail

  • [SORT] Add reporting of MODS and not EQUALS in ScanOnly mode

  • [SORT] Add parsing of the MODS command

  • [HLASM] Implement instructions CIJ, CIB, CRJ, CRB, CGIJ, CGIB, CGRJ and CGRB & add their extended instructions

  • [HLASM] Allow multiple masks with different positions

  • [HLASM] Implement instruction LTER

  • Ticket 1157594918: VALUE 0 on a PIC X is not allowed

Release Version 5.0.37.0

Release date: 16 December 2024

This release 5.0.37.0 contains the following updates:

MISCELLANEOUS:

  • [SORT] Add support for ScanOnly mode to validation of reporting

  • [SORT] CH is ebcdic if default encoding is EBCDIC

  • Ticket 1157616878: SYSOUT META KEEP / don´t write the META File changes to handle External Utilities AutoDDCards

  • Ticket 1157286726: [IDCAMS] - optimal removal of datasets by mask

  • Ticket 1157542174: [IMSql] - Rename lchild FK to be unique

  • [HLASM] USING DSECT handling

  • [DSNUTILB_DB2] test concatenation with DUMMY

  • Ticket 1157420212: Concatenation with DUMMY does not work related to Ticket 1156972156

  • Ticket 1157513498: No support for 'XML-INFORMATION' special register

  • Ticket 1157513464: TRIM TRAILING: not supported.

  • Ticket 1157510802: Internal compiler error at section end.

  • Ticket 1157513586: A handful of programs yield mysterious unrecoverable Parse errors highlighting DATA DIVISION

  • Ticket 1157519452: CEEGTST CEEFRST

  • [zTrieve] Implement LINESIZE on definition PRINTER file

  • [zTrieve] Record length for variable formats is not mandatory

  • [zTrieve] Allow a blank line with a dot between the records definitions

  • [zTrieve] Implement IF FINAL BREAK for the AFTER_BREAK procedure

  • [zTrieve] Allow parenthesis around controlOptions

  • [zTrieve] Allow parenthesis around HEX

  • [zTrieve] EXIT program of a file

  • [zTrieve] Change rc_ret_code for missing macros

  • [zTrieve] Condition to perform boolean operation (masking) less strict

  • Ticket 1157170520: Convert maxcollationchar using the runtime encoding

  • [Catalog Explorer] Add cancel functionality to progress bar during Import

  • [Catalog Explorer] Refactor for import performance

  • [Catalog Explorer] Allow error check and rectification in the Import Wizard

  • [Catalog Explorer] Add progress bar during Import for file listing duration

  • [Catalog Explorer] Avoid string comparison by adding a boolean as status for file name verification; Report number of files imported

  • [Catalog Explorer] Move importing logic to Import Wizard

  • [Catalog Explorer] Show import wizard asynchronously to free up origin of drop

  • [Catalog Explorer] Avoid focusing on filter after refresh

  • [Catalog Explorer] Allow drop on entire volume header

  • [Catalog Explorer] Show forbidden icon when mouse is over folders during Drop

  • [Catalog Explorer] Perform data set existence validation in the import wizard

  • [Catalog Explorer] Show the progress bar in the center of the screen

  • [Catalog Explorer] Allow drop on volume for import

  • [Catalog Explorer] Allow dropping multiple files and folders on a PDS for import

  • [Catalog Explorer] Add a note to user in the import wizard

  • [Catalog Explorer] Remove tool tips from import wizard

  • [Catalog Explorer] Add full target DSN to import wizard

  • [Catalog Explorer] For import, validate file name with blank

  • [Catalog Explorer] Prepare file list and data set identifiers for import

  • [Catalog Explorer] Compute and update status when DSN is updated by user

  • [Catalog Explorer] Show content of the cell in tool tip

  • [Catalog Explorer] Setup bindings for Import Wizard

  • [Catalog Explorer] Add wizard functionality

  • [Catalog Explorer] Add ImportWizard

  • [Catalog Explorer] Adjust column widths and add tooltips

  • [Record Editor] Eliminate showing unnecessary confirmation dialog while closing if opened from Catalog Explorer

Release Version 5.0.11.0

Release date: 14 November 2024

This release 5.0.11.0 contains the following updates:

Crossbow backward compatibilty breaking changes:

Compiler flags with different default values

  • UseFilenameAsModuleName
    • This flag is now true by default.
  • DefInit (CobRc)
    • This flag is now false by default.
  • MainframeConstantComparison (CobRc)
    • This flag is now true by default.
  • PerformMode (CobRc)
    • The default value of the option is now `Enterprise-Cobol-V4`.
  • DisableLvl77StorageOptimization (CobRc)
    • This flag has been renamed `EnableLvl77StorageOptimization` and is false by default.
  • BIFPREC (PliRc)
    • The default value of the option is now `15`.

Removed deprecated CobRc options

  • Microfocus, GCOS, Unisys
    • Use the SourceDialect option instead.
  • `NoTrunc`
    • Use -Trunc=Bin or -Trunc=Std instead.

Removed deprecated rclrun options

  • File_Config
    • Use FileConfig instead.
  • SQLServerTransactionIsolationLevel
    • Use SQLTransactionIsolationLevel instead.
  • SQLServerExecutionMode
    • use SQLExecutionMode instead.
  • SQLServerMaxCollationChar
    • use SQLMaxCollationChar instead.

Removed deprecated SortRunner options

  • File_Config
    • Use FileConfig instead.

Removed deprecated CopybookViewGenerator options

  • odbcdsn
    • Use conn instead.

Removed plugins

  • IRunnerMode
    • The IRunnerMode plugin for BaseRunner has been removed.

Obsolete symbols removed from the runtime libraries

void RainCode.Core.AssemblyLoading.AbstractAssemblyLoader.AddExclution(string);

static void RainCode.Core.CommandLine.CommandLineProgram.Exit(int);

static string RainCode.Core.Extensions.F(this string, params object[]);

void RainCode.Core.Plugin.PluginProviderAttribute.Install(Assembly);

int RainCodeLegacyBatchCatalog.DefaultCodePage { get; set; }
string RainCodeLegacyBatchCatalog.EbcdicCompareCodePage {get; set; }

DataSet RainCodeLegacyBatchCatalog.Manager.CreateFromMetadata(string, Manager);
DataSet RainCodeLegacyBatchCatalog.Manager.CreateFromMetadata(string);

static IDictionary RainCodeLegacyBatchCatalog.Utilities.GetEnvironmentVariables();
static string RainCodeLegacyBatchCatalog.Utilities.GetEnvironmentVariable(string);
static void RainCodeLegacyBatchCatalog.Utilities.SetEnvironmentVariables(string, string);

DataSet RainCodeLegacyBatchDataset.DataSetManager.CreateFromMetadata(string)

ushort RainCodeLegacyFileDriver.Driver.RecordBasedFile.UpdateStatus(string, string);
bool RainCodeLegacyFileDriver.Driver.RecordBasedFile.IsErrorStatus(string);
bool RainCodeLegacyFileDriver.Driver.RecordBasedFile.IsErrorStatus(ushort);
bool RainCodeLegacyFileDriver.Driver.RecordBasedFile.IsCompletionOkStatus(ushort);
bool RainCodeLegacyFileDriver.Driver.RecordBasedFile.IsCompletionOkStatus(string);
bool RainCodeLegacyFileDriver.Driver.RecordBasedFile.IsCompletionEofStatus(ushort);
bool RainCodeLegacyFileDriver.Driver.RecordBasedFile.IsCompletionNotifyStatus(ushort);

RainCodeLegacyRunner.IRunnerMode;

static void RainCodeLegacyRuntime.Conditions.Pli.ConditionRuntime.signal_Area(ExecutionContext)

bool RainCodeLegacyRuntime.Core.ExecutionContext.Abend(string, Exception);
CollatingSequence RainCodeLegacyRuntime.Core.ExecutionContext.collatingSequence;
CollatingSequence RainCodeLegacyRuntime.Core.ExecutionContext.NewCollatingSequence();
void RainCodeLegacyRuntime.Core.ExecutionContext.HandleException(Exception);
void RainCodeLegacyRuntime.Core.ExecutionContext.SqlGetDiagnostics(ref MemoryArea, MemoryArea, FixedDecimalDescriptor, string);

void RainCodeLegacyRuntime.Core.MemoryArea.StoreSlice(MemoryArea, int, int, int);

static Storage RainCodeLegacyRuntime.Descriptor.FixedDecimalDescriptor.Storage_COMP_NOTRUNC();
static Storage RainCodeLegacyRuntime.Descriptor.FixedDecimalDescriptor.Storage_COMP_UNSIGNED_NOTRUNC();
static Storage RainCodeLegacyRuntime.Descriptor.FixedDecimalDescriptor.Storage_COMP5_NOTRUNC();
static Storage RainCodeLegacyRuntime.Descriptor.FixedDecimalDescriptor.Storage_COMP5_UNSIGNED_NOTRUNC();

PictureTypeDescriptor RainCodeLegacyRuntime.Descriptor.PictureTypeDescriptor.getPicture(string);

RainCodeLegacyRuntime.Descriptor.Storage.COMP_NOTRUNC;
RainCodeLegacyRuntime.Descriptor.Storage.COMP_UNSIGNED_NOTRUNC;
RainCodeLegacyRuntime.Descriptor.Storage.COMP5_NOTRUNC;
RainCodeLegacyRuntime.Descriptor.Storage.COMP5_UNSIGNED_NOTRUNC;

RecordBasedFile RainCodeLegacyRuntime.IO.IORuntime.ConfigureSystemDataset(string, OpenModeType, bool bool);
void RainCodeLegacyRuntime.IO.IORuntime.FlushAll();

void RainCodeLegacyRuntime.IO.RecordBasedFile.Flush();

static double RainCodeLegacyRuntime.Language.Cobol.BuiltIn.builtin_numval(ExecutionContext, string);
static double RainCodeLegacyRuntime.Language.Cobol.BuiltIn.builtin_numvalc(ExecutionContext, string, string);
static RCString RainCodeLegacyRuntime.Language.Cobol.BuiltIn.builtin_trim(ExecutionContext, RCString, RCString);
static RCString RainCodeLegacyRuntime.Language.Cobol.BuiltIn.builtin_trim_left(ExecutionContext, RCString, RCString);
static RCString RainCodeLegacyRuntime.Language.Cobol.BuiltIn.builtin_trim_right(ExecutionContext, RCString, RCString);
static int RainCodeLegacyRuntime.Language.Cobol.BuiltIn.ord(ExecutionContext, byte[], int, int);
static void RainCodeLegacyRuntime.Language.Cobol.BuiltIn.chr(ExecutionContext, int, byte[], int);

class RainCodeLegacyRuntime.Language.Cobol.CollatingSequence;

static void RainCodeLegacyRuntime.Language.Cobol.Examine.replace_all(ExecutionContext, MemoryArea, RCString, RCString);
static void RainCodeLegacyRuntime.Language.Cobol.Examine.replace_leading(ExecutionContext, MemoryArea, RCString, RCString);
static void RainCodeLegacyRuntime.Language.Cobol.Examine.replace_first(ExecutionContext, MemoryArea, RCString, RCString);

static void RainCodeLegacyRuntime.Language.Cobol.SimpleInspect.SimpleConversion(ExecutionContext, MemoryArea, byte[], int, int, byte[], int, int, bool);
static void RainCodeLegacyRuntime.Language.Cobol.SimpleInspect.SimpleReplacing(ExecutionContext, MemoryArea, byte[], int, int, byte[], int, int);

void RainCodeLegacyRuntime.Language.Cobol.Inspect.inspect_init(ExecutionContext, MemoryArea, bool, bool, bool);

static int RainCodeLegacyRuntime.Language.Cobol.OptimizedPrimitives.CompareToSpace(ExecutionContext, ref MemoryArea);
static int RainCodeLegacyRuntime.Language.Cobol.OptimizedPrimitives.CompareForEquality(ExecutionContext, ref MemoryArea, ref MemoryArea);
static int RainCodeLegacyRuntime.Language.Cobol.OptimizedPrimitives.CompareForEquality1(ExecutionContext, ref MemoryArea, ref MemoryArea);
static int RainCodeLegacyRuntime.Language.Cobol.OptimizedPrimitives.CompareForEquality2(ExecutionContext, ref MemoryArea, ref MemoryArea);
static int RainCodeLegacyRuntime.Language.Cobol.OptimizedPrimitives.CompareForEquality4(ExecutionContext, ref MemoryArea, ref MemoryArea);
static int RainCodeLegacyRuntime.Language.Cobol.OptimizedPrimitives.CompareForEquality8(ExecutionContext, ref MemoryArea, ref MemoryArea);

static int RainCodeLegacyRuntime.Language.Cobol.OptimizedPrimitives.CompareForEquality8(ExecutionContext, ref MemoryArea, ref MemoryArea);

void RainCodeLegacyRuntime.Language.Cobol.StringFunction.string_append(MemoryArea, bool);

void RainCodeLegacyRuntime.Language.Cobol.Xml.Generate(ExecutionContext, TypedLValue, MemoryArea, MemoryArea, FixedDecimalDescriptor, string, string, string, int, bool, bool, int[], bool);

static void RainCodeLegacyRuntime.Language.Pli.Area.Assign(ExecutionContext, MemoryArea, MemoryArea);

static RCString RainCodeLegacyRuntime.Language.Pli.BuiltIn.builtin_trim(ExecutionContext, RCString);
static RCString RainCodeLegacyRuntime.Language.Pli.BuiltIn.builtin_trim(ExecutionContext, RCString, RCString);
static RCString RainCodeLegacyRuntime.Language.Pli.BuiltIn.builtin_trim(ExecutionContext, RCString, RCString, RCString);
static string RainCodeLegacyRuntime.Language.Pli.BuiltIn.builtin_time(ExecutionContext);
static string RainCodeLegacyRuntime.Language.Pli.BuiltIn.builtin_date(ExecutionContext);
static string RainCodeLegacyRuntime.Language.Pli.BuiltIn.builtin_datetime(ExecutionContext);
static string RainCodeLegacyRuntime.Language.Pli.BuiltIn.builtin_collate();
static long RainCodeLegacyRuntime.Language.Pli.BuiltIn.builtin_trunc(double);
struct RainCodeLegacyRuntime.Language.Pli.BuiltIn.XmlChar

void RainCodeLegacyRuntime.Sql.Cursor.ReportException(ParameterizedSqlComponent, int, string, string, string);

IDataReader RainCodeLegacyRuntime.Sql.SqlRuntime.IDbCommandExecuteReader(IDbCommand);
IDataReader RainCodeLegacyRuntime.Sql.SqlRuntime.IDbCommandExecuteReader(Cursor, IDbCommand);
int RainCodeLegacyRuntime.Sql.SqlRuntime.IDbCommandExecuteNonQuery(IDbCommand);
void RainCodeLegacyRuntime.Sql.SqlRuntime.IDataReaderClose(Cursor, IDataReader);
void RainCodeLegacyRuntime.Sql.SqlRuntime.IDataReaderDispose(Cursor, IDataReader);
bool RainCodeLegacyRuntime.Sql.SqlRuntime.IDataReaderRead(Cursor, IDataReader);
void RainCodeLegacyRuntime.Sql.SqlRuntime.ReportException(ParameterizedSqlComponent, int, string, string, string);

void RainCodeLegacyRuntime.Sql.SqlStatement.SetStatementStringForTarget(DBMSTarget, ExecutionMode, string);
string RainCodeLegacyRuntime.Sql.SqlStatement.GetStatementStringForTarget(DBMSTarget, ExecutionMode);

static int RainCodeLegacyRuntime.Types.StringOperations.Compare(ExecutionContext, byte[], int, int, byte[], int, int);
static int RainCodeLegacyRuntime.Types.StringOperations.CompareCharUsingCollatingSeq(ExecutionContext, byte, byte);
static int RainCodeLegacyRuntime.Types.StringOperations.Compare(ExecutionContext, bool, byte[], int, int, byte[], int, int);

Obsolete symbols removed from helper classes

  • For arrays, helper classes contained methods like:
    public string GetF9_At(int idx);
    public void SetF9_At(string value, int idx);
    public IEnumerable<string> GetF9();

Those methods are redundant because the object representing the field (F9 in the example) implements the IEnumerable interface and the index operator. They are not generated anymore.