feat: alias to all underscore
Some checks failed
build / build (push) Failing after 48s

This commit is contained in:
张泊明518370910136 2025-06-02 19:20:36 -04:00
parent dce6e5d598
commit df5295258f
GPG Key ID: D47306D7062CDA9D
20 changed files with 89 additions and 85 deletions

View File

@ -12,20 +12,24 @@ class Files(BaseModel):
class Groups(BaseModel):
name: List[str] = []
max_count: List[int] = []
time_period_hour: List[int] = []
max_count: List[int] = Field([], alias="max-count")
time_period_hour: List[int] = Field([], alias="time-period-hour")
class Config(BaseModel):
max_size: float = Field(10, ge=0)
max_size: float = Field(10, ge=0, alias="max-size")
files: Files = Files()
sandbox_token: str = Field("")
max_total_score: int = Field(100)
force_skip_health_check_on_test: bool = False
force_skip_teapot_on_test: bool = False
sandbox_token: str = Field("", alias="sandbox-token")
max_total_score: int = Field(100, alias="max-total-score")
force_skip_health_check_on_test: bool = Field(
False, alias="force-skip-health-check-on-test"
)
force_skip_teapot_on_test: bool = Field(False, alias="force-skip-teapot-on-test")
groups: Groups = Groups()
root: Path = Path(".")
path: Path = Path("repo.toml")
grading_repo_name: str = f"{socket.gethostname().split('-')[0]}-joj"
health_check_score: int = Field(0)
submitter_in_issue_title: bool = True
grading_repo_name: str = Field(
f"{socket.gethostname().split('-')[0]}-joj", alias="grading-repo-name"
)
health_check_score: int = Field(0, alias="health-check-score")
submitter_in_issue_title: bool = Field(True, alias="submitter-in-issue-title")

View File

