From 509450711292a3e8650a5a45033085e12de9386f Mon Sep 17 00:00:00 2001 From: Nuvole Date: Tue, 12 Nov 2024 16:47:40 +0800 Subject: [PATCH] chore: remove redundant import & rename folder --- .../{lib => processers}/__init__.py | 0 .../{lib => processers}/repo.py | 0 .../{lib => processers}/task.py | 43 ++++++++----------- 3 files changed, 19 insertions(+), 24 deletions(-) rename joj3_config_generator/{lib => processers}/__init__.py (100%) rename joj3_config_generator/{lib => processers}/repo.py (100%) rename joj3_config_generator/{lib => processers}/task.py (90%) diff --git a/joj3_config_generator/lib/__init__.py b/joj3_config_generator/processers/__init__.py similarity index 100% rename from joj3_config_generator/lib/__init__.py rename to joj3_config_generator/processers/__init__.py diff --git a/joj3_config_generator/lib/repo.py b/joj3_config_generator/processers/repo.py similarity index 100% rename from joj3_config_generator/lib/repo.py rename to joj3_config_generator/processers/repo.py diff --git a/joj3_config_generator/lib/task.py b/joj3_config_generator/processers/task.py similarity index 90% rename from joj3_config_generator/lib/task.py rename to joj3_config_generator/processers/task.py index 5faa905..3ec6d02 100644 --- a/joj3_config_generator/lib/task.py +++ b/joj3_config_generator/processers/task.py @@ -1,16 +1,7 @@ import shlex from typing import Tuple -import rtoml - -from joj3_config_generator.models import ( - ExecutorConfig, - ExecutorWithConfig, - ParserConfig, -) -from joj3_config_generator.models.result import Cmd, CmdFile, OptionalCmd -from joj3_config_generator.models.result import Stage as ResultStage -from joj3_config_generator.models.task import Stage as TaskStage +from joj3_config_generator.models import joj1, repo, result, task def remove_nulls(d: result.Config) -> result.Config: @@ -23,9 +14,9 @@ def remove_nulls(d: result.Config) -> result.Config: def get_conf_stage( - task_stage: TaskStage, executor_with_config: ExecutorWithConfig -) -> ResultStage: - conf_stage = ResultStage( + task_stage: task.Stage, executor_with_config: result.ExecutorWith +) -> result.StageDetail: + conf_stage = result.StageDetail( name=task_stage.name if task_stage.name is not None else "", # TODO: we may have cq in future group=( @@ -33,12 +24,12 @@ def get_conf_stage( if (task_stage.name is not None) and ("judge" in task_stage.name) else None ), - executor=ExecutorConfig( + executor=result.Executor( name="sandbox", with_=executor_with_config, ), parsers=( - [ParserConfig(name=parser, with_={}) for parser in task_stage.parsers] + [result.Parser(name=parser, with_={}) for parser in task_stage.parsers] if task_stage.parsers is not None else [] ), @@ -47,8 +38,8 @@ def get_conf_stage( def get_executorWithConfig( - task_stage: TaskStage, cached: list[str] -) -> Tuple[ExecutorWithConfig, list[str]]: + task_stage: task.Stage, cached: list[str] +) -> Tuple[result.ExecutorWith, list[str]]: file_import = ( task_stage.files.import_ if hasattr(task_stage, "files") @@ -73,7 +64,7 @@ def get_executorWithConfig( else [] ), copy_in={ - file: CmdFile(src=f"/home/tt/.config/joj/{file}") + file: result.CmdFile(src=f"/home/tt/.config/joj/{file}") for file in copy_in_files }, copy_in_cached={file: file for file in copy_in_files}, @@ -93,7 +84,7 @@ def get_executorWithConfig( if task_stage.limit is not None and task_stage.limit.mem is not None else 4 * 1_024 * 1_024 ), - stderr=CmdFile( + stderr=result.CmdFile( name="stderr", max=( task_stage.limit.stderr * 1_000_000_000 @@ -102,7 +93,7 @@ def get_executorWithConfig( else 4 * 1_024 * 1_024 ), ), - stdout=CmdFile( + stdout=result.CmdFile( name="stdout", max=( task_stage.limit.stdout * 1_000_000_000 @@ -154,7 +145,9 @@ def fix_keyword( return conf_stage -def fix_result_detail(task_stage: TaskStage, conf_stage: ResultStage) -> ResultStage: +def fix_result_detail( + task_stage: task.Stage, conf_stage: result.StageDetail +) -> result.StageDetail: if (task_stage.parsers is not None) and ("result-detail" in task_stage.parsers): result_detail_parser = next( p for p in conf_stage.parsers if p.name == "result-detail" @@ -212,7 +205,9 @@ def fix_dummy( return conf_stage -def fix_diff(task_stage: TaskStage, conf_stage: ResultStage) -> ResultStage: +def fix_diff( + task_stage: task.Stage, conf_stage: result.StageDetail +) -> result.StageDetail: if task_stage.parsers is not None and "diff" in task_stage.parsers: diff_parser = next((p for p in conf_stage.parsers if p.name == "diff"), None) skip = task_stage.skip or [] @@ -245,8 +240,8 @@ def fix_diff(task_stage: TaskStage, conf_stage: ResultStage) -> ResultStage: ) stage_cases.append( - OptionalCmd( - stdin=CmdFile( + result.OptionalCmd( + stdin=result.CmdFile( src=f"/home/tt/.config/joj/{conf_stage.name}/{case}.in" ), cpu_limit=cpu_limit,