Skip to content

release_2.0.0

Choose a tag to compare

@drpetersonfernandes drpetersonfernandes released this 13 Apr 20:59
· 28 commits to master since this release

Major Features

  • New Extraction Feature: Added a dedicated tab for extracting RVZ files back to ISO, WBFS, GCZ or WIA formats
  • Drag & Drop Support: Added drag-and-drop capability for file selection in all tabs
  • Selectable File Lists: Added DataGrid controls to individually select/deselect files for conversion, verification, and extraction

User Interface Improvements

  • Resizable Layout: Split window with resizable log viewer using a grid splitter
  • Consistent Styling: Moved style definitions to App.xaml for better maintainability and consistency
  • Enhanced Tooltips: Added detailed tooltips for all UI elements to improve usability
  • Adjustable Window Size: Updated window dimensions optimized for the new feature set

Technical Improvements

  • Modular Services: Added specialized services for file operations, conversions, verifications, and extractions
  • Improved Error Handling: Enhanced bug reporting and error handling across all operations
  • Asynchronous Operations: Better async file operations and thread safety
  • Robust Cancellation: Improved cancellation support with proper token propagation
  • Enhanced Archive Handling: Better extraction of ZIP, 7Z, and RAR archives with security improvements

Bug Fixes

  • International Support: Fixed number parsing for international locale support
  • UI Freeze Prevention: Added shutdown flag to skip log UI updates when closing to avoid freezes
  • Better Extension Detection: Improved handling of compound extensions like .nkit.iso
  • Safer Archive Extraction: Prevent ZipSlip vulnerabilities by trimming leading slashes from archive entry paths
  • Smoother Progress Tracking: Fixed progress bar jumping by improving counter update logic

Code Quality

  • Documentation: Added comprehensive XML documentation to classes and methods
  • Thread Safety: Added locks and improved async methods to prevent UI freezes and deadlocks
  • Shared HTTP Handler: Implemented SharedHttpHandler for connection pooling across services
  • Proper Cleanup: Enhanced dispose pattern implementation for resources
  • Validation: Added UI validations for file selection, folder nesting, and missing dependencies