
Version 1.9.5 - 2022-2-23
===========================
*Attempt encoding detection for non-BOM UTF-8
*BUG:448353,450225 Rewrite EOL detection
    -fixes speed regression.
    -Better EOL detection decoding handled by Qt

Version 1.9.3 - 2021-7-15
===========================
*Fix windows style cr/lf line ending handling
*Fix race on exit if qt sends QApplication::focusChanged during teardown.

Version 1.9.3 - 2021-7-15
===========================
*Fix multiple regressions in file comparison.
*Fix trailing EOL stripped.
*Fix arbitrary line insertion during merge.
    --Appears to pre-date 1.9 refactoring but was not reported on 1.8 branch

Version 1.9.2 - 2021-5-13
===========================
*Hotfix for Bug 436958

Version 1.9 - 2021-4-28
===========================
*Rewrite of SourceData::FileData::preprocess now only loops through file contents once.
*Major rework of event handling
  -Move away from event filters where feasible, drop code for events now handled by qt.
  -decentralize handlers
*take advantage of Qt and boost signal/slot pattern to avoid needless nullptr checks.
  -decentralize cut/paste handling
*Introduce LineRef wrapper class
*Add enum types and use existing ones.
  -improves readability of code.
*split out doDirectoryCompare from improveFilenames
  -Principle of least surprise
*Stop mis-using c style [] pointer access there is no documented reason to assume QVector<T> has a
  c-style memory layout. Much less that this will remain so.

Not even going to try to list everything here.

See git history for complete log.
