Version 2.8.1
Categories:
Version 2.8.1 (build 172) - Dec 5, 2025
An AI-generated changelog is available at the bottom of this page.
This maintenance release addresses a few issues.
All annoying messages regarding missing files are resolved.
Empty stats file
Please see the note about no stats in the changelog (blog) for version 2.8.0.
However, version 2.8.2 will introduce an option to enable it. If RsyncUI detects an empty statistics file, it will append a default log record stating 0 files : 0.00 MB in 0.00 seconds.
If logging fails due to the aforementioned reason, this error will be generated, if enabled in version 2.8.2.

Release Notes: v2.8.0 โ v2.8.1
Overview
This release cycle includes 25 commits across 32 files, focusing on stability improvements, architectural refactoring, and enhanced error handling. The release emphasizes code maintainability and robustness.
Stats: 526 insertions(+), 386 deletions(-)
๐๏ธ Architectural Improvements
Execution Logic Refactoring
- Split
EstimateExecute.swiftinto separateEstimate.swiftandExecute.swiftfiles - Cleaned up initialization logic and removed convenience initializers
- Improved separation of concerns between estimation and execution phases
- Refactored EstimateExecute initialization logic
Error Handling & Robustness
- Enhanced error handling in
RemoteDataNumbersinitialization - Added fallback mechanisms for missing stats with default values
- Improved error catching in log record handling
- Added conditional error handling when appending default stats to logs
- Refactored error handling and logging method names
Code Cleanup
- Removed network monitoring feature and related code
- Removed sleeptime setting and configuration (after initial addition, then reverted)
- Removed WidgetVerify extension and related files
- Removed verify URL support and related code
- Cleaned up unused code in estimation initialization
๐ Logging & Monitoring Enhancements
Advanced Logging System
- Refactored log record handling with improved error catching
- Added conditional logging for summary log records
- Added debug logging for
getstats()success and failure tracking - Added commented-out function for permanent log storage (future feature)
- Improved rsync output parsing to use
getstats()with comprehensive error handling - Updated
Logging.swiftwith enhanced functionality
Log Settings
- Updated
ObservableLogSettings.swiftwith refined configurations - Enhanced log file handling in storage actors
- Improved
ActorReadLogRecordsJSON.swifterror handling
๐จ UI & Progress Tracking
Progress View Improvements
- Extracted
SynchronizeProgressViewto separate file for better modularity - Added
RestoreProgressViewfor improved progress display during restore operations - Set max value on dry run in restore and quicktask operations
- Refactored progress view with max value support
- Improved UI progress indicators and logging
View Enhancements
- Increased minHeight for sheet views in
TasksView - Refactored URL estimate button logic in
AddTaskView - Updated query item handling in
SidebarTasksView - Updated estimation in progress view
๐ง Process & Configuration Management
Path & Catalog Handling
- Fixed config path concatenation in
Homepath - Refactored catalog and volume models and services
- Updated catalog path logic and progress handling
- Added
sharedPathForRestoreto Params with formatted restore arguments - Refactored path concatenation and alert handling
Process Management
- Refactored RsyncProcess termination configuration
- Improved TCPconnections handling
- Enhanced execution flow in estimation and task views
- Updated
Execute.swiftwith improved process handling
๐ฆ Dependencies & Project Structure
- Updated
Package.resolvedand RsyncUIDeepLinks package revision - Updated Makefile configuration
- Updated
project.pbxprojwith structural changes - Added version 2.8.1 JSON configuration files
- Updated README.md and Sonoma JSON to reference v2.8.0
๐งน Code Quality Improvements
- Consistent code formatting improvements across multiple files
- Enhanced
ReadAllTasksutility with better error management - Improved alert handling patterns in views
- Refactored
ActorReadSynchronizeConfigurationJSONfor better readability - Updated
EditValueErrorSchemewith refined error handling
Key Files Modified
- EstimateExecute (split into Estimate.swift and Execute.swift)
- Logging.swift
- RemoteDataNumbers.swift
- SynchronizeProgressView.swift (extracted)
- RestoreTableView.swift
- Multiple view files in Views
Testing Focus
- Verify estimation and execution separation works correctly
- Test error handling for missing stats and log records
- Validate progress tracking in restore operations
- Confirm all removed features (network monitoring, verify widgets) don’t cause issues
Release Target: v2.8.1rc1
Branch: version-2.8.1
Previous Release: v2.8.0