TSTool / Release Notes / Version 14
Release notes for specific versions are listed below. See also the GitHub repository issues for outstanding issues and enhancement requests. Issues may also be included in other repositories that are TSTool components.
- Changes in Version 14.10.0
- Changes in Version 14.9.6
- Changes in Version 14.9.5
- Changes in Version 14.9.4
- Changes in Version 14.9.3
- Changes in Version 14.9.2
- Changes in Version 14.9.1
- Changes in Version 14.9.0
- Changes in Version 14.8.6
- Changes in Version 14.8.5
- Changes in Version 14.8.4
- Changes in Version 14.8.3
- Changes in Version 14.8.2
- Changes in Version 14.8.1
- Changes in Version 14.8.0
- Changes in Version 14.7.0
- Changes in Version 14.6.0
- Changes in Version 14.5.4
- Changes in Version 14.5.3
- Changes in Version 14.5.2
- Changes in Version 14.5.1
- Changes in Version 14.5.0
- Changes in Version 14.4.0
- Changes in Version 14.3.0
- Changes in Version 14.2.2
- Changes in Version 14.2.1
- Changes in Version 14.2.0
- Changes in Version 14.1.1
- Changes in Version 14.1.0
- Changes in Version 14.0.6
- Changes in Version 14.0.5
- Changes in Version 14.0.4
- Changes in Version 14.0.3
- Changes in Version 14.0.2
- Changes in Version 14.0.1
- Changes in Version 14.0.0
- Release notes for all versions
Changes in Version 14.10.0
Feature release to allow iteration over time series data points and dynamic properties.
 [14.10.0] Fix canceling a run: [14.10.0] Fix canceling a run:- The Run / Cancel Command Processing (wait for command to finish) menu item was inconsistently enabled. The UI now waits 10ms when starting processing to allow the processor to initialize so that the menu state is correct. It should now be possible in most cases to gracefully cancel processing without killing TSTool.
- The status messages in the TSTool UI are now more explicit for cancel and Exitcases.
 
 [14.10.0] Improve the dictionary edit tool,
    which is used to edit [14.10.0] Improve the dictionary edit tool,
    which is used to edit- key:valuedata pairs:- The editor was not always properly enabling/disabling buttons.
- The editor was not always properly enabling/disabling the "all" checkbox.
- The editor was not always displaying added rows.
 
 [14.10.0] Fix bugs and limitations in graphs: [14.10.0] Fix bugs and limitations in graphs:- Fix so that an annotation data value that is a date/time string is automatically parsed.
- Fix so that expanding a command parameter in an annotation gracefully handles
    the case when the closing }-bracket of an annotation is not found.
- Enable mouse tracking for stacked area graphs.
 
 [14.10.0] Enable nested properties: [14.10.0] Enable nested properties:- Property references like ${${PropertyInner}_SomeText}are now allowed, which is necessary for dynamic property names.
 
- Property references like 
 [14.10.0] Fix the [14.10.0] Fix the- AppendFilecommand editor actions, for example to properly handle selection of multiple input files.
 [14.10.0] Add support for [14.10.0] Add support for- ${ts:periodstart}and- ${ts:periodend}time series properties, and add- ${ts:property}choices to time series alias choices.
 [14.10.0] Improve the "find" tool,
        which is used to find substrings in lists, for example, commands and time series: [14.10.0] Improve the "find" tool,
        which is used to find substrings in lists, for example, commands and time series:- The tool now explicitly handles case dependent/independent searches.
- The tool now allows selecting items in the found list and then selecting those items in the original list. This provides additional control, for example, when selecting time series to graph.
 
 [14.10.0] Enhance the processor: [14.10.0] Enhance the processor:- Add the TempDirPosixprocessor property.
 
- Add the 
 [14.10.0] Enhance graphs: [14.10.0] Enhance graphs:- The Datasection of a time series product file previously allowed anEnabledproperty, which can be used to disable a time series in output. This functionality has been made more robust and will continue to be tested with various product configurations.
 
- The 
 [14.10.0] Update the [14.10.0] Update the- ChangeIntervalcommand:- Expand the Aliasparameter only when in run mode. The original alias value will be listed in command editors for following commands.
 
- Expand the 
- [14.10.0] Update the
    CopyTimeSeriesPropertiesToTablecommand: Add the Add the- ExcludePropertiesparameter to exclude dynamic properties from the copy.
 Add the Add the- ExcludeBuiltInPropertiesparameter to exclude built-in properties from the copy.
 Remove the Remove the- TableOutputColumnsparameter (use the- NameMapparameter instead).
 
 [14.10.0] Update the [14.10.0] Update the- DeselectTimeSeriescommand:- Change so that if no time series are found, the SelectedCountPropertyandUnselectedCountPropertyvalues are set to0. Previously an error occurred without setting the values.
 
- Change so that if no time series are found, the 
 [14.10.0] Update the [14.10.0] Update the- ExpandTemplateFilecommand:- Pass properties to FreeMarker as a dictionary (map) named propertymapwith all processor properties as key/value pairs, which allows nested properties to be processed. This is in addition to passing individual properties.
- Update the FreeMarker library to version 2.3.33 (the library is also used in other template features).
- Improve error handling and allow the input file to not exist when editing the command (used with workflows that dynmically create the template file).
- The input file is no longer required to exist when editing the command because it may be created dynamically.
 
- Pass properties to FreeMarker as a dictionary (map) named 
 [14.10.0] Update the [14.10.0] Update the- Forcommand:- Add the PeriodStart,PeriodEnd, andPeriodIncrementcommand parameters to iterate over a date/time period, which allows time series data values to be processed individually.
- Add the IndexPropertyparameter to provide a count of the iterations.
- Add the ShowProgressparameter to show the progress of the command, useful when other commands being executed do not show progress and want to provide a progress indicator to the user.
 
- Add the 
 [14.10.0] Update the [14.10.0] Update the- Ifcommand:- Add the CompareAsVersionsparameter to compare strings as versions, which allows workflows to more easily handle logic for different software or API versions.
- Add the PropertyIsDefinedAndIsNotEmptyparameter to provide more granular control over property checks.
 
- Add the 
 [14.10.0] Update the [14.10.0] Update the- ListFilescommand:- Add the CountPropertyto set a property with the size of the output list,
 
- Add the 
 [14.10.0] Update the [14.10.0] Update the- ProcessRasterGraphcommand:- Add the CommandStatusPropertyparameter to set the exit status of the command, used to detect when output could not be created (e.g., no time series data).
- Improve error handling if no time series are available for a graph.
 
- Add the 
 [14.10.0] Update the [14.10.0] Update the- ProcessTSProductcommand:- Add the CommandStatusPropertyparameter to set the exit status of the command, used to detect when output could not be created (e.g., no time series data).
- Improve error handling if no time series are available for a graph.
 
- Add the 
 [14.10.0] Update the [14.10.0] Update the- SelectTimeSeriescommand:- Change so that if no time series are found, the SelectCountPropertyvalue is set to0. Previously an error occurred without setting the value.
 
- Change so that if no time series are found, the 
 [14.10.0] Update the [14.10.0] Update the- SetPropertycommand:- Allow the property value to start or end with white space characters.
- Allow the property name to contain ${Property}syntax, which allows property names to be dynamic.
- Add LastSunday, etc., to create date/time properties for recent days.
 
 [14.10.0] Update the [14.10.0] Update the- SetPropertyFromTablecommand:- Improve warnings when a column is not found for the ColumnIncludeFiltersandColumnExcludeFiltersparameters.
- Add the IgnoreCasecommand parameter to provide control over filter comparisons.
- Add the Rowcommand parameter to match a specific row.
 
- Improve warnings when a column is not found for the 
 [14.10.0] Update the [14.10.0] Update the- SetPropertyFromTimeSeriescommand:- Allow the property value to start or end with white space characters.
- Allow the property name to contain ${Property}syntax, which allows property names to be dynamic.
- Add the DateTime,PropertyNameForValue, andPropertyNameForFlagparameters to set a processor property to time series data values.
 
 [14.10.0] Update the [14.10.0] Update the- TableMathcommand:- Add the OutputTypecommand parameter.
 
- Add the 
 [14.10.0] Update the [14.10.0] Update the- TableToTimeSeriescommand:- The DateTimeColumn,DateColumn, andTimeColumncan now use${Property}.
- Reorder the command parameter order to match the editor groups.
 
- The 
 [14.10.0] Update the [14.10.0] Update the- TextEditcommand:- Allow the search and replace strings to start or end with white space characters.
