1.3.6138

The Real Alpha

The last three weeks have been very productive. Most of the work went into performance improvements: startup time, memory usage during startup and runtime, CPU and GPU usage during search, and overall configuration processing efficiency have all been improved. In some areas, performance is up by several dozen percent.

Just as importantly, several new subsystems were added that will help me identify and fix problem areas more effectively going forward.

At the moment, there are still two noticeable issues: startup memory usage (usually around 1 to 2 GB, though it drops to about 500 MB after some time) and overall UI responsiveness. The causes of both are understood, but there is no quick and painless fix, so we will be addressing them gradually over the next six months.

New Input Type — Grandma Input

Nothing special, just another input method. It is only useful if the other methods are not working for some reason.

Alpha Testing for New Subsystems

Three new options have been added in Settings: Property Caching, Filesystem Storage, and File References. All of them are intended to improve performance in different ways.

These options are still being tested, so if you decide to enable them, be prepared for possible issues. If you prefer, you can also wait until these systems are officially released and enabled by default. Your participation and feedback would be very valuable.

Bugfixes and Improvements

  • Fixed a rare crash during import (ReplaceId NullReferenceException).
  • [UI] The secondary panel with logs and variables has been completely rewritten.
  • [UI] All windows and overlays now open faster.
  • [UI] The import dialog can now also perform synchronization.
  • [Synchronization] Fixed a bug that caused the app to crash if synchronization was added inside a folder that was already being synchronized.
  • [Scripts] Many improvements were made to the scripting subsystem — it now runs faster and uses memory more efficiently.
  • [Scripts] The ImageSharp library has been added to the SDK. In some cases it is more convenient than OpenCV, and future APIs will likely be built around it.
  • Improved the precision of all waits and delays; they are now accurate within 1 ms.