CADSWES Maintenance Accomplishments -- February 2013 (edit 3-8-2013) RIVERWARE RELEASES, SOFTWARE MAINTENANCE and DEVELOPMENT ENVIRONMENT Releases and Patches RiverWare 6.2.9 was released on Feb 7, 2013. The release included the following release notes: SUMMARY OF CHANGES IN RIVERWARE PATCH RELEASE 6.2.9 The following bugs were fixed: 5254: For reservoirs using regulated spill and the Max Capacity flag, convergence was loosened under certain situations. 5255: The RPL Predefined Functions Min, Max, MinItem, and MaxItem were incorrectly using the RPL numeric comparison tolerance. 5258: In the Canal object solution, max iterations was increased to 100 and the algorithm was modified to provide increased opportunity to find a solution. 5260: On the Slope Power Reservoir, there was a small mass balance error when solving given Inflow and zero Turbine Release. 5262: The RPL Predefined Function GetMinSpillGivenInflowRelease was not working correctly on Slope Power Reservoirs. RPL Predefined Functions: Two new RPL Predefined Functions were added: GetSlotValsNanToZero and GetSlotValsByColNanToZero. These behave like GetSlotVals and GetSlotValsByCol, respectively, except that any NaN is replaced with zero and returned. Also these functions do not support Periodic Slots. 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 February, the newly implemented visual studio 2010 executable was used for regressions tests. The tests succeeded with the new executable. RIVERWARE RELEASES, SOFTWARE MAINTENANCE and DEVELOPMENT ENVIRONMENT Development Snapshots Generated the version 6.3 snapshot release from the development (builds) area. RIVERWARE RELEASES, SOFTWARE MAINTENANCE and DEVELOPMENT ENVIRONMENT Download, Installation and Release Process Flexera InstallShield: (1) Converted the current snapshot project files (32-bit version and 64-bit version) to work in the IS 2012 release. Went back to updating the new project files with the basic updates (no new changes or new feature) so they are in the stable condition that install files can be generated. When these new project files are working well for releasing 6.3, then work on adding new changes. (2) Worked on Tim's suggestion of adding an alternative RiverWare yellow icon to the desktop during the installation. It can be added as a default setup, but will need more project file changes if we want to ask user to choose what they want during the installation. Note: this feature -- showing a modified version of the RiverWare logo in all dialogs of a RiverWare session -- is currently available by including "--alticon" on the RiverWare command line. This is useful when running two instances of RiverWare side-by-side. RIVERWARE RELEASES, SOFTWARE MAINTENANCE and DEVELOPMENT ENVIRONMENT Licensing (1) Ongoing: Issuing Commercial Licenses. Generated and delivered (or in the process of issuing) license files to RiverWare users. Tasks included tracking the expiring licenses, contacting users to get information; generating license files; updating the license data records; providing instructions for RiverWare download, install, and floating license server manager configuration setup; and problem solving for users. (2) Ongoing: Maintaining licenses for internal development environment. (3) Updated License Record Excel spreadsheet file. (4) Updated the renewal floating license instruction template email. (5) Reprise RLM (a) Installed and built the version 10.0 release on kickapoo (32-bit) and bijou (64-bit) using Visual Studio 2010. Copied all the new RLM client library, license server, and utilities to the designated locations for building RiverWare, releasing RiverWare, and generating license files. (b) Tested various license files (node-locked, floating, roaming, dongle, etc.) generated with the RLM 10.0 utility tools against the RiverWare 6.3 snapshot test release from Neil and some 6.#.# releases. (c) Downloaded and tested the latest version 6.55 dongle device drivers from Sentinel. Worked on posting the new installer files on our download page. Finished the updated online Dongle License User Guide, added Command-line installer file to our download page, added information for downloading directly from Sentinel website, and updated the install instructions for both Windows GUI and Command-line. Will pass these to Jim P. for updating our download page. (d) Writing up the release notes regarding upgrading to the new RLM 10.0 that will be in the 6.3 release for the floating and roaming license users. Warning users that all the roamed licenses cannot be returned early after the license server has been upgraded to the new version. (e) Completed document "RLM for RiverWare - Configuration and Build Guide" (\\ALAMOSA\projects\riverware\reprise\doc\rlm-config-guide.docx). This file contains all instructions needed for building a new version of the RLM developer kit. RIVERWARE RELEASES, SOFTWARE MAINTENANCE and DEVELOPMENT ENVIRONMENT Development Environment Visual Studio 2010: Work continued to upgrade from Visual Studio 2008 to Visual Studio 2010. The patched version of Visual Studio 2010, described last month, was used to rebuild the gdal, ClientServer, and RdfToExcel libraries on the 64-bit test machine. Building RiverWare with the patched VS2010 created a 64-bit release executable that worked properly without the crash seen with the unpatched VS2010. Testing of the VS2010 version of RiverWare showed that the JPEG2000 and MrSID graphics formats were no longer supported in RiverWare's geospatial view. The MrSID Software development Kit was downloaded on both the 32-bit and 64-bit test machines and was included into the gdal make file. The gdal libraries were then rebuilt on both machines and testing verified that the two missing formats were now working. The licensing software for RiverWare was upgraded to Reprise 2010. The necessary files from the new build of Reprise were incorporated into the 32-bit and 64-bit RiverWare build process. Tar files were created for all of the rebuilt 64-bit libraries and were incorporated into the CADSWES Windows configuration process. The GUI libraries were always showing up as out of date in the Visual Studio 2010 compiler on 64-bit, and therefore had to be rebuilt with every RiverWare build. This would unnecessarily slow the development/build process. The issue was researched and a change was made to the moc.pri configuration file in Qt so that more include lines could be handled before a temporary include file is created. It was this temporary file that was created with each build that was causing the out-of-date problem. Ancillary executables for RiverWare were then configured and rebuilt with Visual Studio 2010 on the 32-bit and 64-bit test machines. These included QtService, RwService, RwRemoteMgr, RwSvcCtlr, and the HDB server. This work required changing .pro files to explicitly handle project dependencies and enforcing unique intermediate build directories for the VS2010 build. Visual Studio 2008 was then replaced with Visual Studio 2010 on all of the development machines at CADSWES. The VS2010 branch of the RiverWare code base was merged with the main master branch. Visual Studio 2010 will now be the Windows compiler moving forward. A document was started to record in one place all of the information about building RiverWare and its ancillary libraries and executables. This will be useful in the future when a similar upgrade process is required. Additional maintenance work related to this upgrade includes: (1) Testing the VS 2010 Study Manager with VS 2010 RiverWare. (2) Modifying the Perl overnight build scripts for VS 2010. (3) Upgrading spurwink and scuba to Qt 4.8.4 (along with all related libraries such as Qwt). (4) Updated the overnight builds on spurwink and scuba. RIVERWARE RELEASES, SOFTWARE MAINTENANCE and DEVELOPMENT ENVIRONMENT Software Maintenance - Qt4 Port Qt3 to Qt4 Port: Open Object Dialog: Fixes were applied to the Open Object Dialog Qt4 port, completed last month (January 2012). These included: (1) Element Objects (in an Open Object Dialog for an Aggregate Object) are not to be sorted. (2) The context menu in the Methods tab wasn't operational. STUDY MANAGER RELEASES, SOFTWARE MAINTENANCE and DEVELOPMENT ENVIRONMENT Development Environment Visual Studio 2010: In February, the Study Manager repository was converted from Visual Studio 2008 over to use Visual Studio 2010. Many of the same issues with dependencies and intermediate directories that were found with RiverWare had to be addressed in the transition. In addition, a call to QtConcurrent in the Study Manager code was creating a compilation error with very little information as to what was causing the problem. This code compiled fine with VS2008. It was tracked down to a "this" pointer that was being passed as an argument that was non-const. It had to be converted to a const pointer for the code to compile. A Visual Studio 2010 branch of the code was created for use during the transition, and was merged with the master branch at the end of the month when all development machines were updated to VS2010. Additional Study Manager development work in February included testing the VS 2010 Study Manager with VS 2010 RiverWare. --- (end) ---