From 81b549558c758eae32575adce0949cfd955f5572e244b4f098120fef01362027 Mon Sep 17 00:00:00 2001 From: Jannik Seiler Date: Tue, 27 Dec 2022 17:26:17 +0000 Subject: [PATCH] Accepting request 1045531 from home:seil0:branches:network MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Update to 11.29 - Fixed crash after 1-byte file copy from MTP device - Fixed incorrect installer z-order during auto-update (macOS) - Compress copied file only if target folder is marked as NTFS-compressed (Windows) - Show install errors without requiring access to "System Events" (macOS) - Fall back to creation time if modification time is missing on MTP device - Copy/paste filter config via operating system clipboard - Show FreeFileSync startup error message when called from RealTimeSync - Avoid server round trip when preparing summary email - Show path conflict warning aggregated into groups - Don't assume path conflict if single write and multiple ignored items - Fixed CTRL + Insert clipboard copy for some text controls (Windows, Linux) - Changes from 11.28 - Recover from corrupted database file - Save database files pair-wise as a transaction - Fixed FTP access for Xiaomi "File Manager" - Fixed filter full path detection for root directory (Linux/macOS) - Fixed recycle bin double initialization bug (Windows) - Fixed incorrect case-insensitive string comparison for i and ı - Round progress percentage numbers down - Changes from 11.27 - Fixed "Some files will be synchronized as part of multiple base folders" false-negative - Fixed "Unexpected size of data stream" for Google Drive - Fixed crash when downloading empty file from Google Drive - RealTimeSync: fixed ffs_batch not accepted as valid configuration - Fixed top buttons vertical GUI layout - Fixed progress dialog font on Ubuntu MATE - Support cut/copy/paste for filter settings - Fixed free disk space calculation if target folder not yet created - Changes from 11.26 - Faster file copy for SSD-based hard drives (Linux, macOS) - Don't fill the OS file cache during file copy (macOS) - Removed redundant memory buffering during file copy - Fixed ERROR_FILE_EXISTS on Samba share when copying files with NTFS extended attributes - Show warning when recycle bin is not available (macOS, Linux) - Customize config item background colors - Fixed macOS menu bar not showing after app start - Fixed normalizing strings with broken UTF encoding - Fixed sound playback not working (Linux) - Don't allow creating file names ending with dot character (Windows) - Changes from 11.25 - Fixed crash when normalizing Unicode non-characters - Fixed crash when accesssing Google Drive - Fixed regession for decomposed Unicode comparison - Fixed "exit code 106: --sign is required" error on macOS - Reset icon cache after each comparison - Changes from 11.24 - Enhanced filter syntax to match files only (append ':') - Fixed "Some files will be synchronized as part of multiple base folders": no more false-positives - Detect full path filter items and convert to relative path - Auto-detect FTP server character encoding (UTF8 or ANSI) - Cancel grid selection via Escape key or second mouse button - Apply conflict preview limit accross all folder pairs - Require config type and file extension to match - Fixed view filter panel vertical layout - Strict validation of UTF encoding OBS-URL: https://build.opensuse.org/request/show/1045531 OBS-URL: https://build.opensuse.org/package/show/network/FreeFileSync?expand=0&rev=59 --- FreeFileSync-build.patch | 68 +++++++++++------------ FreeFileSync-disable-in-app-updates.patch | 50 ++++++++--------- FreeFileSync.changes | 59 ++++++++++++++++++++ FreeFileSync.spec | 4 +- FreeFileSync_11.23_Source.zip | 3 - FreeFileSync_11.29_Source.zip | 3 + 6 files changed, 123 insertions(+), 64 deletions(-) delete mode 100644 FreeFileSync_11.23_Source.zip create mode 100644 FreeFileSync_11.29_Source.zip diff --git a/FreeFileSync-build.patch b/FreeFileSync-build.patch index d9cd2d8..b11a507 100644 --- a/FreeFileSync-build.patch +++ b/FreeFileSync-build.patch @@ -1,57 +1,57 @@ -diff -Naur FreeFileSync_11.21_Source_orig/FreeFileSync/Source/Makefile FreeFileSync_11.21_Source/FreeFileSync/Source/Makefile ---- FreeFileSync_11.21_Source_orig/FreeFileSync/Source/Makefile 2022-05-17 10:02:16.000000000 +0200 -+++ FreeFileSync_11.21_Source/FreeFileSync/Source/Makefile 2022-06-10 17:50:49.936634424 +0200 -@@ -2,9 +2,9 @@ +diff -Naur FreeFileSync_11.29_Source_orig/FreeFileSync/Source/Makefile FreeFileSync_11.29_Source/FreeFileSync/Source/Makefile +--- FreeFileSync_11.29_Source_orig/FreeFileSync/Source/Makefile 2022-12-16 20:32:28.000000000 +0100 ++++ FreeFileSync_11.29_Source/FreeFileSync/Source/Makefile 2022-12-25 16:32:44.158452802 +0100 +@@ -3,9 +3,9 @@ - cxxFlags = -std=c++2b -pipe -DWXINTL_NO_GETTEXT_MACRO -I../.. -I../../zenXml -include "zen/i18n.h" -include "zen/warn_static.h" \ + CXXFLAGS += -std=c++2b -pipe -DWXINTL_NO_GETTEXT_MACRO -I../.. -I../../zenXml -include "zen/i18n.h" -include "zen/warn_static.h" \ -Wall -Wfatal-errors -Wmissing-include-dirs -Wswitch-enum -Wcast-align -Wnon-virtual-dtor -Wno-unused-function -Wshadow -Wno-maybe-uninitialized \ - -O3 -DNDEBUG `wx-config --cxxflags --debug=no` -pthread + -O3 -DNDEBUG `wx-config --cxxflags --debug=no` -pthread -fpie --linkFlags = -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -pthread -+linkFlags = -s `wx-config --libs std, aui, richtext --debug=no` -pthread -lz -pie +-LDFLAGS += -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -pthread ++LDFLAGS += -s `wx-config --libs std, aui, richtext --debug=no` -pthread -lz -pie - cxxFlags += `pkg-config --cflags openssl` -@@ -16,9 +16,10 @@ - cxxFlags += `pkg-config --cflags libssh2` - linkFlags += `pkg-config --libs libssh2` + CXXFLAGS += `pkg-config --cflags openssl` +@@ -17,9 +17,10 @@ + CXXFLAGS += `pkg-config --cflags libssh2` + LDFLAGS += `pkg-config --libs libssh2` --cxxFlags += `pkg-config --cflags gtk+-2.0` -+cxxFlags += `pkg-config --cflags gtk+-3.0` -+linkFlags += `pkg-config --libs gtk+-3.0` +-CXXFLAGS += `pkg-config --cflags gtk+-2.0` ++CXXFLAGS += `pkg-config --cflags gtk+-3.0` ++LDFLAGS += `pkg-config --libs gtk+-3.0` #treat as system headers so that warnings are hidden: --cxxFlags += -isystem/usr/include/gtk-2.0 -+cxxFlags += -isystem/usr/include/gtk-3.0 +-CXXFLAGS += -isystem/usr/include/gtk-2.0 ++CXXFLAGS += -isystem/usr/include/gtk-3.0 #support for SELinux (optional) SELINUX_EXISTING=$(shell pkg-config --exists libselinux && echo YES) -diff -Naur FreeFileSync_11.21_Source_orig/FreeFileSync/Source/RealTimeSync/Makefile FreeFileSync_11.21_Source/FreeFileSync/Source/RealTimeSync/Makefile ---- FreeFileSync_11.21_Source_orig/FreeFileSync/Source/RealTimeSync/Makefile 2022-05-17 10:02:16.000000000 +0200 -+++ FreeFileSync_11.21_Source/FreeFileSync/Source/RealTimeSync/Makefile 2022-06-10 17:51:33.900512197 +0200 -@@ -2,14 +2,15 @@ +diff -Naur FreeFileSync_11.29_Source_orig/FreeFileSync/Source/RealTimeSync/Makefile FreeFileSync_11.29_Source/FreeFileSync/Source/RealTimeSync/Makefile +--- FreeFileSync_11.29_Source_orig/FreeFileSync/Source/RealTimeSync/Makefile 2022-12-16 20:32:28.000000000 +0100 ++++ FreeFileSync_11.29_Source/FreeFileSync/Source/RealTimeSync/Makefile 2022-12-25 16:33:54.050236000 +0100 +@@ -3,14 +3,15 @@ - cxxFlags = -std=c++2b -pipe -DWXINTL_NO_GETTEXT_MACRO -I../../.. -I../../../zenXml -include "zen/i18n.h" -include "zen/warn_static.h" \ + CXXFLAGS += -std=c++2b -pipe -DWXINTL_NO_GETTEXT_MACRO -I../../.. -I../../../zenXml -include "zen/i18n.h" -include "zen/warn_static.h" \ -Wall -Wfatal-errors -Wmissing-include-dirs -Wswitch-enum -Wcast-align -Wnon-virtual-dtor -Wno-unused-function -Wshadow -Wno-maybe-uninitialized \ - -O3 -DNDEBUG `wx-config --cxxflags --debug=no` -pthread + -O3 -DNDEBUG `wx-config --cxxflags --debug=no` -pthread -fpie --linkFlags = -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -pthread -+linkFlags = -s `wx-config --libs std, aui, richtext --debug=no` -pthread -lz -pie +-LDFLAGS += -s -no-pie `wx-config --libs std, aui, richtext --debug=no` -pthread ++LDFLAGS += -s `wx-config --libs std, aui, richtext --debug=no` -pthread -lz -pie #Gtk - support "no button border" --cxxFlags += `pkg-config --cflags gtk+-2.0` -+cxxFlags += `pkg-config --cflags gtk+-3.0` -+linkFlags += `pkg-config --libs gtk+-3.0` +-CXXFLAGS += `pkg-config --cflags gtk+-2.0` ++CXXFLAGS += `pkg-config --cflags gtk+-3.0` ++LDFLAGS += `pkg-config --libs gtk+-3.0` #treat as system headers so that warnings are hidden: --cxxFlags += -isystem/usr/include/gtk-2.0 -+cxxFlags += -isystem/usr/include/gtk-3.0 +-CXXFLAGS += -isystem/usr/include/gtk-2.0 ++CXXFLAGS += -isystem/usr/include/gtk-3.0 cppFiles= cppFiles+=application.cpp -diff -Naur FreeFileSync_11.21_Source_orig/libssh2/libssh2_wrap.h FreeFileSync_11.21_Source/libssh2/libssh2_wrap.h ---- FreeFileSync_11.21_Source_orig/libssh2/libssh2_wrap.h 2022-05-17 10:02:16.000000000 +0200 -+++ FreeFileSync_11.21_Source/libssh2/libssh2_wrap.h 2022-06-10 17:53:11.880246224 +0200 +diff -Naur FreeFileSync_11.29_Source_orig/libssh2/libssh2_wrap.h FreeFileSync_11.29_Source/libssh2/libssh2_wrap.h +--- FreeFileSync_11.29_Source_orig/libssh2/libssh2_wrap.h 2022-12-16 20:32:30.000000000 +0100 ++++ FreeFileSync_11.29_Source/libssh2/libssh2_wrap.h 2022-12-25 16:37:16.545609654 +0100 @@ -20,6 +20,22 @@ #error libssh2_sftp.h header guard changed #endif @@ -75,9 +75,9 @@ diff -Naur FreeFileSync_11.21_Source_orig/libssh2/libssh2_wrap.h FreeFileSync_11 //fix libssh2 64-bit warning mess: https://github.com/libssh2/libssh2/pull/96 #undef libssh2_userauth_password inline int libssh2_userauth_password(LIBSSH2_SESSION* session, const std::string& username, const std::string& password) -diff -Naur FreeFileSync_11.21_Source_orig/zen/ring_buffer.h FreeFileSync_11.21_Source/zen/ring_buffer.h ---- FreeFileSync_11.21_Source_orig/zen/ring_buffer.h 2022-05-17 10:02:18.000000000 +0200 -+++ FreeFileSync_11.21_Source/zen/ring_buffer.h 2022-06-10 17:54:25.040065784 +0200 +diff -Naur FreeFileSync_11.29_Source_orig/zen/ring_buffer.h FreeFileSync_11.29_Source/zen/ring_buffer.h +--- FreeFileSync_11.29_Source_orig/zen/ring_buffer.h 2022-12-16 20:32:30.000000000 +0100 ++++ FreeFileSync_11.29_Source/zen/ring_buffer.h 2022-12-25 16:37:57.073486335 +0100 @@ -8,6 +8,7 @@ #define RING_BUFFER_H_01238467085684139453534 diff --git a/FreeFileSync-disable-in-app-updates.patch b/FreeFileSync-disable-in-app-updates.patch index 16b9125..bd1e895 100644 --- a/FreeFileSync-disable-in-app-updates.patch +++ b/FreeFileSync-disable-in-app-updates.patch @@ -1,28 +1,28 @@ -diff -Naur FreeFileSync_11.23_Source_orig/FreeFileSync/Source/ui/gui_generated.cpp FreeFileSync_11.23_Source/FreeFileSync/Source/ui/gui_generated.cpp ---- FreeFileSync_11.23_Source_orig/FreeFileSync/Source/ui/gui_generated.cpp 2022-07-23 15:18:28.000000000 +0200 -+++ FreeFileSync_11.23_Source/FreeFileSync/Source/ui/gui_generated.cpp 2022-08-26 15:47:40.998770347 +0200 +diff -Naur FreeFileSync_11.29_Source_orig/FreeFileSync/Source/ui/gui_generated.cpp FreeFileSync_11.29_Source/FreeFileSync/Source/ui/gui_generated.cpp +--- FreeFileSync_11.29_Source_orig/FreeFileSync/Source/ui/gui_generated.cpp 2022-12-16 20:32:32.000000000 +0100 ++++ FreeFileSync_11.29_Source/FreeFileSync/Source/ui/gui_generated.cpp 2022-12-25 16:40:47.704967137 +0100 @@ -108,13 +108,14 @@ - m_menuItemHelp = new wxMenuItem( m_menuHelp, wxID_HELP, wxString( _("&View help") ) + wxT('\t') + wxT("F1"), wxEmptyString, wxITEM_NORMAL ); - m_menuHelp->Append( m_menuItemHelp ); + m_menuItemHelp = new wxMenuItem( m_menuHelp, wxID_HELP, wxString( _("&View help") ) + wxT('\t') + wxT("F1"), wxEmptyString, wxITEM_NORMAL ); + m_menuHelp->Append( m_menuItemHelp ); -- m_menuHelp->AppendSeparator(); -+ // disable update/auto update actions for packaged version (they are only hidden, to not break any code and keep the patch small) -+ //m_menuHelp->AppendSeparator(); +- m_menuHelp->AppendSeparator(); ++ // disable update/auto update actions for packaged version (they are only hidden, to not break any code and keep the patch small) ++ //m_menuHelp->AppendSeparator(); - m_menuItemCheckVersionNow = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("&Check for updates now") ), wxEmptyString, wxITEM_NORMAL ); -- m_menuHelp->Append( m_menuItemCheckVersionNow ); -+ //m_menuHelp->Append( m_menuItemCheckVersionNow ); + m_menuItemCheckVersionNow = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("&Check for updates now") ) , wxEmptyString, wxITEM_NORMAL ); +- m_menuHelp->Append( m_menuItemCheckVersionNow ); ++ //m_menuHelp->Append( m_menuItemCheckVersionNow ); - m_menuItemCheckVersionAuto = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("Check &automatically once a week") ), wxEmptyString, wxITEM_CHECK ); -- m_menuHelp->Append( m_menuItemCheckVersionAuto ); -+ //m_menuHelp->Append( m_menuItemCheckVersionAuto ); - m_menuItemCheckVersionAuto->Check( true ); + m_menuItemCheckVersionAuto = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("Check &automatically once a week") ) , wxEmptyString, wxITEM_CHECK ); +- m_menuHelp->Append( m_menuItemCheckVersionAuto ); ++ //m_menuHelp->Append( m_menuItemCheckVersionAuto ); + m_menuItemCheckVersionAuto->Check( true ); - m_menuHelp->AppendSeparator(); -diff -Naur FreeFileSync_11.23_Source_orig/FreeFileSync/Source/ui/main_dlg.cpp FreeFileSync_11.23_Source/FreeFileSync/Source/ui/main_dlg.cpp ---- FreeFileSync_11.23_Source_orig/FreeFileSync/Source/ui/main_dlg.cpp 2022-07-23 15:18:28.000000000 +0200 -+++ FreeFileSync_11.23_Source/FreeFileSync/Source/ui/main_dlg.cpp 2022-08-26 15:48:40.582681036 +0200 -@@ -928,7 +928,7 @@ + m_menuHelp->AppendSeparator(); +diff -Naur FreeFileSync_11.29_Source_orig/FreeFileSync/Source/ui/main_dlg.cpp FreeFileSync_11.29_Source/FreeFileSync/Source/ui/main_dlg.cpp +--- FreeFileSync_11.29_Source_orig/FreeFileSync/Source/ui/main_dlg.cpp 2022-12-16 20:32:32.000000000 +0100 ++++ FreeFileSync_11.29_Source/FreeFileSync/Source/ui/main_dlg.cpp 2022-12-25 16:41:36.056820006 +0100 +@@ -929,7 +929,7 @@ updateGui(); //register regular check for update on next idle event @@ -31,16 +31,16 @@ diff -Naur FreeFileSync_11.23_Source_orig/FreeFileSync/Source/ui/main_dlg.cpp Fr //asynchronous call to wxWindow::Layout(): fix superfluous frame on right and bottom when FFS is started in fullscreen mode Bind(wxEVT_IDLE, &MainDialog::onLayoutWindowAsync, this); -diff -Naur FreeFileSync_11.23_Source_orig/FreeFileSync/Source/ui/version_check.cpp FreeFileSync_11.23_Source/FreeFileSync/Source/ui/version_check.cpp ---- FreeFileSync_11.23_Source_orig/FreeFileSync/Source/ui/version_check.cpp 2022-07-23 15:18:28.000000000 +0200 -+++ FreeFileSync_11.23_Source/FreeFileSync/Source/ui/version_check.cpp 2022-08-26 15:49:30.950625085 +0200 -@@ -77,7 +77,9 @@ +diff -Naur FreeFileSync_11.29_Source_orig/FreeFileSync/Source/ui/version_check.cpp FreeFileSync_11.29_Source/FreeFileSync/Source/ui/version_check.cpp +--- FreeFileSync_11.29_Source_orig/FreeFileSync/Source/ui/version_check.cpp 2022-12-16 20:32:32.000000000 +0100 ++++ FreeFileSync_11.29_Source/FreeFileSync/Source/ui/version_check.cpp 2022-12-25 16:42:36.580635844 +0100 +@@ -83,7 +83,9 @@ return false; const time_t now = std::time(nullptr); - return std::abs(now - lastUpdateCheck) >= 7 * 24 * 3600; //check weekly + //return std::abs(now - lastUpdateCheck) >= 7 * 24 * 3600; //check weekly -+ ++ + return false; } diff --git a/FreeFileSync.changes b/FreeFileSync.changes index 12c7615..2baf95d 100644 --- a/FreeFileSync.changes +++ b/FreeFileSync.changes @@ -1,4 +1,63 @@ ------------------------------------------------------------------- +Sun Dec 25 20:20:12 UTC 2022 - Jannik Seiler + +- Update to 11.29 + - Fixed crash after 1-byte file copy from MTP device + - Fixed incorrect installer z-order during auto-update (macOS) + - Compress copied file only if target folder is marked as NTFS-compressed (Windows) + - Show install errors without requiring access to "System Events" (macOS) + - Fall back to creation time if modification time is missing on MTP device + - Copy/paste filter config via operating system clipboard + - Show FreeFileSync startup error message when called from RealTimeSync + - Avoid server round trip when preparing summary email + - Show path conflict warning aggregated into groups + - Don't assume path conflict if single write and multiple ignored items + - Fixed CTRL + Insert clipboard copy for some text controls (Windows, Linux) +- Changes from 11.28 + - Recover from corrupted database file + - Save database files pair-wise as a transaction + - Fixed FTP access for Xiaomi "File Manager" + - Fixed filter full path detection for root directory (Linux/macOS) + - Fixed recycle bin double initialization bug (Windows) + - Fixed incorrect case-insensitive string comparison for i and ı + - Round progress percentage numbers down +- Changes from 11.27 + - Fixed "Some files will be synchronized as part of multiple base folders" false-negative + - Fixed "Unexpected size of data stream" for Google Drive + - Fixed crash when downloading empty file from Google Drive + - RealTimeSync: fixed ffs_batch not accepted as valid configuration + - Fixed top buttons vertical GUI layout + - Fixed progress dialog font on Ubuntu MATE + - Support cut/copy/paste for filter settings + - Fixed free disk space calculation if target folder not yet created +- Changes from 11.26 + - Faster file copy for SSD-based hard drives (Linux, macOS) + - Don't fill the OS file cache during file copy (macOS) + - Removed redundant memory buffering during file copy + - Fixed ERROR_FILE_EXISTS on Samba share when copying files with NTFS extended attributes + - Show warning when recycle bin is not available (macOS, Linux) + - Customize config item background colors + - Fixed macOS menu bar not showing after app start + - Fixed normalizing strings with broken UTF encoding + - Fixed sound playback not working (Linux) + - Don't allow creating file names ending with dot character (Windows) +- Changes from 11.25 + - Fixed crash when normalizing Unicode non-characters + - Fixed crash when accesssing Google Drive + - Fixed regession for decomposed Unicode comparison + - Fixed "exit code 106: --sign is required" error on macOS + - Reset icon cache after each comparison +- Changes from 11.24 + - Enhanced filter syntax to match files only (append ':') + - Fixed "Some files will be synchronized as part of multiple base folders": no more false-positives + - Detect full path filter items and convert to relative path + - Auto-detect FTP server character encoding (UTF8 or ANSI) + - Cancel grid selection via Escape key or second mouse button + - Apply conflict preview limit accross all folder pairs + - Require config type and file extension to match + - Fixed view filter panel vertical layout + - Strict validation of UTF encoding +------------------------------------------------------------------- Sat Aug 26 15:03:02 UTC 2022 - Jannik Seiler - Update to 11.23 diff --git a/FreeFileSync.spec b/FreeFileSync.spec index 8b9ea49..27040b4 100644 --- a/FreeFileSync.spec +++ b/FreeFileSync.spec @@ -17,7 +17,7 @@ Name: FreeFileSync -Version: 11.23 +Version: 11.29 Release: 0 Summary: Backup software to synchronize files and folders License: GPL-3.0-or-later @@ -66,7 +66,7 @@ mkdir FreeFileSync/Build/Bin %build export TMPDIR=/tmp # necessary since 11.0 -export CXXFLAGS="%{optflags} -fabi-version=2 -fabi-compat-version=2" +export CXXFLAGS="%{optflags}" export CC="gcc" export CXX="g++" diff --git a/FreeFileSync_11.23_Source.zip b/FreeFileSync_11.23_Source.zip deleted file mode 100644 index 2cc3f67..0000000 --- a/FreeFileSync_11.23_Source.zip +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3e2602eea1224caf2dd9fb0d73f9e15248eeb749c7666231464c9f6bfa0ccb66 -size 2651480 diff --git a/FreeFileSync_11.29_Source.zip b/FreeFileSync_11.29_Source.zip new file mode 100644 index 0000000..3564229 --- /dev/null +++ b/FreeFileSync_11.29_Source.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36007cddca37748117770d26e998e96b29dece15785fd1afd99906b62fdb2065 +size 2663556