xuyue pushed to main at xuyue/OJ2 2026-11-03 16:52:31 +08:00
f6f7a0c3af fix(看板娘): 把看板娘拖到右上角时,成就弹框会压在她头上,现在弹框让到她左边
cccf7a37be feat(成就): 多了 9 个好拿的档和「挑战成功」一条线,比赛里做的题也算,这学期八成学生多拿到成就
1fdee94812 docs(部署): 记下 runner 会「假在线」以及看门狗兜底
Compare 3 commits »
xuyue pushed to main at xuyue/OJ2 2026-11-03 16:33:36 +08:00
aa7e0a6eb8 feat(看板娘): 接上全班进度、难度、提示、知识点、排名等数据,说的话更贴每个人
xuyue pushed to main at xuyue/OJ2 2026-11-03 16:22:59 +08:00
81ef4dca6b feat(看板娘): 记得你常错在哪,题目页上会主动开口,互动都记下来
xuyue pushed to main at xuyue/OJ2 2026-11-03 16:12:24 +08:00
ef3c53c671 feat(看板娘): 点她会按页面说一句傲娇的话,再给两三个能直接办事的按钮
xuyue pushed to main at xuyue/OJ2 2026-11-03 14:58:18 +08:00
15966ceb0d feat(看板娘): 前台右下角多了一个能拖、能点的看板娘,连点偶尔会被摸摸头
xuyue pushed to main at xuyue/OJ2 2026-11-03 14:37:44 +08:00
0c94f2db87 perf(暗色): 每次打开页面不再白白强制重算两次整页样式
f01870c072 fix(烟花): 「表情包」那一种在机房电脑上卡成幻灯片
Compare 2 commits »
xuyue pushed to main at xuyue/OJ2 2026-11-03 13:58:45 +08:00
95dc2f24e6 perf(提交列表): 按 ↑ ↓ 换到没看过的一条也不卡了 —— 右栏预取上一条、下一条
e511d82f3b perf(暗色): 提交列表、排名首屏卡掉的一秒多回来了 —— 全站共用一个 useDark
Compare 2 commits »
xuyue pushed to main at xuyue/IOT_SIM 2026-11-03 13:34:25 +08:00
f242308a3b 部署:update.sh 改由 deploy/update-bg.sh 在服务器上后台跑(setsid),SSH 断了它照样跑完。2026-11-03 开发机上 FlClash 切换配置重建了 TUN 网卡,SSH 正好断在 docker compose up 中间:旧容器删了、新容器只创建没启动,网站停了 40 分钟。输出写到 /var/tmp/iot_sim-update.log,--follow <提交号> 接着看输出、退出码和 update.sh 一样,这个提交的部署还没开始时返回 75;上一次还在跑就等它结束。Gitea 的"起服务"ssh 返回 255 就 10 秒后重连 --follow,75 就重新开始,最多 6 次。GitHub 备用部署也改用 update-bg.sh。部署说明同步
xuyue pushed to main at xuyue/OJ2 2026-11-03 13:32:41 +08:00
55bdf317f1 fix(语法要求): 「自定义函数」不再把 main 算进去,运算符不再把取地址、指针、模板尖括号当成用了
xuyue pushed to main at xuyue/OJ2 2026-11-03 13:07:28 +08:00
1b730da401 docs(格式化): 补上 learn.css 也会被 vp fmt 和 bun fmt 来回改,以及怎么列出受影响的文件
8c5399755e feat(相似题): 做对中等、困难题后不再只推一串简单题,每道推荐写出和原题共同的标签
Compare 2 commits »
xuyue pushed to main at xuyue/IOT_SIM 2026-11-03 12:46:37 +08:00
2aa267839f 导出 VS 工程:实验页工具栏的"导出 EXE"改成下拉按钮"导出 ▾",里面是"导出 EXE"和"导出 VS 工程"。导出的 zip 是教材那样的 VS 2012 窗体应用工程(.sln + .csproj,.NET Framework 4.5),在机房电脑上解压、双击 .sln 用 VS 打开接着改,按 F5 运行。导出前照机房环境编译一遍要放进 zip 的代码:C# 5(VS 2012 的编译器)、真机版设备类库,有错不导出;新版 C# 写法报 CS8026,按功能名给出改法(字符串插值改 string.Format、?. 改先判断 null、=> 改大括号等 12 种)。导出 EXE 仍按最新 C#。平台的 Properties/Resources.Designer.cs 换成 VS 生成的写法和 Resources.resx,图片放 Resources\;代码里按文件名用的素材(ring.mp3)复制到输出目录,运行时在 bin\Debug\Resources\;每个窗体带 .resx(媒体播放器 OcxState 用教材默认状态),SubType、DependentUpon 和 VS 一样;补上 AssemblyInfo、Settings、App.config。教材 dll 全放 lib\,只引用代码直接用到的(和教材工程一样),只带这些编译不过时引用全部;用到书上的 ledHelper.Close() 时带上 LedHelperCompat.cs。文本文件用带 BOM 的 UTF-8 和 CRLF(VS 2012 打开不带 BOM 的文件会把中文当 GBK);zip 文件名用 GBK,另附 Info-ZIP Unicode 文件名字段(0x7075),中文 Windows 自带解压和 7-Zip 都显示正确(ZipWriter.cs)。23 个示例都能导出,导出的工程在 mono 的 msbuild 里全部编译通过、输出目录和教材 bin\Debug 一样、程序能启动;VS 2012 还要在机房实测。接口 POST /api/export-project,代码有错时 422。export-exe.ts 改名 export.ts(服务器和网页各一个)。使用说明、设计方案、README、部署说明同步
xuyue pushed to main at xuyue/OJ2 2026-11-03 12:21:01 +08:00
da360e2f68 docs(部署): 开发机上的 runner 改成注册在 xuyue 用户下,和 IOT_SIM 共用(多一个 iot-deploy 标签)
xuyue pushed to main at xuyue/IOT_SIM 2026-11-03 12:09:46 +08:00
4c3ce31fe1 部署:push origin 就由开发机编好、测过再传到服务器,服务器不再自己编,push 后一两分钟上线。照 OJ2 的做法,开发机上的 gitea-runner(和 OJ2 共用,标签 iot-deploy,一次只跑一个任务)跑 .gitea/workflows/deploy.yml:编 C# 运行时(Release)、网页和 server.js,跑服务端测试(用要上线的 Release 版运行时)、网页端测试和类型检查,产物 rsync 到服务器的 prebuilt/(按内容比、传完才换上、断了重试),服务器上 deploy/update.sh --prebuilt 用现成产物构建镜像,只剩几条 COPY。以前 GitHub 上测试约 5 分钟、服务器 2 核再编约一分钟(编的时候学生程序会卡),push 后 6 分钟多才上线。host 模式用开发机自己的 ssh 和 git 访问,不需要 secret。Dockerfile 加构建参数 ARTIFACTS(build 默认在镜像里编 / prebuilt 用现成产物),服务器自己编的能力保留;prebuilt/COMMIT 和要部署的提交对不上时 update.sh 直接失败。服务端测试同时跑:文件之间 --parallel,评分测试标 describe.concurrent(--max-concurrency=8),本机 4 分钟降到半分钟,连跑三遍都通过。GitHub 的 ci.yml 改成 PR 跑测试、手动触发才部署(服务器自己编),开发机不在时用,push 不再两边各部署一遍。顺手:update.sh 每次部署拉一下 caddy:2-alpine(up 不会自己拉,一直是第一次部署时那份);app 和 caddy 的容器日志限 10MB × 3。部署说明、README、设计方案同步
xuyue pushed to main at xuyue/OJ2 2026-11-03 11:24:07 +08:00
3beb039dda fix(部署): 迁移没通过时把镜像名指回原来的,之后再起容器不会换上没迁移的新代码
xuyue pushed to main at xuyue/OJ2 2026-11-03 11:17:38 +08:00
49643719b0 fix(部署): 开发机上编的后端到线上起不来(缺 libicu),改用官方 bun 编
xuyue pushed to main at xuyue/OJ2 2026-11-03 11:08:05 +08:00
f1c4e89ec5 chore(部署): push origin 就由开发机编好传上去,不再绕道海外,晚上也是一分钟左右上线
xuyue pushed to main at xuyue/OJ2 2026-11-03 10:50:43 +08:00
bcadab40b2 chore(部署): 同步到服务器少传约 20%,线路断了自动续传,不再一直卡着
xuyue pushed to main at xuyue/OJ2 2026-11-03 10:33:30 +08:00
41d2e46aa9 perf(排名): 打开排名页快一些,看「全服 · 全部」从 0.27 秒降到 0.08 秒
f06bb063b4 feat(顶栏): 导航最左边加「首页」,和点站名一样回到首页
4a4cede99f style(专题): 列表没有「布置中」时不再另起一行「专题 14 个」,数量写在标题旁边
91057c1096 fix(课堂任务): 先画一节、再用这几道题写代码时,老师这边也认没画图的还没做完
c3f1413545 fix(课堂任务): 后台改一节不再把它排到同一分钟布置的另一节前面;学生管理员算进统计的课
Compare 6 commits »
xuyue pushed to main at xuyue/OJ2 2026-11-03 00:12:20 +08:00
1b703d13ae style(专题): 「题单」改名「专题」,顶栏、列表、详情、后台、成就说法统一
xuyue pushed to main at xuyue/OJ2 2026-11-02 23:52:21 +08:00
959c326bc9 style(名字): 名字列按去掉 ks 前缀后的长度收窄,不再留一大块空