Skip to content

release_2.9.0

Choose a tag to compare

@drpetersonfernandes drpetersonfernandes released this 25 May 04:20
· 25 commits to master since this release

Bug Fixes

  • Fixed similarity calculation for empty strings (both Levenshtein and Jaro-Winkler now return 100% instead of NaN or 0)
  • Handle InvalidWmpVersionException in audio service to prevent crashes on systems with incompatible Windows Media Player versions
  • Removed redundant error logging when right-click context menu is created without a selected image path
  • Fixed error handling during application shutdown to catch and ignore disposal exceptions gracefully

Update Check Refactoring

  • Added UpdateCheckOrchestrator service as a proper orchestration layer for update checking, separating concerns between API calls and notification display
  • Added UpdateNotificationInfo record for cleaner update notification flow
  • Enhanced error logging in GitHubReleaseService (network errors, timeouts, and JSON parse errors are now properly logged)

UI Improvements

  • File extensions in the Settings window are now automatically sorted alphabetically when added
  • Added tooltips to progress indicators, loading overlays, empty state messages, and the missing covers label for better accessibility
  • Added visual border styling to the extensions list in Settings

Enhanced Error Handling & Logging

  • BugReportModel.FromException now safely handles null exceptions
  • Improved robustness of the image save workflow with retry logic for directory write permission tests
  • Added a fatal error dialog when the application fails during startup, preventing silent crashes
  • Updated internal log method naming for consistency

Dependency Updates

  • coverlet.collector: 10.0.0 → 10.0.1
  • FluentAssertions: 8.9.0 → 8.10.0
  • Magick.NET-Q16-AnyCPU: 14.13.0 → 14.13.1
  • MessagePack: 3.1.4 → 3.1.6
  • Microsoft.Extensions.DependencyInjection: 10.0.7 → 10.0.8
  • Microsoft.Extensions.DependencyInjection.Abstractions: 10.0.7 → 10.0.8

Test Coverage

  • Added comprehensive unit tests for ButtonFactory, UpdateCheckOrchestrator, GitHubReleaseResponse, UpdateCheckResult, SettingsWindow, and NullAudioService
  • Expanded test coverage for edge cases in SettingsManager, MameDataService, ImageProcessor, ImageLoader, NgramIndex, SimilarityCalculator, and ErrorLogger

Full Changelog: release_2.8.0...release_2.9.0