FLAM® Issue Tracker

FL5 - Change Log

FL5 - 5.1.22 (Released 2020-03-30) View Issues ]
==================================


5.1.22-28565

 * z/OS and z/USS code are now built on z/OSv2r4
 ** Minimum target z/OSv2r2
 ** Minimum architecture z12
 ** Tuned for z14
 ** Build Cobol samples with version 6.3 of the compiler
 *** Requires toleration APAR PH15595 or rebuild of the COBOL samples with the SBUILD job.
 * Support definition of padding character at read.record()
 * Add FSTATZOS as object to z/OS package and adjust FLM4SEPA build job
 * Support scan build for all z/OS sources
 ** Fix few scan build issues in FLM4SEPA source
 * Use unique entry names for functions to prevent linkage problems if FLAMREC and FLCRECLB used in parallel
 * Add more time stamps and CPU time measurement to printouts at command execution
 * Add time stamp in front of each trace message to look at hangers
 * Add a trace message at parsing for each find symbol
 * Add new chapter to JCL considerations to prevent long runtime based on wrong STACK and HEAP definitions for LE
 ** For CEEOPTS we recommend to run FLAM on z/OS with:
 *** STACK(1M,1M,ANYWHERE,KEEP,512K,128K)
 *** HEAP(1M,1M,ANYWHERE,KEEP,8K,4K)
 * Add CEE version to system info and check CEE version at beginning of FLCL against the required minimum on z/OS
 * Add architecture level to system info and check the level at beginning of FLCL against the required minimum on z/OS
 * Print uname(all) on POSIX systems at beginning of CleExecute to the log (Run on ...)
 * Copy real data set name after FLMOPD into file name attribute at write of FLAMFILEs (replace DD:NAME by real name)
 * Use always 'FLAMFILE' as default DD name in FIO.FL4() for FLAMFILEs if no DSN given
 ** Prefer a static allocation of DD name 'FLAMFILE' the default DSN (original name plus extension) given
 ** Uniform the behavior between FLCL FLAM and all other command of FLCL using FLAMFILEs
 * Don't use simple default values in SVC99 (dynalloc) if data class given
 ** Only if the file size known, then the space parameter are defined
 ** DCB values are not set to defaults anymore if a data class given
 ** Since to this build a data class has no effect because all text units are defined with default values
 * If available in catalog print data, storage and management class for files in info function on z/OS
 * Support empty FLAM file name at read.flam4() in CONV command of FLCL ('DD:FLAMFILE' must be allocated in this case)
 * Support static allocation of FLAMOUT at write.xxxx() if available before the default DSN is used on z/OS
 ** FLAMOUT works now like FLAMIN because it will be preferred if the allocation
 ** If the FLAMOUT allocation not defined and still no file specification given the default path/dataset name is used
 * Don't determine member count at info function for empty file names anymore ('<SYSUID>.**' was the wrong default in this case )
 * Static allocation of FLAMFILE are no longer freed in FIO.FL4() if no file specification given
 * Fix sporadically errors in static allocation of DD names for old FLAM4 components
 * All external links in HTML documentation are now open in a new tab and not into the frame
 * Support DD names without 'DD:' as prefix (if only one qualifier and a static allocation available) on z/OS
 * Use DD name SYSIN at read and SYSPRINT at write on z/OS if keyword STREAM used for FLAM4FILEs (not STDIN and STDOUT anymore)
 * Fix 0C4 if no wildcard match if file lists used with old FLAM4 utility and subprogram

