CADSWES Maintenance Accomplishments -- December 2013 (edit: 1-9-2014)

RIVERWARE
RELEASES, SOFTWARE MAINTENANCE and DEVELOPMENT ENVIRONMENT
Releases and Patches

RiverWare 6.4.1 was released on December 3, 2013. The following changes were made:

Bugs -- The following bugs were fixed:

RiverWare 6.4.2 was released on December 19, 2013. The following changes were made:

System Control Table (SCT):
A number of bugs have been fixed on the SCT. In addition, when closing the SCT, the confirmation dialog is no longer shown if the SCT is locked and hasn't been unlocked during that session.

Bugs -- The following bugs were fixed:

RIVERWARE
RELEASES, SOFTWARE MAINTENANCE and DEVELOPMENT ENVIRONMENT
Regression Tests

The regression tests continue to be maintained on a daily basis. This involves updating the regression tests to exercise new developments in the code. Also, as new code is added to the development area, the model comparisons performed in the nightly regression tests usually show differences (for example, because a new method category may have been added). When this occurs, the regression tests need to be updated to reflect the current state of the development area so model comparisons do not fail. In addition, every week, the daily history of each regression test is analyzed to determine if the run time or model size has significantly changed because of new development. In December, the tests were modified when code was changed for salinity improvements.

RIVERWARE
RELEASES, SOFTWARE MAINTENANCE and DEVELOPMENT ENVIRONMENT
Download, Installation and Release Process

RIVERWARE
RELEASES, SOFTWARE MAINTENANCE and DEVELOPMENT ENVIRONMENT
Licensing

RIVERWARE
RELEASES, SOFTWARE MAINTENANCE and DEVELOPMENT ENVIRONMENT
Development Environment

Software tools: permission problems with Git repository

Earlier, a file permissions problem arose with the git repository which contains the RiverWare source code. This problem prevented software developers from committing changes to the repository. The problem was initially resolved by reconfiguring the repository to ensure appropriate permissions for CADSWES staff, but this month the problem returned. A test repository was created, the problem was reproduced there, and analysis determined that an improperly cloned repository on another machine and operating system was corrupting the permissions. The configuration of the cloned repository was corrected, which has resolved the problem.

Oracle Client 12c

To function with the Visual Studio 2010 compiler, the Oracle client used in building the HDB Server needed to be updated to Oracle Client 12c. The new Oracle Client was installed on a test machine and the correct Oracle OCI and OCCI libraries and dlls for Visual Studio 2010 were integrated into the local RiverWare development environment. The HDB Server that functions to connect RiverWare to an HDB Database was rebuilt with the new environment, and once a problem with the server code was addressed, the new server was tested and functioned correctly in transferring data between RiverWare and HDB.

RIVERWARE
RELEASES, SOFTWARE MAINTENANCE and DEVELOPMENT ENVIRONMENT
Software Maintenance - Qt4 Port

Qt4 Port of Client/Server

The code for the Client/Server library was ported to Qt4 in previous work, but had not been tested with a rebuilt server until the HDB server update to use Oracle Client 12c. This testing uncovered a server crash when transferring data between RiverWare and HDB. The crash was traced to code where the socket used to transfer data was being deleted. The error had to do with attempting to send an event across threads. Based on some notes in the QT code for the socket class, the C++ delete call was changed to a deleteLater call on the base socket class. This allowed socket deletion to complete successfully when it could, and fixed the crash problem with the server.

Fixes to the Qt4 port of the SCT's series data table (plus minor usability enhancements):

A broad set of SCT fixes and minor usability enhancements were implemented. Many of the problems addressed by this work were a result of the Qt3-to-Qt4 port of the SCT's series data table developed in March and April, 2013 for RiverWare 6.4.

