Skip to content

release_2.7.0

Choose a tag to compare

@drpetersonfernandes drpetersonfernandes released this 18 Jun 06:02
· 21 commits to master since this release

New Features

Startup Validation

  • Application now detects if running from a temporary directory or directly from a compressed archive and prompts the user to extract to a permanent location before proceeding.

DAT File Validation

  • Added file extension check — only .dat and .xml files are accepted.
  • Added hint text below the DAT file path field: "Only No-Intro XML DAT files are supported."
  • Improved error messages when incompatible formats are detected (ZIP, HTML, ClrMamePro, MAME).

Cloud Placeholder Support

  • Cloud-only placeholder files (e.g., OneDrive files not downloaded locally) are now automatically skipped during validation and hashing operations.
  • Skipped files are reported with a clear error message indicating the file needs to be downloaded first.

Duplicate File Handling

  • Files that would overwrite existing files during rename operations now generate unique filenames instead of failing (e.g., game (1).rom, game (2).rom).

Improvements

Async Status Bar Updates

  • All status bar messages now use an async pattern with cancellation support, improving UI responsiveness during long-running operations.

Rename Operations

  • Archive internal file rename operations now use Path.GetFileName() to prevent path traversal issues.
  • File move operations now correctly handle destination file overwrites.

File Enumeration

  • File scanning now uses EnumerationOptions to skip hidden, system, and reparse point files for better performance and reliability.

Bug Fixes

  • Fixed critical data loss bug where source files could be permanently deleted during archive rename operations when a filename collision occurred.
  • Fixed font crash — added fallback fonts (Courier New, Lucida Console) when Consolas is unavailable, preventing SEHException crash on systems with missing fonts.

Dependency Updates

Package Old Version New Version
SharpSevenZip 2.0.36 2.0.49
Microsoft.NET.Test.Sdk 18.4.0 18.6.0
coverlet.collector 10.0.0 10.0.1

Full Changelog: release_2.6.1...release_2.7.0