WIP: dev #6

Closed
李衍志523370910113 wants to merge 131 commits from dev into master
No description provided.
李衍志523370910113 added 48 commits 2024-11-08 14:21:01 +08:00
feat: migrate repo & init classes
Some checks failed
build / build (push) Failing after 1m38s
f47fb81287
feat: finish keyword related
Some checks failed
build / build (push) Failing after 1m6s
c51606e14f
feat: combine dummy & result-staus
Some checks failed
build / build (push) Failing after 1m4s
ef980cf905
fix: result-status
Some checks failed
build / build (push) Has been cancelled
f158e1cab6
chore: trim old code
Some checks failed
build / build (push) Has been cancelled
ab0786aeb1
chore: trim old code
Some checks failed
build / build (push) Failing after 1m12s
9652ef9b78
fix: result_detail parser
Some checks failed
build / build (push) Failing after 1m2s
779fcaa63c
feat: cases data reading for diff
Some checks failed
build / build (push) Failing after 1m6s
build / build (pull_request) Failing after 1m1s
79c9233c9a
ffeat: diff finish
Some checks failed
build / build (push) Failing after 1m14s
build / build (pull_request) Failing after 1m12s
f86f820884
chore: more compact code
Some checks failed
build / build (push) Failing after 1m7s
build / build (pull_request) Failing after 1m5s
919a2dfb9c
fix: gradingreponame schema
Some checks failed
build / build (push) Failing after 1m5s
build / build (pull_request) Failing after 1m3s
4e344fdc6f
fix: remove dotenv
Some checks failed
build / build (push) Failing after 1m1s
build / build (pull_request) Failing after 1m5s
f1e6a948c4
fix: immutable_file
Some checks failed
build / build (pull_request) Failing after 1m1s
build / build (push) Failing after 1m3s
bd2702e856
fix: immutable repo tom
Some checks failed
build / build (push) Failing after 1m1s
build / build (pull_request) Failing after 1m5s
d73f7da2e2
feat: rebuild json
Some checks failed
build / build (pull_request) Failing after 57s
build / build (push) Failing after 59s
3bd92c5177
feat: sync
Some checks failed
build / build (pull_request) Failing after 59s
build / build (push) Failing after 1m1s
1b08f6fc53
feat: sync
Some checks failed
build / build (pull_request) Failing after 1m8s
build / build (push) Failing after 1m10s
cf034ba737
feat: merge conflict
Some checks failed
build / build (push) Failing after 1m36s
build / build (pull_request) Failing after 1m34s
fa37c68a17
feat
Some checks failed
build / build (push) Has been cancelled
build / build (pull_request) Failing after 1m28s
0a37d6f7b2
fix: merge conflict
Some checks failed
build / build (pull_request) Failing after 1m28s
build / build (push) Failing after 1m30s
9319a416d9
fix: List import
Some checks failed
build / build (push) Failing after 1m31s
build / build (pull_request) Failing after 1m29s
1c4a61faa4
fix: keywords group score
Some checks failed
build / build (push) Failing after 1m43s
build / build (pull_request) Failing after 1m41s
8d8966a424
fix: forcequit for result status
Some checks failed
build / build (pull_request) Failing after 1m42s
build / build (push) Failing after 1m44s
41675a0137
feat: newest json
Some checks failed
build / build (pull_request) Failing after 1m35s
build / build (push) Failing after 1m37s
feace92212
fix: path to past test
Some checks failed
build / build (pull_request) Failing after 1m32s
build / build (push) Failing after 1m35s
83ddfe4b5f
fix: path to test
Some checks failed
build / build (pull_request) Failing after 1m32s
build / build (push) Failing after 1m34s
eb5b71dbbd
fix: path to test
Some checks failed
build / build (push) Failing after 1m32s
build / build (pull_request) Failing after 1m30s
d322a70f7b
feat: pass test
Some checks failed
build / build (pull_request) Failing after 1m48s
build / build (push) Failing after 2m0s
dd372dc5fb
feat: pass test
All checks were successful
build / build (push) Successful in 1m44s
build / build (pull_request) Successful in 1m51s
65acfbe657
张泊明518370910136 was assigned by 李衍志523370910113 2024-11-08 21:27:47 +08:00

