Release SyncVito 1.0.15

This commit is contained in:
Davito committed 2026-09-29 05:08:56 +02:00
1 parent 1d0b1b2d38
commit 6c677f0161
9 files changed
+163 -10

No files matched your search

+4
View File
@@ -73,6 +73,7 @@ class SyncTask:
conflict_mode: ConflictMode = ConflictMode.NEWER_WINS
interval_minutes: int = 30
selected_paths: list[str] = field(default_factory=list)
ignored_paths: list[str] = field(default_factory=list)
enabled: bool = True
last_run: str | None = None
@@ -96,6 +97,7 @@ class SyncTask:
self.source = str(source)
self.target = str(target)
self.selected_paths = sorted({_normalize_relative_path(item) for item in self.selected_paths if item.strip()})
self.ignored_paths = sorted({_normalize_relative_path(item) for item in self.ignored_paths if item.strip()})
def to_dict(self) -> dict[str, Any]:
"""Serialisiert die Aufgabe in ein JSON-kompatibles Dictionary."""
@@ -104,6 +106,7 @@ class SyncTask:
data["trigger"] = self.trigger.value
data["delete_mode"] = self.delete_mode.value
data["conflict_mode"] = self.conflict_mode.value
data["ignored_paths"] = list(self.ignored_paths)
return data
@classmethod
@@ -120,6 +123,7 @@ class SyncTask:
conflict_mode=ConflictMode(data.get("conflict_mode", ConflictMode.NEWER_WINS.value)),
interval_minutes=int(data.get("interval_minutes", 30)),
selected_paths=[str(item) for item in data.get("selected_paths", [])],
ignored_paths=[str(item) for item in data.get("ignored_paths", [])],
enabled=bool(data.get("enabled", True)),
last_run=data.get("last_run"),
)