5.1.22-28493

 * z/OS and z/USS code are now built on z/OSv2r4
 ** Minimum target z/OSv2r2
 ** Minimum architecture z12
 ** Tuned for z14
 ** Build Cobol samples with version 6.3 of the compiler
 *** Requires toleration APAR PH15595 or rebuild of the COBOL samples with the SBUILD job.
 * Support definition of padding character at read.record()
 * Add FSTATZOS as object to z/OS package and adjust FLM4SEPA build job
 * Support scan build for all z/OS sources
 ** Fix few scan build issues in FLM4SEPA source
 * Use unique entry names for functions to prevent linkage problems if FLAMREC and FLCRECLB used in parallel
 * Add more time stamps and CPU time measurement to printouts at command execution
 * Add time stamp in front of each trace message to look at hangers
 * Add a trace message at parsing for each find symbol
 * Add new chapter to JCL considerations to prevent long runtime based on wrong STACK and HEAP definitions for LE
 ** For CEEOPTS we recommend to run FLAM on z/OS with:
 *** STACK(1M,1M,ANYWHERE,KEEP,512K,128K)
 *** HEAP(1M,1M,ANYWHERE,KEEP,8K,4K)
 * Add CEE version to system info and check CEE version at beginning of FLCL against the required minimum on z/OS
 * Add architecture level to system info and check the level at beginning of FLCL against the required minimum on z/OS
 * Print uname(all) on POSIX systems at beginning of CleExecute to the log (Run on ...)
 * Copy real data set name after FLMOPD into file name attribute at write of FLAMFILEs (replace DD:NAME by real name)
 * Use always 'FLAMFILE' as default DD name in FIO.FL4() for FLAMFILEs if no DSN given
 ** Prefer a static allocation of DD name 'FLAMFILE' the default DSN (original name plus extension) given
 ** Uniform the behavior between FLCL FLAM and all other command of FLCL using FLAMFILEs
 * Don't use simple default values in SVC99 (dynalloc) if data class given
 ** Only if the file size known, then the space parameter are defined
 ** DCB values are not set to defaults anymore if a data class given
 ** Since to this build a data class has no effect because all text units are defined with default values
 * If available in catalog print data, storage and management class for files in info function on z/OS
 * Support empty FLAM file name at read.flam4() in CONV command of FLCL ('DD:FLAMFILE' must be allocated in this case)
 * Support static allocation of FLAMOUT at write.xxxx() if available before the default DSN is used on z/OS
 ** FLAMOUT works now like FLAMIN because it will be preferred if the allocation
 ** If the FLAMOUT allocation not defined and still no file specification given the default path/dataset name is used
 * Don't determine member count at info function for empty file names anymore ('<SYSUID>.**' was the wrong default in this case )
 * Static allocation of FLAMFILE are no longer freed in FIO.FL4() if no file specification given
 * Fix sporadically errors in static allocation of DD names for old FLAM4 components

5.1.22-28284

 * Fix error at write of FLAMFILEs if static allocation with less than 512 byte record length done using the old FLAM utility on z/OS
 ** The problem was introduce with the first build of version 5.1.22 of FLAM with a fix of another problem (for FLAM-VSAM record interface)
 * Fix wrong mapping of encoding strings to CCSID for code pages 'EUC-JP/TW/KR/CN'
 * Remove remaining dependencies from FLM4SEPA modules to FL5CORE (getFileSize, remove_hfq)
 * Remove remaining dependencies from FLAMREC modules to FL5CORE (FSTATZOS, CHKMEM, CLEPUTL, FLAMUTL, ENVUTL, DYL and STR)

5.1.22-28224

 * Support new format 'RST' in table support to parse or write data up to a certain offset or end of the record
 ** Some time in variable length records the next variable part starts at a certain offset
 *** This component support to read the remaining rest of the data as column up to this offset
 ** Some time it is useful to read the rest of an record in a column
 *** This component supports this by default (offset=0) to read the remaining rest of the data
 ** At write such space must normally filled with padding bytes and can be added up to the defined offset
 * Support 1 to 10 decimal digits as length filed in table support at read and write
 ** e.g. COLUMN(FORMAT.LFD(LENFMT=D5X)) for a 5 byte decimal digit length field not including it self
 ** often used for record length or parts of records in COBOL copy books
 * Fix wrong adjustment of format parameter in table support
 ** Prevent setting of format.fix() values if other format (not the default) used
 * Correct handling of MAXLEN parameter in table support
 ** If default format is FIX an it includes a variable length fields, then no padding to the defined MAX/FIXLEN should be done
 * Few improvements and corrections of FLM4SEPA
 ** Fix wrong handling of BTAG in FLM4SEPA
 ** Add CPU time measurement in FLM4SEPA
 ** Rewrite FLM4SEPA from bytes wise to an optimized 32 bit 4 times parallel handling
 ** Check length fields of load records
 ** Improve statistics and log output
 ** Don't read next record if Bloom count achieved
 *** Prevent decompression of next matrix to improve performance and reduce CPU consumption
 * Support destination user and id and redirection to hold queue at SYSOUT allocation
 * Print data position inside the block or record to error messages in table support
 * Correct allocation of extended attribute datasets (text unit with wrong pointer)
 * Binary zero (0x00) is now whitespace at character conversion (like in all other cases)
 * Support concatenation of member in FIO.FL4() component if member name has not changed