Are the problems solved?

Are the problems solved?
张泊明518370910136 requested review from 张泊明518370910136 2024-11-09 01:51:00 +08:00
张泊明518370910136 removed their assignment 2024-11-09 01:51:07 +08:00
张泊明518370910136 requested changes 2024-11-09 01:53:10 +08:00
张泊明518370910136 left a comment
Owner

can not pass pre-commit run --all-files

can not pass `pre-commit run --all-files`
Author
Member

@bomingzh fixed

@bomingzh fixed
张泊明518370910136 requested changes 2024-11-10 08:36:36 +08:00
张泊明518370910136 left a comment
Owner

Resolve the warning in pdm run test.

Follow the underscore naming convention, do not use camel case.

The lib dir name is too ambiguous, named it as something like processers.

Rebase it to lastest master branch.

Resolve the warning in `pdm run test`. Follow the underscore naming convention, do not use camel case. The `lib` dir name is too ambiguous, named it as something like `processers`. Rebase it to lastest master branch.
@ -0,0 +84,4 @@
# FIXME: should be finalized when get into the server
current_file_path = Path(__file__).resolve()
project_root = current_file_path.parents[2]
file_path = f"{project_root}/tests/immutable_file/"

hard coded path not acceptable

hard coded path not acceptable
Author
Member

thats what I wanted to discuss, in what form would be better? @manuel @bomingzh
my suggestions is to add more fields related to this in repo.toml or task.toml, I think store it globally in some *.py file is still hardcoded

thats what I wanted to discuss, in what form would be better? @manuel @bomingzh my suggestions is to add more fields related to this in `repo.toml` or `task.toml`, I think store it globally in some `*.py` file is still hardcoded

just let them enter path relative to project root for immutable files

just let them enter path relative to project root for immutable files
Author
Member

giving prompt? Wouldn't it be better to export field in *.toml file? they may accidnetally input wrong things I guess

giving prompt? Wouldn't it be better to export field in `*.toml` file? they may accidnetally input wrong things I guess

just throw error on wrong input

just throw error on wrong input
Author
Member

I mean, they input \home\tt\.config\ instead of \home\tt\.config\joj such things may happen, but will cost time to figure out what happened? So I think better put them in *.toml.