@ -16,13 +16,13 @@ from joj3_config_generator.models.const import (
class ParserResultDetail(BaseModel):
cpu_time: bool = True # Display CPU time
cpu_time: bool = Field(True, alias="cpu-time") # Display CPU time
time: bool = True # Display run time
mem: bool = True # Display memory usage
stdout: bool = False # Display stdout messages
stderr: bool = False # Display stderr messages
exit_status: bool = True # Display exit status
proc_peak: bool = False # Display peak process count
exit_status: bool = Field(True, alias="exit-status") # Display exit status
proc_peak: bool = Field(False, alias="proc-peak") # Display peak process count
error: bool = False # Display error messages
@ -39,7 +39,7 @@ class ParserLog(BaseModel):
class ParserDummy(BaseModel):
comment: str = ""
score: int = 0
force_quit: bool = False
force_quit: bool = Field(False, alias="force-quit")
class ParserKeyword(BaseModel):
@ -47,19 +47,19 @@ class ParserKeyword(BaseModel):
weight: List[int] = []
class Outputs(BaseModel):
class ParserDiffOutputs(BaseModel):
score: int = 0
ignore_spaces: bool = True
ignore_spaces: bool = Field(True, alias="ignore-spaces")
hide: bool = False
force_quit: bool = False
force_quit: bool = Field(False, alias="force-quit")
class ParserDiff(BaseModel):
output: Outputs = Outputs()
default_score: int = DEFAULT_CASE_SCORE
output: ParserDiffOutputs = ParserDiffOutputs()
default_score: int = Field(DEFAULT_CASE_SCORE, alias="default-score")
class Files(BaseModel):
class StageFiles(BaseModel):
import_: List[str] = Field([], alias="import")
export: List[str] = []
@ -105,10 +105,10 @@ class Stage(BaseModel):
name: str = "" # Stage name
env: List[str] = []
command: str = "" # Command to run
files: Files = Files()
files: StageFiles = StageFiles()
in_: str = Field("", alias="in")
out_: str = Field("", alias="out")
copy_in_cwd: bool = True
copy_in_cwd: bool = Field(True, alias="copy-in-cwd")
score: int = 0
parsers: List[Parser] = [] # list of parsers
limit: Limit = Limit()
@ -147,11 +147,11 @@ class Stage(BaseModel):
class Release(BaseModel):
end_time: datetime = datetime(
1970, 1, 1, 0, 0, 0, tzinfo=timezone.utc
end_time: datetime = Field(
datetime(1970, 1, 1, 0, 0, 0, tzinfo=timezone.utc), alias="end-time"
) # timestamp = 0, no end time
begin_time: datetime = datetime(
1970, 1, 1, 0, 0, 0, tzinfo=timezone.utc
begin_time: datetime = Field(
datetime(1970, 1, 1, 0, 0, 0, tzinfo=timezone.utc), alias="begin-time"
) # timestamp = 0, no begin time

View File

@ -1,15 +1,15 @@
grading_repo_name = "ece280-joj"
grading-repo-name = "ece280-joj"
sandbox_token = "test"
sandbox-token = "test"
# reconfigure later
max_total_score = 100
max_size = 50.5
max-total-score = 100
max-size = 50.5
# for tests
[groups]
name = ["joj", "run"]
max_count = [1000, 1000]
time_period_hour = [24, 24]
max-count = [1000, 1000]
time-period-hour = [24, 24]
[files]
required = ["README.md", "Changelog.md"]

View File

@ -1,8 +1,8 @@
# general task configuration
task.name = "hw7 ex2" # task name
release.end_time = 2024-12-30 23:59:59+08:00
release.begin_time = 2024-12-29 23:59:59+08:00
release.end-time = 2024-12-30 23:59:59+08:00
release.begin-time = 2024-12-29 23:59:59+08:00
[[stages]]
name = "Compilation"
@ -15,11 +15,11 @@ score = 1
# compile parsers
parsers = [ "result-detail", "result-status" ]
result-status.comment = "Congratulations! Your code compiled successfully."
result-detail.exit_status = true
result-detail.exit-status = true
result-detail.stderr = true
result-detail.time = false
result-detail.mem = false
result-status.force_quit = true
result-status.force-quit = true
[[stages]]
name = "[cq] Filelength"
@ -29,7 +29,7 @@ files.import = [ "tools/filelength" ]
parsers = [ "keyword", "result-detail" ]
keyword.keyword = [ "max", "recommended"]
keyword.weight = [ 20, 10 ]
result-detail.exit_status = true
result-detail.exit-status = true
result-detail.stdout = true
result-detail.time = false
result-detail.mem = false
@ -43,7 +43,7 @@ limit.stdout = "4m"
parsers = [ "clangtidy", "result-detail" ]
clangtidy.keyword = [ "codequality-unchecked-malloc-result", "codequality-no-global-variables", "codequality-no-header-guard", "codequality-no-fflush-stdin", "readability-function-size", "readability-duplicate-include", "readability-identifier-naming", "readability-redundant", "readability-misleading-indentation", "readability-misplaced-array-index", "cppcoreguidelines-init-variables", "bugprone-suspicious-string-compare", "google-global-names-in-headers", "clang-diagnostic", "clang-analyzer", "misc", "performance", "portability" ]
clangtidy.weight = [ 5, 20, 20, 20, 10, 5, 5, 5, 15, 5, 5, 5, 5, 5, 5, 5, 5, 5]
result-detail.exit_status = true
result-detail.exit-status = true
result-detail.stdout = true
result-detail.time = false
result-detail.mem = false
@ -56,7 +56,7 @@ limit.stderr = "8m"
parsers = [ "keyword", "cppcheck", "clangtidy", "result-detail", "cpplint", "result-status", "file", "dummy", "diff" ]
cppcheck.keyword = ["error", "warning", "portability", "performance", "style"]
cppcheck.weight = [15, 5, 5, 5, 5]
result-detail.exit_status = true
result-detail.exit-status = true
result-detail.stderr = true
result-detail.time = false
result-detail.mem = false
@ -69,7 +69,7 @@ limit.stdout = "65m"
parsers = [ "cpplint", "result-detail" ]
cpplint.keyword = [ "runtime", "readability", "build" ]
cpplint.weight = [ 5, 20, 10]
result-detail.exit_status = true
result-detail.exit-status = true
result-detail.stderr = true
result-detail.time = false
result-detail.mem = false
@ -77,19 +77,19 @@ result-detail.mem = false
[[stages]]
name = "[joj] ex2-asan"
command="./h7/build/ex2-asan -a"
copy_in_cwd = false
copy-in-cwd = false
files.import = [ "h7/build/ex2-asan" ]
limit.mem = "128m"
parsers = [ "diff", "result-detail" ]
result-detail.exit_status = true
result-detail.exit-status = true
result-detail.stderr = true
# will be removed as long as the name is fixed
case0.diff.output.score = 5
case0.limit.cpu = "0.5s"
case0.limit.mem = "5m"
case0.diff.output.ignore_spaces = true
case0.diff.output.ignore-spaces = true
#case0.limit.stdout = 8
#case0.command = "./h7/build/ex2"
case0.in = "case0.in"
@ -97,7 +97,7 @@ case0.in = "case0.in"
case1.diff.output.score = 5
case1.limit.cpu = "1s"
case1.limit.mem = "5m"
case1.diff.output.ignore_spaces = true
case1.diff.output.ignore-spaces = true
#case1.limit.stdout = 8
#case1.command = "./h7/build/ex2"
case1.in = "case1.in"

View File

@ -1,2 +1,2 @@
force_skip_health_check_on_test = true
force_skip_teapot_on_test = true
force-skip-health-check-on-test = true
force-skip-teapot-on-test = true

View File

@ -1,8 +1,8 @@
# general task configuration
task.name = "hw7 ex2" # task name
release.end_time = 2024-12-30 23:59:59+08:00
release.begin_time = 2024-12-29 23:59:59+08:00
release.end-time = 2024-12-30 23:59:59+08:00
release.begin-time = 2024-12-29 23:59:59+08:00
[[stages]]
name = "[cq] Clang-tidy"
@ -13,7 +13,7 @@ limit.stdout = "65m"
parsers = [ "clangtidy", "result-detail" ]
clangtidy.keyword = [ "codequality-unchecked-malloc-result", "codequality-no-global-variables", "codequality-no-header-guard", "codequality-no-fflush-stdin", "readability-function-size", "readability-duplicate-include", "readability-identifier-naming", "readability-redundant", "readability-misleading-indentation", "readability-misplaced-array-index", "cppcoreguidelines-init-variables", "bugprone-suspicious-string-compare", "google-global-names-in-headers", "clang-diagnostic", "clang-analyzer", "misc", "performance", "portability" ]
clangtidy.weight = [ 5, 20, 20, 20, 10, 5, 5, 5, 15, 5, 5, 5, 5, 5, 5, 5, 5, 5]
result-detail.exit_status = true
result-detail.exit-status = true
result-detail.stdout = true
result-detail.time = false
result-detail.mem = false

View File

@ -1,2 +1,2 @@
force_skip_health_check_on_test = true
force_skip_teapot_on_test = true
force-skip-health-check-on-test = true
force-skip-teapot-on-test = true

View File

@ -1,8 +1,8 @@
# general task configuration
task.name = "hw7 ex2" # task name
release.end_time = 2024-12-30 23:59:59+08:00
release.begin_time = 2024-12-29 23:59:59+08:00
release.end-time = 2024-12-30 23:59:59+08:00
release.begin-time = 2024-12-29 23:59:59+08:00
[[stages]]
name = "[cq] Cppcheck"
@ -12,7 +12,7 @@ limit.stderr = "65m"
parsers = [ "cppcheck", "result-detail" ]
cppcheck.keyword = ["error", "warning", "portability", "performance", "style"]
cppcheck.weight = [15, 5, 5, 5, 5]
result-detail.exit_status = true
result-detail.exit-status = true
result-detail.stderr = true
result-detail.time = false
result-detail.mem = false

View File

@ -1,2 +1,2 @@
force_skip_health_check_on_test = true
force_skip_teapot_on_test = true
force-skip-health-check-on-test = true
force-skip-teapot-on-test = true

View File

@ -1,8 +1,8 @@
# general task configuration
task.name = "hw7 ex2" # task name
release.end_time = 2024-12-30 23:59:59+08:00
release.begin_time = 2024-12-29 23:59:59+08:00
release.end-time = 2024-12-30 23:59:59+08:00
release.begin-time = 2024-12-29 23:59:59+08:00
[[stages]]
name = "[cq] Cpplint"
@ -12,7 +12,7 @@ limit.stdout = "65m"
parsers = [ "cpplint", "result-detail" ]
cpplint.keyword = [ "runtime", "readability", "build" ]
cpplint.weight = [ 5, 20, 10]
result-detail.exit_status = true
result-detail.exit-status = true
result-detail.stderr = true
result-detail.time = false
result-detail.mem = false

View File

@ -1,2 +1,2 @@
force_skip_health_check_on_test = true
force_skip_teapot_on_test = true
force-skip-health-check-on-test = true
force-skip-teapot-on-test = true

View File

@ -1,8 +1,8 @@
# general task configuration
task.name = "hw7 ex2" # task name
release.end_time = 2024-12-30 23:59:59+08:00
release.begin_time = 2024-12-29 23:59:59+08:00
release.end-time = 2024-12-30 23:59:59+08:00
release.begin-time = 2024-12-29 23:59:59+08:00
[[stages]]
name = "[joj] ex2-asan"
@ -14,22 +14,22 @@ limit.stdout = "10m"
limit.stderr = "10m"
parsers = [ "diff", "result-detail" ]
result-detail.exit_status = true
result-detail.exit-status = true
result-detail.stderr = true
diff.default_score = 100
diff.default-score = 100
case0.diff.output.score = 5
case0.limit.cpu = "1s"
case0.limit.mem = "2m"
case0.diff.output.ignore_spaces = true
case0.diff.output.ignore-spaces = true
case0.command = "./h7/build/ex2"
case0.in = "case0.in"
case1.diff.output.score = 123214122421
case1.limit.cpu = "2s"
case1.limit.mem = "4m"
case1.diff.output.ignore_spaces = true
case1.diff.output.ignore-spaces = true
case1.command = "./h7/build/ex2"
case9.diff.output.score = 1232131

View File

@ -1,2 +1,2 @@
force_skip_health_check_on_test = true
force_skip_teapot_on_test = true
force-skip-health-check-on-test = true
force-skip-teapot-on-test = true

View File

@ -1,8 +1,8 @@
# general task configuration
task.name = "hw7 ex2" # task name
release.end_time = 2024-12-30 23:59:59+08:00
release.begin_time = 2024-12-29 23:59:59+08:00
release.end-time = 2024-12-30 23:59:59+08:00
release.begin-time = 2024-12-29 23:59:59+08:00
[[stages]]
name = "[cq] elf"

View File

@ -1,2 +1,2 @@
force_skip_health_check_on_test = true
force_skip_teapot_on_test = true
force-skip-health-check-on-test = true
force-skip-teapot-on-test = true

View File

@ -1,8 +1,8 @@
# general task configuration
task.name = "hw7 ex2" # task name
release.end_time = 2024-12-30 23:59:59+08:00
release.begin_time = 2024-12-29 23:59:59+08:00
release.end-time = 2024-12-30 23:59:59+08:00
release.begin-time = 2024-12-29 23:59:59+08:00
[[stages]]
name = "[cq] Filelength"
@ -12,7 +12,7 @@ files.import = [ "tools/filelength" ]
parsers = [ "keyword", "result-detail" ]
keyword.keyword = [ "max", "recommended"]
keyword.weight = [ 20, 10 ]
result-detail.exit_status = true
result-detail.exit-status = true
result-detail.stdout = true
result-detail.time = false
result-detail.mem = false

View File

@ -1,2 +1,2 @@
force_skip_health_check_on_test = true
force_skip_teapot_on_test = true
force-skip-health-check-on-test = true
force-skip-teapot-on-test = true

View File

@ -1,8 +1,8 @@
# general task configuration
task.name = "hw7 ex2" # task name
release.end_time = 2024-12-30 23:59:59+08:00
release.begin_time = 2024-12-29 23:59:59+08:00
release.end-time = 2024-12-30 23:59:59+08:00
release.begin-time = 2024-12-29 23:59:59+08:00
[[stages]]
name = "[cq] Filelength"
@ -10,7 +10,7 @@ command = "./tools/filelength 400 300 *.cpp *.h"
files.import = [ "tools/filelength" ]
parsers = [ "result-detail" ]
result-detail.exit_status = true
result-detail.exit-status = true
result-detail.stdout = true
result-detail.stderr = true
result-detail.time = false

View File

@ -1,2 +1,2 @@
force_skip_health_check_on_test = true
force_skip_teapot_on_test = true
force-skip-health-check-on-test = true
force-skip-teapot-on-test = true

View File

@ -7,9 +7,9 @@ command = "./tools/filelength 400 300 *.cpp *.h"
files.import = ["tools/filelength"]
parsers = ["result-detail"]
result-detail.cpu_time = true
result-detail.cpu-time = true
result-detail.time = true
result-detail.mem = true
result-detail.stdout = false
result-detail.stderr = false
result-detail.exit_status = true
result-detail.exit-status = true