By: Karl Tarbet

Introduction

Since its introduction in 1978, HEC-DSS has been the default data storage for HEC software. HEC released multiple versions of DSS over the years, with DSS Version 6 arriving in 1991. Recently, after decades of reliable service, DSS version 6 was officially retired and support to DSS version 6 was ended on July 31, 2024. This article will answer common questions about moving from DSS version 6 to DSS version 7.

Note:  More details on the background of HEC-DSS can be found at https://www.hec.usace.army.mil/confluence/dssdocs/dssvueum/introduction/overview-of-the-hec-data-storage-system. HEC-DSS is a library used by software applications to work with time-series, paired, and gridded data stored in DSS files. HEC-DSSVue is one such software application that manages data in DSS Files. The upcoming release of HEC-DSSVue 4.0 will no longer support DSS version 6 files, but will have the ability to convert DSS version 6 files to DSS version 7 files.

Frequently Asked Questions

Question 1: Why did support for HEC-DSS Version 6 end in 2024?

We ended support for HEC-DSS version 6 to focus future efforts on supporting and enhancing version 7 and future versions.  HEC-DSS version 6 is based on Fortran, which takes significant effort to maintain, while HEC-DSS version 7 is developed in C.  HEC software applications using DSS version 6 files will continue to work. However, if an issue is found within DSS 6, it will not be corrected and the user should instead convert their DSS version 6 file(s) to version 7. After converting to version 7, users should report any issues that continue to occur for further support. 

See the instructions for reporting issues here - https://discourse.hecdev.net/t/how-should-i-report-issues-with-hec-dss-or-hec-dssvue/4436

Question 2: How do I convert my DSS files to Version 7 using HEC-DSSVue?

If your using HEC-DSSVue 4.0.7 (Beta) or higher you will be asked if you want to upgrade automatically.  Otherwise, the first step is to open the DSS file, then convert to DSS version 7 using the HEC-DSSVue Tools menu (Convert To DSS Version 7) as shown below. A scripting option that converts multiple DSS files is described in the following tutorial, https://www.hec.usace.army.mil/confluence/cwmsdocs/ctg/miscellaneous-topics/converting-files-from-dss-6-to-dss-7

Converting a file to Version 7

Question 3: What software applications work with HEC-DSS Version 7?

HEC-DSS version 7 has been working in parallel with version 6 since 2015; therefore, many HEC software and scripting tools have support for both DSS versions 6 and 7. Early in 2025, the HEC-RTS software began defaulting to DSS version 7 for integrating model output from HEC-MetVue, HEC-HMS, HEC-RAS, HEC-ResSim, and HEC-FIA. The next HEC-RTS release (version 3.6) will only support DSS version 7 files. Individual software product teams are responsible for managing the transition between 6 and 7, and it is anticipated in the next two years that most HEC software will work strictly with DSS version 7.

Question 4: What if a Jython Script doesn't work after updating to HEC-DSS Version 7?

Most likely you can use HEC-DSSVue with version 7 without taking any extra steps.  However, if you've created custom programming code, you may need to make a few small changes. See the table below for help with common issues.

IssueWhat Happened?Solution

An advanced user has a Jython script that gives an error.


For example:

AttributeError: 'hec.heclib.dss.HecDSSUtilities'

object has no attribute 'convertVersion'

Programmers reorganized the code for version 7 exclusively.

Solution: use an older version of DSSVue to convert to DSS version 6.

This error indicates the method convertVersion no longer exists.  Scripts that convert from DSS version 6 to 7 only work in older versions of HEC-DSSVue.  The core API documentation is here: Scripting

A Jython programmer is seeing different results from the DSS catalog with DSS version 7.  

Catalog conventions have changed. This can affect programs that rely on the older conventions.

Solution: Change the interval to match version 7 conventions. For example Monthly interval changed from '1MON' to '1Month'. 

 The E-part of the pathnames in DSS Version 7 use longer names and use title case instead of all capital letters.

Example: /Columbia Basin/Snake River/Flow/01Jan2000/1Month/USGS/

For details see the documentation for E-Part conventions here: Time Series Conventions

Summary

Upgrading to DSS Version 7 puts you on a supported version; bug fixes and improvements are currently being made to DSS version 7 code.  Maintenance costs will decrease because DSS version 7 has 40% less code and only a single programming language for the core library.  Legacy Fortran components have been removed, freeing development resources for new features, enhancements and exploring technology changes, as described in a previous article: Thinking Beyond HEC-DSS Version 7.