Releases: drpetersonfernandes/BatchConvertToRVZ
release_1.7
- Fix the dispose of shared SocketsHttpHandler
- Fix the extraction logic to use ArchiveFactory with streaming fallback for corrupted headers
- Add handle for compound extensions (.nkit.iso) in output naming
release_1.6
✨ Key Features & Improvements
🔧 Core Performance Upgrades
- Shared
SocketsHttpHandlerinBugReportService&UpdateService- eliminates socket exhaustion under high load with 2-minute connection pooling - Configurable RVZ Compression - Full UI controls for method (zstd/zlib/lzma/lzma2/bzip2/lz4), level (1-22), block size (32KB-2MB)
- Aggregate Write Speed Tracking - Real parallel conversion speeds (no more UI flickering)
- Smart Number Parsing - Locale-aware thousand separator handling (
1,000.5→1000.5)
🐛 Reliability Enhancements
- Graceful Window Closing - Semaphore protection, dispatcher checks, task cancellation handling
- Disk Full Protection - Specific
IOExceptionhandling, no bug reports for user environment issues - ZipSlip Security - Path traversal protection in archive extraction
- Log Memory Management - Auto-trims to 5000 lines to prevent unbounded growth
- Robust File Deletion - 10-attempt retry logic with exponential backoff for locked files
📦 Architecture Migration
✅ Replaced SevenZipSharp → SharpCompress (no native DLLs needed!)
✅ Services reorganized: `services/` folder + `models/SystemInfo.cs`
✅ Parallelism limited to 2-3 threads (system-friendly)
✅ Enhanced `SystemInfo` model for type-safe bug reports
🎨 UI/UX Polish
- GroupBox layouts for settings (General + Compression)
- Comprehensive tooltips everywhere
- Improved past tense conjugation (
copy → copied,play → played)
📈 Performance Impact
Before: Per-request HttpClient → Socket exhaustion
After: Shared handler → Proper connection pooling
Before: SevenZipSharp + native DLLs
After: Pure-managed SharpCompress → Smaller footprint
Before: Single-thread write speed
After: Aggregate parallel throughput
release_1.5
Expands the supported game image formats for RVZ conversion. Previously, only .iso files were supported inside archives, but now .gcm, .wbfs, and .nkit.iso formats are also accepted.
release_1.4.0
- Upgrades the project to .NET 10
- Improves parallel processing options for both conversion and verification operations
- Centralizes bug reporting and dependency management at the application level
- Improves error handling with better cancellation support and file cleanup logic
release_1.3.1
Bug fix release.
release_1.3.0
Improved Cancellation Handling
Added proper async task tracking (_runningTask) and graceful shutdown logic.
Enhanced Resource Disposal
Implemented IDisposable pattern with _disposed flag and using statements for resources like Process.
Robust File Operations
Added retry logic with delays for file deletion, handling locked/read-only files.
New Feature
Option to process smaller files first (new UI checkbox).
UI/Performance Fixes
Used BeginInvoke for progress updates, fixed locale-specific progress parsing.
release_1.2.0
Update codebase
release_1.1.0
Update UI
Fix some bugs
Added update checker
release1.0.0.0
Initial release