赞
踩
为了使我们的开源项目以更具创新、更加积极的状态高效迭代快速推进,EMQ X 团队宣布,开始正式采用 RFC 流程,以收集来自社区的意见,持续完善产品功能。
RFC(Request For Comments,请求意见稿)是一种为了保证重大特性更新和架构更改能够顺利推进的一种流程机制。
我们将管理该流程的存储库命名为 EIP,全称为:EMQ X Improvement Proposals。
项目地址:https://github.com/emqx/eip
EMQ X 开源项目发展至今,功能愈发强大,项目架构也愈发复杂,一些新功能的设计和实现可能会对系统架构和现有功能或多或少产生影响。因此,在规划和实现新功能之前,都需要团队认真讨论和评估。同时,随着用户和社区群体的增长壮大,我们也收到了来自越来越多用户针对 EMQ X 所提出的充满创新的优秀功能设计建议,以及把这些想法融入到 EMQ X 未来版本中的意愿。
因此,EIP 项目应运而生。我们将为大家提供一个平台,用于记录想法、设计或实现新功能的详细信息。当有一些想法或者更新会涉及到系统架构、功能、API 的变更等——如上文所述,都需要在开发工作开始前经过一个讨论与审核流程,此时 EIP 将是一个更合适的途径来保证 EMQ X 团队与社区用户达成共识。
EIP 具有以下三个特性:
此外,小部分的特性功能更新、Bug 修复的代码变更仍然可以遵循普通的 GitHub 流程,通过提交 Issue,发起 Pull Request 和 Code Review 来完成。
所有的 EIP 均为 Markdown(* .md)格式文件。
新的 EIP 首先应通过创建新的 Pull Request,经过讨论批准后进入 active 目录。 设计并完成该功能后,会将其放入 implemented 的目录中。
提交 EIP 之前,请阅读 0000-proposal-template,这是一个演示 EIP 格式的模板,大致结构如下:
# An Example of EMQ X Improvement Proposal ## Change log * 2020-10-21: @emqxplus Initial draft * 2020-02-05: @terry-xiaoyu Restructure * 2021-02-21: @zmstone Add 'Declined Alternatives' section 用于记录修改信息,包含修改的日期,作者,和修改内容 ## Abstract 对要解决的技术问题的简短描述(约200字)。 ## Motivation 此处应清楚地解释为什么此 EIP 建议的功能是必要的。没有足够动机的 EIP 提交可能会被完全拒绝。 ## Design 此处应详细描述功能的设计。 如果对体系结构进行了更改,则可能需要一些图表。 ## Configuration Changes 此处应列出对配置文件的所有更改(如果有的话)。 ## Backwards Compatibility 此处应说明如何使此功能向后兼容。如果它与以前的 emqx 版本不兼容,请解释和建议如何解决不兼容问题。 ## Document Changes 如果文档有任何更改,请在此处简要说明。 ## Testing Suggestions 最终实现必须包括单元测试或通用测试代码。如果需要手动进行更多测试,例如集成测试或基准测试,请在此处列出。 ## Declined Alternatives 这里讨论有哪些替代方案,但被认为比当前的方案更差一些。这是为了帮助人们了解我们如何达到当前状态,防止再次进行讨论。
您也可以参考在 implemented 中的 EIP 文档。通过已实现的实例参考来编辑您需要提供的想法和建议的文档。
至此,我们欢迎各位读者、用户和开发者们积极参与到 EIP 项目中来,为 EMQ X 提供更多新颖和强大的功能建议与想法。
结合 EMQ X EIP,让每一个声音被听到、有回响,使 EMQ X 成为所有社区用户为之自豪的开源项目,一个 IoT 时代伟大的开源项目将由我们共同创造。
版权声明: 本文为 EMQ 原创,转载请注明出处。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。