Version 2.8.1

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.

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.swift into separate Estimate.swift and Execute.swift files
  • 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 RemoteDataNumbers initialization
  • 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.swift with enhanced functionality

Log Settings

  • Updated ObservableLogSettings.swift with refined configurations
  • Enhanced log file handling in storage actors
  • Improved ActorReadLogRecordsJSON.swift error handling

๐ŸŽจ UI & Progress Tracking

Progress View Improvements

  • Extracted SynchronizeProgressView to separate file for better modularity
  • Added RestoreProgressView for 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 sharedPathForRestore to 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.swift with improved process handling

๐Ÿ“ฆ Dependencies & Project Structure

  • Updated Package.resolved and RsyncUIDeepLinks package revision
  • Updated Makefile configuration
  • Updated project.pbxproj with 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 ReadAllTasks utility with better error management
  • Improved alert handling patterns in views
  • Refactored ActorReadSynchronizeConfigurationJSON for better readability
  • Updated EditValueErrorScheme with 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

Last modified December 5, 2025: Update Version281.md (30cceaf)