github purelogiccode/BatchConvertToCHD release_3.6.0

3 hours ago

What's New in 3.6.0

Released: 2026-09-07

Fixed

  • Closing the app during startup no longer reports a bug. A window closed while the startup sequence was still running produced a TaskCanceledException report; cancellation during shutdown is now recognised as the normal exit path and logged silently.
  • Corrupt PBP deflate streams are classified correctly. A malformed compressed block inside a PSAR could drive the SharpZipLib inflater into a raw IndexOutOfRangeException, which escaped the typed error handling and surfaced as an unclassified "Index was outside the bounds of the array" failure. It is now normalised to DecompressionError, so the caller reports a decompression failure the way any other bad block is reported.

Improved

  • Bug reports carry less noise. Conditions that describe the user's environment or data — chdman rejecting a cue or image with a parse error, I/O failures on failing or disconnected drives, files whose content does not match their extension, CHD open/read failures during extraction, file-move failures after a conversion, and encoder start failures — are no longer sent to the bug API. The application still logs each with per-cause guidance; the classified failure at the end of a file's attempt still reaches the developer.
  • Fewer warnings for routine outcomes. Notices that describe expected behaviour rather than trouble are now logged as information: the automatic chdman → CHDSharp fallback after chdman fails on a file, cue generation falling back to converting an image as-is (read-only media, cross-volume path), and the low-free-space heads-up shown before a large conversion starts.
  • chdman crash codes are easier to read. 0xC0000139 (STATUS_ENTRYPOINT_NOT_FOUND) is now decoded with guidance: the bundled build is incompatible with the installed Windows version — install updates / the latest Visual C++ redistributable or use a chdman build for your OS. The "incompatible CPU" guidance also names the Windows version as a possible cause.
  • Missing-encoder messages trimmed. The download URL for chdman was removed from the startup notices and the critical-missing-encoders dialog; the message now states plainly what is missing and what to place in the application folder.

Internal

  • Analyzers and libraries upgraded: Meziantou.Analyzer 3.0.226, NAudio 3.1.0.
  • Code style normalised across all projects (brace indentation rules), with whatsnew.md retired in favour of this WhatsNew.md.
  • Test suite grown to 820 passing tests, including a regression test for the corrupt-PBP-block classification and coverage for the new bug-report exclusion patterns.

Packaging

  • Binaries ship as a single-file, framework-dependent executable — the .NET 10.0 Desktop Runtime must be installed. chdman, CHDSharp and 7za for your architecture are bundled next to the app exe, together with the readme and license.

Don't miss a new BatchConvertToCHD release

NewReleases is sending notifications on new releases.