#                                                    #
#  Exodus 4.2.1                                      #
#  2005-2020, Laurel Bridge Software                #
#                                                    #
#  Version History                                   #
#                                                    #

Changes in 4.2.1 (2021-02-23):

 - Main exam and query tables now remember current scroll position and selected exams and queries during status change events.
 - View History dialog provides support for copying UID and other values to clipboard, and navigation using home, end, and arrow keys. New View Containing Segments dialog provides step-thru access to containing segments for any number of selected exams and queries and support for copying values to clipboard.
 - Improved support for Series Level migration queries.
 - Main exam table has improved column sorting support.

Changes in 4.2.0 (2020-08-12):

 - The Column List Segment Column Separator allows: Comma, Tab, Pipe, and Exclamation.
 - Duplicate data in the Column List Input File are skipped.  A log message is written when duplicates are found in the input file.
 - Updated to AppFramework 2.0.29 and AppFramework.WinForms 1.0.8.  This includes DCF 3.4.34, which adds support for the .80 and .81 transfer syntaxes.

Changes in 4.1.2 (2020-05-22):

 - Fixed an issue when renaming a "Column List" segment.
 - Fixed an issue when copying rows with custom tags.
 - Improvements to the "Drop Image" filter action.

Changes in 4.1.1 (2020-03-20):

 - Improvements when issuing queries from the context menu of the Queries view.
 - Improved trimming of hostnames/IP addresses that start or end with whitespace.

Changes in 4.1.0 (2020-01-31):

 - Numerous usability improvements.
 - Numerous performance improvements.
 - Updated Exodus to target .NET Framework 4.8; therefore .NET Framework 4.8 is a required prerequisite.
 - Added support for SQL Server 2019.
 - Updated to DCF 3.4.30.

Changes in 4.0.23 (2019-04-25):

 - Improved the database performance for querying by accession number.
 - Fixed a potential race condition when manually updating exam status while running queries in the background.
 - Fixed a 32-bit integer overflow issue that was causing occasional negative query time remaining values.
 - Improved the resiliency of the file import scan database operations.

Changes in 4.0.22 (2019-03-19):

 - Date/time values are now suppressed in accession number queries, regardless of the partition mode setting.
 - Fixed null reference that could occur when setting exam statuses while moves/validates are in progress.

Changes in 4.0.21 (2019-02-26):

 - Improved the performance of the selected exam context menu operations (Set Status, Add To Segment, Copy=>Rows) for very large exam record sets. Also added new logging level (VeryHigh) to control SQL command logging.
 - Added a segment context menu option for generating a segment from a column list filter.
 - Added support for a new MoveFailures exam column, which can be used for filtering/selection.
 - Added a session context menu advanced option for reverting session settings back to the previously-saved values.
 - Improved the performance of the selected exam context menu operation Save [To File] for very large exam record sets. Also added support for choosing which columns to save, whether or not to include a header row, and which column separator to use.

Changes in 4.0.20 (2019-01-30):

 - Allow the overriding of mismatch errors on query responses. (This setting affects validation queries, as well.)
 - Fix upgrade logic for version 4.0.16 and newer

Changes in 4.0.19 (2019-01-23):

 - Triggers can now pause or stop a different thread queue pool than the one that tripped the trigger.
 - Added support for a new "View Containing Segments..." context menu item for both queries and exams.
 - Queries which produce no results are now marked with a QueryWarningNoResults error code.
 - Fixed a view filter bug where the operator was not being set correctly when using the default date/time.
 - The Exodus UI now indicates when one of the thread queue pools is paused or stopped.
 - Exodus now logs when a thread queue pool is paused or stopped, as long as logging is not turned off.

Changes in 4.0.18 (2019-01-04):

 - ColumnList segment now skips empty UIDs, Patient IDs, or Accession Numbers.
 - Fixed an issue where renaming a session could fail if the Exodus user does not have the correct SQL Server permissions.
 - Fixed an issue with validation options not upgrading correctly.
 - Improved differentiation of query and move error codes.

Changes in 4.0.17 (2018-12-19):

 - File-based migrations now automatically generate an "All Exams" segment, so you don't have to guess how far back to query.
 - The Rename DB operation now checks the existence of the DB files in the correct location prior to renaming (to avoid leaving the DB in an inoperable state).
 - Fixed a bug with cloning validation options, which was causing validation options to revert to default when editing.
 - Added new segment type, ColumnListSegment, capable of matching a selected column from a file as Study Instance UID, Accession Number, or Patient ID for study level sessions, and Series Instance UID for series level sessions.

Changes in 4.0.16 (2018-12-06):

 - Now allowing per validation level DIMSE Command filters.
 - Error codes displayed in the exam viewer will be retained until there is a new error.
 - Validation levels can reuse results from a previous DICOM query to reduce the number of DICOM C-Finds being issued when doing Validation with multiple levels.
 - History viewer buttons now enable/disable correctly.
 - Query/Retrieve audit logging can optionally be enabled.

