5 参与贡献

原文链接: https://rust-random.github.io/book/contributing.html

感谢你对 Rand 的贡献兴趣!

我们欢迎所有贡献者,但请注意我们的资源有限,项目中通常还有其他正在进行的工作,而且即使接受完整的 PR 也会占用我们的时间(审查以及可能的持续支持),因此我们可能需要相当长的时间才能回复你。

所有贡献

  • 范围: 请考虑你的「问题」是否属于项目现有范围,或是否属于增强。请注意,某件事是否被视为缺陷可能取决于你的观点。我们可能会拒绝贡献以避免增加工作量。

    如果你希望扩展项目范围(例如新平台或额外的 CI 测试),请准备好提供持续支持。

  • 修复: 如果你能轻松自行修复,请考虑提交 PR 而不是开启 issue。另一方面,如果修复不太容易或看起来可能与其他工作冲突,不要犹豫,直接开启 issue。

Pull Request

  • 变更日志: 除非你的更改微不足道,请在每个受影响 crate 的变更日志(CHANGELOG.md)中添加说明,放在顶部的 [Unreleased] 标题下(如有必要则添加)。请包含 PR 编号(这意味着说明必须在打开 PR 之后添加)。

  • 提交: 如果贡献大型更改,考虑将其拆分为多个提交,尽可能使每个提交至少能够编译。在进行重大更改时,变基提交可能是合适的。

  • 文档: 我们要求为所有公共项编写文档。在适当的地方可以包含简短示例。

  • 可维护性: 对我们来说,代码易于阅读和理解、且易于审查正确性非常重要。

  • 性能: 我们始终追求良好性能,有时会为此付出大量额外工作,但我们也必须为可维护性做出妥协,并考虑微小的效率提升是否值得额外的代码复杂性。使用基准测试。

  • 风格: 保持整洁。通常将长度限制在 80 个字符。

  • Unsafe: 在必要时使用,如果有良好替代方案则不要使用。确保 unsafe 代码易于审查正确性。

  • 许可证与署名: 本项目在 MIT 和 Apache Public Licence v2 下自由许可。我们假设所有贡献均在这些许可授权下做出。版权由各自的贡献者保留。

    我们的作品归属于「The Rand Project Developers」。这不是一个正式实体,仅仅是本项目所有贡献者的集合。更多信息请参阅 COPYRIGHT 文件。

  • 谢谢你!

最后修改 August 23, 2026: 更新 (499855b16)