- Allow the replacement string to be an empty string, to remove a matching string.
 
 [14.10.0] Update the [14.10.0] Update the- WriteTableToMarkdowncommand:- Add the NewlineReplacementcommand parameter to handle line breaks embedded in table cell data.
- Add the PrependTextandPrependFileparameters to prepend markdown content before the table.
- Add the AppendTextandAppendFileparameters to append markdown content after the table.
- Remove the parameters for the schema file since the schema is more appropriate for data formats such as CSV.
 
- Add the 
 [14.10.0] Add the initial [14.10.0] Add the initial- GeoMapand- GeoMapProjectcommands to automate the creation of maps.
 [14.10.0] Add the initial [14.10.0] Add the initial- PDFMergecommand to merge PDF files. Additional development is necessary to fully implement and test the command.
Changes in Version 14.9.6
Maintenance release to improve complex workflow automation and maintenance.
 [14.9.6] Add the JFreeChart SVG writer for saving graph files.
    This library is less complex than the Batik SVG implementation and gives good performance. [14.9.6] Add the JFreeChart SVG writer for saving graph files.
    This library is less complex than the Batik SVG implementation and gives good performance.
 [14.9.6] Update the [14.9.6] Update the- Messagecommand:- Add the NOTIFICATIONcommand status type, which will result in a notification marker for the command.
 
- Add the 
Changes in Version 14.9.5
Maintenance release to improve complex workflow automation and maintenance.
 [14.9.5] Update the TSTool main window: [14.9.5] Update the TSTool main window:- Right-clicking in Results / Output Files will now show a popup menu that allows searching the file names.
- Right-clicking in Results / Tables will now show a popup menu that allows searching the table identifiers.
- The Tools / Commands menu items have been removed (moved to View).
- The View / Command File Source Diff menu has been added to compare the current commands with the source,
    as specified by the #@sourceUrlcomment annotation.
 
 [14.9.5] Update the [14.9.5] Update the- Commentcommand:- Improve error-handling for the #@sourceUrlcomment annotation.
 
- Improve error-handling for the 
 [14.9.5] Update the [14.9.5] Update the- ManipulateTableStringcommand:- The Removeaction now allows specifying a range of characters to remove.
 
- The 
 [14.9.5] Update the [14.9.5] Update the- NewTablecommand:- Update the editor to provide a form for editing the column names and data types.
 
 [14.9.5] Update the [14.9.5] Update the- ReadTableFromDataStorecommand:- Update to the DataStoreparameter to allow being specified as a${Property}.
 
- Update to the 
 [14.9.5] Update the [14.9.5] Update the- SetPropertycommand:- Improve setting properties when used in discovery mode. This allows properties set at the top of a workflow (e.g., datastore name) to be used in later commands when editing commands.
 
 [14.9.5] Update the [14.9.5] Update the- TimeSeriesToTablecommand:- Add the RowCountPropertyparameter to allow setting the property to the output table row count.
 
- Add the 
 [14.9.5] Update the [14.9.5] Update the- WriteTableToExcelcommand:- Update the ColumnWidthsparameter to allow wildcards in the column name.
- Update the ColumnDecimalPlacesparameter to allow wildcards in the column name.
 
- Update the 
Changes in Version 14.9.4
Maintenance release to improve table comparison and enable command notifications.
 [14.9.4] Update the [14.9.4] Update the- ReadTableFromJSONcommand:- Fix so that the table that is created is listed in other command editors.
 
 [14.9.4] Add command notifications: [14.9.4] Add command notifications:- The @fixmeand@todoCommentcomment annotations will cause a blue marker to be shown in the command list as a visual notification that action should be take to improve the command file.
- The @sourceUrlCommentcomment annotation will show a blue marker if the available source copy of the command file is different from the current version.
 
- The 
 [14.9.4] Update the [14.9.4] Update the- CompareTablescommand:- Add the ExcludeColumns2parameter to provide more control over which columns are compared.
 
- Add the 
 [14.9.4] Update the [14.9.4] Update the- CopyTimeSeriesPropertiesToTablecommand:- Add the IncludeBuiltInPropertiescommand parameter to control whether built-in properties are copied.
- Built-in properties now include alias,datatype,description,interval,tsid, andunits.
- Add the NameMapproperty to control renaming properties as they are copied.
- Fix so that the TableIDis shown in other command editors when editing command files.
 
- Add the 
 [14.9.4] Update the [14.9.4] Update the- SortTablecommand:- Add the OrderColumnsparameter to recorder columns.
 
- Add the 
Changes in Version 14.9.3
Maintenance release to improve table comparison and math, and time series comparison.
 [14.9.3] Update Excel workbook commands to always internally use [14.9.3] Update Excel workbook commands to always internally use- /in paths when tracking open worksheets, to handle workflows that use forward and back slashes.
 [14.9.3] Update the Where filter choices to handle boolean data,
    which is needed by some datastores. [14.9.3] Update the Where filter choices to handle boolean data,
    which is needed by some datastores.
 [14.9.3] Update the [14.9.3] Update the- TableMathcommand:- Handle input table columns of type long integer.
 
 [14.9.3] The time series identifier editor dialog now has wider input fields. [14.9.3] The time series identifier editor dialog now has wider input fields.
 [14.9.3] For irregular interval time series graph view,
    default the [14.9.3] For irregular interval time series graph view,
    default the- LineConnectAllowedGapvalue so that time series with long gaps relative to the interval precision do not connect points.
 [14.9.3] Update the [14.9.3] Update the- Addcommand:- The HandleMissingHowparameter now defaults to blank in the editor (IgnoreMissingis the default).
- The HandleDataFlagsHowparameter has been added to control how data flags are handled.
 
- The 
 [14.9.3] Update the [14.9.3] Update the- AppendTablecommand:- Add the AppendRowNumbersparameter to append specific row numbers.
 
- Add the 
 [14.9.3] Update the [14.9.3] Update the- CompareTimeSeriescommand:- If comparing two time series and the second is not available, add a record to the difference table indicating this rather than just generating a warning. Otherwise, it may not be obvious that there is a difference.
 
 [14.9.3] Update the [14.9.3] Update the- CompareTablescommand:- The AnalysisMethodparameter has been added to allow simple and advanced analysis, where the advanced analysis will shift rows in the output to align matching table rows
- Output HTML has been enhanced to add more colors to provide more granularity in the comparison, and the page title matches the difference table ID.
- The RowNumberColumnparameter has been added to include the row number in output, to simplify lookup of orginal input rows
- The NewTableIDandOutputFilecommand parameters have been renamed to support new advanced analysis. Old parameter names are still supported. See the command documentation.
- The OutputRowsparameter has been added to allow outputting all, different, or same rows.
- The DiffRowCountProperty,DiffCellCountProperty,SameRowCountProperty, andSameCellCountPropertyparameters have been added to set processor properties for the number of different/same rows and cells, useful for testing and logic checks.
- Parameters that specify table identifiers, columns, output files, and properties
    allow ${Property}notation, as documented.
 
- The 
 [14.9.3] Update the [14.9.3] Update the- EndIfcommand:- Warn if no Forcommands are found prior to the insert location, rather than a general exception message.
 
- Warn if no 
 [14.9.3] Update the [14.9.3] Update the- EndIfcommand:- Warn if no Ifcommands are found prior to the insert location, rather than a general exception message.
 
- Warn if no 
 [14.9.3] Update the [14.9.3] Update the- Ifcommand:- Add a warning if a property name is used in the condition statement without surrounding ${ }and the property exists (this helps with troubleshooting).
- Add TsHasDataandTsHasNoDataparameters in the Time Series Exists? tab to allow handling time series that have no data.
 
- Add a warning if a property name is used in the condition statement without surrounding 
 [14.9.3] Update the [14.9.3] Update the- InsertTableRowcommand:- The TableID,InsertRow, andInsertCountparameters can now be specified using${Property}.
 
- The 
 [14.9.3] Update the [14.9.3] Update the- NewTablecommand:- The Columnsparameter can now be specified using${Property}.
 
- The 
 [14.9.3] Update the [14.9.3] Update the- SelectTimeSeriescommand:- The HasDataparameter has been added to only select time series with data. This can avoid problems in later commands that attempt to process the time series.
 
- The 
 [14.9.3] Update the [14.9.3] Update the- Subtractcommand:- The HandleMissingHowparameter now defaults to blank in the editor (IgnoreMissingis the default).
 
- The 
 [14.9.3] Update the [14.9.3] Update the- Commentcommand:- The @docExampleannotation tag is now supported to help with TSTool documentation maintenance.
 