Changes in 4.0.15 (2018-11-20):

 - The last 30 days of daily reports are now persisted to a reports folder on the filesystem.
 - Added the ability to record additional failure status information in each query record.
 - Added the ability to record additional failure status information in each exam record.
 - Fixed an issue where Exodus would crash if running but not configured.
 - Exodus now requires .NET 4.7.2 to be installed.

Changes in 4.0.14 (2018-11-13):

 - Added an additional prequalification segment to show unique Study Descriptions if the Study Description DICOM tag is included in the list of QueryTags.
 - Exodus will no longer create dle.tmp files when routing DICOM data sets with large non-pixel data elements.

Changes in 4.0.13 (2018-11-09):

 - Added TLS connection support for Q/R, Store, and MWL queries.
 - Added support for DICOM audit trail logging.
 - List segment creation will no longer force re-query of previously discovered exams.

Changes in 4.0.12 (2018-10-23):

 - Install VC 2017 x64 runtime as part of Exodus install.
 - Updated User Manual FAQ on using VC++ 2017 runtime.
 - Include VC++ 2017 redistributable as part of installer.
 - Upgrade DICOM library to DCF 3.4.20c

Changes in 4.0.11 (2018-10-01):

 - The new DCF 3.4.18c release updated the PerformPreOutputHeaderFixups in DicomTSCodec to correctly set the Photometric Interpretation to the decoded photometric (normally RGB or YBR_FULL) when transcoding from an encapsulated to an unencapsulated transfer syntax.  This change only affects datasets containing Pixel Data (7FE0,0010) where Samples Per Pixel (0028,0002) is greater than 1, and only for output transfer syntaxes of ILE (1.2.840.10008.1.2), ELE (1.2.840.10008.1.2.1) and EBE (1.2.840.10008.1.2.2).
 - Fixed a starvation issue related to Sessions with multiple priors segments containing the same worklist priors poll rate.
 - Fixed DICOM logging for Priors Segment query.

Changes in 4.0.10 (2018-09-14):

 - Fixed an issue where running an anonymous segment and adding exams to a segment could cause Exodus to start running all segments unexpectedly.
 - Fixed an issue exporting very large sessions.
 - Upgraded to AppFramework 2.0.10 and DCF 3.4.14.  DCF dlls are now Authenticode signed.

Changes in 4.0.9 (2018-04-27):

 - Updated user manual with information about SOT process.
 - Exodus.exe is now Authenticode-signed with the publisher "Laurel Bridge Software, Inc.".
 - Multiple exam histories can now be selected and navigated via a single dialog.
 - Added support for multiple query threads.  This is helpful when using a list segment, and it is desirable to query for multiple UIDs at the same time.
 - Updated icons on the license dialogs to the new Laurel Bridge logo.

Changes in 4.0.8 (2018-03-23):

 - Set Read and Write PDU timeouts to match DIMSE timeouts in DICOM Querier and DICOM Mover.
 - Do not send extended negotiation items in Hierarchical mode.

Changes in 4.0.7 (2018-02-28):

 - Increased the max move threads and validate threads to 255.
 - Fixed an issue with role selection items on the switch component.

Changes in 4.0.6 (2018-01-17):

 - Move Threads and Validate Threads now have a max of 30.
 - General performance improvements to Exodus GUI.
 - Exam Viewer columns can no longer be auto sized.
 - Fixed an issue where Query View Filters on the Identifier column did not work for UID identifiers.
 - Upgraded DICOM library to DCF 3.4.12.
 - List Segment queries will not perform by-the-hour queries.
 - DCF message NIO2150 will now be optionally logged when a new connection is made to the Switch Router.

Changes in 4.0.5 (2017-12-11):

 - Fixed an issue where Explicit Big Endian was no longer in the list of transfer syntaxes available to the Switch component.
 - Fixed issue where time delay when running in Rated mode was calculated wrong.

Changes in 4.0.4 (2017-10-27):

 - Product Serial Number will now appear in subject line of alert emails.
 - Allow use of custom data dictionary
 - Improved the logging of custom execute filter log messages in the Switch component to be more consistent.

Changes in 4.0.3 (2017-10-19):

 - Fixed issue where updating exams status through the GUI could crash Exodus on large migrations.
 - Fix issue with reported remote IP address in Switch component log messages.
 - cleanups to some error messages

Changes in 4.0.2 (2017-09-28):

 - Fixed an issue where the mapping list filter failure log did not get entries written to it when the mapping-list-matching-value contained commas.
 - Decreased memory overhead when doing a file import migration by never loading DICOM objects pixel data into memory unless it needs transcoding.

Changes in 4.0.1 (2017-08-31):

 - Upgrade to DCF 3.4.10
 - support Specific character set for File Import Migrations
 - Fixed ability to do the 'Fetch' command

Changes in 4.0.0 (2017-08-25):

 - Custom Execute Filters must be upgraded to work the DCF 3.4.x DICOM library.
 - Exodus requires .NET 4.5 as a prerequisite
 - Exodus requires a 64-bit Windows OS and now runs as a 64-bit process