感谢你来到这里和你对 mirai 做的所有贡献。
mirai 欢迎一切形式的代码贡献。你可以通过以下几种途径向 mirai 贡献。
mirai-coremirai git 仓库含有 submodule, 请在 clone 时使用 --recursive 参数, 或在 clone 后使用如下命令更新 submodule:
git submodule init
git submodule update
项目首次初始化和构建可能要花费较长时间。
gradlew assemblegradlew testgradlew build1.x: 1.x 版本的开发 (已停止)dev: 2.0 版本的开发-release 后缀: 基于版本规范, 用于从 dev 中筛选 bugfix 并发布一个版本的 patch 的版本. 如 2.0-release 会包含 2.0.x 版本的更新.请基于 dev 分支进行修改
维护社区: 可以为 mirai-console 编写插件, 并发布到论坛
代码优化: 优化任何功能设计或实现, 或是引入一个新的设计
解决问题: 在 issues 查看 mirai 正遇到的所有问题, 或在 里程碑 查看版本计划. 所有没有 assignee 的 issue 都处于
协议支持: 添加新协议支持
里程碑 为各版本的开发计划. 在完成所有任务后就会发布该版本.
Backlog 为没有设定目标版本的计划. 如果有相关 PR, 这些计划就可能会被确定到一个最近的版本.
请查看 PacketFactory.kt 了解网络层架构.
参考现有的 PacketFactory 实现和一些有关协议的 PR (带有 protocol 标签) 了解如何添加新的 PacketFactory.
gradlew build, 若有不兼容变更会得到错误. 在提交时将 binary-compatibility-validator.api 一并提交 (如果有修改). (使用 Kotlin/binary-compatibility-validator)如果你不太保证自己能达到上述要求也没关系,mirai 感谢你的每一行代码,维护者会审核代码并尽可能帮助你。