5.1.22-27996

 * Support padding bytes at the end of a FLAMFILE on Windows and UNIX platforms (incl. USS)
 * Correct INFO GET.FILE if seek for ZIP files result in an error (e.g. if VSAM dataset on z/OS)
 * Correct resource file for Windows packaging of flam4.exe
 * Add FRCGFN to MF-EDZ support
 * Add new feature FLM4SEPA

5.1.22-27795

 * Support double KeyID's at import of PGP keys
 ** Allow the same key value for top and subkeys (is a security issue)
 ** Support a RACF policy (KEY.IMPORT.PGP.DOUBLE.KIDS) to prevent this
 * Support a new environment variable FL_PGP_PREF_SYMALG_AES128
 ** Can be set to YES to invert the order of preferred symmetric algorithms for AES
 ** Change order from AES256/192/128 to AES128/192/256 for all FKM5 modules at generate and export
 * Correct Windows and Unix packaging (replacement of the FLAM4 executable)

5.1.22-27678

 * Improved documentation
 ** New CLEP with better documentation generation
 ** New built-in function HTMLDOC
 * SSH improvements
 ** An undocumented new libssh feature automatically loads OpenSSH per-user (~/.ssh/config) and system-wide (/etc/ssh/ssh_config) config files
 *** This introduced a regression in version 5.1.19-22166 which could override user-provided SSH options with options from a config file
 *** This release restores the intended behavior of user-provided configuration options taking top priority
 ** The net.ssh() object has several new config options:
 *** CONFIGFILE=<configpath> (allows to specify a custom SSH config file in OpenSSH format)
 *** NODEFAULTCONFIG (disables loading of per-user and system-wide OpenSSH config files)
 *** ALGORITHMS() (object to specify custom lists of acceptable / preferred crypto algorithms)
 ** SSH configuration options are priorized in the following order:
 *** 1. Command string options
 *** 2. Custom configuration file (via net.ssh(configfile=...))
 *** 3. Per-user configuration file (~/.ssh/config)
 *** 4. System-wide configuration file (/etc/ssh/ssh_config)
 *** Example: Path to known_hosts file is set via net.ssh(knownhosts=...) and in a config file: value from net.ssh() is used
 ** If CONDBG logging is enabled, the effectively used username, host, port and known_hosts files are logged (after processing all config files and parameters)
 * Support SYSOUT allocation to write files as mail attachment on z/OS
 ** write.text(...falloc(sysout(format.mail(from='sender@mail.com' to='receiver@mail.com'))...)
 * Improve separation of binary data from base encoded data at detection
 ** If no ARMOR header/trailer found (simple base encoding) then character set detection is now done
 ** If the character set detection must determine UTF-8, ASCII or EBCDIC in each other case (binary data) this could no base encoding
 * Support comment (user header) also if no system header written with old FLAM4 utility and subprogram
 ** If IDEVICE=USER used then no comment war stored in the member header
 * Support error trace in I/O components (for better and simple problem determination)
 ** Support better reason codes (No such file or directory, permission denied, ...) if file I/O failed
 * Correct lexem to lexeme or lexemes in each case (CLEP change)
 ** the Built-in function "LEXEM" are still available as abbreviation/alias of LEXEMES
 * Support large files in FLAM4 components at dynamic allocation on z/OS
 * Support extended attribute datasets in FLAM5 components for dynamic allocation on z/OS
 * Improve support of empty records in variable length record datasets on z/OS
 ** If environment variable '_EDC_ZERO_RECLEN' set to Y (default) then records of length 1
    with a padding byte (0x00 or 0x40) as content will be records of length 0 at read
 * Support new environment variable 'FL_INFO_BLOCK_SIZE' to setup another block size for INFO command
 ** This is mainly useful for PGP files to get the PGP dump
 * Support new special condition code 160 (FLMRTC_NBS) which tells that a larger block size is required
 ** This could happen for example if PGP use BZIP2 compression with large (900KiB) blocks, in this case 1MiB would be a useful block size.
 * Improve error handling in I/O routines on z/OS
 ** Call I/O error handler if system call fails to write _amrc structure into the log
 * Print external file attributes in member list of ZIP archives
 * Add new switch 'NOXFLD' for ZIP archives to prevent write of extra fields to member header and directory entry
 * Support new entry FCRGFN() and fcbgfn() to determine the file name after open and before close
 * Add time stamps to CLE messages and overall run and CPU time at end of execution
 ** Useful to see run and CPU time of CLEP usage around FLUC, FLAM or FLIES subprograms
 * Improve parsing of URLs (more fail save)
 * Improve IP communication for ClamAV
 * Reduce default record for long records to limit the buffer size to a maximum of 256KiB plus 1 record
 
 * Bugfixes:
 ** Don't return end of member (6) in FLMGKY anymore
 *** A additional call again FLMGKY to handle this error was failing always with key not found (5)
 *** Now FLMGKY handles EOM internally an return the next matching record in the next member
 ** z/OS/USS only: Fix libssh signature verification at re-keying after a certain time (1h) or amount of data (1GiB)
 ** Correct usage of UserIO in FLAM4 components (now works as specified)
 ** Fix space allocation parameter handling in FLAM4 components on z/OS
 *** Correct large file handling in dynamic allocation for FLAM4 components on z/OS
 ** INFO function don't result in damaged FLAMFILE for VSAM-KSDS-FLAMFILE if FLMPOS failed with missing key in KSDS
 ** Don't accept block mode = 0 in UNIX/Windows source of FLAM4 components to prevent write of non-readable FLAMFILEs
 ** Use determined record size in FLMOPD in FLMOPF if FLAMFILE open for update (only FLAM4 on z/OS)
 ** Return maximal record count for the matrix at read of a FLAMFILE (only FLAM4 on z/OS)
 ** Set maximal record count at read dependent on the determined compression mode (only FLAM4 on z/OS)
 *** If the provided MAXREC parameter greater then 255 or 4095 then the maximum will be used
 *** No error anymore if MAXREC greater than 4095
 ** Correct comment handling between CNV.GZP and ARC.ZIP
 *** ZIP file member comment can now successful disables
 ** Fix FLGT error with additional new lines if FLGT used to edit a file
 *** The file is read in junks and after each junk a newline was added with appending the junk to the text of the editor
 *** Now the whole file is read into the memory and the editor text is set without changes
 ** FLGT now requires the user to confirm a requested save action when the filename was changed and a file with this name already exists
 ** FLGT checksum output does not swallow leading zeros anymore
 ** FLGT does properly remove temporary files, but not when external program was used to view it or an error occured
 ** Set key position and key length to 0 for non KSDS data sets at write if no key disposition defined
 ** Don't use national (dia-critical) characters in CLISTs anymore to prevent code page issues
 ** Use connection to remote FLAMFILEs to create directories and to verify of file already exists
 ** Link against IBM zlib version 1.2.11 to support ZEDC CPACF command on z15
 *** Prevent empty CRC32 in GZIP, PGP and ZIP files and the corresponding format issues on other platforms
 


- 0001008: [1.0 FLAM4 or older] FLAM 4 utility produce 0C4 if file list don't match (Falk Reichbott) - resolved.
- 0000996: [1.1 FLCL] Support digit based length fields at FORMAT.LDF (Falk Reichbott) - resolved.
- 0000991: [2.1 Subprogram FLAM (COMP/DECO)] FLAM4 for Unix/Windows don't support padding bytes (Falk Reichbott) - resolved.
- 0000987: [c. Deployment] Keep the last stable revision / release for download (Ulrich Schwab) - resolved.
- 0000983: [4. Element, Byte, Record or other API] Support FLUCUP-Interface (including old FLAMUP) on Java (Tilo Eckert) - resolved.
- 0000835: [2.2 Subprogram FLUC (CONV)] Support write of files as mail attachment over the SYSOUT(TCPCSMTP) (Falk Reichbott) - resolved.
- 0000989: [4. Element, Byte, Record or other API] New entry to get the file name at write (Falk Reichbott) - resolved.

[7 issues]


Copyright © 2000 - 2020 MantisBT Team
Powered by Mantis Bugtracker