- The 
Changes in Version 14.9.2
Maintenance release to enable step graph.
 [14.9.2] Enable step graphs: [14.9.2] Enable step graphs:- Add the LineConnectTypeproperty to time series products to indicate how points are connected when drawing.
- Add the LineConnectAllowedGapproperty to time series products to indicate the largest date/time interval between points that can be connected with a line, used with irregular interval time series (regular interval time series rely on missing values for gaps).
- Enable the above properties for Line,Area, andAreaStackedgraph types.
 
- Add the 
Changes in Version 14.9.1
Maintenance release to enhance plugin integration and fix workflow issues.
 [14.9.1] Fix the bug in the raster graph for multiple time series: [14.9.1] Fix the bug in the raster graph for multiple time series:- Time series with missing data at the end of a row were being shown with the last non-missing value. This has been fixed.
 
 [14.9.1] Update the Results / Time Series heading to indicate how many time series have no data. [14.9.1] Update the Results / Time Series heading to indicate how many time series have no data.
 [14.9.1] Re-enable previously available time series edit features in the graph: [14.9.1] Re-enable previously available time series edit features in the graph:- Use the SetTimeSeriesPropertycommand to set the time series to editable.
- Use the ProcessTSProductcommand and set the default save file, which can save the edit results.
- Graphing the time series will enable the editing toolbar. These features are experimental and will be enhanced over time.
- Add the XYAxestracker type for time series graphs. This shows a crosshair that spans the entire graph in both directions and is useful during editing.
 
- Use the 
 [14.9.1] Update the [14.9.1] Update the- DeselectTimeSeriescommand:- Add the IfNotFoundparameter to allow more control if no time series are matched.
- Add the SelectedCountPropertyparameter to set a property for how many time series are selected.
- Add the UnselectedCountPropertyparameter to set a property for how many time series are unselected.
 
- Add the 
 [14.9.1] Update the [14.9.1] Update the- SetConstantcommand:- Add the SetFlagandSetFlagDescriptionparameters to allow setting the data flag when values are set.
- Allow only the flag to be set without setting numerical values.
 
- Add the 
Changes in Version 14.9.0
Feature release to use OpenJDK 8, enable additional plotting symbols, map view fixes.
 [14.9.0] The View / Map features were not working for [14.9.0] The View / Map features were not working for- UniqueValuesclassification type. This has been fixed.
 [14.9.0] Update the [14.9.0] Update the- CopyTimeSeriesPropertiesToTablecommand:- Fix to handle boolean properties.
 
 [14.9.0] Switch the Java version to OpenJDK 8.
    OpenJDK is free and open source whereas Oracle requires a fee for newer Java versions.
    Future updates will implement newer versions of Java. [14.9.0] Switch the Java version to OpenJDK 8.
    OpenJDK is free and open source whereas Oracle requires a fee for newer Java versions.
    Future updates will implement newer versions of Java.
 [14.9.0] Improve handling of [14.9.0] Improve handling of- HeadlessExceptionwhen trying to display an interactive graph window when running in headless mode.
 [14.9.0] Enable additional plotting symbols: [14.9.0] Enable additional plotting symbols:- Ellipse-Horizontal-Filled
- Ellipse-Horizontal-Hollow
- Ellipse-Vertical-Filled
- Ellipse-Vertical-Hollow
- Rectangle-Horizontal-Filled
- Rectangle-Horizontal-Hollow
- Rectangle-Vertical-Filled
- Rectangle-Vertical-Hollow
 
 [14.9.0] Fix the following plotting symbols,
    which were not drawing the bottom line: [14.9.0] Fix the following plotting symbols,
    which were not drawing the bottom line:- Triangle-Down-Filled-BotLine
- Triangle-Down-Hollow-BotLine
 
 [14.8.4] Update to allow multiple [14.8.4] Update to allow multiple- --disable-datastoresand- --enable-datastorescommand parameters to be specified in sequence to control which datastores are enabled. This allows, for example, disabling all datastores and then enabling only the datastore(s) that are needed for a batch workflow. See the TSTool command line parameters. The parameters have also been renamed from previous- --disabled-datastoresand- --enabled-datastoresparameters.
