Merge pull request 'update' (#1) from update into main

Reviewed-on: #1
main
pinb 3 months ago
commit 115eb8d0c6

6
.gitignore vendored

@ -0,0 +1,6 @@
/venv
/dist
/build
/__pycache__
my_data.db
.DS_Store

@ -13,4 +13,4 @@ if __name__ == '__main__':
sys.exit(app.exec_())
# pyinstaller --onefile bunnysync.py --add-data "images/realrabbit.ico:images" --add-data "images/realrabbit2.png:images" --icon=images/realrabbit.png --noconsole
# pyinstaller --onefile bunnysync.py --add-data "images/realrabbit.png:images" --add-data "images/realrabbit2.png:images" --icon=images/realrabbit.png --noconsole

@ -0,0 +1,45 @@
# -*- mode: python ; coding: utf-8 -*-
a = Analysis(
['bunnysync.py'],
pathex=[],
binaries=[],
datas=[('images/realrabbit.ico', 'images'), ('images/realrabbit2.png', 'images')],
hiddenimports=[],
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=[],
noarchive=False,
optimize=0,
)
pyz = PYZ(a.pure)
exe = EXE(
pyz,
a.scripts,
a.binaries,
a.datas,
[],
name='bunnysync',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
upx_exclude=[],
runtime_tmpdir=None,
console=False,
disable_windowed_traceback=False,
argv_emulation=False,
target_arch=None,
codesign_identity=None,
entitlements_file=None,
icon=['images/realrabbit.ico'],
)
app = BUNDLE(
exe,
name='bunnysync.app',
icon='images/realrabbit.ico',
bundle_identifier=None,
)

@ -74,32 +74,35 @@ class FolderSynchronizer:
count_sync = 0
for root, _, files in os.walk(src_folder):
for filename in files:
src_path = os.path.join(root, filename)
rel_dir = os.path.relpath(root, src_folder)
dest_path = os.path.join(dest_folder, rel_dir, filename)
total_sync += 1
src_modified = os.path.getmtime(src_path)
file_info = self.get_file_info(rel_dir, filename)
if not file_info:
# New file
os.makedirs(os.path.dirname(dest_path), exist_ok=True)
shutil.copy2(src_path, dest_path)
count_sync += 1
dest_modified = current_time
modified1, exist1, modified2, exist2 = src_modified, 1, dest_modified, 1
else:
# Existing file
if src_modified > file_info[3] or not file_info[4]:
shutil.copy2(src_path, dest_path)
count_sync += 1
dest_modified = current_time
modified1, exist1, modified2, exist2 = src_modified, 1, dest_modified, 1
try:
src_path = os.path.join(root, filename)
rel_dir = os.path.relpath(root, src_folder)
dest_path = os.path.join(dest_folder, rel_dir, filename)
total_sync += 1
src_modified = os.path.getmtime(src_path)
file_info = self.get_file_info(rel_dir, filename)
if not file_info:
# New file
os.makedirs(os.path.dirname(dest_path), exist_ok=True)
shutil.copy2(src_path, dest_path)
count_sync += 1
dest_modified = current_time
modified1, exist1, modified2, exist2 = src_modified, 1, dest_modified, 1
else:
modified1, exist1, modified2, exist2 = src_modified, 1, file_info[5], file_info[6]
self.update_db(rel_dir, filename, modified1, exist1, modified2, exist2)
# Existing file
if src_modified > file_info[3] or not file_info[4]:
shutil.copy2(src_path, dest_path)
count_sync += 1
dest_modified = current_time
modified1, exist1, modified2, exist2 = src_modified, 1, dest_modified, 1
else:
modified1, exist1, modified2, exist2 = src_modified, 1, file_info[5], file_info[6]
except:
pass
finally:
self.update_db(rel_dir, filename, modified1, exist1, modified2, exist2)
return total_sync, count_sync

Loading…
Cancel
Save