Skip to content

release_1.6

Choose a tag to compare

@drpetersonfernandes drpetersonfernandes released this 21 Feb 20:29
· 83 commits to master since this release

✨ Key Features & Improvements

🔧 Core Performance Upgrades

  • Shared SocketsHttpHandler in BugReportService & 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 IOException handling, 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