.
contact contact

Eloquence B.07.00 Release Notes

 
.
 

Fixed problems and changes

[ Main document | Back ]

The following enhancements and problem fixes were incorporated in the Eloquence B.07.00 product release:

New start script (HP-UX and Linux)

  • On the HP-UX and Linux platform, Eloquence uses a new startup/shutdown script and a new startup configuration file. This allows to configure multiple database instances. Please refer to the separate documentation for a detailed description.

  • The -p command line option has been added to the eloqsd, eloqdb6 and eloqdb5 daemons to specify the location of the pid file. If specified, this file contains the process id of the server process. This is used with the new startup/shutdown scripts.

Language

  • The maximum code size for the main program or a function/subprogram (segment size) has been enlarged from 65534 bytes (32767 words) to 130560 bytes (65280 words) (#580, #783).

  • A bug in the parser has been fixed which accepted a trailing comma in the OFF KEY# statement (for example, OFF KEY#1,2,). This is an invalid syntax and causes an internal error at runtime (#245).

  • The NO OPERATOR function was changed to return a zero value if a DLG driver is used. Previously the NO OPERATOR function returned zero if stdin was connected to a tty device and non-zero if stdin was redirected from a file. This was changed because dialog programs may no longer use a terminal (eg. using WebDLG) but are still considered interactive (#878).
    The BACKGROUND function was not changed and returns non-zero if stdout is not connected to a tty device (eg. it is redirected to a file).

  • The POPUP BOX statement returned the undefined error number 884 instead of the correct error number 684 in case the connection to the dialog driver was terminated (#1128, #1132).

  • The RETURN statement (returning from a function) could issue runtime error 11 when used with a member variable of type DINTERGER or SHORT (#1383).

  • The NEW statement could result in an internal error:
       Internal error processing line 1150
       Assertion failed: (sym_ptype(sp->info) == SYM_UTYPE)
       file class.c, line 170
    
    This could happen if a type,derived from a base type was instantiated in a subsequent program segment (function, subroutine) but the base type was not resolved in the segment the type was defined in (for example the base class is defined dynamically from a data set or was defined after the derived type) (#1638).

  • When user defined types were used in a COM statement the variable value could be reset in some cases when loading another program file. Eloquence now uses a different strategy to declare use defined types (#674).

  • An internal error in the screen handler could happen in some cases when deleting characters from the last line on screen if that line and the following line were longer than 80 characters (#300).
    Platform: Linux

  • In some cases eloq on Linux could terminate with an error message after entering the first character.
      read_handler(): read mpty failed: Input/output error
    
    This happened when eloq belonged to a different process group and was not allowed to access stdin (because it was considered a background job by the operating system). This is the case when eloq is started in the .profile with exec (#346, #1290).
    Platform: Linux

  • On Linux eloqcore could terminate unexpectedly if started by eloq due to a race condition. Eloq sends a SIGCONT signal to notify eloqcore it is active. On some machines this could happen when eloqcore was not fully initialized which resulted in an error message or a crash of the eloqcore process (#1328, #1616).
    Platform: Linux

  • On some Linux glibc versions, the CATOPEN statement did not fail when the message catalog file did not exist. This was observed with some glibc2.1 library versions. Eloquence was modified to work around this issue (#527).
    Platform: Linux

  • eloqcore could fail to start on Linux or HP-UX if the home directory containing the .eloqrc file was not readable. While the .eloqrc file is optional, the directory must be searchable. This condition is now handled more gracefully (#1652).
    Platform: HP-UX, Linux

  • The eloqsd did not accept new connections if it was restarted while active eloqcore processes were still present.
    Platform: Windows

  • The eloqsd daemon has been changed to output startup messages (such as configuration warnings) by default to stderr.
    Platform: HP-UX, Linux

  • The eloqsd, eqstart and IDE program start facilities now adjust the Windows Console properties before a program is started. The console window size is set to 25x80 and the fullscreen mode is turned off. This ensures that Eloquence programs can always be executed on the Windows platform (#1822).
    Platform: Windows

Database

Eloquence B.07.00 provides improved database functionality and performance.
  • The database enhancements, changes and fixed problems are documented in the database release notes.

  • The Eloquence QUERY application has been changed to support the new database limits. In addition a number of general improvements were implemented. The QUERY changes document provides a detailed list of changes in the QUERY application.

  • The Eloquence TurboIMAGE compatibility extension (IMAGE3K) has been enhanced substantially. It implements a HP e3000 TurboIMAGE compatible interface for the Eloquence database. The IMAGE3K extension allows porting of HPe3000 IMAGE based applications to Eloquence with no or only minor source code changes.

Windows GUI

  • DLG GET .focus/.focusobj did not always return the correct object of a previous DLG SET .focus.

  • DLG SET .focus on a container object (window, groupbox) could select a statictext (non-sensitive) object.

  • The .vheight attribute could be wrong in a listbox.

  • It took 2.5 seconds to initiate a DLG connection. This was caused by the DDEWait configuration which adds a delay after starting a DDE server program to ensure the protocol can be properly setup. This delay was also used when a DLG connection was established.

Text based DLG UI

  • Fixed possible crash when cloning a dialog object with active kbind

  • The ESC key can now be captured with kbind. This requires the ESC key is pressed twice.

  • The .ispassword attribute as been added to the EditText object. When set, the editttext content is output as asterisk.

Eloquence IDE

  • The dialog editor which is part of the Eloquence IDE on Windows is now capable to handle the new JDLG and WebDLG object attributes and some of the new JDLG object classes.

    Limitations:

    • Among the new JDLG dialog object classes, only PopText, ComboBox and Image are supported. The Application, TabBox, HtmlView, ToolBar, StatusBar and Menu object classes are currently not supported.

    • An Image object is displayed as an outlined rectangle, similar to a GroupBox.

    • The JDLG layout attributes (.xleft, .xright, .ytop, .ybottom, .xauto, .yauto) are currently not supported and cause a syntax error in the dialog editor.
      Although the dialog editor provides the .xauto and .yauto layout attributes in the property editor they are currently converted internally to the traditional .x/.y/.w/.h attributes when the dialog is saved.

    • The ASCII DLG, JDLG and WebDLG environments currently differ regarding the supported object classes and attributes. Also, attributes are currently used differently (for example, the .fgc and .bgc attributes accept string values and ignore integer values in JDLG and WebDLG but require integer values in ASCII DLG).
      However, since ASCII DLG, JDLG and WebDLG share the same DLG file format the dialog editor cannot distinguish between them. Therefore, dialog files which are supposed to work in all three environments currently require to use only the least common denominator of the object classes and attributes (which is ASCII DLG currently) and avoid ambiguous attributes such as .fgc or .bgc.

    These limitations will be overcome with a reimplementation of the DLG plugin in a future Eloquence release. In case the current implementation causes problems with particular DLG files it is possible to fallback to the previous implementation of the dialog editor as follows:

    1. Exit the Eloquence IDE
    2. Open the Eloquence lib installation subdirectory in the Windows explorer (for example C:\Programs\Eloquence\lib)
    3. Rename the file ide-adlg.cfg to ide-adlg-gui.cfg
    4. Rename the file ide-adlg-old.cfg to ide-adlg.cfg
    5. Please report any problems to support@marxmeier.com. Thank you.

 
 
 
  Privacy | GDPR / DSGVO | Webmaster | Terms of use | Impressum Revision: 2003-03-20  
  Copyright © 1995-2024 Marxmeier Software AG