如何贡献

Apache RocketMQ —— 开放共享的开源社区,诚挚邀请您的加入。

社区交流和贡献方式:

  • 提出问题
  • 提交错误报告
  • 提出新特性
  • 参与邮件列表上的讨论
  • 贡献代码或文档
  • 优化网站
  • 测试预发布版本

请求答疑

Apache RocketMQ 社区提供完备的处理流程帮您解答问题。

您可以通过 User mailing listStack Overflow #rocketmq 进行提问。

提交错误报告

如您在使用 RocketMQ 过程中出现问题,可以在 GitHub Issue 上提交错误报告。

提出改进或新功能

社区在持续寻找反馈意见以改善 Apache RocketMQ ,您的改进方案或新特性的需求将惠及所有 RocketMQ 用户, 请在 GitHub 上创建 GitHub Issue

提案需要包含适当的细节描述和影响范围,请尽可能地详述其需求。我们希望得到较完备的信息,原因如下:

  • 实现的改进和新特性最终符合您的需求
  • 根据您的需求评估投入成本和设计解决方案
  • 便于社区围绕该提案展开建设性的讨论

若您计划实现自己的提案以贡献社区,同样需要提供详细描述信息,并遵循 code-guidelines 中的编码规范

我们推荐先在社区达成共识再着手实现功能。通过讨论新特性的必要性及实现方案等问题,可以早发现超出项目范围的提案。

参与讨论并帮助他人

Apache RocketMQ 社区成员主要通过以下两种邮件沟通和交流:

  • User mailing list :Apache RocketMQ 用户通过该邮件列表提问以寻求帮助或建议。

    您可以通过订阅该邮件系统以帮助他人解决问题来贡献社区;

    您还可以在 Stack Overflow 上检索 rocketmq 标签 回答用户的问题并获取更多见解。

  • Development mailing list : Apache RocketMQ 开发者通过该邮件列表交流新特性,预发布版本,一般的开发流程等。

    若您热衷于为 RocketMQ 社区贡献代码,可以加入该邮件列表。

  • 订阅步骤 : 以订阅 dev@rocketmq.apache.org 邮件列表为例,具体步骤如下。

    1. 发送一封不包含任何内容或主题的邮件到: dev-subscribe@rocketmq.apache.org
    2. 等待直到收到一封主题为 confirm subscribe to dev@rocketmq.apache.org 的邮件(如果长时间未能收到,请确认该邮件是否被你的邮箱拦截,确定没有被拦截且长时间未收到回复邮件的话,返回第1步)
    3. 直接回复该邮件,不用修改主题和添加邮件内容。
    4. 等待直到收到一封主题为 WELCOME to dev@rocketmq.apache.org 的邮件。
    5. 收到 dev 的邮件后,就说明订阅邮件成功。若想发起讨论,直接往 dev@rocketmq.apache.org 发送邮件即可,所有订阅了邮件列表的人都会收到邮件。
  • 退订步骤 : 退订邮件列表的步骤与订阅邮件列表类似,具体步骤如下。

    1. 发送一封不包含任何内容或主题的邮件到: dev-unsubscribe@rocketmq.apache.org
    2. 等待直到收到一封主题为 confirm unsubscribe from dev@rocketmq.apache.org 的邮件
    3. 直接回复该邮件,不用修改主题和添加邮件内容
    4. 等待直到收到一封主题为 GOODBYE from dev@rocketmq.apache.org 的邮件
    5. 退订成功

您也可以通过订阅 mailing lists,获取更多的社区信息。

测试预发布版本

Apache RocketMQ 在其活跃社区的推动下持续发展着。每隔几周我们会发布 RocketMQ 的新版本,以修复漏洞,提升性能,新增特性等。发布新版本的流程如下:

  1. 推出新的预发布版本并启动投票流程(时效 72 小时)
  2. 测试预发布版本并评分 (+1 未发现问题, -1 测试出问题)
  3. 若预发布版本未测试出问题则发布,否则回到步骤 1

我们在网站上整理了 release-manual 版本发布指南。测试预发行版是项大工程,我们需要吸纳更多人的参与。 RocketMQ 社区鼓励每个人都参与新版本的测试。通过测试预发布版本, 您将确信新的 RocketMQ 版本仍将为您的程序提供正常服务,并确实在支持版本升级。

RocketMQ 社区鼓励每个人都参与新版本的测试。通过测试预发布版本, 您将确信新的 RocketMQ 版本仍将为您的程序提供正常服务,并确实在支持版本升级。

贡献代码

Apache RocketMQ 已然并将持续进行维护,优化,和扩展。因此 Apache RocketMQ 鼓励所有人贡献源代码。为给予代码贡献者和审查者极佳的代码贡献体验,并提供高质量的代码仓库,社区遵循 code-guidelines 中的贡献流程。编码手册包含构建开发环境指南,社区编码指南和编码风格,并介绍了如何提交贡献的代码。

**请务必在编码之前仔细阅读 code-guidelines

并请阅读 AFS Apache 软件基金会 贡献者协议 提交电子签名。

如何寻找合适的 issue ?

您可以在 GitHub Issue 列出了目前已提出的改进和推荐特性。

贡献文档

优秀的说明文档对任何一种软件都是至关重要的。 Apache RocketMQ 社区致力于提供简明,精准,完备的技术文档。社区诚挚邀请所有贡献参与完善和改进 RocketMQ 文档。

  • 请在 GitHub Issue上报告文档缺失,错误,过期等相关情况。
  • RocketMQ 技术文档以 Markdown 形式书写,并存放在 RocketMQ 官网仓库 /docs 目录下。

阅读 Q&A了解如何通过更新和完善等方式贡献文档。

优化官网

Apache RocketMQ 官网代表着 Apache RocketMQ 和 Apache RocketMQ 社区。其主要功能如下:

  • 通晓访问者 Apache RocketMQ 和 Apache RocketMQ 的功能特性
  • 支持访问者 下载并使用 RocketMQ
  • 引导访问者 参与并贡献 RocketMQ 社区

社区接纳任何有助于优化网站的贡献。

请通过创建 Github Issue 提供您关于网站的建议和创意。

如您想要更新或优化网站,请访问 apache/rocketmq-site new-official-website

更多贡献途径…

还有更多贡献 RocketMQ 社区的方式等您选择,您可以:

  • 介绍 RocketMQ 给尽可能多的伙伴使用
  • 组织线下交流会或组建线上用户群
  • 化身 RocketMQ 的布道师

如何成为 committer

Committers 是社区中修改项目仓库的成员,可修改代码,文档和网站或接纳其他成员的贡献。

成为 commiter 并没有严格的协议,候选人通常是社区中活跃的贡献者。

活跃的贡献者意味着:参加邮箱列表中的讨论,帮助他人解决问题,验证预发布版本,礼贤下士并持续优化社区管理,这部分关乎社区在 Apache 中的发展。

无疑,为项目贡献代码和文档同样至关重要。好的开端可以是优化性能,开发新特性,修复漏洞。无论哪种方式,您需要为所贡献的代码负责,提供测试用例和说明文档并持续维护。

候选人可以被社区内的 committer 或 PMC 成员举荐,并最终由 PMC 投票表决。

如您有意成为 RocketMQ 社区的 committer ,请积极融入社区并以上述任意方式贡献 Apache RocketMQ

社区内 committer 成员会非常热衷与您分享交流,并给予您适时的建议和指导。