***************************************************************** "relnotes.txt" for PRO/5(R) Revision 6.21 ***************************************************************** ================================================================= CONTENTS ================================================================= 1. NEW FEATURES/BEHAVIORS 2. WHAT'S FIXED/CHANGED 3. NOTES 4. KNOWN ISSUES 5. SUPPORT ================================================================= 1. NEW FEATURES/BEHAVIORS ================================================================= ------------------------------ NEW FEATURES/BEHAVIORS IN 6.21 ------------------------------ o Added a new SETOPTS bit (SETOPTS byte 9, bit $80$) which causes NUM() and console and file input read with the READ or INPUT verb to reject scientific notation that does not include a + or - after the E. ------------------------------ NEW FEATURES/BEHAVIORS IN 6.20 ------------------------------ o No new features in this release ------------------------------ NEW FEATURES/BEHAVIORS IN 6.00 ------------------------------ o 64-bit architecture support o AES-256 encryption o Utilities mrebuild and mkrecover support encrypted MKEYED files o Updated SAVEP algorithm o Updated to FLEXnet version 10.1.3 o Ability to interrupt a READ verb that is waiting for socket data by pressing +C o Ability to specify interpreter arguments when using the BASIS Web Utility(BWU) o New _labels utility that provides a UI to the _label utility for converting program line numbers to labels o Increased the maximum size of filenames from 64 to 255 for _resolve utility o Added DICTIONARY=path and DATA=path modes to override the dictionary/data paths specified in the config.tpm file o Typing "PRINT CTL" at the console prompt now correctly shows a value based on the last field separator encountered by a recent READ or INPUT statement. It no longer gets altered by console mode keyboard activity. Interrupted programs can now be restarted or single-stepped with CTL still set to the correct value. The following can be performed at the console prompt to test the setting of the function keys: input a$; ? ctl In lieu of ? ctl which will no longer set the value of CTL due to this bug fix. ------------------------------ NEW FEATURES/BEHAVIORS IN 5.00 ------------------------------ o New ENCRYPT() and DECRYPT() functions are available to encrypt and decrypt a specified string. o A new CRYPTPASS= mode is available for use with the MKEYED verb. The use of this mode creates an encrypted MKEYED file with the specified password. o A new SSL mode is available for use when connecting to an SSL-enabled PRO/5 Data Server or BBj PRO/5 DS Server. o A new FCBDUPS keyword is available for use in the configuration file. This option, when used in combination with FCBCACHE, turns off an FCBCACHE feature that scans the prefix without performing any disk I/O to determine if a file is already in the FCB cache. o A new FCBDUPS mode is available for use with the OPEN verb: Example: OPEN(1,MODE="FCBDUPS")"file" o This product* was built with the FLEXlm 9.2 libraries. BASIS recommends using this product with a 9.2 version or greater of the BASIS License Manager. * The SCO Open Server port (10045) was built with FLEXlm 8.2a libraries. The SCO UnixWare 7 port (10765) was built with FLEXlm 8.4a libraries. ------------------------------ NEW FEATURES/BEHAVIORS IN 4.11 ------------------------------ No new features in this release. ------------------------------ NEW FEATURES/BEHAVIORS IN 4.10 ------------------------------ o The OPEN verb now supports a new PASSWD= mode option for recoverable multi-keyed files. This option protects records from being read or written by unauthorized utility programs. See the product documentation for additional information about the OPEN verb and the mkrecover utility. o Mkrecover supports a new -L option. The -L option functions the same as the -l option, except it leaves the log file blank when completely successful. o New INFO(2,6) function reports the PRO/5 or VPRO/5 license expiration date. o New LINFO(handle,0,2) function reports the expiration date of a license obtained via LCHECKOUT(). ------------------------------ NEW FEATURES/BEHAVIORS IN 4.02 ------------------------------ No new features in this release. ------------------------------ NEW FEATURES/BEHAVIORS IN 4.01 ------------------------------ No new features in this release. ------------------------------ NEW FEATURES/BEHAVIORS IN 4.00 ------------------------------ o The PRO/5 licensing model has been updated and now uses BBj licenses. This simplifies the licensing process because the same license is being used regardless of the product. o The SETTRACE verb now supports timestamping to aid in profiling BBx programs. Two new modes have been added to the verb - "TIMED", and "UNTIMED". TIMED causes the trace log to always include time stamps, even if it is being written to the console. UNTIMED suppresses the time stamps for trace logs that are being written to a file. When no valid mode is specified, the default behavior is to include time stamps in a log file but suppress them when logging to the console. o A profiling utility (_prof.bbx) has been added to the product distribution. This utility is a performance analysis tool which aids developers in optimizing their code. When combined with a timestamped SETTRACE output file, _prof.bbx can identify performance bottlenecks due to slow or inefficient code via a comprehensive set of timings and statistics. ------------------------------ NEW FEATURES/BEHAVIORS IN 3.11 ------------------------------ No new features in this release. ------------------------------ NEW FEATURES/BEHAVIORS IN 3.10 ------------------------------ o LICENSE PASS-THROUGH Licenses can now be issued and controlled for BBx applications in the same manner as BASIS products. This new FLEXlm license feature is managed through LCHECKIN and LCHECKOUT. o Added LISTING.MSB to the conversion utility suite. This program is used to aid in the conversion from MicroShare Basic to PRO/5. o PRO/5 was built against the 7.0g FLEXlm libraries. ------------------------------ NEW FEATURES/BEHAVIORS IN 3.01 ------------------------------ o IMPROVED MKEYED FILES PRO/5 now defaults to creating MKEYED files with 1024-byte nodes which provides greater search efficiency and file performance. Previous releases only utilized 1024-byte nodes when the length of an MKEYED file key exceeded 64 bytes. For existing MKEYED files, use the mrebuild utility to convert them to the larger node size. o IMPROVED DETECTION AND PREVENTION OF FILE CORRUPTION This version can detect file corruption better than past versions, so it may detect corruption and report an error=7 on a data file that seemed to work fine with an older version of PROGRESSION/4 or PRO/5. ==> Before using this version of PRO/5, please use the <== ==> accompanying utility "mrebuild" to rebuild all of <== ==> your data files to ensure their integrity. <== o NEW SETOPTS BYTE PRO/5 SETOPTS byte 8, bit $80$ now forces the FID() to report Mkeyed files as type $06$. When this bit is set, recoverable and 64-bit Mkeyed files are reported as standard Mkeyed files. In addition, recreating these file types using the INITFILE verb or the FILE verb in conjunction with the file's FID() will result in standard Mkeyed files. ------------------------------ NEW FEATURES/BEHAVIORS IN 3.00 ------------------------------ o 64-BIT FILE SUPPORT REPLACES 4GB SUPPORT In revision 3.00 of PRO/5, 4GB MKEYED file support has been replaced with support for 64-bit MKEYED files. If you currently have 4GB MKEYED files you will need to convert them to 64-bit MKEYED files by using the mrebuild utility. Any 2GB MKEYED dynamic files that are nearing the 2GB limit and you would like to allow them to continue to grow, you will need to convert them to a 64-bit MKEYED file. o NEW CONVERSION UTILITY A stand-alone conversion utility has been provided with your PRO/5 software to generate a 64-bit MKEYED file from a 2 GB or 4 GB MKEYED file. The stand-alone file conversion utility, "mrebuild" can generate a 64-bit MKEYED file from an existing 2 GB or 4 GB MKEYED file. The generation of the 64-bit file is achieved without modification of the original file. Additionally, it can generate "highly recoverable" 2 GB or 64-bit MKEYED file. The recovery utility "mkrecover" has been modified to attempt to recover either a "highly recoverable" 2 GB or 64-bit MKEYED file. ================================================================= 2. WHAT'S FIXED/CHANGED ================================================================= --------------------- FIXED/CHANGED IN 6.21 --------------------- o The OPEN verb can now open encypted files as a raw stream of bytes using ISZ=-1 o It is no longer possible to write to encrypted files without the correct password o Fixed a problem where the 64bit Linux port did not recognize the system interupt (CTRL+C) o Fixed a problem with PRO5CPL where the FILE verb was not accepting the MODE option --------------------- FIXED/CHANGED IN 6.20 --------------------- o Fixed a problem where 64 bit ports would return an incorrect integer value in call/enter list under some conditions o Fixed a problem where it was not possible to lock a file that was opened with the O_CREATE mode option. This problem only occurred on some Unix operating systems including 64-bit AIX and Digital Unix. --------------------- FIXED/CHANGED IN 6.00 --------------------- o KEY= parameter is no longer ignored when writing to TCP server socket o _dir utility no longer displays the first rem of a program o Fixed - the !ERROR 36 in _browse utility o Fixed - a problem in pro5cpl that left a trailing semicolon on statements beginning with a label and ending with a REM o Fixed - a race condition that occurred when two processes tried to create a temporary file at the same time and chose the same name for it o Fixed - a problem where, during the installation of a single user (uncounted) license via the UPDATELIC verb, it did not generate a valid error message o Fixed - INFO(3,2) did not report the user name when the USERID environment variable did not exist and the -u command line option was not specified o Fixed - the SQL engine was incorrectly using a 32-bit int for a value that was too big for a signed 32-bit int o Removed the genwrapper script which created scripts to run PRO/5 and the PRO/5 Data Server --------------------- FIXED/CHANGED IN 5.00 --------------------- The BasisRunLM script for blmgr84a no longer returns the error message: No such file or directory --------------------- FIXED/CHANGED IN 4.11 --------------------- PRO/5 no longer issues an error when attempting to write to a socket after reading from the same socket with a -SIZ mode. PRO/5 and Visual PRO/5 no longer exit after losing a connection to the license server. They now continuously retry to connect to the license server without interruption. --------------------- FIXED/CHANGED IN 4.10 --------------------- PRO/5 and Visual PRO/5 releases the enterprise license when disconnecting from the data server. --------------------- Mkrecover now returns meaningful result codes for automated scripts. --------------------- FIXED/CHANGED IN 4.02 --------------------- Fixed SQL select statements using COUNT(*), which would intermittently fail with a syntax error. --------------------- TCP sockets no longer report an !ERROR=3 on a READ during heavy traffic. --------------------- PRO/5 no longer waits for terminal I/O to take place before processing a hangup signal. --------------------- FIXED/CHANGED IN 4.01 --------------------- Anomaly in BACKGROUND verb. --------------------- FIXED/CHANGED IN 3.11 --------------------- Multi-user access to non-LFS files no longer issues !ERROR 60's for the 1x75 ports. --------------------- MREBUILD can now be used on SORT files --------------------- FIXED/CHANGED IN 3.10 --------------------- A READ RECORD on a channel opened to a socket now returns any available partial data instead of issuing an !ERROR=0 or 2. --------------------- The Basic Web Utility limits purges to old records instead of removing all session records. --------------------- BXRCV has been updated to handle MicroShare Basic specific program conversions. --------------------- _ddedit.utl now allows you to change a field type to variable length. --------------------- The following 95 QA memos have been fixed in this release: 02812 02895 02898 03413 03487 03498 03504 03524 03533 03555 03883 03971 03973 04050 04261 04276 04386 04404 04472 04758 05219 05544 06031 06104 06186 06366 06412 06426 06427 06428 06430 06432 06455 06456 06479 06498 06504 06516 06528 06533 06536 06562 06574 06583 06588 06617 06623 06674 06690 06695 06708 06709 06712 06722 06724 06725 06757 06773 06778 06780 06803 06821 06827 06828 06838 06858 06860 06861 06862 06892 06895 06898 06902 06922 06923 06933 06943 06970 06984 06999 07000 07007 07047 07050 07059 07094 07104 07117 07132 07140 07208 07226 07268 07270 07276 --------------------- FIXED/CHANGED IN 3.01 --------------------- PRO/5 now properly waits for a program specified in a printer alias EXECOFF mode to terminate before continuing. -------------------- The BLM can now serve concurrent development and runtime licenses. -------------------- The last few bytes of a serial print job now print correctly. -------------------- Core dumps no longer occur on multiple, quickly executed OPENs and CLOSEs of a printer channel. -------------------- Problem with defunct processes that was specific to the DG/UX port has been fixed. -------------------- Error 16's no longer occur with BACKGROUNDed programs. -------------------- Hang Up signals which were occasionally being ignored are now honored. -------------------- A linefeed no longer occurs after the first Data Server OPEN(). -------------------- Closing a channel in a BACKGROUND program under SCO now works correctly. -------------------- Error 0 and file corruption problem that was specific to the DG/UX port has been fixed. -------------------- Opening an alias with a lock file no longer causes a core dump under DG-UX. ================================================================= 3. NOTES ================================================================= The mrebuild utility requires minimum available disk space equal to the size of the file(s) to be converted. -------------------- "Nag" mode is the absence of a valid license file which halts the operation of the BASIS product. A message box appears randomly every 15-30 minutes reminding the user of the absence of a valid license. Pressing OK resumes the operation. -------------------- The LOCKMAX entry in the configuration file is now ignored. This value is now fixed at 7fffffff for 2GB files and is automatically adjusted to ffffffff for 4GB files. -------------------- Version 2.x has improved upon its detection and handling of corrupt files. It can now identify corrupted files more safely and easily, allowing you to find and fix the corruption in a timely manner. Previous versions of PRO/5 did not perform the extensive integrity verification that 2.x does, so consequently it would not report all instances of file corruption. After upgrading to PRO/5 2.x for the first time, you may encounter more !ERROR=7's which indicate that the files in question may be corrupt. This error does not indicate that there is more file corruption with PRO/5 2.x, but rather that it is able to more accurately determine the file's integrity and alert you of potential corruption. *** If you are upgrading to 2.x for the first time, *** *** from a version lower than PRO/5 2.0, we *** *** recommend you verify the integrity of your data *** *** files BEFORE installing version 2.x. *** -------------------- The default value for the maximum line length for the printer alias is 80. Earlier versions of PRO/5 had an undocumented default value of 132. -------------------- The DATE() and JUL() functions provide an easy method to store and manipulate four-digit years in a standardized way. For specifics on PRO/5's and Visual PRO/5's Year 2000 compliance, visit the BASIS web site at: http://www.basis.com/announcements/etc-19980508-y2k.html ================================================================= 4. KNOWN ISSUES ================================================================= The SELECT verb may not properly optimize on a WHERE clause that references an alternate index. ================================================================= 5. SUPPORT ================================================================= If you purchased your BASIS product from a distributor, reseller, or OEM, please contact them for technical support. They will either answer your question or will contact us on your behalf. German, Austrian and Swiss users should contact BASIS International Software GmbH. For a complete listing of our international distribution, please refer to http://www.basis.com/sales/index.html. Refer to our technical support Web page, http://www.basis.com/support/contacts.html, for a listing of all our technical support services, including our knowledge base and other online resources. For information about BASIS's Technical Support Policy, see http://www.basis.com/support/policy.html. BASIS Technical Support analysts are available Monday through Friday, 8:00 AM through 5:00 PM (Mountain Time) at 505.345.5021. Technical support is also available via e-mail at support@basis.com or via e-support at http://www.basis.com/support/. BASIS cannot process a request for technical support without a product serial number. PHONE -- 505.345.5021 E-MAIL - support@basis.com WEB ---- http://www.basis.com/support/ Also, refer to http://www.basis.com/support/contacts.html for additional information on how to contact Technical Support. When calling or sending a technical support question, please provide the following information: o The product serial number. o The name of the product and the product's version number. o A complete description of the problem, including the product error and the TCB(10) value, if available. Other pertinent information includes: o The operating system name, level and version. o Is the error consistently reproducible, or is it sporadic? o Is the error isolated to a specific machine or user? o Is this a new installation or has the system been in place and operating normally? o Is the problem network related/specific? ----------------------------------------------------------------- Copyright (C) 1985-2007 BASIS International Ltd. All rights reserved. BBx(R), Visual PRO/5(R), PRO/5(R), PRO/5 Data Server(R), GUIBuilder(R), ResBuilder(R), BASIS ODBC Driver(R), DDBuilder(R) and BBj(R) are registered trademarks of BASIS International Ltd. All other product names and brand names are service marks and/or trademarks or registered trademarks of their respective companies. [end of file]