CEP 1 - 目的和指南
标题 | CEP 目的和指南 |
状态 | 已提议 |
作者 | Jannis Leidel <jleidel@anaconda.com> |
创建于 | 2021年6月29日 |
更新于 | 2022年8月9日 |
讨论 | 不适用 |
实施 | 不适用 |
摘要
CEP 是 conda 项目社区提出软件项目变更的方式,并概述了如何审查建议的变更。本文档详细介绍了什么是 CEP,如何编写 CEP 以及用于审查这些提案的工作流程。
什么是 CEP
CEP 代表 “Conda 增强提案”。CEP 是一份文件,其中概述了对项目工作方式的建议更改。这些更改可能是技术性的,也可能涉及项目的社会方面,包括治理和行为准则。CEP 应简明扼要地描述拟议的变更以及变更的理由。
CEP 旨在成为提议 conda 工作方式重大变更以及记录变更本身和决策过程的主要机制。
CEP 以 Markdown 格式的文本文件形式维护在 conda/ceps 仓库中。它们的修订历史是拟议变更的历史记录。
工作流程
CEP 流程始于对 conda 项目工作方式进行更改的想法。这些更改可以是技术性的,也可以解决项目的社会方面。小的更改通常不需要 CEP,可以在 conda issue tracker 上讨论。
更复杂或有争议的更改应作为 CEP 提交。如果不清楚更改是否需要 CEP,请在 conda issue tracker 中提出工单,conda 核心团队应该能够提供指导。conda 核心团队可能会就社区关注的主题征求 CEP。CEP 应侧重于单个问题;广泛的更改应拆分为多个重点明确的 CEP。
每个 CEP 必须有一个或多个倡导者 —— 负责按照下述格式编写 CEP,将 CEP 作为拉取请求提交,关注拉取请求上的讨论并回答问题的人。在开始撰写提案之前,最好确定该想法是否可以进行 CEP。在 conda-forge 邮件列表上或作为 conda 社区会议的一部分进行讨论是最好的方式。
一旦倡导者询问了 conda 社区某个想法是否有被接受的机会,就应该按照 CEP 0 中的模板和下述描述编写 CEP 草案。
在提交之前处理 CEP 时,请将其状态设置为草案。
提交
完成后,此草案应作为拉取请求提交到 conda/ceps 仓库,并将状态更改为已提议。此时,conda 社区成员将审查提交内容。
审查
一旦提出拉取请求,CEP 审查将开始。欢迎并鼓励 conda 社区的所有成员以文明和尊重的方式参与 CEP 的审查。CEP 倡导者应准备好回答关于提案的问题,并根据社区的建议更新提案。
决议
所有 CEP 将根据社区的共识被决议为拒绝、接受或推迟。一旦社区达成共识,conda 维护者将更新提案的状态,在表格中添加讨论的链接,并且无论决议如何,都将合并包含这些更新的拉取请求。
CEP 维护
对于拒绝的 CEP,在合并拉取请求后不会进行任何修改。接受的 CEP 应更新为指向实施的拉取请求的链接,并在拟议的更改实施后将状态更改为已实施。推迟的 CEP 可以在新的拉取请求中重新提交,如果证明推迟而不是接受或拒绝的情况发生了变化。
CEP 内容
所有 CEP 都应以包含以下信息的顶级表格开头
标题 | 提案的简短标题 |
状态 | 草案 | 已提议 | 已接受 | 已拒绝 | 已推迟 | 已实施 |
作者 | 全名 <full.name@gmail.com> |
创建于 | 2016年8月30日 |
更新于 | 2016年8月30日 |
讨论 | 指向正在讨论 CEP 的 issue 的链接,提交前为不适用 |
实施 | 指向实施的 PR 的链接,如果不可用则为不适用 |
此表之后应跟一个摘要部分,然后是提案所需的其他部分。一些可能包含的部分(如果适用于提案)包括。
- 规范 -- 拟议变更的技术细节。
- 动机 -- 为什么需要拟议的变更。
- 理由 -- 为什么在提案中做出特定决策。
- 向后兼容性 -- 拟议的变更是否会破坏现有的软件包或工作流程。
- 替代方案 -- 设计期间考虑的任何替代方案。
- 示例实施 -- 指向原型或拟议变更的示例实施的链接。
- 常见问题解答 -- 常见问题(以及答案)。
- 决议 -- 社区做出的决定的简短摘要。
- 参考 -- CEP 设计中使用的任何参考。
最后还需要一个 版权 部分。
发音
CEP 的发音为 /sep/
。
如果您仍然对如何实际发音有疑问,这里有一个参考(我们接受英式和美式发音):https://dictionary.cambridge.org/dictionary/english/cep
Conda 大写标准
有关 conda 的大写标准,请参阅 README。
参考文献
本文档的很大一部分改编自 CFEP 1 - 目的和指南 和 PEP 1 -- PEP 目的和指南,两者均已置于公有领域。IPEPs: IPython 增强提案 也被参考以获得灵感。
版权
本文档是 CC0 1.0 Universal。