ItsWA是一个基于Python实现的代码评测系统,使用Lrun
提供安全运行时。并且所有比赛信息均存储在ccf.json
中,方便在各个计算机间的移动。
作为ItsWA的姊妹项目,ItsWA-Editor(简称ITED)实现了一个在前端的GUI,通过访问ItsWA-API的方式实现了对比赛的远程管理(即可以远程操作评测机进行评测)。
ITED的首页 | ITED评测结果 |
---|---|
操作系统 | ||
---|---|---|
开发语言 | PASS | |
评测语言 | WIP |
⚠️ 以上使用到的徽标均遵循CC-BY-NC-SA 4.0协议,引用自VTuberized Logos。
查看Getting Started - ItsWA Online Documents。
查看安装 - ItsWA Online Documents。
在 open issues 中列出了我们将会修复的bug和将会新增的功能。
通过如下方式,可以向我们寻求帮助
- 查看已解决的 Issue。
- 发起一个新的 Github Issue。
为了帮助我们的开发,您可以做以下几件事:
- 给我们的项目点一个 Star。
- 向其他OIer、教练或非正式赛事组织方推荐ItsWA。
- 在Issue中向我们提起新功能建议或报告已知的Bug。
- 根据开发规范编写贡献代码,并提起Pull Request,将其合并到我们的项目中。
本项目目前由 XYCode Kerman 一个人独立制作完成。
在 the contributors page 查看所有的贡献者。
ItsWA无法保证我们的代码中没有安全漏洞,因此请您自行做好安全措施,包括但不限于以下几点:
- 不要将ItsWA Management API暴露到公网中。
- 不要直接将ItsWA Online Judge API暴露到公网中,使用Zerotier等服务实现有限的服务共享。
- 不要用ItsWA Built-in Online Judge来搭建公共OJ。
- 确保你可以在线下找到所有选手,如果他们的代码损坏了评测机,请立即要求他们进行赔偿!
如果您在Review Code过程中发现了任何安全问题,请勿擅自将其公开,而应立即将安全问题发送到xycode-xyc@outlook.com以获取我们的技术支持。当您获得我们的允许后,方可公开该问题。
为了方便开发,ItsWA会向遥测服务上报一些不涉及隐私的基本信息,该遥测服务的源代码位于XYCode-Kerman/ItsWA-Telemetering。遥测服务只会收集ItsWA的开启、关闭等基本信息,访问itte.api.xycode.club/docs以获取ItsWA遥测服务的帮助(包括自己已有的遥测信息、删除遥测记录等)。
尽管ITTE的代码中包含了收集客户端的IP地址的逻辑-,但由于ITTE使用了Service + Ingress进行部署,因此ITTE实际上收集到的IP地址实际上是集群内部的IP地址。
如果您不希望使用遥测服务,请打开configs.py
并将其中的TELEMETERING = True
修改为TELEMETERING = False
。
本项目的许可证是 GPL v3。
GNU 通用公共许可证是传染性协议,这意味着所有使用到 ItsWA 或基于 ItsWA 修改的程序应当 使用相同的许可证并开放源代码。
但是根据本软件作者的意愿,如果您有修改本软件并闭源的需求,请依照下方的模板,发送一份申请到 xycode-xyc@outlook.com,获得许可后您可无视 GNU 通用公共许可证中的条款来对本软件的某一版 本进行修改和再分发。(详情请见用户手册)