Skip to content

release_2.2.0

Choose a tag to compare

@drpetersonfernandes drpetersonfernandes released this 24 May 05:09
· 16 commits to master since this release

Testing

  • New unit test project (BatchConvertToRVZ.Tests) with xUnit and Coverlet coverage
  • Tests covering models (FileItem, GitHubRelease) and services (FileService, BugReportService, UpdateService, SharedHttpHandler)

Bug Report Improvements

  • Refactored bug report payload to match the API schema (proper message, applicationName, version, environment, stackTrace fields)
  • Added structured sections in bug report messages (Environment Details, Error Details, Exception Details)
  • Added truncation of message (4000 chars) and stack trace (8000 chars) fields to prevent oversized requests
  • Removed unused fields from SystemInfo model (BaseDirectory, TempPath, ExceptionType, ExceptionMessage, etc.)

Error Reporting

  • Added automatic bug report calls across ConversionService, ExtractionService, and VerificationService when processing fails
  • Added bug report calls in MainWindow for drag-and-drop errors, file add failures, and URL open errors

FileService Cleanup

  • Streamlined FileService to a pure utility with no dependencies — removed Action<string> logger parameter and all wrapper methods (file operations now use System.IO directly at call sites)

Enhanced Shutdown Reliability

  • Window closing logic no longer blocks when the app is already shutting down via Application.Current.Shutdown()
  • Added fallback to Environment.Exit(0) if graceful shutdown fails, with a 3-second force-exit timeout

Folder Path Validation

  • Input folder and verification folder validation now checks for null/empty paths and folder existence before file enumeration
  • Clear error messages logged when folder paths are invalid

Verification: Include Subfolders

  • New "Include subfolders" checkbox on the Verification tab — allows recursive scanning for RVZ files
  • Verification file count message now indicates whether subfolders were included

UI Polish

  • Added tooltips across the UI: file list labels, Select/Deselect buttons, statistic cards, extraction overlay, and output format selector
  • Improved drag-and-drop tooltip hints on DataGrids

Dependencies

  • SharpCompress updated from 0.47.4 to 0.48.1

Internals & Maintainability

  • AssemblyInfo.cs now exposes internals to the test project (InternalsVisibleTo)
  • Async naming convention: TryDeleteFileTryDeleteFileAsync, TryDeleteDirectoryTryDeleteDirectoryAsync
  • UpdateService and BugReportService methods made internal for testability
  • Removed .DotSettings.user files from tracking; added to .gitignore

Full Changelog: release_2.1.0...release_2.2.0