Skip to content

release_2.6.0

Choose a tag to compare

@drpetersonfernandes drpetersonfernandes released this 21 Apr 21:05
· 31 commits to master since this release

🔍 Duplicate ROM Detection

  • Automatically identifies duplicate ROM files (same hash, different filenames)
  • New Duplicate Files Window displays duplicate groups with SHA256 hashes
  • Duplicate files are moved to _duplicate folder during validation
  • Added "Duplicates" counter to validation statistics

📂 Enhanced Archive Support

  • Automatically renames files inside archives to match DAT specifications
  • RAR archives are converted to ZIP format when internal files need renaming
  • Improved error handling for corrupted or damaged archives

🛡️ Strict No-Intro Validation

  • Requires ALL hashes present in the DAT to match (strict No-Intro compliance)
  • Warns about DAT files containing filename collisions (same filename, different hashes)

📝 Comprehensive Documentation

  • Added extensive XML documentation to all public classes and methods
  • Improved code readability and maintainability

🔄 Async Method Standardization

  • Renamed async event handlers to follow *_ClickAsync naming convention
  • Updated XAML event bindings for consistency

🧹 Code Cleanup

  • Removed obsolete ExceptionHandler service
  • Simplified BugReportService API payload structure
  • Added global cancellation token support for application shutdown

🗂️ Archive Processing

  • Fixed archive extraction error handling with specific exception types
  • Improved error messages for corrupted archives
  • Fixed buffer overflow in CRC32 algorithm

🔍 Validation Logic

  • Fixed hash matching logic for strict No-Intro validation
  • Enhanced error handling for "destination already exists" scenarios

🖥️ UI Improvements

  • Added new UI styles for duplicate warning windows
  • Fixed status bar update methods with async support

🔧 Service Architecture

  • Moved ApplicationStatsService to centralized initialization
  • Improved LoggerService exception formatting

Full Changelog: release_2.5.0...release_2.6.0