These SCT changes were applied to RiverWare 6.4.2 and 6.5:

  1. The 'Double Click Data Cell Toggles Detail Rows' general configuration option wasn't functioning. Double-clicking in a detail row cell (in the aggregated SCT views) was instead starting an edit of the "clicked" detail cell.
  2. In the Horizontal Timestep Aggregated View, the triangle-arrow treeview control column (for showing and hiding detail rows within a timestep aggregation block) was overly wide. This occurred only in the release (non-debug) build.
  3. Unintentionally starting an incell edit, and then clicking away, caused the cell's flag to be changed to "Input" (as a result of the cell editor's text being applied to the slot value). Now, when an edit completes with the edited value matching the original value (with display precision), the edit is not applied. (Note that it would be useful for users to know that any edit can be aborted by hitting the ESC key).
  4. A change to a series slot's time range as a result of running an Input DMI caused the SCT to be scrolled to the beginning of the time range. This no longer occurs.
  5. Red crosshatching on slot column headers -- to indicate slots on objects for which dispatching is disabled -- was not showing up in certain Windows desktop themes. This was addressed by crosshatching all cells for such slots (in the vertical time axis views).
  6. The "Go To" (-slot item) operation wasn't scrolling the SCT to that item in a sufficiently precise way -- it was only insuring that the picked slot item was visible. Now the picked slot item is scrolled to the top (or left side) of the SCT's window (depending on the SCT's current axis orientation).
  7. During an incell edit, the left and right arrow keys were moving the edit cursor one character to the left or right within the text being edited. A sponsor preferred that those keys terminate the edit and move "focus" to the adjacent data cell (i.e. to the left or right).
  8. In the horizontal time axis views, when an incell edit was active, the Tab key was navigating to the wrong cell: one below the cell to the right.
  9. Changes to the configuration of column header content (e.g. optional display of units or the aggregation summary function) did not always cause updates to the column header display.
  10. The SCT Configuration dialog's "Summary" tab gives four choices for the conditions under which timestep flag colors are shown in representative vertical "slices" of aggregation summary cells (as cell background colors). Not all choices had been implemented.
  11. Notes on series slot values were not correctly being displayed as tooltips.
  12. A mistake was made in the implementation of the SCT configuration lock status. It had been preventing incell edits.
  13. The "Close SCT?" confirmation popup is no longer shown if the SCT configuration was locked, and remained locked, since the last time the SCT configuration was loaded from, or saved to a file.
  14. The effect of the SCT configuration lock has been made broader. This lock now disables:
    1. The controls on all of the tabs of the SCT Configuration Dialog, and that dialog's "OK", "Apply" and "Reset" buttons.
    2. Config >> Defaults >> Apply Default Settings
    3. Aggregation >> Timestep Aggregation Config ...
    4. Aggregation >> Set Summary Functions ...
  15. The SCT configuration lock button's tooltip was made dynamic. In now states the current lock state and indicates the effect of clicking that button.

Additionally, the following minor SCT enhancements were applied to only RiverWare 6.5:

  1. For clarity, the "Display Slots as Integer Indexed" checkbox on the "General" SCT configuration tab changed to: "Series indices:  (o) Timesteps (standard)  (o) Integers" (i.e. two radio buttons).
  2. On the Horizontal Timestep configuration tab, the "Text labels in Slot Divider Rows" checkbox was reworded as "Show Text labels in Slot Divider Rows" to be consistent with similar options on that tab.
  3. On the Scalar and Other Slots SCT tabs, the first column used to show item numbers indicating the custom order of slots within those lists. This column was a somewhat redundant and unimportant component of those lists' ordering controls, and is no longer shown.
  4. In the Aggregated Horizontal Timestep view, detail row headers show the relative date/time of the detail row (relative to the date/time of each column). These had been aligned on the extreme right side of the row header's "Slot" column. Now, they are still right aligned, but toward the left side of that column (indented from slot labels in the aggregation summary rows).
  5. On the toolbar, the Flag / Flag-Color buttons' "enabled" state (indicating applicability to the current cell selection) appeared as pressed in, which was confusing. Instead, they are now fully framed (whereas disabled flag buttons are not). Also the disabled flag buttons now have gray text instead of black.

--- (end) ---