From b9c625275527d6dba155a48e8440d1fb98443485 Mon Sep 17 00:00:00 2001 From: undefined Date: Thu, 11 Dec 2025 00:17:27 +0800 Subject: [PATCH] bug fixes --- framework/eslint-config/package.json | 8 ++++---- framework/framework/package.json | 2 +- framework/utils/package.json | 2 +- package.json | 2 +- packages/components/package.json | 2 +- packages/hydrooj/package.json | 2 +- packages/hydrooj/src/handler/contest.ts | 3 ++- packages/migrate/scripts/jnoj.ts | 5 +++-- packages/scoreboard-xcpcio/package.json | 4 ++-- packages/ui-default/package.json | 12 ++++++------ packages/ui-default/templates/domain_base.html | 4 ++-- packages/ui-next/package.json | 4 ++-- packages/vjudge/package.json | 2 +- 13 files changed, 27 insertions(+), 25 deletions(-) diff --git a/framework/eslint-config/package.json b/framework/eslint-config/package.json index 79689d607..04b69097a 100644 --- a/framework/eslint-config/package.json +++ b/framework/eslint-config/package.json @@ -5,10 +5,10 @@ "main": "base.mjs", "repository": "https://github.com/hydro-dev/Hydro", "dependencies": { - "@antfu/eslint-config": "^6.4.2", - "@eslint-react/eslint-plugin": "^2.3.12", - "@typescript-eslint/eslint-plugin": "^8.48.1", - "@typescript-eslint/parser": "^8.48.1", + "@antfu/eslint-config": "^6.6.1", + "@eslint-react/eslint-plugin": "^2.3.13", + "@typescript-eslint/eslint-plugin": "^8.49.0", + "@typescript-eslint/parser": "^8.49.0", "eslint-plugin-de-morgan": "^2.0.0", "eslint-plugin-github": "^6.0.0", "eslint-plugin-react-hooks": "^7.0.1", diff --git a/framework/framework/package.json b/framework/framework/package.json index 85316d6f1..dbc9b05b4 100644 --- a/framework/framework/package.json +++ b/framework/framework/package.json @@ -10,7 +10,7 @@ "dependencies": { "@hydrooj/utils": "workspace:^", "@koa/router": "^14.0.0", - "@mongodb-js/saslprep": "^1.3.2", + "@mongodb-js/saslprep": "^1.4.0", "emoji-regex": "^10.6.0", "fs-extra": "^11.3.2", "koa": "^3.1.1", diff --git a/framework/utils/package.json b/framework/utils/package.json index 76ff308a5..674993a81 100644 --- a/framework/utils/package.json +++ b/framework/utils/package.json @@ -18,7 +18,7 @@ "js-yaml": "^4.1.1", "reggol": "^2.1.0", "search-query-parser": "^1.6.0", - "systeminformation": "^5.27.11" + "systeminformation": "^5.27.13" }, "devDependencies": { "@types/fs-extra": "^11.0.4" diff --git a/package.json b/package.json index aa80e7d2e..e06eceafa 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ "mongodb-memory-server": "10.3.0", "nyc": "^17.1.0", "ora": "^9.0.0", - "oxlint": "^1.31.0", + "oxlint": "^1.32.0", "package-json": "^10.0.1", "semver": "^7.7.3", "simple-git": "^3.30.0", diff --git a/packages/components/package.json b/packages/components/package.json index ccea006d6..2d613d526 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -21,7 +21,7 @@ "@types/diff": "^8.0.0", "@types/js-yaml": "^4.0.9", "@types/lodash": "^4.17.21", - "sass": "^1.94.2" + "sass": "^1.95.1" }, "peerDependencies": { "react": "*", diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index e7be0890a..fa10ed8f3 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -21,7 +21,7 @@ "@hydrooj/common": "workspace:^", "@hydrooj/framework": "workspace:^", "@hydrooj/utils": "workspace:^", - "@mongodb-js/saslprep": "^1.3.2", + "@mongodb-js/saslprep": "^1.4.0", "@simplewebauthn/server": "13.2.2", "@undefined-moe/require-resolve-hook": "^1.1.0", "@zip.js/zip.js": "^2.8.11", diff --git a/packages/hydrooj/src/handler/contest.ts b/packages/hydrooj/src/handler/contest.ts index 3299b354d..34e5436f9 100644 --- a/packages/hydrooj/src/handler/contest.ts +++ b/packages/hydrooj/src/handler/contest.ts @@ -387,7 +387,7 @@ export class ContestEditHandler extends Handler { @param('duration', Types.Float) @param('title', Types.Title) @param('content', Types.Content) - @param('rule', Types.Range(Object.keys(contest.RULES).filter((i) => !contest.RULES[i].hidden))) + @param('rule', Types.String) @param('pids', Types.Content) @param('rated', Types.Boolean) @param('code', Types.String, true) @@ -405,6 +405,7 @@ export class ContestEditHandler extends Handler { _code = '', autoHide = false, assign: string[] = [], lock: number = null, contestDuration: number = null, maintainer: number[] = [], allowViewCode = false, allowPrint = false, langs: string[] = [], ) { + if (!Object.keys(contest.RULES).includes(rule) || contest.RULES[rule].hidden) throw new ValidationError('rule'); if (autoHide) this.checkPerm(PERM.PERM_EDIT_PROBLEM); const pids = _pids.replace(/,/g, ',').split(',').map((i) => +i).filter((i) => i); const beginAtMoment = moment.tz(`${beginAtDate} ${beginAtTime}`, this.user.timeZone); diff --git a/packages/migrate/scripts/jnoj.ts b/packages/migrate/scripts/jnoj.ts index a8b5111ad..dd9cdb0d4 100644 --- a/packages/migrate/scripts/jnoj.ts +++ b/packages/migrate/scripts/jnoj.ts @@ -165,13 +165,13 @@ export async function run({ current ||= await UserModel.getByUname(domainId, udoc.username); if (current) { report({ message: `duplicate user with email ${udoc.email}: ${current.uname},${udoc.username}` }); - uidMap[udoc.username] = current._id; + uidMap[udoc.id] = current._id; } else { const uid = await UserModel.create( udoc.email || `${udoc.username}@jnoj.local`, udoc.username, '', null, '127.0.0.1', udoc.status === 10 ? SystemModel.get('default.priv') : 0, ); - uidMap[udoc.username] = uid; + uidMap[udoc.id] = uid; await UserModel.setById(uid, { loginat: udoc.updated_at, regat: udoc.created_at, @@ -445,6 +445,7 @@ memory: ${pdoc.memory_limit}m : ddoc.entity_id === 'problem' ? pidMap[ddoc.entity_id] : new ObjectId(tidMap[ddoc.entity_id]); if (!parentId) continue; const payload = { + _id, domainId, content: ddoc.content, owner: uidMap[ddoc.created_by] || 1, diff --git a/packages/scoreboard-xcpcio/package.json b/packages/scoreboard-xcpcio/package.json index 90f321335..572b38add 100644 --- a/packages/scoreboard-xcpcio/package.json +++ b/packages/scoreboard-xcpcio/package.json @@ -8,9 +8,9 @@ "postinstall": "node -r @hydrooj/register install.ts" }, "dependencies": { - "@xcpcio/board-app": "^0.76.1" + "@xcpcio/board-app": "^0.76.4" }, "devDependencies": { - "@xcpcio/types": "^0.76.1" + "@xcpcio/types": "^0.76.4" } } diff --git a/packages/ui-default/package.json b/packages/ui-default/package.json index d5aab7ada..6e5167dca 100644 --- a/packages/ui-default/package.json +++ b/packages/ui-default/package.json @@ -20,9 +20,9 @@ "@fontsource/source-code-pro": "^5.2.7", "@fontsource/ubuntu-mono": "^5.2.8", "@hydrooj/utils": "workspace:^", - "@mantine/core": "^8.3.9", - "@mantine/hooks": "^8.3.9", - "@mantine/notifications": "^8.3.9", + "@mantine/core": "^8.3.10", + "@mantine/hooks": "^8.3.10", + "@mantine/notifications": "^8.3.10", "@sentry/browser": "^10.29.0", "@sentry/webpack-plugin": "^4.6.1", "@simplewebauthn/browser": "13.2.2", @@ -69,7 +69,7 @@ "jquery.transit": "^0.9.12", "mantine-contextmenu": "^8.3.11", "matchmedia-polyfill": "^0.3.2", - "md-editor-rt": "^6.2.0", + "md-editor-rt": "^6.2.1", "mini-css-extract-plugin": "^2.9.4", "moment": "^2.30.1", "monaco-editor": "0.52.2", @@ -101,7 +101,7 @@ "redux-promise-middleware": "^6.2.0", "redux-thunk": "^3.1.0", "rupture": "^0.7.1", - "sass": "^1.94.2", + "sass": "^1.95.1", "sass-loader": "^16.0.6", "schemastery": "^3.17.2", "shorty.js": "^1.0.1", @@ -132,7 +132,7 @@ "html-to-text": "^9.0.5", "js-yaml": "^4.1.1", "jsesc": "^3.1.0", - "katex": "^0.16.25", + "katex": "^0.16.27", "lodash": "^4.17.21", "markdown-it": "^14.1.0", "markdown-it-anchor": "^9.2.0", diff --git a/packages/ui-default/templates/domain_base.html b/packages/ui-default/templates/domain_base.html index 44aa601a5..bbccf30d2 100644 --- a/packages/ui-default/templates/domain_base.html +++ b/packages/ui-default/templates/domain_base.html @@ -13,9 +13,9 @@ {{ _(family) }} {% endfor %} diff --git a/packages/ui-next/package.json b/packages/ui-next/package.json index 4636a9684..d5cc6051c 100644 --- a/packages/ui-next/package.json +++ b/packages/ui-next/package.json @@ -8,7 +8,7 @@ "preview": "vite preview" }, "dependencies": { - "@vitejs/plugin-react": "^5.1.1", + "@vitejs/plugin-react": "^5.1.2", "react": "^19.2.1", "react-dom": "^19.2.1" }, @@ -16,6 +16,6 @@ "@types/react": "^19.2.7", "@types/react-dom": "^19.2.3", "@vitejs/plugin-react-swc": "^4.2.2", - "vite": "^7.2.6" + "vite": "^7.2.7" } } diff --git a/packages/vjudge/package.json b/packages/vjudge/package.json index f9c30f6a0..f630badba 100644 --- a/packages/vjudge/package.json +++ b/packages/vjudge/package.json @@ -9,7 +9,7 @@ "preferUnplugged": true, "dependencies": { "@hydrooj/utils": "workspace:^", - "jsdom": "^27.2.0", + "jsdom": "^27.3.0", "superagent-charset": "^1.2.0", "superagent-proxy": "^3.0.0" },