I mean, they input `\home\tt\.config\` instead of `\home\tt\.config\joj` such things may happen, but will cost time to figure out what happened? So I think better put them in `*.toml`.

just make the dir relative to git repo root, if the file does not exist, throw error

just make the dir relative to git repo root, if the file does not exist, throw error
Owner

any path in toml should probably be defined relative to /home/tt/.config/joj and be in a subdirectory. this is where all config must be.
then they can specify projects/p2/.cang-tidy or tool/compile

using project_root as too tricky as it could mean going up (../../) which is hard to read/figure out quickly.

as all JOJ config files must be in $HOME/.config/joj taking it as root makes sense, is general, and consistent with the approach we have used so far

any path in toml should probably be defined relative to `/home/tt/.config/joj` and be in a subdirectory. this is where all config must be. then they can specify `projects/p2/.cang-tidy` or `tool/compile` using `project_root` as too tricky as it could mean going up (`../../`) which is hard to read/figure out quickly. as all JOJ config files must be in `$HOME/.config/joj` taking it as root makes sense, is general, and consistent with the approach we have used so far
Author
Member

bit mixed here, if fixed, can I hardcode it?

bit mixed here, if fixed, can I hardcode it?
@ -0,0 +7,4 @@
def remove_nulls(d: result.Config) -> result.Config:
if isinstance(d, dict):

Why it can be in different types as the type annotation says it is result.Config?

Why it can be in different types as the type annotation says it is `result.Config`?
Author
Member

Sorry about this, I was still debugging on it last time I was on it. Will fix that.

Sorry about this, I was still debugging on it last time I was on it. Will fix that.
@ -23,3 +20,1 @@
stdout: Optional[CmdFile] = None
stderr: Optional[CmdFile] = None
cpu_limit: int = Field(0, serialization_alias="cpuLimit")
args: list[str]

Unify the use of list or List everywhere as we only support Python >=3.9 now.

Unify the use of `list` or `List` everywhere as we only support Python >=3.9 now.
Author
Member

ok

ok
@ -0,0 +1,1327 @@
{

what is this basic folder?

what is this basic folder?
Author
Member

maybe my mistakes in git rebase?

maybe my mistakes in `git rebase`?
@ -26,0 +31,4 @@
"content": "",
"fileId": null,
"name": null,
"max": 4194304,

null

null
Author
Member

yes, remove_null function need a small adjustment

yes, `remove_null` function need a small adjustment

default value problem in pydantic model

default value problem in pydantic model
Author
Member

OK

OK
@ -166,0 +1050,4 @@
"with": {
"default": {
"args": [
"./msan",

is this file copied in?

is this file copied in?
@ -166,3 +1228,4 @@
"showMemory": true
}
}
]

is the empty "gradingRepoName" in teapot dict expected?

is the empty "gradingRepoName" in teapot dict expected?
@ -1,30 +1,137 @@
task = "hw3 ex5"
# p2 repo config

make this basic test as simple as possible, and create new test cases for each kind of stage

make this basic test as simple as possible, and create new test cases for each kind of stage
@ -5,1 +5,4 @@
load_case("basic")
test_basic()

why?

why?
Author
Member

to pass test locally, forgot to delete it

to pass test locally, forgot to delete it
@ -29,4 +29,5 @@ def read_convert_files(
def load_case(case_name: str) -> None:
repo, task, expected_result = read_convert_files(case_name)
result = convert(repo, task).model_dump(mode="json", by_alias=True)

why modify this?

why modify this?
Author
Member

ah, I guess some incompatible within convert()? to make sure actually the process is the same. If its not your wish i ll revert it

ah, I guess some incompatible within `convert()`? to make sure actually the process is the same. If its not your wish i ll revert it
@ -0,0 +1,118 @@
task = "cc"

remove it if it's not ready

remove it if it's not ready

We need to consider testing the generated task.json with JOJ3 here to make sure it actually works.

We need to consider testing the generated task.json with JOJ3 here to make sure it actually works.
Author
Member

@bomingzh Any more feedback? I ll fix them all tonight.

@bomingzh Any more feedback? I ll fix them all tonight.
李衍志523370910113 force-pushed dev from b96383f2dc to 47c46755e6 2025-02-01 21:50:25 +08:00 Compare
李衍志523370910113 added 1 commit 2025-02-06 16:16:18 +08:00
fix: healthcheck & update teapot poststage
Some checks failed
build / build (push) Failing after 2m12s
build / build (pull_request) Failing after 2m10s
c67dd32cf2
李衍志523370910113 added 1 commit 2025-02-06 16:32:46 +08:00
refactor: remove redundant teapot config code
Some checks failed
build / build (pull_request) Failing after 2m4s
build / build (push) Failing after 2m6s
9f3d820ae3
李衍志523370910113 added 1 commit 2025-02-06 17:16:34 +08:00
refactor: remove redundant teapot config code
Some checks failed
build / build (push) Failing after 2m22s
build / build (pull_request) Failing after 2m21s
84e6f67f83
李衍志523370910113 added 1 commit 2025-02-15 18:40:28 +08:00
feat: joj1 convert init
Some checks failed
build / build (pull_request) Failing after 2s
build / build (push) Failing after 0s
80b33324e5
李衍志523370910113 added 1 commit 2025-02-23 21:33:28 +08:00
fix: path issue
Some checks failed
build / build (push) Failing after 2s
build / build (pull_request) Failing after 0s
979185252d
Some checks failed
build / build (push) Failing after 2s
Required
Details
build / build (pull_request) Failing after 0s

Pull request closed

Sign in to join this conversation.
No reviewers
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: JOJ/JOJ3-config-generator#6
No description provided.