This repository was archived by the owner on Sep 21, 2025. It is now read-only.
Release v0.2.4
GoMFT Release Notes
Release Notes - v0.2.4
✨ Features
- Rclone Connection Testing: Added functionality to test the connection for Source and Destination providers directly from the configuration UI (
/configs/test-connection). Includes UI buttons and toast notifications for feedback. (Commit68dd9fc) - Rclone Command Configuration UI: Enhanced the Transfer Configuration form to pre-render selected Rclone command flags during editing. Added support for specifying the region for Minio providers. (Commit
f957207) - File Metadata Sorting: Implemented sorting capabilities for the File Metadata list based on various columns (e.g., FileName, ProcessedTime, Size). (Commit
28fa65d) - Scheduler Integration: Introduced a cron-based job scheduler for automated transfer execution. (Commits
b35174f,ae18cd1) - Enhanced Notification Components: Added and improved components for managing Notification Services, including dialogs, forms (with specific fields per type like Gotify, Ntfy, Pushover, etc.), and list views. (Commit
28fa65d) - Shared Toast Component: Implemented a reusable toast notification component for displaying success/error messages. (Commit
28fa65d) - Rclone Log Parsing: Rclone operations now log to temporary files, and basic parsing is performed on transfer logs to extract hashes and count copied files for metadata records. (Commit
391cfbc)
🚀 Improvements
- Notification Form Handling: Fixed the handling of the 'Is Enabled' checkbox in the Notification Service form. (Commit
391cfbc) - SSL Verification Control: Added
SKIP_SSL_VERIFYenvironment variable to allow disabling SSL verification for outgoing notifications (e.g., webhooks). (Commit391cfbc) - Configuration Model: Refactored boolean fields (like
IsEnabled,ReadOnly) in configuration models (Notifications, Auth Providers, Transfer Configs) to use pointers for more accurate state representation. (Commit608da9c)
🔧 Technical Changes
- Scheduler Refactoring: Major refactoring of job scheduling and execution logic into distinct components (
JobExecutor,Logger,MetadataHandler,Notifier,TransferExecutor,Scheduler,Utils). (Commitsb35174f,ae18cd1) - Database Layer Refactoring: Reorganized database access logic by splitting the monolithic
db.gointo entity-specific store files (e.g.,job_store.go,user_store.go,transfer_config_store.go, etc.). (Commitd4c07fd) - Testing Enhancements: Added comprehensive unit tests for scheduler components (Job Executor, Logger, Metadata, Notification, Scheduler, Transfer Executor, Utils) and improved Rclone service tests. (Commits
b35174f,608da9c)
🔄 Migration
- A database migration (
012_alter_boolean_defaults.go) was added to update default values and potentially nullability for boolean fields in various tables (e.g.,notification_services,auth_providers) to align with the model changes (using boolean pointers). Ensure this migration is applied when updating. (Commit608da9c)
📦 Dependencies
- Added
github.com/stretchr/testify v1.9.0for improved testing assertions. (Commit608da9c)
🐛 Bug Fixes
- Config form not displaying destination correctly based on rclone command selection.
- Dark mode not working correctly when button is pressed.
- Notificaiton service being added as enabled when enabled check is disabled