Version history for FreeFileSync
<<Back to software description
Changes for v10.23 - v11.0
- Revised file layout on main grid
- Skip download/upload when copying Google Drive files inside account
- Support moving Google Drive files between shared drives and My Drive
- Support copying Google Drive shortcuts between accounts
- Support copying Google Docs, Sheets, Slides, etc. within account
- Fixed parsing uninitialized Google Drive modification time
- Fixed Google Drive file already existing check running too late
- Ignore slash/backslash differences during manual search
- Avoid creating orphan database entry if one DB file fails to load
- Limit modification time error count for log file warning message
- Support copying WSL symlinks
- Avoid duplicate MTP/Google Drive item creation from multiple threads
- Fixed TMPDIR not found during startup (macOS)
- Added sync variant icons
- Avoid redundant icon format conversions
- Buffer high-DPI image scaling results
- Improved MTP thumbnail scaling performance
- Avoid race condition during parallel file icon rendering (Linux)
- Allow creating folder name with leading/trailing spaces
- Start supporting GTK3 (Linux)
Changes for v10.22 - v10.23
- Run "on completion" commands on console (no need for "cmd.exe /c")
- Check exit code and report errors for external applications
- Report stream output of failed command line calls (macOs, Linux)
- Use Unicode symbols compatible with older macOS
- RealTimeSync: invoke command using cmd.exe instead of ShellExecute (Windows)
- Avoid hitting log file length limitations for aggregated jobs
- Fix OpenSSL failing on HTTP 1.0 response without Content-Length
- Don't allow creating folder names ending with space or dot
- Support base folders with trailing blanks
- Show system error descriptions on volume shadow copy errors
- Raise exit code if saving log file or sending email failed
- Report all documented MTP error descriptions
- Updated default exclude filter (macOS/Linux)
- Added image outlines for improved dark mode support
- Work around WBEM_E_INVALID_CLASS error during installation
- Align file path rendering with app layout direction
- Play sound notification also when "cancel on first error" is set
- Cleaner file path formatting (macOs, Linux)
- Added instructions when failing to start due to missing GTK2 (Ubuntu)
- RealTimeSync: distinguish drive unmount from folder change notification
- Avoid blocking command scripts waiting for user input
- Updated translation files
Changes for v10.20 - v10.22
- Fixed upper-case conversion bug for non-ASCII strings
- Preselect last-used email address
- Select log file format (HTML or plain text)
- Aggregate email notifications when hitting sending limits
- Show code literals in system error messages
- Limit conflict item count for log file warning message
- Show log icon error indicator even if error occured after sync
- Disable background drag & drop when showing modal dialog
- Hide dummy model, vendor names in log files
- Fixed ANSI encoding used for log file time formatting
- Reduced memory consumption for large number of log messages
- Correctly parse lock files despite corrupted trail data
- Show emoji instead of Unicode icon in email subject
- Fixed IWbemServices::ConnectServer error after sync
- Fixed aggregate email logs incomplete truncation
Changes for v10.19 - v10.20
- Send email notifications after sync
- Generate log files in HTML format
- Detect sync database consistency errors
- Start log file with preview of first 50 errors/warnings
- Mitigate lock file data corruption
- Print Windows error codes in hexadecimal
- Fixed missing MTP and network links in folder picker (Linux)
- Display versioning and log folder path history
- Display and log all config names for merged configurations
- Run post-sync command synchronously and log exit code
- Fixed crash on Bitvise SFTP servers with zlib delayed compression
- Show actual time out used in failure message
- Show detailed error message when failing to test sound files
- Fixed timeout for long-running FTP uploads by sending keep-alives
- Use Donation Edition on unlimited number of virtual machines
- Ignore accidental clicks in empty space of configuration panel
Changes for v10.18 - v10.19
- Unified rendering of disabled grid layouts
- Count moved file pair as one update in view filter buttons
- Fix command button default sizes (Windows)
- Added %item_name%, %item_name2% context menu macros
- Support deleting references to shared Google Drive files
- Trash Google Drive files only when having single parent
- Fixed high DPI scaling issue on image borders
- Preserve system date format for RTL languages
- Fall back to folder path if resource archives are missing
Changes for v10.17 - v10.18
- Save/load database files in parallel
- Show item count for each view filter category
- Group config history items via background colors
- Allow grid sort by category and sync action
- Reduced file accesses for faster start up
- Buffer redundant database loads
- Fix ibus initialization hang on Ubuntu 19.10
- Defer showing progress panel for short-lived tasks
- Calculate stable scrollbar dimensions on GTK2
- Log mod time errors even when sync is cancelled
- Show progress and errors when updating sync directions
- Detect MLSD support despite invalid FTP FEAT response
- Improved GUI responsiveness during config load
- Added Vietnamese translation
Changes for v10.16 - v10.17
- Support PuTTY private key files for SFTP login
- Enable zlib compression for SFTP servers if supported
- Update last sync time despite differences if nothing to do
- Reduce graph total time update interval
- Remember folder history not just for first folder pair
- Allow unprivileged symlink creation in Windows Developer Mode
- Integrate latest libcurl FTP bug fixes
- Detect common invalid SFTP key file formats
- Fixed startup crash caused by corrupted HDD properties
- Allow SFTP access via Ed25519 key in PKIX format
Changes for v10.13 - v10.16
- Redesigned progress indicator graphs
- Avoid needless HTTP delay prior to Google Drive upload
- Skip redundant CWDs during FTP metadata updates
- Fixed MLSD 501 syntax error on Serv-U FTP server
- Check FTP server status using FEAT/HELP instead of root folder
- Avoid redundant TYPE changes during FTP directory listing
- Access FTP files by full path and avoid CWDs
- Support FTP home paths with non-ASCII chars
- Work around libcurl bug failing to buffer FTP TLS authentication
- Skip redundant FTP SIZE check before downloading file
- Use ISO 8601 week of the year definition for %week% macro
- Show login prompt for disconnected NAS share
- Force icon resolution to 96 DPI in GTK2 build (Linux)
- Detect missing full disk access permission (macOS)
- Fixed accessibility issue with progress graph colors
- Use short naming convention when deleting abandoned folder lock
- Detect endless folder lock recursion on buggy file systems
- Fixed Google Drive parsing error for invalid file time
Changes for v10.12 - v10.13
- Allow to rename configurations via context menu
- Work around hang on SMB network with broken FileFullDirectoryInformation
- Work around SMB share returning empty item name
- Detect and preempt keyman64.dll crash on exit
- Manage notification sounds via global options dialog
- Support 32-bit Debian Jessie and later releases
- Work around silent failure to case-only rename on FAT drives (Windows 10)
- Simplified installation folder structure
- Update main grid scrollbars when resizing columns on other side
- Preserve input focus when clicking on grid column label
- Buffer result of process path normalization
- Mirror middle grid icons for RTL layout (Linux)
- Force LTR layout until wxWidgets supports RTL (macOS)
- Fixed pair scrolling mismatch when grid height is exceeded by one row
- Fixed startup failure due to missing /etc/machine-id (Linux)
Changes for v10.10 - v10.12
- Show sync start time and date in progress dialog title
- Added duration of comparison to log
- Show all total times in full HH:MM:SS format
- Added sync start time to log file header
- Add Windows Defender exclusions to fix CURLE_OPERATION_TIMEDOUT
- New RealTimeSync option to hide console window
- Support launching through symlink (Windows)
- Dropped support for Windows XP, Server 2003, and Vista
- Reduced installation size by 25%
Changes for v10.9 - v10.10
- New option: synchronize selection
- Dynamically disable unsuitable context menu options
- Support MTP devices without move command
- Fall back to copy/delete when implicitly moving to different device (e.g. symlink)
- Fixed incorrect statistics after parallel move
- Fixed menu button not triggering context menu
- Fixed crash on focus change while message popup is dismissed
- Fixed crash when trying to shrink empty image
- Fixed invisible dialogs when monitor is turned off in multi-monitor setup
- Work around GetFileInformationByHandle error code 58 on WD My Cloud EX
- Changing deletion handling now correctly triggers updated config
- Support root-relative FTP file paths (e.g. FreeNAS)
- Move and rename MTP items as a transaction
- Exclude AppleDouble files (._) via default filter on macOS
- Support home path for FTP folder picker
- Use server default permissions when creating SFTP folder
- Use native OpenSSL AES-CTR rather than libssh2 fallback
- Added context information for cloud connection errors
- Updated translation files
Changes for v10.8 - v10.9
- Added FTP, SFTP, Google Drive support for Linux
- FreeFileSync Donation Edition available for Linux
- Compress file stream during Google Drive upload
- Navigate beyond access-denied parents in SFTP folder picker
- Fixed unexpected stream size error during FTP upload
- Support native recursive deletion for Google Drive
- Support native recursive deletion for MTP
- Deterministically save Google Drive state during exit
- Work around missing TMPDIR variable (Linux)
- Support SFTP servers returning large package sizes during folder reading
- Start with home path when using SFTP folder picker
- Aggregate device authentication prompts during comparison
- Clean up temp file after unexpected stream size error
- Work around FTP servers not supporting HELP command
- Support parsing path by volume name when volume is missing
- Parse and streamline Google Drive error messages
- Load next item after deleting from config history
- Avoid redundant Google Drive syncs after file/folder creation
- Avoid duplicate MTP item creation by multiple threads
Changes for v10.7 - v10.8
- Support synchronization with Google Drive
- Keep sync directions when changing versioning/deletion
- Save last sync time before shutting down system
- Avoid dependency on file id to detect duplicate folders
- Check if path exists before creating duplicate MTP folder
- Check for empty MTP item name during folder traversal
- Check if MTP items are referenced by the same path
- Support MTP devices requiring modTime for file creation
- Fixed sync config GUI distortion when toggling auto retry
- Fixed FreeFileSync sort order in Windows Uninstall
- Fixed log override path being squashed on high DPI
- Fixed volume serial not considered when file id is missing
Changes for v10.6 - v10.7
- Resolve ambiguous paths in (S)FTP folder picker
- Fixed path alias check to not rely on volume serial
- Check already existing move target by ID instead of path
- Use native image conversion routines in installer
- Added base folder info for unresolved conflicts message
- Avoid silent failure when setting epoch modTime
- Fixed parsing locale with unexpected format
- Fixed RealTimeSync failing to start FreeFileSync batch
- Exclude failed item paths containing backslash in names
- Fixed RealTimeSync GUI distortion after drag & drop
- Support command arguments and exit code with launcher
- Consider UTF encoding when trimming long temp name during file copy
Changes for v10.5 - v10.6
- Detect and skip traversing folder path aliases
- Conflict when Unicode normalization forms differ
- Unified 32 and 64 bit into single package (Linux)
- Notarized application package (macOS)
- Save configuration files in user-specific paths (Linux)
- Use XDG-style config file paths (Linux)
- Fixed (fake) intermittent hangs during comparison
- Detect SMB mount points as separate devices (Linux)
- Consider /mnt subfolders as device root paths (Linux)
- Create missing default log folder upon first run
- Don't consider final status for error/warning count
- Discard invalid SFTP session after max channel test
- Fixed main dialog position not being remembered
- Fixed imprecise FTP times due to MLST parsing issue
- Fixed application menu not being localized (macOS)
- Fixed temp file name hitting file system length limitations
- Fixed fatal errors not being written to console (Debian Linux)
- Updated translation files
Changes for v10.3 - v10.5
- New file matching considering Unicode normalization
- User-configurable timeout for FTP and SFTP
- Obsoleted old CHM manual in favor of PDF
- Ignore case sensitivity during filter matching (Linux)
- Unicode-normalized, faster case-insensitive grid search
- New button to save current view filter settings as default
- Both slash/backslash can be used in filter expressions
- Improved Unicode case conversion routines
- Keyboard shortcuts for swap sides (F10) and view (F11)
- Don't steal focus when closing progress dialog (macOS)
- Fixed shutdown crash when accessing destroyed state
- Fixed file grid column order not being preserved
- Fixed manual activation fields being disabled (macOS)
- Fixed FTP parsing error due to invalid folder time
- Fixed statistics boxes background distortion (macOS)
Changes for v10.2 - v10.3
- New log panel showing details about the last operation
- Show status of last syncs in configuration panel
- Access log files via the configuration panel
- Allow auto-retry and ignore errors during comparison
- Show folder RealTimeSync is waiting on
- New %logfile_path% macro for "on completion"
- Show errors and warnings count in log file header
- Fixed crash when resizing panel during comparison
- Fixed folders created hidden when source is root
- Use steady clock while waiting in RealTimeSync
- Fixed folder access error with Google Drive File Stream
- Open global log folder path via options dialog
- Limit global logs by age instead of size
- Deprecated batch-level log files and LastSyncs.log
Changes for v10.0 - v10.1
- Binary-compare multiple files in parallel
- Copy file permissions when creating base folders
- Fixed hang when scrolling file list (Windows)
- Fixed file list mismatch when cancelling sync
- Fixed delay when cancelling folder existence check
- Fixed sync processing order to honor FIFO
- Fixed startup delay when internet is offline (Linux, macOS)
- Fixed crash when closing via the macOS Dock
- Support installation without admin rights (macOS)
- Fixed bcrypt.dll not found on startup (Windows XP)
- Respect Content-Length header for HTTP requests
- Support parallel folder traversal on Ubuntu 16.4
- Fixed missing shared library dependencies (Linux)
- Unified precompiled Linux binary packages
Changes for v9.9 - v10.0
- The installer is now ad-free!
- Sync multiple files in parallel (Donation Edition)
- Compare multiple files in parallel within a single folder tree
- Aggregate worker threads per device during traversal
- Reset GUI layout configuration for high DPI displays
- Keep GUI responsive during synchronization
- Remember maximum number of visible folder pairs
- Fixed high DPI issues in installer
- Don't delay errors by callback interval during comparison
- Concurrent intermediate folder creation for versioning
- Sync all folder level items before recursion (avoid CWDs)
- Updated translation files
Changes for v9.8 - v9.9
- High DPI display support
- Allow automatic retry at configuration level
- Show error handling settings during sync
- Avoid libpng.so dependency (Linux)
- Fixed undefined behavior closing paused progress dialog
- Check if buggy DLLs are loaded into address space
- Fixed FTP parsing error for Windows CE device
- Workaround VSS provider implementation bug
- Respect macOS user settings for date/thousands separator
- Updated translation files
Changes for v9.7 - v9.8
- New option to auto-close progress dialog
- Update last sync time if no differences found
- Added 5 seconds countdown before shutdown/sleep
- Preserve XML attribute creation order
- Support HTTPS web accesses without redirect
- Connect network share upon logon type not granted
- Fixed invalid pointer error when reading MTP
- Fixed temporary db file triggering RealTimeSync
- Fixed runtime error during uninstallation
- Continue status updates during sync cancellation
- Log number of items found during comparison
- Warn about outdated nviewH64.dll instead of crashing
- Show default log file path when saving a batch job
- Consider only full days for time since last sync
Changes for v9.6 - v9.7
- New configuration management panel
- New column showing days since last sync
- Support starting FreeFileSync via Windows Send To
- Minimized memory operations for I/O buffer
- Allow multiple config selections on Linux
- New command line option -DirPair
- Fixed ENTER key not working for most dialogs (macOS)
- Show only one warning about failed directory locks
- Show correct sync time when resuming from sleep
- Don't resolve symlinks that are dropped via mouse
- Detect and notify LCMapString compatibility mode bug
- Fixed incorrect file permissions within macOS bundle
- Fixed wrong results dialog panel selection (Linux)
Changes for v9.5 - v9.6
- New installation command line option /disable_updates
- Fixed crash when closing main dialog during sync
- Fixed RealTimeSync crash after recursive mutex locking
- Improved file copy performance on macOS
- Clean up obsolete files during installation
- Don't use threads for running async command line (Linux)
- Avoid main dialog flash after minimized sync
- Disable file list export until after comparison
- Directly close progress dialog during sync
- Redirect escape key from main dialog to progress dialog
- Fixed startup delay during consistency checks
- Updated translation files
Changes for v9.4 - v9.5
- Allow to change error handling option on progress dialogs
- Set up shutdown behavior during sync (summary, exit, sleep)
- Conditional execution of the post sync command line
- Directly use native shutdown/sleep API
- Run post sync command even when fail on first error was set
- Merged batch and GUI error handling options
- Write post sync command to log file
- Update GUI-specific options when saving as batch job
- Progress graph area matches processed data ratio
- Delete files permanently with Shift+Del
- Apply correct quotation for CSV-exported folder list
- Use Unicode arrow chars with ASCII for variant description
- Updated libcurl, OpenSSL to latest builds
Changes for v9.3 - v9.4
- Fixed copying files with locked byte ranges using VSS
- Fixed wrong FTP working directory reuse in libcurl
- Allow retry upon failure during online update check
- Repackaged Donation Edition to reduce AV false positives
- Apply correct directory path encoding during FTP traversal
- Fixed strict weak ordering for SFTP session ID sorting
- Clean up read-only temporaries during failed sparse file copy
- Fixed access denied file copy error for ADS
- Workaround broken SMB servers reporting sparse support
- Support hash characters in FTP directory listing
- Prepared auto-updater to support new installer format
- Refined installer error reporting
- Streamlined sync config dialogs
- Resized installer window dimensions
Changes for v9.2 - v9.3
- Support multiple connections per FTP folder traversal
- 35% faster folder traversal for FTP servers supporting MLSD
- Use single CWD when changing FTP working directory
- Fixed EOPNOTSUPP error on gvfs-mounted FTP (Linux)
- Maximize FTP I/O speed using prefetch/output buffers
- Prevent input focus stealing after manual comparison
- Use larger socket buffer for FTP upload speed increase
- Fixed out of memory error when copying large files via FTP
- New popup dialog option to ignore all errors
- Reduced memory peaks by enforcing streaming buffer size limits
- Removed custom sync directions from config XML if not needed
- Flash task bar after comparison if other app has input focus
Changes for v9.1 - v9.2
- Use direct copy instead of transaction to speed up versioning
- Replaced file existing handling with use of unique temporary names
- Support SFTP authentication via Pageant/SSH agent
- New menu option to restore hidden panels individually
- Fixed GTK button icon being truncated (Linux)
- Fixed error dialog hiding behind progress dialog (macOS)
- Round out FTP symlink deletion handling
- Support four-digit year format on IIS FTP
- Fixed FTP parsing error for epoch time on Windows server
- Narrow contract for file system abstraction regarding existing files
- Treat failure to load database as error rather than warning
- Save root folder access for certain FTP path checks
Changes for v8.10 - v9.1
- Fixed crash when getting invalid data after item type check
- Fixed copying symlinks pointing to network folders
- Support resolving network paths in the NT namespace
- Support FTP servers with broken MLST command (Pure-FTPd)
- Fixed FTP access error on file names containing special chars
- Include raw FTP server response in error message
- Quickly check server connection using a single FEAT
- Don't change working directory when sending a single FTP command
- Support FTP Unix listings missing group name
- Support RFC-2640-non-compliant FTP servers having UTF8 disabled
- Support FTP servers returning non-routable IP in PASV response
- Support IPv6 when establishing FTP connections
- Start external application keyboard shortcuts with zero
Changes for v8.9 - v8.10
- Fully preserve case-sensitive file paths (Windows, macOS)
- Support SFTP connections to local hosts
- Warn if versioning folder is contained in a base folder
- Use natural string sorting algorithm for item lists
- Consider exclude filter settings for folder dependency checks
- Fixed file not found error on case-sensitive SFTP volume
- Fixed failure when creating MTP sub directories
- Fixed crash when loading database file during comparison
- Refactored UTF conversion routines
- Use pipe symbol as filter separator instead of semicolon
- Iterate over all matching SFTP connections available on a server (macOS)
- Reduced folder matching time by 12%, average memory use by 11%
- Added experimental FTP support
Changes for v8.8 - v8.9
- Detect when database file was copied and avoid "second part missing" error
- Further reduced size of database files by 20%
- Reduced amortized number of file operations during versioning
- Added database file consistency checks to catch unexpected number of stream associations
- Improved file I/O by detecting cross-device moves via path
- Fixed path parsing failure when creating MTP directories
- Implemented buffered stream I/O abstraction to prepare for FTP
- Generalized file path handling for abstract file system implementations
- Warn about outdated AvmSnd.dll before crashing during sound playback
- Avoid libunity9 dependency for Ubuntu builds
- Refactored OpenSSL and libssh2 initialization/shutdown
- Case-insensitive grid sorting on Linux
- Added 32-bit precompiled Debian/Ubuntu release
Changes for v8.7 - v8.8
- Distinguish file access failure from not existing during sync
- Further optimized number of file I/O operations via file system abstraction
- Report unexpected prompts for keyboard-interactive SFTP authentication
- Mark followed directory symlinks on grid
- Fixed parent path determination for UNC
- Don't skip source files that cannot be accessed
- Don't consider a symlink type for SFTP when comparing by content
- Fixed invalid parameter error when setting file times on exFAT file system
- Don't allow overwriting folder with equally named file when copying from main dialog
- Fixed failure to create intermediate directories for Cryptomator/Webdav
- Refactored file system abstraction layer for future FTP support
- Fixed failure to change file name case on MTP devices
- Fixed late failure for batch recycling when parsing of single item fails
Changes for v8.6 - v8.7
- New auto-updater feature for FreeFileSync Donation Edition
- Download zip archive of portable FreeFileSync Donation Edition
- New command line options to define parameters for silent installation
- Support offline activation for portable Donation Edition
- Use automatic keyboard-interactive SFTP authentication as fallback
- Check for available SFTP authentication methods before login
- Support cloud sync of portable edition installation files
- Access donation transaction details from about dialog
- Use width from flexible grid column when showing/hiding extra columns
- Show item short names in middle column tooltip
- Enhanced file category descriptions with modification times
- Don't warn about missing recycle bin when only moving or updating attributes
- Fixed crash when switching to main dialog during batch sync
Changes for v8.5 - v8.6
- Added SFTP support for OS X
- Support SFTP authentication via public/private key
- Remember configuration history scroll position
- SFTP folder picker supports browsing hidden folders
- Fixed failure to copy files with corrupted ADS
- Signed application installer (OS X)
- Increase config history default size to 100 items
- Auto-close FreeFileSync processes before uninstallation
- Simplified SFTP configuration syntax
- Fixed update check sending incomplete keep-alive header
- Detailed error reporting after failed web access
- Suggest folder path macro substitutions also at inner positions
- Transfer folder creation times (OS X)
Changes for v8.4 - v8.5
- Support multiple SSH connections per SFTP folder traversal: N times speed up
- Support multiple SFTP channels per SSH connection: additional N times speed up
- Fixed installer crashes by using correct DEP-compatibility
- Fixed notification area icon being generated too often
- Thread-safe SFTP deinitialization on shutdown
- Thread-safe mini-dump creation during shutdown
- Fixed case-insensitive migration of new csidl macro names
- Reduced SFTP access serialization overhead
- Buffer SFTP sessions independently from usage context
- Detect and discard timed-out SSH sessions
- Pre-empt SFTP session disconnect via dedicated SFTP cleanup thread
- Run SFTP tasks directly on worker threads without helper thread overhead
Changes for v8.3 - v8.4
- Mark temporary copies created by %local_path% read-only
- Fixed crash when accessing Bitvise SFTP Servers
- Support nanosecond-precision file time copying (Linux)
- Start maximized instead of in full screen mode (OS X)
- Fixed crash while setting privileges during shutdown
- Fixed crash when failing to clean up log files
- Fixed EOPNOTSUPP error when copying file to gvfs Samba share (Linux)
- Fixed default external applications command line (Linux)
- Thread-safe translation change even during app shutdown
- Don't consider port and password when comparing SFTP paths
- Updated translation files
Changes for v8.0 - v8.1
- Follow shell links during drag and drop on main dialog (Windows)
- Significantly improved main grid rendering performance
- Log info about non-default global settings
- Establish new network connections only when needed (Windows)
- Show only a single login dialog per network share
- Show login dialogs for the same network address one after another
- Fixed endless recursion for paths containing certain unicode characters (OS X)
- Support using portable version without direct installation
- Fixed access denied error when verifying read-only target file (Windows)
- New global option for sound cue after comparison
- Updated help file
Changes for v7.8 - v8.0
- Fine-tuned buffer sizes for 70% improved SFTP stream I/O speed
- Support incomplete read/write operations while maximizing buffer saturation
- Automatically check consistency of FreeFileSync installation
- Fixed crash when using SFTP on CPUs without SSE2 support
- Improved GUI responsiveness during SFTP I/O
- Disabled automatic quote substitution for file filter (OS X)
- Work around invalid parameter error on FAT drives for broken create times
- Avoid filter mismatches by using precomposed UTF (OS X)
- Fixed main dialog close button not being disabled during sync (OS X)
- Don't create AppleDouble files if extended attributes are unsupported (OS X)
- Set content format metadata when copying to an MTP device
- Fixed F-keys not working in sync config dialog (Linux)
- Revert to default button margin values (Linux)
- Fixed crash when thumbnail loading fails on MTP device
- Fixed main grids not scrolling in parallel during mouse selection
- Revert to default scaling for non-dpi-aware apps
- Integrate FreeFileSync online manual
- Added Slovak translation
Changes for v7.7 - v7.8
- Correctly resolve environment variables containing MTP paths
- Support at and colon characters in SFTP user name
- New context buttons for quick sync config changes
- Report specific error during folder existence check when starting sync
- Fail lately when traversing available MTP devices
- Correctly handle SFTP time-out error when checking folder existence
- Updated on completion command lines for log off/standby/shut down (Linux)
- Support HTML POST redirection for update checks
- Calculate UTC file times like Windows Explorer for MTP devices
- Don't reuse timed-out SFTP sessions with thread affinity
- Workaround SFTP session hang after unsupported statvfs command
- Updated OpenSSL to 1.0.2e
Changes for v7.5 - v7.7
- Support variable drive letters for config history when using FreeFileSync portable
- Skip non-storage functional objects at MTP device level
- Log and show error messages without hanging when running as a service
- Navigate between sync settings panels with arrow keys
- Fixed volume shadow copy file path generation
- Handle integer overflows when comparing file times
- Ignore more than one file time shift
- Reworked grid to support mouse highlight areas
- Allow minute precision for file time shifts
- Warn about unsupported MTP and SFTP paths in RealtimeSync
- Strip superfluous mode parameters when creating a directory (Linux, OS X)
- Correctly detect system language for English UK
- Store program language by name to handle changing ids
- Fixed crash during application exit after using SFTP
Changes for v7.4 - v7.5
- Detect moved files on source even for targets with no (SFTP) or unstable (FAT) file id support
- Improved performance for detection of moved files by over 50%
- Added folder picker to select SFTP paths
- Support additional SFTP ciphers by building upon OpenSSL backend
- Added 10-seconds time out when SFTP command is hanging indefinitely
- Work around unexpected SFTP session termination on Synology servers
- Fixed various libssh2 and OpenSSL memory leaks
- Fixed FreeFileSync taskbar link reuse (Windows 7)
- Avoid last error code being overwritten by certain C runtimes before evaluation
- Run online update check asynchronously (Windows)
- Check source item existence before cleaning target during versioning (Linux, OS X)
- Check folder recursion limit to catch stack overflows
- Doubled potential folder traversal recursion depth (Windows)
- Consider child elements of excluded folders during database clean up
Changes for v7.3 - v7.4
- Switch between all folder pair configurations directly in the sync config dialog
- Support macros, path by volume name for config files on command line
- Support slash as path separator on command line (Windows)
- Allow slash as path separator in filter dialog (Windows)
- Discard SFTP connection after 20 seconds of idle time
- Fixed file already existing error when changing file name case (OS X)
- New keyboard shortcuts to open external applications
- Fixed clipboard being cleared when opening sync config dialog (OS X)
- Workaround wxWidgets bug breaking copy/paste shortcuts (OS X)
- Fixed disabled button icons not being updated in the config dialog
- Fixed launcher error messages not being shown (Windows XP)
- Fixed launcher showing incorrect error about missing service pack (Windows XP)
- Revised help file and consolidated into online help
Changes for v6.15 - v7.0
- Support synchronization with MTP devices (Android, iPhone, tablet, digital camera)
- Implemented file system abstraction layer
- New database format supporting generic file ids
- Pre-allocate disk space when writing file output stream
- Late failure when moving multiple items to recycle bin
- Keep UI responsive while loading/saving database file
- Improved error reporting indicating failed item when moving to recycle bin
- Transactional error handling when closing file streams
- Pass correct thread id when creating Minidump (Windows)
- Fixed directory icon loading resource leak (Linux)
- Fixed RealtimeSync message provider exception safety issue (Windows)
- Avoid locking issues by creating the log file after batch synchronization
- Fixed RealtimeSync monitoring for items beyond subfolders (Linux)
- Fall back to file extension during file icon load error
- Show file icon by extension as temporary placeholder
- Work around silent failure to copy file times to external drives (Linux)
Changes for v6.14 - v6.15
- Revert to log file naming convention without colon character
- Prevent endless recursion when traversing into folder on corrupt file system
- Fixed view filter button rendering issue for RTL languages
- Fixed grid losing far scroll positions when increasing icon sizes
- Flush file buffers before verifying file copy
- Update existing items when retrying failed folder traversal
- Harmonized bitmap file loading by removing format variance
- Fixed invalid argument error when setting file times (Linux)
- Fixed application hang when loading icon for named pipe (Linux)
- Improved file copy read-ahead performance (Linux)
- Use native file I/O for stream operations (Linux, OS X)
- Fixed file copy creating zero-sized files (OS X)
- Automatically create Minidump files during an application crash (Windows)
- Check for missing service pack to help diagnose crash (Windows 7)
- New menu item with download link after a version update
- Work around C-function memory race condition when formatting time
- Added Hindi language
Changes for v6.13 - v6.14
- New buttons allow changing the order of folder pairs
- New keyboard shortcuts for rearranging folder pairs
- Preserve comparison results when deleting a specific folder pair
- Allow inserting new folder pairs into the middle of the list
- Append status to log file names when warnings occur
- Don't interrupt immediate comparison when starting a .ffs_gui file for slow devices
- Work around wxWidgets bug eating up command keys in text boxes (Linux)
- Fixed incorrect parameter error when checking recycle bin on drive mounted with Paragon ExtFS (Windows)
- Use colon as time stamp seperator in log file names
- Refactored basic low-level file traversal routine
- Optimized file icon startup procedure
- Fixed occasional failure to set modification times on Samba shares (OS X)
- Transfer creation times during file copy (OS X)
- Support copying file times with nano-second precision (OS X)
Changes for v6.12 - v6.13
- Fixed crash when failing to create log file during batch run
- Show directory traversal errors as conflict category on grid
- Improved file filter behavior for certain edge cases when updating the database
- Fixed crash when task scheduler ends FreeFileSync after a certain time (Windows)
- Don't show alternative folder paths if volume name is empty
- Support silent installation for Inno Setup (Windows)
- Fixed recursive yield when minimized into notification area (Linux, OS X)
- Include ACLs when copying file and folder permissions (OS X)
- New file copy routine including extended attributes (OS X)
- Fixed failure to permanently delete directories containing symlinks
- Copy extended attributes when creating new folders and symlinks (OS X)
- Restore process umask after creating lock file (Linux, OS X)
- Copy directory permissions by default (Linux, OS X)
- Optimized construction of merged path filters
- Exclude items subject to traversal errors when updating the database
Changes for v6.11 - v6.12
- New "Actions" menu bar entry with basic operations
- Fixed crash after comparison while needlessly copying traveral results
- Support auto-updater URL redirection (Linux, OS X)
- Merged installer translations into .lng files
- Fully translated FreeFileSync context menu options and file types in Windows Explorer
- More structured symlink handling options
- Scroll to active selection in config list box on startup
- Fixed delete key to remove items in config history panel (OS X)
- Fixed language file parser showing incorrect row on error
- Fixed crash during sync due to unsupported SSE instructions (Server 2003, XP 64-bit)
- Fixed startup error due to invalid handle type
- Always log folder pair paths even if there is nothing to sync
- Updated translation files
Changes for v6.10 - v6.11
- Updated Recycle Bin access for Windows 10
- New command line option "-edit" to load configuration without executing
- Case-insensitive command line argument evaluation
- New Explorer context menu options for ffs_gui, ffs_batch files
- Added sync variant to folder pair info in log file
- Don't process and log folder pair if nothing to do except writing DB file
- Fixed liblzma.5.dylib not found during startup (OS X 10.8)
- Added version info to application bundles (OS X)
- Fixed incorrect warning when configuration contains empty folder pairs
- Replaced misleading inotify error message "No space left on device" (Linux)
- Fixed FreeFileSync launcher blocking app folder move (OS X)
- Updated default main dialog layout
- Fixed async error evaluation when creating volume shadow copies
- Keep user interface responsive while creating a volume shadow copy
- Fixed error when starting asynchronously from a batch script
- Show progress of writing log files
- Fixed updated file being left deleted when copying permission failed
- New Project website: http://www.freefilesync.org/
Changes for v6.9 - v6.10
- Fixed crash when accessing recycle bin in compatibility mode (Windows 7, 8)
- Draw middle grid selection irrespective of focus column
- Don't show parts of progress graph if nothing to sync
- Break on missing directories before evaluating warnings
- Ignore leading/trailing whitespace in search panel
- Disable search panel during comparison
- Disable shortkeys during comparison
- Log folder pair only if files are synced
- Fixed number separator formatting for english locale
- Copying locked files now inactive by default
- Show all affected folders when warning about a shared sub folder
Changes for v6.8 - v6.9
- Reuse FreeFileSync taskbar link when available (Windows 7)
- Limit number of retries when creating temporary files
- Fixed bitmap rendering issue for high-contrast color schemes
- Revised and fixed unclear GUI texts
- Updated deprecated system call when suspending idle (OS X)
- Fixed retry when failing to determine recycle bin status
- Added progress graph legend
- Updated translation files
Changes for v6.7 - v6.8
- New comparison option to ignore file time shift in hours
- Tentatively disabled DST hack affecting FAT file creation times
- New menu option to reset gui layout
- File sizes ignore sync direction in overview panel
- Sort by file name also sorts folder names
- Main grid column "full path" includes file name
- Always position comparison progress below main buttons
- Fixed high-precision tick count calculations
- Fully restart directory traversal on errors
- Updated help file with steps to schedule a batch job (OS X)
Changes for v6.6 - v6.7
- Redesigned comparison progress statistics
- Fixed crash when loading incompatible config file
- Added
button to config panel - Avoid sync progress dialog repositioning
- Resolved crash when loading sync settings for Arabic locale
- Restored cancel button width
- Help window not forced to float over main dialog
- Fixed overwriting old-format batch files
- Harmonized view category sequence
- Merged similar translation items
- Fixed crash when scrolling help file without focus
Changes for v6.5 - v6.6
- Fixed large font size standard button layout
- Fixed config dialog graphics glitch with large font sizes
- Exit FreeFileSync launcher process during update
- Exclude temporary files from RealtimeSync monitor
- Implement correct standard button spacing (OS X)
- Fixed SELinux compilation issue (Linux)
- Installer adds RealtimeSync link to desktop (Windows)
- Improved makefile (Linux, OS X)
- Reduced binary file size (Linux)
- Updated translation files
Changes for v6.4 - v6.5
- Support preview for RAW CR2 image files (Windows Vista and later)
- Fixed startup exception when using task scheduler (Windows XP)
- Correctly resolve SystemRoot NT path syntax for symbolic links
- Fixed incorrect error codes being reported (Windows XP)
- Fixed config dialog shortcut key presses getting lost (OS X)
- Allow vertical layout for top button panel
- Code cleanup: removed support for old database and XML config formats
- Center sync progress dialog
- Updated help file
Changes for v6.1 - v6.4
- Combined comparison, filter and sync config dialogs
- Support alternate GlobalSettings.xml file via command line
- Toggle between config panels with F6, F7, F8
- Show config status icons in notebook panel caption
- Redesigned configuration dialog layouts
- Fixed startup error after moving installation directory
- Fixed retry on failure to resolve path by volume name
- Resolved ERROR_ALREADY_EXISTS when creating temporary recycle bin subdirectory
- Added "save as gui job" button on main dialog
- Added Bulgarian language
- FreeFileSync 6.3 [2014-03-01]
- -----------------------------
- No wait time anymore while searching for recycle bin (Windows Vista and later)
- Revised synchronization progress graph
- Clean up "On completion" considering last usage
- Fixed CTRL + C keyboard short cut in filter dialog (OS X)
- Resolved static initialization order issues
- Reduced disk accesses when resolving directory name
- Added view filter labels
- Updated translation files
- Updated help file
- FreeFileSync 6.2 [2014-02-01]
- -----------------------------
- New synchronization progress graph
- Skip binary comparison for files excluded via time span or size
- Fixed configuration panel ordering for entries starting with numbers
- Filled gap after last grid column to cover full window width
- Workaround wxWidgets image button bug showing obsolete disabled state
- Refined file existence checks to handle restricted permissions
- Disable file filter button during comparison
- Fixed mouse wheel grid scrolling for GTK2 (Linux)
- Avoid dummy texts during progress dialog init (OS X)
- Translated external application default commands in global settings
- Support cancel while encoding extended time information
- Highlight non-zero synchronization statistics
Changes for v6.0 - v6.1
- Released RealtimeSync for OS X
- Handle errors loading reference batch config
- Disable user mode exception swallowing for Windows 7 SP1
- Always exclude root nodes on manual selection when excluded items are hidden
- Fixed showing duplicate custom "on completion" commands
- Close old directory handle first before executing directory traversal fallback
- Show negative batch synchronization result in log file name
- Avoid file system race when creating temporary files
- Transfer creation and modification times on folder creation
- Fixed empty main dialog configuration migration issue on Mac OS X
Changes for v5.23 - v6.0
- Revised main dialog panel layout
- Show arrow icon for shortcut files and symlinks
- Execute the "on completion" command asynchronously
- Resolved invalid grid background when context menu is shown
- Set negative file time tolerance to disable file time check
- Optimized sequence of steps when saving database files
- Prevent temporary incorrect statistics after unexpected increase in workload
- Fixed default height when mixing panels with and without caption on main dialog
- New view filter button "show excluded items"
- New keyboard shortcuts for file filter and sync settings
- Removed libpng15.so dependency for openSUSE 13.1
- Updated help file
- Updated translation files
Changes for v5.22 - v5.23
- Allow sorting root nodes on overview panel
- Support retry on failure to resolve path by volume name
- Copy high-precision modification times for files and symlinks
- Align top panel height with comparison and sync buttons
- Show lock owner while waiting on a locked directory
- Resolved help file W3C validation issues
- Fixed high contrast accessibility issues in help
- Fixed crash for CPUs without SSE2 when using VSS (Windows XP)
- Prevent progress statistics timer overflow
- Save RealtimeSync settings before forced exit due to shutdown or log off
- Resolved contract violation error due to out of memory
- RealtimeSync does not block system shutdown anymore
- Added "select all" context menu option for progess log
- Handle progress log keyboard input ignoring input focus
- Fixed category icon background color issues
- Report error when reading active config file failed during save
- Preload adjacent file icons on grid
Changes for v5.21 - v5.22
- New options for automatic retry after error
- Improved compliance with Windows User Experience guidelines
- Harmonized popup dialog layouts
- Correctly show program menu when main dialog receives focus (OS X)
- Revised configuration dialog layouts and designs
- Fixed crash on startup for CPUs without SSE2 support (Windows XP)
- Work around wxWidgets bug for sorted list boxes (Linux)
- Updated and revised help file
- Early parameter validation for filter and sync config dialogs
- Fixed followed directory symlinks being incorrectly excluded
- Automatically calculate best initial message box size
- Progress graph and status icons support high contrast color schemes
- Include directory child-elements when manually setting filter
- Allow manual filter for short name on overview panel
- Don't treat file drops on directory input fields as URI (Linux)
- Updated translation files
Changes for v5.20 - v5.21
- Detect moved/renamed files in mirror and custom variants
- New database format for two way variant: old database files are converted automatically
- Support double-clicking ffs_gui/ffs_batch files (OS X)
- Integrated search panel (Ctrl + F, F3) into main dialog
- Merged variant names into top button labels
- Hide dock icon while minimized to notification area (OS X)
- New keyboard shortcuts: F5, F6, F7, F8, F9, F10
- Further reduced size of database files by 10%
- Fixed Outlook *.ost files found missing on VSS snapshot volumes
- Added include filter context menu option
- Correctly scroll to search hits on different grid
- Always remove .ffs_tmp files permanently
- Fixed layout for buttons with text and graphics for RTL languages (Arabic, Hebrew)
- Revised file filter parser: new syntax for excluding items in subdirectories
- Improved configuration merge algorithm
- Fixed crash when showing help due to wxWigets 64-bit bug in help component (Windows 8)
- Avoid progress dialog graph flicker during resize when too few samples are available
- Progress status when deleting files not greyed out anymore
- Increased time-out to 20 seconds when checking for directory existence
- Exclude broken symlinks via filter before showing error message
- Follow symlinks when checking file/directory existence (Linux)
- Consistently set batch error codes during startup phase
- Updated translation files
Changes for v5.19 - v5.20
- Fixed crash on startup due to wxWigets 64-bit bug in font enumeration (Windows 8)
Changes for v5.16 - v5.19
- Redesigned progress dialog including new items graph
- New command line syntax: set directory names of a .ffs_gui/.ffs_batch externally
- Explicit button on progress dialog to minimize to systray
- Fixed progress graph labels being truncated (Debian, Ubuntu, openSUSE)
- Resolved main dialog z-order issues during sync (OS X)
- Reduced progress dialog layout twitching
- Further improved comparison speed by 10%
- Use proper config file path in file picker dialog (OS X)
- Never interrupt when updating a file with fail-safe file copy after target was deleted
- Prevent crash when closing progress dialog while paused (OS X)
- Support external command lines starting with whitespace (Windows)
- Show warning before starting external applications for more than 10 items
- Start external applications synchronously if needed to avoid running out of system resources
- Don't show hidden progress dialog when showing an error message in silent batch mode (OS X)
- Correctly show file names containing ampersand characters in progress dialog
- Adapt size of results dialog to fit contents
- Correctly execute file move before parent directory will be deleted
- Show a blinking system tray icon on errors instead of a modal dialog in RealtimeSync
- Added installation size for Windows' Add/Remove Programs
- FreeFileSync 5.18
- -----------------
- Work around boost 1.54 bug "The procedure entry point GetTickCount64 could not be located in the dynamic link library KERNEL32.dll" (Windows XP)
- FreeFileSync 5.17
- -----------------
- Consider target file when updating followed file symlinks
- Support moving files to recycle bin contained in followed directory symlinks
- Move instead of copy updated files into versioning directory
- Reduced memory peak when loading large database files after comparison
- Check recycle bin existence only once per base folder and only if deletions occur (Windows)
- Revised and enhanced error messages
- Show moved files in same category as updated files
- More pessimistic calculation of required disk space reducing false positives
- Implemented platform-specific standard button ordering (Linux, OS X)
- Set configuration panel primary orientation to vertical
- Added new checks and error message strings for translation file parser
- Revised middle grid inactive color and duplicate equality symbol
- Skip XML comments while parsing config files
- Redesigned confirmation popup dialogs
- Standard button spacing conforms to operating system conventions
- Shrinked memory consumption of file hierarchy data structures
- Don't show file deletion dialog if selection is empty
- Fixed incorrect progress statistics if a file or directory is deleted externally after comparison
- Focus grid cursor row after switching sides with keyboard direction keys
- Improved localization process: find translation deltas more easily, better error reporting
- Reset initiated grid selection when changing grid cursor
- Improved sync progress dialog layout
- Suppress dubious wxWidgets error message "locale 'es_AR' can not be set". (OS X)
- Don't show busy cursor on synchronization results dialog
- Log error message upon retry as type info only
- Updated translation files
Changes for v3.13 - v3.14
- New keyboard shortcuts: F5: compare F6: synchronize
- Skip to next folder pair if fatal error occured (instead of abort)
- Reload last selected configuration on startup
- Abort with error when copying to empty directory field
- Full log information after comparison (including file transfer)
- Check read access for source file before overwriting target
- Fixed possible application crash after comparison
- Fixed possible network freeze when comparing
- Maximum number of logfiles can be specified
- Don't condense whitespace when loading XML configuration
- RealtimeSync: Put executable name in quotes when parsing *.ffs_batch file
- Large program icons - 256 x 256
- Handle daylight saving time(DST) on FAT network shares
- Skip DST handling if drive does not support accurate file times
- Many small GUI/usability fixes
- Added Korean translation