Changes in Version 14.8.6
Maintenance release to improve time zone handling.
 [14.8.6] Phase out some support for old-style time zones (e.g., [14.8.6] Phase out some support for old-style time zones (e.g.,- MST,- MDT) due to ambiguity with current conventions that are more granular (e.g., use- America/Denverinstead, which includes daylight saving). Some command files may need to be updated.
 [14.8.6] The time series table view has been updated to improve handling
    time series with different time zones: [14.8.6] The time series table view has been updated to improve handling
    time series with different time zones:- the date/time column will not show time zone
- the time zone will be shown in the time series value column heading
- column tool tips provide additional details about the time zone and other time series metadata
 
 [14.8.6] Update the [14.8.6] Update the- ChangeTimeZonecommand:- Add the ShiftTimeparameter to control whether the date/times in the time series are shifted using the difference between the old and new time zones.
- Add the OldTimeZoneparameter to specify the old time series for the time series, for cases where the time series being modified does not specify the time zone.
 
- Add the 
Changes in Version 14.8.5
Maintenance release to enhance plugin integration.
 [14.8.5] Improve plugin integration with the documentation viewer.
    Plugins can now view documentation for a specific version.
    Plugins will need to be updated to use this feature. [14.8.5] Improve plugin integration with the documentation viewer.
    Plugins can now view documentation for a specific version.
    Plugins will need to be updated to use this feature.
 [14.8.5] Improve handling of timeout for web service requests
    to allow plugin data requests to timeout.
    Plugins will need to be updated to use this feature. [14.8.5] Improve handling of timeout for web service requests
    to allow plugin data requests to timeout.
    Plugins will need to be updated to use this feature.
Changes in Version 14.8.4
Maintenance release to fix issues when processing text files.
 [14.8.4] Update the [14.8.4] Update the- AppendFilecommand:- The IncludeTextandExcludeTextparameters can now include${Property}syntax.
 
- The 
 [14.8.4] Update the [14.8.4] Update the- Copycommand:- The history of the original time series was being updated with a note that a copy was made, instead of a note in the new copy.
 
 [14.8.4] Update the [14.8.4] Update the- ReplaceValuecommand:- Add the RemoveMissingaction for irregular interval time series.
- Change to not automatically append to the time series description.
    The new Descriptioncommand parameter can be used to change the description.
- Fix a bug that was causing time series modified by this command to not display correctly in the table view.
 
- Add the 
 [14.8.4] Update the [14.8.4] Update the- SetTimeSeriesPropertiesFromTablecommand:- The following command parameters now accept ${Property}notation:TSID,TableID,EnsembleID,TableInputColumns,TableTSIDColumn.
 
- The following command parameters now accept 
 [14.8.4] Add the following command parameters to control which datastores are
    enabled/disabled at run-time, useful for optimizing batch workflows. [14.8.4] Add the following command parameters to control which datastores are
    enabled/disabled at run-time, useful for optimizing batch workflows.- --enabled-datastores=dastore1,datastore2
- --disabled-datastores=dastore1,datastore2
- See the TSTool command line parameters.
 
Changes in Version 14.8.3
Maintenance release to enable raster graphs for hour and minute interval time series.
 [14.8.3] Update the [14.8.3] Update the- ProcessRasterGraphcommand:- Enable 1-hour and N-minute interval time series.
- Improve tick mark rendering for raster graphs.
 
Changes in Version 14.8.2
Maintenance release to fix raster graphs when no time series data.
 [14.8.2] Update the [14.8.2] Update the- ProcessRasterGraphcommand:- Handle case where a time series is completely missing or has no data. This allows the raster graph to be used on large datasets that may have missing data.
- Improve error handling when reading the symbol table file for raster graphs.
 
Changes in Version 14.8.1
Maintenance release to support the new Zabbix plugin.
 [14.8.1] Update the [14.8.1] Update the- WebGetcommand to improve handling of the payload, including allowing a payload for the- GETHTTP method.
 [14.8.1] TSTool has been tested with the new Zabbix web services plugin.
    See the Plugins Reference. [14.8.1] TSTool has been tested with the new Zabbix web services plugin.
    See the Plugins Reference.
Changes in Version 14.8.0
Feature release to improve dataset publishing and visualization. Remove the requirement for administrator privileges to install on Windows.
 [14.8.0] Update the time series table view to copy to the clipboard for irregular interval time series. [14.8.0] Update the time series table view to copy to the clipboard for irregular interval time series.
 [14.8.0] Remove the requirement for administrator privileges to install on Windows. [14.8.0] Remove the requirement for administrator privileges to install on Windows.
 [14.8.0] Enhance the [14.8.0] Enhance the- Deltacommand to improve handling of rollover:- Add the CopyDataFlags,AutoRestFlag,RolloverFlag, andManualResetFlagparameters to allow setting flags to check the output.
- Add the RolloverDeltaLimitparameter to control whether a rollover should be handled as a manual rese.
 
- Add the 
 [14.8.0] Enhance the [14.8.0] Enhance the- DeleteTableRowscommand:- Add FirstandLastparameters to simplify deleting table rows at the start and end of a table.
- Add DeleteCountPropertyandRowCountPropertyparameters to allow checking that the delete happened as expected
 
- Add 
 [14.8.0] Enhance the [14.8.0] Enhance the- ListFilescommand:- Update to list folders in addition to files as controlled by the ListFilesandListFoldersparameters.
- Add the ListScopeparameter to allow listing files in the specified folder or also all subfolders.
- Add additional information to the output table including type as FileorFolder,Size,Owner,ParentFolder,LastModifiedtime.
- Change the output table column FileNametoNameto handle files and folders.
- Change the IncludeFilesparameter toIncludeNamesto handle files and folders.
- Change the ExcludeFilesparameter toExcludeNamesto handle files and folders.
- The command parameter defaults match previous functionality.
 
- Update to list folders in addition to files as controlled by the 
 [14.8.0] Enhance the [14.8.0] Enhance the- NewStatisticYearTScommand:- Add the YearStartTimeandYearEndTimeparameters to control how midnight is interpreted when determining the sample data. These parameters only apply when the input time series has data interval with time (less than a day).
- Change the default behavior when handling input time series with time in the interval so
    that YearStartTime=AfterMidnightandYearEndTime=Midnight, which is consistent with the TSTool convention that the date/time matches the interval end. Previously midnight was not included as the year-ending time.
- The TestValueparameter has been removed andValueshould be used instead. The command will automatically convertTestValuetoValue1. This transition should not impact recent workflows becauseValue1has been the default for a while.
- The AllowMissingCountparameter is not checked for irregular interval input time series because irregular interval data often do not store missing values.
- New OutputYearTypeparameter values support all 12-month variations in a general way, similar to oldWaterYear.
 
- Add the 
 [14.8.0] Enhance the [14.8.0] Enhance the- ProcessRasterGraphcommand:- If a single time series is processed, the time series interval must be day or month and the graph will have dates on both axes (this is the same functionality as before).
- If multiple time series are processed, the time series must have consistent time intervals and any regular interval can be processed. Each time series is listed on the y-axis and the time period is displayed on the x-axis. The period must be short enough that each interval can be displayed as a "pixel" of color. The x-axis can be zoomed to show more detail.
- The Results / Graph - Raster Graph view has been updated to behave similarly.
 
 [14.8.0] Enhance the [14.8.0] Enhance the- ReadPropertiesFromFilecommand:- Add support for the INIfile format.
- Change the IncludePropertyparameter toIncludeProperties(plural) to reflect command functionality. The old parameter name is automatically changed to the new name.
- Add the ExcludePropertiesparameter to control which properties are read.
- Add the IgnoreCaseparameter to control whether property names are compared by considering or ignoring case.
- Add the ExpandPropertiesparameter to control whether file properties are expanded if${Property}notation is found in property values.
- Add support for PARENT_FOLDERandPARENT_PARENT_FOLDERproperty values.
 
- Add support for the 
Changes in Version 14.7.0
Feature release to improve the experience for new TSTool users.
 [14.7.0] The Datastore tab in the Input/Query Options
    area of the main TSTool window is now selected by default.
    The Input Type tab can be selected if necessary.
    The use of web service datastores and plugin datastores is increasing and therefore
    the Datastore tab is the new default. [14.7.0] The Datastore tab in the Input/Query Options
    area of the main TSTool window is now selected by default.
    The Input Type tab can be selected if necessary.
    The use of web service datastores and plugin datastores is increasing and therefore
    the Datastore tab is the new default.
 [14.7.0] TSTool is configured by default to show the Select HydroBase dialog at startup.
    HydroBase is enabled by default because of TSTool's use by the State of Colorado.
    Most users do not install a local version of HydroBase and therefore the dialog is not relevant,
    shows no HydroBase databases, and slows startup because TSTool searches for HydroBase databases.
    Using the Cancel button on the HydroBase selection dialog
    now shows an additional dialog explaining how to disable HydroBase. [14.7.0] TSTool is configured by default to show the Select HydroBase dialog at startup.
    HydroBase is enabled by default because of TSTool's use by the State of Colorado.
    Most users do not install a local version of HydroBase and therefore the dialog is not relevant,
    shows no HydroBase databases, and slows startup because TSTool searches for HydroBase databases.
    Using the Cancel button on the HydroBase selection dialog
    now shows an additional dialog explaining how to disable HydroBase.
 [14.7.0] Update the command reference documentation to indicates the menu
    in which a command editor is found. [14.7.0] Update the command reference documentation to indicates the menu
    in which a command editor is found.
 [14.7.0] Update the documentation for web accessibility compliance
    and site review checks: [14.7.0] Update the documentation for web accessibility compliance
    and site review checks:- Links are now shown as underlined.
- Images use human-readable "alt text".
- The Troubleshooting documentation for each command now links to the main TSTool troubleshooting.
 
 [14.7.0] TSTool has been tested with the new Synoptic data web services plugin.
    See the Plugins Reference. [14.7.0] TSTool has been tested with the new Synoptic data web services plugin.
    See the Plugins Reference.
 [14.7.0] Many commands that include [14.7.0] Many commands that include- TableIDand similar parameters provide a drop-down choice in the command editor to select a table. These parameters can often be specified with- ${Property}syntax by typing into the form, to allow for flexibility in workflows and because it may be difficult to provide an accurate list of tables from previous commands. Previously, typing into the editor field did not update the command shown at the bottom of the editor. This has been fixed.
 [14.7.0] Fix the [14.7.0] Fix the- NewPatternTimeSeriescommand editor to enable the- IrregularIntervalparameter when the- NewTSIDuse- ${Property}and any occurrence of- IRR, ignoring case.
 [14.7.0] Fix a minor bug in [14.7.0] Fix a minor bug in- ReadTimeSeriesListwhere the- ReadDataparameter was not being handled in the command editor.
 [14.7.0] The [14.7.0] The- Deltacommand has been enhanced:- The ResetTypeparameter indicate the reset type for cumulative time series.
- The ResetType=Autoparameter automatically handles data with resets.
- The ResetType=Rolleverparameter handles data with rollover at a maximum value.
- Additional checks have been implemented to help with review of data such as cumulative precipitation.
- Data problems that are detected can be output to a table to help with data quality control.
 
- The 
 [14.7.0] The [14.7.0] The- SetPropertyFromDataStorecommand has been added to set a processor property from a datastore configuration property.
Changes in Version 14.6.0
Feature release to implement command indentation.
 [14.6.0] Fix the [14.6.0] Fix the- ReadColoradoHydroBaseRestcommand:- Several Wherefilters, when selected, did not update the command parameters, including county, latitude, and longitude.
 
- Several 
 [14.6.0] Add command indentation: [14.6.0] Add command indentation:- Added the Indent Right and Indent Left popup menu choices to indent and unindent commands that are selected in the Commands area. Select one or more commands and then right-click to use the popup menu to change indentation.
- The default indentation is 4 spaces.
- All commands have been updated to enable indentation.
- Commands are automatically indented based on the previous commands' indentation and
    whether the inserted command follows an IforForcommand.
- TSTool plugins must be updated to newer versions to utilize indentation (refer to the release notes for the plugins).
 
 [14.6.0] Update all command parameters to use double quotes. [14.6.0] Update all command parameters to use double quotes.- This provides consistency for all commands.
- Previously, parameters that did not need to be quoted such as numbers were not quoted.
- The new convention also ensures that parameter values that use ${Property}are handled for complex syntax.
 
 [14.6.0] Editor dialogs that use [14.6.0] Editor dialogs that use- Whereparameters and input filters have been updated so that typing characters into text fields immediately updates the command shown in the bottom of command editors.
 [14.6.0] The graph warning about incompatible units
    will now display on the TSTool window when multiple computer displays are used
    so the warning is more obvious. [14.6.0] The graph warning about incompatible units
    will now display on the TSTool window when multiple computer displays are used
    so the warning is more obvious.
Changes in Version 14.5.4
Maintenance release to improve plugin integration and automated testing.
 [14.5.4] Fix bugs in the [14.5.4] Fix bugs in the- TSIDcommand:- Adding a new TSID command now shows the editor whereas previously the generic command editor was shown.
- The TSID editor now properly shows single quotes in TSIDs (previously they were not displayed even when present in the command).
- TSID strings where a part included single-quoted subparts were not being parsed correctly.
    For example, a data type 'part1'-'part2'was not being parsed correctly. This has been fixed.
 
 [14.5.4] Fix the Command Status window to center on the screen
    where the TSTool main window is visible, rather than the first screen in multi-screen workstations. [14.5.4] Fix the Command Status window to center on the screen
    where the TSTool main window is visible, rather than the first screen in multi-screen workstations.
 [14.5.4] Increase the speed of parsing command strings when reading, editing, and running command files. [14.5.4] Increase the speed of parsing command strings when reading, editing, and running command files.
 [14.5.4] Convert startup messages to debug messages to reduce information in the log file.
    Debug can be turned on with the [14.5.4] Convert startup messages to debug messages to reduce information in the log file.
    Debug can be turned on with the- -dcommand line parameter if necessary to view the messages.
 [14.5.4] Command editor dialogs for editing parameters that are
    maps ( [14.5.4] Command editor dialogs for editing parameters that are
    maps (- key:value,key:value,...) and delimited lists (- value1,value2,...) have been updated to provide more functionality including inserting and removing rows. These editors will be phased into more command editors.
 [14.5.4] The [14.5.4] The- CompareFilescommand has been updated:- The CommentLineCharproperty now allows<!--for HTML comments.
 
- The 
 [14.5.4] The [14.5.4] The- SetPropertyFromTablecommand has been updated:- The RowCountPropertyandColumnCountPropertyparameters have been added to allow setting processor properties for the table size, which is useful for automated testing and workflow checks.
 
- The 
 [14.5.4] The [14.5.4] The- RemoveFoldercommand has been added to remove a folder.
Changes in Version 14.5.3
Maintenance release to improve plugin integration.
 [14.5.3] Update the time series properties view to show the time series identifier parts in separate text fields.
    This facilitates troubleshooting. [14.5.3] Update the time series properties view to show the time series identifier parts in separate text fields.
    This facilitates troubleshooting.
 [14.5.3] Time series library code has been updated to improve plugin integration.
    The changes allow better error handling when reading time series.
    Existing plugins that read time series will not work with this version of TSTool and will need to be recompiled. [14.5.3] Time series library code has been updated to improve plugin integration.
    The changes allow better error handling when reading time series.
    Existing plugins that read time series will not work with this version of TSTool and will need to be recompiled.
Changes in Version 14.5.2
Maintenance release to improve JSON object features, and fix HydroBase web service issue.
 [14.5.2] Fix the Colorado HydroBase REST web service datastore: [14.5.2] Fix the Colorado HydroBase REST web service datastore:- Fix issue where telemetry station time series could not be copied from the time series list to the command area.
 
 [14.5.2] Remove the unused legacy State of Colorado Satellite Monitoring System library from development files.
    The latest HydroBase web services have replaced this old library. [14.5.2] Remove the unused legacy State of Colorado Satellite Monitoring System library from development files.
    The latest HydroBase web services have replaced this old library.
 [14.5.2] Update the copyright notice for 2023. [14.5.2] Update the copyright notice for 2023.
 [14.5.2] Update the [14.5.2] Update the- NewObjectand- WriteObjectToJSONcommands and the main interface to support JSON files that have- [ ]array at the top level.
 [14.5.2] TSTool has been tested with the Kisters WISKI (KiWIS) plugin. [14.5.2] TSTool has been tested with the Kisters WISKI (KiWIS) plugin.
Changes in Version 14.5.1
Maintenance release to improve cloud integration, JSON object features, and HydroBase web service diversion record handling.
 [14.5.1] Fix the Colorado HydroBase REST web service datastore
    handling of diversion records: [14.5.1] Fix the Colorado HydroBase REST web service datastore
    handling of diversion records:- Previously, some monthly values were read as missing values, with results being different than time series read from a HydroBase database, which contained zeroes instead of missing. This has been fixed, as described below.
- Monthly diversion records from web services now reflect application of the carry forward fill algorithm. Missing months where the previous month's last daily record was a zero are set to zero and carried forward in the irrigation year. The results should match monthly records red from HydroBase. Implementing this logic requires reading the daily time series so retrieving monthly data is slower than before.
- The period for time series is internally set to full irrigation years to support the carry forward algorithm. After filling, the period is set to the requested period, if provided by read commands.
- The carry forward fill logic is the default for web service diversion record time series identifiers
    and the ReadColoradoHydroBaseRestcommand.
 
 [14.5.1] Update the [14.5.1] Update the- ReadHydroBasecommand:- The period for time series is internally set to full irrigation years to support the carry forward algorithm. After filling, the period is set to the requested period, if provided by read commands.
- Fix so that if filling with diversion comments and the fill flag is defaulted, it sets the flag in the result. Previously it was not setting the flag in output if for default parameters.
 
 [14.5.1] Fix the
    Colorado HydroBase REST web service datastore query filters: [14.5.1] Fix the
    Colorado HydroBase REST web service datastore query filters:- Climate stations can now be filtered by station name and site identifier.
- Surface water stations can now be filtered by station abbreviation.
 
 [14.5.1] The processor property [14.5.1] The processor property- UserHomeDirhas been changed to have the value of the home directory. Previously it ended in- \.tstoolon Windows and- /.tstoolon Linux, which is not consistent with the user's home folder. The new property- UserTstoolDirhas been added to include the trailing- .tstool.
 [14.5.1] The [14.5.1] The- ReadTableFromJSONcommand has been updated:- Empty strings in the JSON that are used as input for non-string output result in null values.
- Add the Appendparameter to allow appending output to an existing table.
- Add the ObjectIDparameter to allow reading JSON from an object.
- Add the RowCountPropertyparameter to allow checking the size of the output table.
 
 [14.5.1] The [14.5.1] The- WebGetcommand has been updated:- Add the Cookiesparameter.
- Add tabs to the command editor to group related parameters.
 
- Add the 
 [14.5.1] Add the [14.5.1] Add the- SetPropertyFromObjectcommand to set a processor property from an object property.
Changes in Version 14.5.0
Feature release to improve cloud and JSON object integration and various fixes.
 [14.5.0] The Results / Objects output has been fixed to only show the object JSON. 
    Previously the internal TSTool object was shown, which wraps the original object and adds The JSON object identifier used by TSTool. [14.5.0] The Results / Objects output has been fixed to only show the object JSON. 
    Previously the internal TSTool object was shown, which wraps the original object and adds The JSON object identifier used by TSTool.
 [14.5.0] The TSTool main user interface code has been made more modular
    to split out code for different data sources to improve maintainability.
    The class names shown in the log file may have changed. [14.5.0] The TSTool main user interface code has been made more modular
    to split out code for different data sources to improve maintainability.
    The class names shown in the log file may have changed.
 [14.5.0] The syntax for specifying a date/time, for example in
    the [14.5.0] The syntax for specifying a date/time, for example in
    the- SetInputPeriodcommand now supports rounding to week using the following syntax, which is useful to automate weekly scheduled workflows:- CurrentToDay.RoundToDayOfWeek(Wednesday).RoundDirection(>)
 [14.5.0] The [14.5.0] The- ManipulateTableStringcommand has been updated:- The substring operator now supports negative positions to extract substrings at the end of a string.
- The substring operator will now extract partial strings if the starting position is within the string but the ending position is past the end of the string.
 
 [14.5.0] The [14.5.0] The- WriteTableToMarkdowncommand has been updated:- Columns values that start with httpare automatically formatted as links.
- The LinkColumnscommand parameter has been added to specify the link text (default is to show the link URL).
 
- Columns values that start with 
 [14.5.0] Update the documentation organization: [14.5.0] Update the documentation organization:- Add a "Processing" chapter with pages for each group of commands that process various data. This provides background and help with training. Examples will be added over time. Previous content for spatial data and spreadsheet processing have been moved to sections of this chapter and the documentation may be further reorganized once initial documentation content is added.
- Add the Reference - Plugins documentation to list known TSTool plugins.
 
 [14.5.0] Add features to track command file versions and improve attribution and documentation,
    which helps with command file maintenance and collaboration: [14.5.0] Add features to track command file versions and improve attribution and documentation,
    which helps with command file maintenance and collaboration:- The # commentannotations now include@author,@version,@versionDate,@sourceUrl, and@docUrl.
- The Tools / Commands menu has been added with tools to check for updates to the command file and allow comparison of the current commands to the original source.
 
- The 
 [14.5.0] The [14.5.0] The- SetObjectPropertycommand has been added to set object property values.
Changes in Version 14.4.0
Feature release to improve cloud integration, fix HEC-DSS, add support for object data type, and various fixes.
 [14.4.0] The primary TSTool development environment is now Windows 11 using 64-bit Java 8. [14.4.0] The primary TSTool development environment is now Windows 11 using 64-bit Java 8.
 [14.4.0] Verify integration of the TSTool AWS Plugin
    from the Open Water Foundation in production workflows to publish datasets to the cloud. [14.4.0] Verify integration of the TSTool AWS Plugin
    from the Open Water Foundation in production workflows to publish datasets to the cloud.
 [14.4.0] Add general objects as a top-level data construct: [14.4.0] Add general objects as a top-level data construct:- Add a new Commands / Object Processing menu.
- Add a new Results / Objects tab for results.
 
 [14.4.0] Add new commands to process objects: [14.4.0] Add new commands to process objects:- NewObject- create a new object from JSON text or file
- FreeObject- free an object
- SetObjectPropertiesFromTable- set object properties from a table
- WriteObjectToJSON- write an object to a JSON file
 
 [14.4.0] Fix so that the [14.4.0] Fix so that the- TSTool.cfg- DiffProgramproperty handles a comma-separated list to allow for multiple candidate difference programs to be specified, and handle in the main program and the- CompareFilescommand. The default configuration file has been updated to handle multiple KDiff3 installation folders.
 [14.4.0] Fix the HEC-DSS features: [14.4.0] Fix the HEC-DSS features:- ReadHecDssand the- WriteHecDsscommands and interactive browsing had been broken since TSTool was updated to 64-bit architecture.
- Update the ReadHecDsscommand to haveCloseAfterReadparameter to help with file locking.
 
 [14.4.0] Fix the [14.4.0] Fix the- CompareTablescommand to detect tables of different lengh (previously the number of rows in the first table controlled the comparison)
 [14.4.0] Update configuration and documentation to use [14.4.0] Update configuration and documentation to use- httpswhere possible.
 [14.4.0] The time series table view header now shows units in parentheses
    and minor formatting cleanup avoids headers ending in a comma. [14.4.0] The time series table view header now shows units in parentheses
    and minor formatting cleanup avoids headers ending in a comma.
 [14.4.0] Commands that provide a choice on time series interval now include
    precision on irregular time series (e.g., [14.4.0] Commands that provide a choice on time series interval now include
    precision on irregular time series (e.g.,- IrregSecond). This allows for better handling of date/time precision in workflows.
 [14.4.0] The [14.4.0] The- Cumulatecommand has been updated:- The default value for the ResetValueparameter (used withResetparameter) has been changed toDataValue. The previous value of0causes the first value in the new year to always be zero, even if a non-zero data value is present at that date/time, which causes a value to be ignored and the cumulative value to be shorted by the ignored value. This is more of an issue for monthly time series where 1 out of 12 values is ignored.
 
- The default value for the 
 [14.4.0] The [14.4.0] The- Ifcommand has been updated:- Added the FileExistsandFileDoesNotExistparameters to test whether a file exists.
- Added the ObjectExistsandObjectDoesNotExistparameters to test whether an object exists.
- Added the TableExistsandTableDoesNotExistparameters to test whether a table exists.
- Added the TSDoesNotExistparameter to test whether a table does not exist.
 
- Added the 
 [14.4.0] The [14.4.0] The- ReadDelimitedFilecommand has been updated to list additional data interval for irregular time series. The intervals include the precision that should be used for date/times, for example- IrregSecond.
 [14.4.0] The [14.4.0] The- ReadPropertiesFromFilecommand has been updated:- Added the Valuefile type, to allow reading a file's contents into a property, which is useful when manipulating text files, such as with theTextEditcommand.
 
- Added the 
 [14.4.0] Update the [14.4.0] Update the- WriteDelimitedFilecommand to have the- DataFlagColumnsparameter to optionally output data flag column(s)
Changes in Version 14.3.0
Feature release to improve automated testing, cloud integration, and reenable Microsoft Access support.
 [14.3.0] The
    Comment command has been updated: [14.3.0] The
    Comment command has been updated:- Added @enabledifannotation similar to@requirethat disables a command file test for automated testing when a requirement is not met.
- Fixed bug where @requirewas not being properly handled when checking the HydroBase version, when run in a test suite.
 
- Added 
 [14.3.0] Fix the [14.3.0] Fix the- ColoradoHydroBaseRestdatastore:- Null date/time objects, for example in the porStartandporEndfor data types were causing theHydroBaseWebdatastore to not initialize when TSTool starts. This may be due to changes in how the State publishes data.
- Null date/times are now passed through as nulls, which may cause problems later in processing.
 
- Null date/time objects, for example in the 
 [14.3.0] Fix to support Microsoft Access databases again for [14.3.0] Fix to support Microsoft Access databases again for- GenericDatabaseDatastore:- Direct use of ODBC data source names was dropped in Java 8 (TSTool 12).
- Implement the UcanAccess software with pure Java JDBC connection to Access instead.
- Add Access support in the OpenDataStorecommand and add theConnectionPropertiescommand parameter to allow additional connection priperties.
- Add the NewAccessDatabasecommand.
 
 [14.3.0] Fix the [14.3.0] Fix the- ProcessTSProductcommand to parse time series product file colors that use format- #ffffff.
 [14.3.0] Fix the [14.3.0] Fix the- ReadTableFromDelimitedFilecommand to determine floating point number column precision even if the values are quoted. The- DoubleColumnscommand parameter allow such values to be read as numbers, and precision is used for displays after reading.
 [14.3.0] Fix the [14.3.0] Fix the- WebGetcommand:- Handle URL with query values that have equal sign in the parameter value.
- Improve handling of supported HTTP methods.
 
 [14.3.0] Fix the [14.3.0] Fix the- WriteTableToGeoJSONcommand editor so that the- Appendparameter field does not overwrite other fields.
 [14.3.0] Add built-in processor properties: [14.3.0] Add built-in processor properties:- RunTimeMs- number of milliseconds for commands to run. This is useful for performance evaluation.
- WarningCount- number of warning messages from commands in the last run. This is useful for workflow success checks.
- FailureCount- number of failure messages from commands in the last run. This is useful for workflow success checks.
 
 [14.3.0] Update the [14.3.0] Update the- CompareFilescommand:- Allow the input file(s) to be specified with a URL, to compare web-hosted file(s).
- Add the WaitUntiland related parameters to allow repeated comparison of files until the condition of same or different files is met.
 
 [14.3.0] Update the [14.3.0] Update the- ReadDateValuecommand:- Add the IfNotFoundparameter to ignore reading if the file does not exist, which is useful for reading files during troubleshooting.
 
- Add the 
 [14.3.0] Update the [14.3.0] Update the- ReadNrcsAwdbcommand:- Allow ${Property}in state.
- Increase speed at startup when using properties.
 
- Allow 
 [14.3.0] Update the [14.3.0] Update the- RunCommandscommand:- Handle @enabledifannotations.
- Add the AppendOutputFilesparameter to append the command's output files to the main output file list.
- Add the WarningCountPropertyandFailureCountPropertyparameters to allow handling errors in the command file that is run.
 
- Handle 
 [14.3.0] Update the [14.3.0] Update the- TableMathcommand:- Add MaxandMinoperators.
- Change so that the precision of floating point output columns is the maximum of the input columns.
 
- Add 
 [14.3.0] Update the [14.3.0] Update the- WriteDateValuecommand:- The WriteDataFlagsparameter has been added to control whether data flags are written.
- The WriteSeparateFilesparameter has been added to control whether one or separate output files for each time series are written.
- The WriteHeaderCommentsandHeaderCommentsparameters have been added to control how output file header comments are written.
 
- The 
 [14.3.0] Update the [14.3.0] Update the- WriteDelimitedFilecommand:- The WriteSeparateFilesparameter has been added to control whether one or separate output files for each time series are written.
- The WriteHeaderCommentsandHeaderCommentsparameters have been added to control how output file header comments are written.
 
- The 
Changes in Version 14.2.2
Maintenance release to address issues found in the HydroBase REST web services datastore.
 [14.2.2] Fix issues identified while implementing the
    ColoradoHydroBaseRest datastore: [14.2.2] Fix issues identified while implementing the
    ColoradoHydroBaseRest datastore:- Tested with HydroBase 20200330 version.
- Fixed issue where HydroBase database SnowDepthdata type was returning-2147483648for missing values because the database changed from integer to floating number type.
 
 [14.2.2] Fix bug where View / Data Units resulted in an error. [14.2.2] Fix bug where View / Data Units resulted in an error.
Changes in Version 14.2.1
Maintenance release to disable real-time data in HydroBase database datastore, other cleanup for recent releases.
 [14.2.1] Remove real-time data in HydroBase datastore and input type since
    no longer supported in the current HydroBase approach and data are available in the
    ColoradoHydroBaseRest datastore.
    The [14.2.1] Remove real-time data in HydroBase datastore and input type since
    no longer supported in the current HydroBase approach and data are available in the
    ColoradoHydroBaseRest datastore.
    The- Irregularinterval (timestep) has been removed from the following data types, and the data type has also been removed if real-time interval was the only choice:- AdminFlow - AdminFlow(- Dayand- Monthremain)
- Hardware - Battery(real-time only)
- Climate - Precip(- Dayand- Monthremain)
- Climate - Temp(has real-time only)
- Reservoir - PoolElev(has real-time only)
- Reservoir - Release(has real-time only)
- Reservoir - Stage(has real-time only)
- Reservoir - Storage(has real-time only)
- Stream - WatTemp(has real-time only)
- Well - WellLevel(has multiple intervals but have been phasing out for years so remove)
- Well - WellLevelElev(has real-time only)
 
 [14.2.1] Fix the graphing tool to show mouse tracker when irregular
    time series do not have fully-overlapping periods.
    Also add the tracker option NearestWithId to show the time series identifier on the tracker,
    which is useful when many time series are shown. [14.2.1] Fix the graphing tool to show mouse tracker when irregular
    time series do not have fully-overlapping periods.
    Also add the tracker option NearestWithId to show the time series identifier on the tracker,
    which is useful when many time series are shown.
 [14.2.1] Fix bug where sub-second precision dates were truncating when read
    if the fractional digits did not match a handled interval.
    For example, 4 digits would truncate to milliseconds.
    The software will now use the next highest precision if the number of digits being parsed is
    not an exact match for hundredths, milli, micro, or nanoseconds,
    and additional zeros will be added at the end. [14.2.1] Fix bug where sub-second precision dates were truncating when read
    if the fractional digits did not match a handled interval.
    For example, 4 digits would truncate to milliseconds.
    The software will now use the next highest precision if the number of digits being parsed is
    not an exact match for hundredths, milli, micro, or nanoseconds,
    and additional zeros will be added at the end.
 [14.2.1] Fix the [14.2.1] Fix the- Cumulatecommand so an error is not shown for the- Resetparameter if not specified (the parameter is optional).
 [14.2.1] Update the [14.2.1] Update the- WebGetcommand to have- HttpHeadersparameter to pass HTTP header properties with the request.
Changes in Version 14.2.0
Feature release to add HydroBase REST web services for historical climate and surface water stations, and add support for sub-second time.
 [14.2.0] The ColoradoHydroBaseRest
    web service has new functionality: [14.2.0] The ColoradoHydroBaseRest
    web service has new functionality:- Historical climate station time series can now be read.
- Historical surface water station time series (streamflow) can now be read.
- The ReadColoradoHydroBaseRestcommand has been updated to read the above historical time series.
- Time series identifier commands for the datastore read the above historical time series.
- The datastore documentation has been significantly updated.
 
 [14.2.0] The Agriculture/NASS [14.2.0] The Agriculture/NASS- CropAreadata type was listed for HydroBase; however, time series that were listed could not be transferred to the command list. This has been fixed.
 [14.2.0] Code for DIADvisor input type has been removed.
    The software features had not been used for many years and were unsupported. [14.2.0] Code for DIADvisor input type has been removed.
    The software features had not been used for many years and were unsupported.
 [14.2.0] Internal date/time objects have been updated to support sub-second precision, as follows: [14.2.0] Internal date/time objects have been updated to support sub-second precision, as follows:- Nanonsecond, microsecond, millisend, and hundredths of second fractional seconds are supported and are handled automatically during date/time parsing and formatting. Previously only hundredths of seconds was supported.
- Begin phasing in precision for irregular time series time interval.
    For example IrregSecondis used for irregular time series with date/times that use precision to second. High precision time is handled, for example to track exact measurement times for real-time data values.
- Several commands listed below have been updated to utilize the new functionality and additional features will be updated over time.
 
 [14.2.0] Time series now have a built-in data precision property that is used for output if specified,
    which will override the precision determined from data units.
    Use the Results / Time Series Properties menu to view a time series' precision. [14.2.0] Time series now have a built-in data precision property that is used for output if specified,
    which will override the precision determined from data units.
    Use the Results / Time Series Properties menu to view a time series' precision.
 [14.2.0] Update the [14.2.0] Update the- CreateTimeSeriesEventTablecommand to support analysis of time series data to determine events.
 [14.2.0] Update the [14.2.0] Update the- FormatTableDateTimecommand to allow incremental time offset to use floating-point number with fractional intervals. For example, fractional minutes can be processed.
 [14.2.0] Update the [14.2.0] Update the- TableToTimeSeriescommand to support sub-second precision for irregular interval time series. The- IrregularIntervalPrecisionnow accepts- HSecond,- Millisecond,- Microsecond, and- Nanosecond.
Changes in Version 14.1.1
Maintenance release to fix features used in automated testing.
 [14.1.1] Handling of the [14.1.1] Handling of the- --datastore-substitutebehavior was not consistent across multiple testing environments. Fixes were implemented and documentation was updated. Fix the View / Datastores table to more clearly indicate when a datastore is involved in a substitute.
Changes in Version 14.1.0
Feature release to format table as Markdown and improve file handling.
 [14.1.0] Add the [14.1.0] Add the- SetTableColumnPropertiescommand to set table column properties, used when formatting output.
 [14.1.0] Add the [14.1.0] Add the- WriteTableToMarkdowncommand to write a table to a Markdown format file.
 [14.1.0] Update the [14.1.0] Update the- AppendFilecommand:- The output file can be the same as an input file (input file will be overwritten).
- Input files can now be specified as a comma-separated-value list of filenames or patterns.
- Filename pattern handling has been enhanced.
- The AppendTextparameter has been added to append text to a file.
- Increase flexibility of wildcard (glob) pattern matching.
 
 [14.1.0] Update the [14.1.0] Update the- StartRegressionTestResultsReportcommand to output a report with- nonumin the name. The file is the same as the normal output but with test numbers removed, which is useful for comparing one test suite output to another.
 [14.1.0] Update the [14.1.0] Update the- Cumulatecommand- Resetparameter to allow- ${Property}notation.
 [14.1.0] Update the [14.1.0] Update the- FormatFilecommand to allow overwriting the input file.
Changes in Version 14.0.6
Maintenance release for to improve @require functionality.
 [14.0.6] Updated the [14.0.6] Updated the- @requireComment command:- Improve the @requiresoftware design to allow datastores more flexibility in implementing requirements.
- Add the datastore type to @requirecommand status messages to improve troubleshooting.
 
- Improve the 
Changes in Version 14.0.5
Maintenance release for testing and to update the log4j library.
 [14.0.5] Update the [14.0.5] Update the- Log4Jlibrary to version 2.17.1 for security patches.
 [14.0.5] Updated the [14.0.5] Updated the- FormatStringPropertycommand:- Add the IntegerFormat,Endianness,Delimiter, andNumBytesparameters to format integer properties as hex code string, which is useful for automated testing.
 
- Add the 
Changes in Version 14.0.4
Maintenance release to update training materials and respond to "Log4Shell" vulnerability.
 [14.0.4] Update the [14.0.4] Update the- log4jlibrary to version 2.17.0 in response to the "Log4Shell" security vulnerability. See the Apache Log4J Vulnerability Guidance documentation.
 [14.0.4] Fix a bug introduced in the previous release that broke transfer of time series
    identifiers from the time series list to TSID commands.
    This bug was due to new features that handle datastore aliases used in software testing.
    The bug mainly impacts the case where the HydroBase input type is used with TSID commands.
    If version 14.0.3 is used, the work-around is to configure a HydroBase datastore named [14.0.4] Fix a bug introduced in the previous release that broke transfer of time series
    identifiers from the time series list to TSID commands.
    This bug was due to new features that handle datastore aliases used in software testing.
    The bug mainly impacts the case where the HydroBase input type is used with TSID commands.
    If version 14.0.3 is used, the work-around is to configure a HydroBase datastore named- HydroBase.
 [14.0.4] Training materials that are distributed in the [14.0.4] Training materials that are distributed in the- doc/trainingfolder have been updated to be compatible with the latest software features. Additional training presentations will be added in the future as training materials are updated. The Training documentation now links to online training materials.
 [14.0.4] Updated the [14.0.4] Updated the- WebGetcommand to handle redirects.
Changes in Version 14.0.3
Maintenance release for Reclamation Linux version.
 [14.0.3] Updated the [14.0.3] Updated the- CompareTimeSeriescommand to have- AllowedDiffparameter
 [14.0.3] Minor changes to ReclamationHDB commands based on testing. [14.0.3] Minor changes to ReclamationHDB commands based on testing.
Changes in Version 14.0.2
Maintenance release with changes to address issues and features needed for automated testing.
 [14.0.2] Fix bug related to substitute datastore features: [14.0.2] Fix bug related to substitute datastore features:- was causing an exception editing commands that operate on datastores, fixed in the following commands:
- substitute datastore name was not being used to form time series identifiers in the man user interface - the selected datastore (which may be a substitute) is now used to create TSID commands
 
 [14.0.2] Fix the [14.0.2] Fix the- TableToTimeSeriescommand so that irregular interval data outside the requested period are not set in the time series.
 [14.0.2] Change the [14.0.2] Change the- ReadTableFromDelimitedFilecommand- IncludeTextand- ExcludeTextparameters to automatically convert- *wildcard to Java- .*to simplify wildcard use and be consistent with other commands.
 [14.0.2] Update the [14.0.2] Update the- ReadTableFromDelimitedFilecommand:- allow *in the filename
- fix the HeaderLinesparameter to work
 
- allow 
 [14.0.2] Update commands to improve handling database functions and procedures: [14.0.2] Update commands to improve handling database functions and procedures:
 [14.0.2] Add [14.0.2] Add- --ui-titlemod=TitleModTSTool program parameter to specify a string to use in the TSTool main UI title bar, to specifically identify the TSTool session .
Changes in Version 14.0.1
Maintenance release with minor changes to address issues and features needed for automated testing.
 [14.0.1] Fix command processing so that if a command has an error,
    the command's output files will be listed in the Results / Output Files.
    Previously, a command with an error would not list its output files. [14.0.1] Fix command processing so that if a command has an error,
    the command's output files will be listed in the Results / Output Files.
    Previously, a command with an error would not list its output files.
 [14.0.1] Fix problem with command documentation not finding latest documentation
    if versioned documentation does not exist and update documentation URLs to [14.0.1] Fix problem with command documentation not finding latest documentation
    if versioned documentation does not exist and update documentation URLs to- https.
 [14.0.1] Fix the [14.0.1] Fix the- CompareTimeSeriescommand to properly handle comparing two files or ensembles.
 [14.0.1] Fix bug where command with [14.0.1] Fix bug where command with- #@expectedStatuscomment that, when run returned a different status, was not resulting in a failure indication in the user interface.
 [14.0.1] Add a Cancel button to the Tools / Diagnostics dialog
    and clarify the tooltips on buttons related to setting diagnostics properties. [14.0.1] Add a Cancel button to the Tools / Diagnostics dialog
    and clarify the tooltips on buttons related to setting diagnostics properties.
 [14.0.1] Add [14.0.1] Add- TSTool.cfgconfiguration properties- DiffProgram.Windowsand- DiffProgram.Linuxto allow configuring visual difference program for each environment without having to change the single- DiffProgramconfiguration property, and default to KDiff3 as an example of typical use.
 [14.0.1] Update the following commands to list datastores opened with [14.0.1] Update the following commands to list datastores opened with- OpenDataStorecommand, used in automated testing (previously only listed datastores that are opened at startup, which limited the ability to edit command parameters):
 [14.0.1] Message dialogs now show text that can be highlighted and copied. [14.0.1] Message dialogs now show text that can be highlighted and copied.
 [14.0.1] Update the [14.0.1] Update the- CreateRegressionTestCommandFilecommand:- Improve how test suites are handled with IncludeTestSuiteandExcludeTestSuite. The behavior is now intuitive.
- Add support for @os linux, which is equivalent to@os UNIX.
- Allow the SearchFolderparameter to list more than one folder
 
- Improve how test suites are handled with 
 [14.0.1] Update the [14.0.1] Update the- FormatTableDateTimecommand to support seconds for- IncrementBaseUnitparameter.
 [14.0.1] Update the [14.0.1] Update the- Messagecommand to have- PromptActionsparameter, which enables interactive prompts to confirm message in command workflows, for example to prompt for confirmation for destructive actions such as removing files and folders.
 [14.0.1] Update the [14.0.1] Update the- ReadStateModBcommand to have- OutputVersionparameter, which allows converting old data files to current format.
 [14.0.1] Update the [14.0.1] Update the- ReadTableFromDataStorecommand:- allow newline character in Sqlparameter to format multi-line SQL
- default floating point column precision to 6 digits for SQLite databases
- add OutputPropertiesparameter to set output properties when a single row is returned
 
- allow newline character in 
 [14.0.1] Update the [14.0.1] Update the- ReadTableFromDelimitedFilecommand to accept space for- Delimiterparameter, using- \snotation.
 [14.0.1] Update the [14.0.1] Update the- RunCommandscommand to have- StdoutPropertyparameter.
 [14.0.1] Fix the [14.0.1] Fix the- Waitcommand to properly handle small wait time specified as decimal fraction of second.
 [14.0.1] Update the [14.0.1] Update the- WriteTableToDelimitedFilecommand to have- IncludeColumnsand- ExcludeColumnsparameters.
 [14.0.1] Add [14.0.1] Add- --datastore-substitute=datastore,substituteTSTool program parameter to specify substitute datastore name, useful for automated testing.
Changes in Version 14.0.0
This is the first 64-bit Java release. See also many new features that were added in the last 13.x releases.
 [14.0.0] This is the first 64-bit release with new major version number 14: [14.0.0] This is the first 64-bit release with new major version number 14:- Installing version 14 will automatically copy a user's .tstoolconfiguration files for previous version to this version.
- The HEC-DSS features are disabled. Additional resources are needed to update the software to use 64-bit libraries for HEC-DSS.
- This 64-bit version is constrained only by available memory on the computer and can be configured to use more memory for large datasets, if necessary. This is an improvement over the 32-bit version, which was constrained to approximately 1.2 GB of memory use.
 
- Installing version 14 will automatically copy a user's 
 [14.0.0] Enhance the raster graph: [14.0.0] Enhance the raster graph:- The ProcessRasterGraphcommandTSProductFileandOutputFileparameters can now be specified using${Property}syntax.
- Time series product file now accepts a DatapropertySymbolTablePath, which specifies the path to a symbol table, which describes the colors for the raster graph. If not specified, the raster graph uses deciles, after rounding the minimum and maximum values.
- The DatapropertyRasterGraphLegendPositionhas been added, and currently always defaults toRight. A color legend is always shown.
- An optional mouse tracker can be enabled in the graph window.
- Improved the mouse position information to include the symbol table range, consistent with the symbol table for colors.
- Improve the handling of colors.
- Attempting to zoom cased errors. Zoom is now disabled.
 
- The 
 [14.0.0] Update the [14.0.0] Update the- CompareTimeSeriescommand:- The WarnIfDifferentandWarnIfSameparameters have been changed toIfDifferentandIfSameto provide more flexibility, similar to other commands.
- The CreateDiffTSparameter has been updated to provideIfDifferentoption, which will only create the difference time series for cases where a difference is detected. This significantly reduces the number of output time series and increases processing speed.
- Add DifferenceFileparameter to indicate a file listing the difference counts for all time series. The output was previously always saved in the log file, which led to large log files.
- Add SummaryFileparameter to indicate a file listing the summary of time series with differences. Time series without differences are not included in the summary. The output was previously always saved in the log file.
- Add MatchAliasparameter to match time series alias.
- Improve error checks and warnings when a time series cannot be matched.
- Improve performance.
 
- The 
 [14.0.0] Update the [14.0.0] Update the- ReadStateCUBcommand:- Added the OutputVersionparameter to allow old binary files to be translated to latest format, necessary to minimize differences when testing.
 
- Added the 
 [14.0.0] Update the [14.0.0] Update the- ReadStateModBcommand:- Ignores parameter with name NA, which are placeholders that don't have data.
- Handle the case where b44(reservoir) file contains no reservoir stations.
- Add IfFileNotFoundparameter to provide more control over error handling.
 
- Ignores parameter with name 
 [14.0.0] Add the [14.0.0] Add the- --java-xmxparameter to the Linux- tstoolshell script to set the maximum computer memory to use for TSTool Java Runtime Environment.
 [14.0.0] Added the [14.0.0] Added the- --space-replacementTSTool command line parameter to help with commands lines that include spaces in parameters.