From 011cdda148f2aaefaa1657bbc826caab9e91d1da Mon Sep 17 00:00:00 2001 From: Peter Fichtner <1958485+pfichtner@users.noreply.github.com> Date: Thu, 21 May 2026 16:49:38 +0200 Subject: [PATCH 1/3] B!! add 5s timeout to requests.get in log_commons.py --- approvaltests/internals/logs/log_commons.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/approvaltests/internals/logs/log_commons.py b/approvaltests/internals/logs/log_commons.py index 8b21da39..b2073866 100644 --- a/approvaltests/internals/logs/log_commons.py +++ b/approvaltests/internals/logs/log_commons.py @@ -20,7 +20,8 @@ def download_script_from_common_repo_if_needed( return False response = requests.get( - f"https://raw.githubusercontent.com/approvals/ApprovalTests.CommonScripts/refs/heads/main/{script_name_with_suffix}" + f"https://raw.githubusercontent.com/approvals/ApprovalTests.CommonScripts/refs/heads/main/{script_name_with_suffix}", + timeout=5 ) if response.ok: script_path.write_text(response.text) From 8cb85d1b48aac7b1b13a836978a5dccfccf39f84 Mon Sep 17 00:00:00 2001 From: "Peter Fichtner (pfichtner)" Date: Thu, 21 May 2026 17:07:07 +0200 Subject: [PATCH 2/3] B!! remove top-level side-effect to prevent import-time hang --- approvaltests/internals/logs/approved_file_log.py | 4 ++-- approvaltests/internals/logs/failed_comparison_log.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/approvaltests/internals/logs/approved_file_log.py b/approvaltests/internals/logs/approved_file_log.py index 085295f7..9f285885 100644 --- a/approvaltests/internals/logs/approved_file_log.py +++ b/approvaltests/internals/logs/approved_file_log.py @@ -26,8 +26,8 @@ def get_temp_directory() -> Path: @staticmethod def log(approved_file: str) -> None: + if not ApprovedFilesLog.get_approved_files_log().exists(): + ApprovedFilesLog.clear_log_file() with ApprovedFilesLog.get_approved_files_log().open(mode="a") as file: file.write(f"{approved_file}\n") - -ApprovedFilesLog.clear_log_file() diff --git a/approvaltests/internals/logs/failed_comparison_log.py b/approvaltests/internals/logs/failed_comparison_log.py index 5e633ad9..433b7194 100644 --- a/approvaltests/internals/logs/failed_comparison_log.py +++ b/approvaltests/internals/logs/failed_comparison_log.py @@ -16,8 +16,8 @@ def get_failed_comparison_log() -> Path: @staticmethod def log(received_file: str, approved_file: str) -> None: + if not FailedComparisonLog.get_failed_comparison_log().exists(): + FailedComparisonLog.clear_log_file() with FailedComparisonLog.get_failed_comparison_log().open(mode="a") as file: file.write(f"{received_file} -> {approved_file}\n") - -FailedComparisonLog.clear_log_file() From 6fb25e9ac1cd11a9bcefd3df8ff9d67d5c768f99 Mon Sep 17 00:00:00 2001 From: "Peter Fichtner (pfichtner)" Date: Thu, 21 May 2026 17:14:22 +0200 Subject: [PATCH 3/3] Revert "B!! remove top-level side-effect to prevent import-time hang" This reverts commit 8cb85d1b48aac7b1b13a836978a5dccfccf39f84. --- approvaltests/internals/logs/approved_file_log.py | 4 ++-- approvaltests/internals/logs/failed_comparison_log.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/approvaltests/internals/logs/approved_file_log.py b/approvaltests/internals/logs/approved_file_log.py index 9f285885..085295f7 100644 --- a/approvaltests/internals/logs/approved_file_log.py +++ b/approvaltests/internals/logs/approved_file_log.py @@ -26,8 +26,8 @@ def get_temp_directory() -> Path: @staticmethod def log(approved_file: str) -> None: - if not ApprovedFilesLog.get_approved_files_log().exists(): - ApprovedFilesLog.clear_log_file() with ApprovedFilesLog.get_approved_files_log().open(mode="a") as file: file.write(f"{approved_file}\n") + +ApprovedFilesLog.clear_log_file() diff --git a/approvaltests/internals/logs/failed_comparison_log.py b/approvaltests/internals/logs/failed_comparison_log.py index 433b7194..5e633ad9 100644 --- a/approvaltests/internals/logs/failed_comparison_log.py +++ b/approvaltests/internals/logs/failed_comparison_log.py @@ -16,8 +16,8 @@ def get_failed_comparison_log() -> Path: @staticmethod def log(received_file: str, approved_file: str) -> None: - if not FailedComparisonLog.get_failed_comparison_log().exists(): - FailedComparisonLog.clear_log_file() with FailedComparisonLog.get_failed_comparison_log().open(mode="a") as file: file.write(f"{received_file} -> {approved_file}\n") + +FailedComparisonLog.clear_log_file()