From 3751eb84a6f274dfe40934a78e2cf9d65c24921e Mon Sep 17 00:00:00 2001 From: Boming Zhang Date: Wed, 5 Mar 2025 02:48:08 -0500 Subject: [PATCH] refactor: sanity check & minor optimization --- joj3_config_generator/processers/task.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/joj3_config_generator/processers/task.py b/joj3_config_generator/processers/task.py index 78d73b1..2cdc780 100644 --- a/joj3_config_generator/processers/task.py +++ b/joj3_config_generator/processers/task.py @@ -67,7 +67,7 @@ def get_executor_with( task_stage: task.Stage, cached: Dict[str, None] ) -> result.ExecutorWith: file_import = task_stage.files.import_ - copy_in_files = [file for file in file_import if file not in cached] + copy_in_files = (file for file in file_import if file not in cached) file_export = task_stage.files.export copy_out_files = ["stdout", "stderr"] executor_with_config = result.ExecutorWith( @@ -102,6 +102,8 @@ def get_executor_with( def fix_keyword( keyword_config: task.ParserKeyword, keyword_parser: result.Parser ) -> None: + if len(keyword_config.keyword) != len(keyword_config.weight): + raise ValueError("Keywords and weights must have the same length") score_groups: Dict[int, List[str]] = {} for keyword, score in zip(keyword_config.keyword, keyword_config.weight): score_groups.setdefault(score, []).append(keyword)