From c9f8d23cf46562be402fd6b46c544dfcf9211e45 Mon Sep 17 00:00:00 2001 From: jjallaire Date: Wed, 16 Oct 2024 21:06:10 +0100 Subject: [PATCH] bugfix: ensure that log directories don't end in forward/back slash (#713) --- CHANGELOG.md | 1 + src/inspect_ai/_cli/common.py | 3 ++- src/inspect_ai/log/_file.py | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4b4376f7e..997b07046 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ - Open log files in binary mode when reading headers (fixes ijson deprecation warning). - Bugfix: strip protocol prefix when resolving eval event content - Bugfix: switch to run directory when running multiple tasks with the same run directory. +- Bugfix: ensure that log directories don't end in forward/back slash. ## v0.3.41 (11 October 2024) diff --git a/src/inspect_ai/_cli/common.py b/src/inspect_ai/_cli/common.py index e1f74bf9f..7fbbecb88 100644 --- a/src/inspect_ai/_cli/common.py +++ b/src/inspect_ai/_cli/common.py @@ -104,4 +104,5 @@ def resolve_common_options(options: CommonOptions) -> Tuple[str, str, str]: print("Debugger attached") # return resolved options - return (options["log_dir"], options["log_level"], options["log_level_transcript"]) + log_dir = options["log_dir"].rstrip("/\\") + return (log_dir, options["log_level"], options["log_level_transcript"]) diff --git a/src/inspect_ai/log/_file.py b/src/inspect_ai/log/_file.py index 3bf4a7e43..cb0ba279d 100644 --- a/src/inspect_ai/log/_file.py +++ b/src/inspect_ai/log/_file.py @@ -298,7 +298,7 @@ def __init__( self, log_dir: str, suffix: str, fs_options: dict[str, Any] = {} ) -> None: super().__init__() - self.log_dir = log_dir + self.log_dir = log_dir.rstrip("/\\") self.fs = filesystem(log_dir, fs_options) self.fs.mkdir(self.log_dir, exist_ok=True) self.suffix = suffix