Winterant LDUOnlineJudge Versions Save

✨ SparkOJ | LDUOJ | Online Judge | 程序设计在线评测系统 | QQ群:529507453

1.5

1 year ago

详情请参考中文文档

新功能

  • 群组个人学习进度展示
  • 群组分为“课程”、“班级”两种模式
  • 群组竞赛支持批量添加、删除,排序

功能优化

  • 重构竞赛榜单
  • 优化 解决因重判导致的各类数据统计误差
  • redis改用连接池

修复bug

  • 群组中已知bug
  • 竞赛中已知bug

Full Changelog: https://github.com/winterant/OnlineJudge/compare/1.4...1.5

1.4

1 year ago

项目文档

新增若干功能

  • 竞赛题目增加题号链接中标记该题是否通过
  • 增加提交记录折线图,在首页、竞赛榜单、群组学习进度等页面可见

修复若干bug

进行若干优化

  • 重构榜单,其中oi模式以最后一次提交作为最终得分
  • 部分高并发页面优化缓存机制

Full Changelog: https://github.com/winterant/OnlineJudge/compare/1.3...1.4

1.3

1 year ago

项目文档

修复若干bug

进行若干优化

  • 课程模块页面功能优化
  • 规范化api(少量还未规范)
  • 榜单缓存10s以应对高并发
  • 若干后段效率优化

环境升级

  • ubuntu 20.04 -> 22.04
  • php 7.2 -> 8.1
  • composer 1.10 -> 2.4
  • laravel 6.0 -> 9.0

1.2

1 year ago

1.1

1 year ago

🔨 一键部署

请参考项目文档

如何从lduoj-v1.0升级到v1.1?

  1. 1.0版本进入容器,备份数据库;
    docker exec -it lduoj bash  # 进入v1.0的容器
    # 以下是在容器内执行的命令
    USER=$(cat /etc/mysql/debian.cnf |grep user|head -1|awk '{print $3}')
    PASSWORD=$(cat /etc/mysql/debian.cnf |grep password|head -1|awk '{print $3}')
    mysqldump -u"${USER}" -p"${PASSWORD}" --no-create-info --complete-insert -B lduoj > /volume/data.sql
    mysqldump -u"${USER}" -p"${PASSWORD}" --no-data -B lduoj > /volume/structure.sql
    echo "Generated database /volume/structure.sql and /volume/data.sql"
    
  2. 一键部署1.1,但先不要打开网页
    cd lduoj-v1.1
    docker-compose up -d
    
  3. 将1.0的静态资源移动到1.1的挂载文件夹下;
    mv -f ${old_app_path}/storage/app/* ${new_app_path}/data/storage/app/
    
  4. 将第1步生成的data.sql移入${new_app_path}/data/mysql/;随后进入mysql容器,恢复数据库;
    docker exec -it lduoj_mysql bash  # 进入mysql容器(注意实际容器名)
    cd /var/lib/mysql
    mysql -uroot -pOurFuture2099 -f -Dlduoj < data.sql
    
  5. 大功告成,可以访问网页了。

1.0

1 year ago

The final version 1.0

docker run -d -p 8080:80 -v ~/lduoj/volume:/volume --name lduoj winterant/lduoj:1.0

21.12

2 years ago

21.11

2 years ago

增加竞赛类别,管理员可自定义类别。 解压vendor.zipvendor/放到项目下,可免下载依赖包。

21.07

2 years ago

21.06

2 years ago

判题端的优化:spj报告错误原因 安装脚本的优化