All notable changes to this project will be documented in this file.
- Added progress bar for current file
- Added sound effect for completed backups
- Add minimum size to windows to prevent them from being resized too small
- Fixed loading source and destination custom paths causing UI to hang
- Fixed program crash when running backup if no files need copying
- Fixed crash on PermissionError when trying to open some existing destination files for writing
- Fixed backup timer not stopping when backup is completed or aborted
- Fixed program crash if PermissionError is raised when deleting files
- Added current working file during backup to status bar details
- Experimental* Mac OSX support
- By "experimental," I mean that it opens on Mac OSX. I can't guarantee it'll do anything else. Soon™
- Removed buggy CLI for performance reasons
- Fixed removable drives like flash drives not showing as local drives
- Fixed regression causing source drive selection to list folders in PWD instead of drive root if drive selected was the same drive BackDrop is run from
- Fixed requiring root on Linux due to
keyboard
library - Fixed version string being parsed incorrectly when checking for updates
- Fixed some assets not showing as download links when prompted for updates
- Fixed update screen incorrectly identifying some assets for download
- Migrated from tkinter to wxPython for GUI
- Replaced blake2b hash with blake3
- Increased buffer size for copy operations
- Improved performance
- Fixed measured width of TabbedFrame tabs being 0 when tab is not active
- Converted backup details and overview to tabbed layout, and made window smaller
- Cleaned up code
- Added backup error log
- Fixed incorrect folder splits
- Backup analysis is now killable
- Fixed partially copied files not showing as failed in the GUI
- Fixed split shares calculating incorrect file exclusions
- Fixed UI alignment
- Locked tree selection when backup or analysis is running to allow for easier viewing of configured selection
- Restructured code
- Added status bar backup halt indicator if verification doesn't allow an immediate halt
- Made main window resizable
- Added option to update to prerelease versions
- Fixed button styling
- Fixed typo in update notification
- Fixed drive selection not emptying missing drive list when selecting extra drives after a config load
- CLI mode updater works on Linux
- Fixed selected source total not updating when auto selecting from config if source paths are already of known size
- Fixed PermissionError when saving config file if it can't be written to
- Made backup summary scrollable to prevent long summaries from pushing controls outside of the visible window
- Fixed indeterminate progress bar not stopping if all sources are of known size
- Fixed source selection disabling backup button if backup is running
- Fixed completed file detail counters in success and fail lists not including both copy and delete lists
- Fixed PermissionError exception when deleting protected files
- Broke analysis source distributing into chunks to prevent extremely long wait times when checking permutations of sources
- Scrollable frames now scroll when hovering over the frame, not just dragging the scrollbar
- Backup and analysis both disabled the other button when running
- Sped up loading of GUI
- Failed file operations now increment the status bar file counter
- Data verification is now killable
- Data verification now lists files in file details pane
- File verification is prevented from running when backup is active
- Fixed menubar taking background of main window in dark mode
- Styled buttons to match the rest of the UI
- Fixed incorrect accelerator in tools menu
- Fixed typo in CLI mode
- Fixed broken CLI mode in Linux
- Fixed split mode toggle before analysis causing crash
- Fixed file detail lists not emptying during a UI reset
- Fixed file detail lists not scrolling back to top when emptying lists during UI reset
- Custom source selection
- Custom destination selection
- Portable mode
- Fixed division by zero when not copying any new files
- Fixed update check timeout causing crash in thread
- Fixed crash on CLI mode when loading destination drives
- Fixed aborted message showing when aborting backup on last file verification
- Fixed broken file copy action when running backups
- Linux now has a packaged version, and appropriate icons on the update screen
- Fixed race condition when opening update window on Linux
Previously compiled Windows binaries had CLI mode broken due to lacking console. This has been fixed, but now means there's a console window in the background that will open when launched. As far as I know, this is unavoidable due to the nature of Python.
- Added update checking
- Linux support!
- Source can now be a set of mount points for a set of shares, rather than one root share containing all of the shares as folders
- Local/network type can be changed for both source and destination
- Files are now deleted from destination if they're not copied successfully
- Deleting is now handled in code, rather than with subprocess
- Added menu bar and consolidated some options and controls
- Added open and save config options to menubar
- Added option to delete config file from selected drives
- Added config builder if not all drives can be connected at once
- Added status bar to bottom of window
- File details pane now auto scrolls as files are copied
- Removed system drive from destination drive list
- Progress bar now increments correctly
- Drive selection now changes config selection back to "none" when selecting drive that doesn't have a config file
- Fixed crash on drive select click when selection length is 0
- Analysis no longer hangs when trying to truncate long file lists in the backup details pane
- File details pane now left aligns files in lists
- Preferences and backup configs are now stored in INI format
- Any existing preferences will be lost due to the file change
- Backup run function now breaks immediately when aborted
- UI improvements
- Added file details pane
- Fixed regression where split shares would cause the analysis to either miss files, or double count them, and cause drives to run out of space and the backup to soft crash
- Optimized file transfer buffer size to increase speed
- Fixed progress bar and ETA not reporting correct progress
- Fixed "Done" text not showing on list items when completed
- Progress bar now counts verification to avoid "pauses" during verification passes
- Added settings menu
- Added ETA to backups
- Added command line mode
- Experimental WIP dark mode
- Fixed expanding command arrows causing issues while analysis is still running
- Analysis button now checks if an existing backup is running, to prevent it from being replaced before finishing
- Fixed missing sliders on scrollbars for source and destination trees
- Significantly improved copy speed
- CLI mode is significantly slower than the GUI. A fix is in the works.
- Windows can now be centered on top of other windows, rather than just the screen
- Separated classes into their own files
- Restructured code
- Functions for gathering file lists during analysis no longer break when trying to query missing drives
- Progress bar now shows overall copy progress based on how much data needs to be copied
- Files are now verified when copying
- Analysis summary now shows how much data will be copied to each drive
- Added confirmation message warning about data deletion on new drives with no config
- Added warning message noting missing drives that need to be connected
- File detection now properly detects all files that should be deleted
- Moved from robocopy for file copying to a custom function that allows reporting of progress
- BackDrop no longer crashes when no network drives are present to use as source
- Summary no longer shows split folders on all drives
- Improved detection of leftover files to delete
- Aligned text in summary frame to columns
- Adjusted window size
- Replaced text label branding with Logo
- Deleting files that are no longer allocated to a drive now happens before the robocopy in order to prevent running out of space while copying new files
- Holding
Alt
while clicking on a drive now ignores config files and just selects the drive
- Fixed refresh threads running when a refresh is already active
- Fixed shares being calculated in multiple threads when Ctrl + clicking
- Fixed drive selection breaking after loading a config from a selected drive
- File size of the drive config directory is now subtracted from drive space during analysis
- Added ThreadManager class
- Added split mode backup option for backing up a subset of the drives in a config
- Added proper branding
- Performance improvements
Initial release