Skip to content

release_2.5.0

Choose a tag to compare

@drpetersonfernandes drpetersonfernandes released this 08 Jan 13:54
· 62 commits to master since this release
  • Image Processing: Replaced GDI+ with Magick.NET in ImageLoader.cs and ImageProcessor.cs for robust loading/saving, auto-orientation, error correction, and reduced memory usage. Added configurable retries/delays via SettingsManager.
  • Cancellation & Async Handling: Overhauled LstMissingImages_SelectionChanged in MainWindow.xaml.cs with proper semaphore usage, early cancellation, Task.Yield() for UI responsiveness, and HashSet for efficient ROM deduplication. Improved missing files scan with exception resilience.
  • Error Management: Enhanced logging with detailed contexts. Added lazy NullAudioService fallback in App.xaml.cs and silent WMP handling in AudioService.cs.
  • Settings Enhancements: SettingsManager.cs now includes new properties (MaxImagesToLoad, ImageLoaderMaxRetries/Delay, ApiTimeoutSeconds), value clamping, thread-safe saving (lock), and XML persistence.
  • MAME Loading: Lazy caching in MameManager.cs; throws FileNotFoundException for better handling.
  • Similarity Search: Capped parallelism (MaxDegreeOfParallelism=8), uses settings for image limits in SimilarityCalculator.cs.
  • UI/UX: Consolidated folder validation; cleaned XAML design-time data; improved Dispose() with cancellation wait.
  • Cleanup: Removed redundant code (e.g., _currentFindTask, legacy fallbacks).