Repository navigation
release_1.6
·
83 commits
to master
since this release
✨ 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