From b73c9601e40c243c7c27904931652afb2af0ae9c Mon Sep 17 00:00:00 2001 From: Ashwin Vaidya Date: Fri, 24 May 2024 10:29:28 +0200 Subject: [PATCH 1/3] add data filter in tar extract Signed-off-by: Ashwin Vaidya --- src/anomalib/data/utils/download.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/anomalib/data/utils/download.py b/src/anomalib/data/utils/download.py index 558768b654..47ea71c88c 100644 --- a/src/anomalib/data/utils/download.py +++ b/src/anomalib/data/utils/download.py @@ -230,7 +230,7 @@ def safe_extract(tar_file: TarFile, root: Path, members: list[TarInfo]) -> None: """ for member in members: - tar_file.extract(member, root) + tar_file.extract(member, root, filter="data") def generate_hash(file_path: str | Path, algorithm: str = "sha256") -> str: From 0ee0c045a0b42c69c42fb3e242e868bbc5b88aa9 Mon Sep 17 00:00:00 2001 From: Ashwin Vaidya Date: Fri, 24 May 2024 10:34:25 +0200 Subject: [PATCH 2/3] add file exists check Signed-off-by: Ashwin Vaidya --- src/anomalib/data/utils/download.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/anomalib/data/utils/download.py b/src/anomalib/data/utils/download.py index 47ea71c88c..1a5e950526 100644 --- a/src/anomalib/data/utils/download.py +++ b/src/anomalib/data/utils/download.py @@ -230,7 +230,9 @@ def safe_extract(tar_file: TarFile, root: Path, members: list[TarInfo]) -> None: """ for member in members: - tar_file.extract(member, root, filter="data") + # check if the file already exists + if not (root / member.name).exists(): + tar_file.extract(member, root, filter="data") def generate_hash(file_path: str | Path, algorithm: str = "sha256") -> str: From 28f3ccc22362917cb97186b7a71dcfa47aa4ce68 Mon Sep 17 00:00:00 2001 From: Ashwin Vaidya Date: Fri, 24 May 2024 10:39:05 +0200 Subject: [PATCH 3/3] cosmetics Signed-off-by: Ashwin Vaidya --- src/anomalib/data/utils/download.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/anomalib/data/utils/download.py b/src/anomalib/data/utils/download.py index 1a5e950526..76761a0246 100644 --- a/src/anomalib/data/utils/download.py +++ b/src/anomalib/data/utils/download.py @@ -290,7 +290,7 @@ def extract(file_name: Path, root: Path) -> None: root (Path): Root directory where the dataset will be stored. """ - logger.info("Extracting dataset into root folder.") + logger.info(f"Extracting dataset into {root} folder.") # Safely extract zip files if file_name.suffix == ".zip":