From 97c9d34186c47715a0b6645f44b5f78082d4f811 Mon Sep 17 00:00:00 2001 From: Jann Stute <46534683+Computerdores@users.noreply.github.com> Date: Thu, 22 Jan 2026 07:22:16 +0100 Subject: [PATCH] fix: errors in DupeFilesRegistry (#1233) --- .../core/library/alchemy/registries/dupe_files_registry.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/tagstudio/core/library/alchemy/registries/dupe_files_registry.py b/src/tagstudio/core/library/alchemy/registries/dupe_files_registry.py index d99a4f49..4c1c8ab5 100644 --- a/src/tagstudio/core/library/alchemy/registries/dupe_files_registry.py +++ b/src/tagstudio/core/library/alchemy/registries/dupe_files_registry.py @@ -7,6 +7,7 @@ import structlog from tagstudio.core.library.alchemy.enums import BrowsingState from tagstudio.core.library.alchemy.library import Library from tagstudio.core.library.alchemy.models import Entry +from tagstudio.core.utils.types import unwrap logger = structlog.get_logger() @@ -28,7 +29,7 @@ class DupeFilesRegistry: A duplicate file is defined as an identical or near-identical file as determined by a DupeGuru results file. """ - library_dir = self.library.library_dir + library_dir = unwrap(self.library.library_dir) if not isinstance(results_filepath, Path): results_filepath = Path(results_filepath) @@ -43,7 +44,7 @@ class DupeFilesRegistry: files: list[Entry] = [] for element in group: if element.tag == "file": - file_path = Path(element.attrib.get("path")) + file_path = Path(unwrap(element.attrib.get("path"))) try: path_relative = file_path.relative_to(library_dir) @@ -82,5 +83,5 @@ class DupeFilesRegistry: for i, entries in enumerate(self.groups): remove_ids = entries[1:] logger.info("Removing entries group", ids=remove_ids) - self.library.remove_entries(remove_ids) + self.library.remove_entries([e.id for e in remove_ids]) yield i - 1 # The -1 waits for the next step to finish