From 02a9cc924a80e125da2bb65ea06d450d8b1f7521 Mon Sep 17 00:00:00 2001 From: yeqinglong01 Date: Tue, 22 Aug 2023 11:16:11 +0800 Subject: [PATCH 1/5] =?UTF-8?q?oEEP-0011=20openEuler=E8=BD=AF=E4=BB=B6?= =?UTF-8?q?=E5=8C=85=E9=9D=9Eupstream=E6=94=AF=E6=8C=81=E5=A4=9A=E6=9E=B6?= =?UTF-8?q?=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...01\345\244\232\346\236\266\346\236\204.md" | 73 +++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 "oEEP/oEEP-0011 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" diff --git "a/oEEP/oEEP-0011 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" "b/oEEP/oEEP-0011 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" new file mode 100644 index 0000000..4264466 --- /dev/null +++ "b/oEEP/oEEP-0011 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" @@ -0,0 +1,73 @@ +--- +标题: openEuler软件包非upstream支持多架构 +类别: 流程设计 +摘要: 制品仓软件包的非upstream支持 +作者: 叶青龙 (yeqinglong@kylinsec.com.cn) 胡欣蔚 (shinwell_hu@openeuler.sh) +状态: 初始 +编号: oEEP-0011 +创建日期: 2023-08-17 +修订日期: 2023-08-17 +--- + +## 动机/问题描述: + +### 初衷 +openEuler 版本中支持众多体系架构,其中不乏一些软件组件,在 upstream 上还没有完整支持对应的架构;或者 upstream 已经支持,但是 openEuler 特定版本中选用的特定软件版本尚未完整支持对应的架构。 +我们期望: +- 无论这些体系架构支持在 upstream 中是否已经具备,openEuler 有能力使能 +- 不同体系架构在 openEuler 中应共享一份代码,即不同架构在 rpmbuild prepare 之后的代码是一致的,以保证所有的代码逻辑漏洞修复在所有架构上可落实 +- 在体系架构使能代码未被 upstream 接纳的情况下,openEuler 的软件包选型演进不应该被阻拦 +- 在体系架构使能代码已经 upstream 的情况下,openEuler 的软件包可以快速通过升级等手段跟随,不再独立维护体系架构使能代码 +为了能够在 openEuler 制品仓中完整支持所有的体系架构,并且长期可维护,社区需要建立相应的规范和流程要求。 + +### 当前问题 +社区当前架构相关支持的补丁缺少约束,不同的软件包管理时接纳架构相关补丁没有统一的要求,包括但不限于: + - 不同架构在同一个地方反复修改,造成不必要的依赖复杂度,难以维护 + - 按架构打补丁,使得不同架构的构建用代码不一致,存在代码到二进制一致性风险 + - 补丁没有区分 upstream backport 和开发中,软件包演进时分析困难 + - 架构相关补丁和其他补丁没有明显区分,并且在不同软件包中应用的顺序各不相同 + +### 相关SIG组及职责 +- 所有 SIG:SIG 的PR review checklist中应该增加与架构补丁合入相关的要求,并且能够在PR review过程中落实; +- openEuler Infra SIG:增强CI,提升对构建过程中的 ifarch 等条件构建宏的敏感性 + +## 方案的详细描述: +### 对代码的要求 +1. 原则上不按架构分别打补丁,rpm spec 文件中出现 ifarch 宏的,必须在之前一行通过注释的方式明确说明原因和当前技术限制。 +2. 补丁名称显式说明是否已经被 upstream 接纳,或来自某个特定版本的backport,便于版本升级时处理 +``` +Patch2: backport-fiels-version-info.patch +``` +3. 原则上新增架构相关代码文件,和修改架构相关代码的补丁应明确分开,不在同一个补丁中既修改代码,又新增文件,比如: +``` +Patch2: 0002-add-riscv-support-not-upstream-modified-files.patch +Patch3: 0003-add-riscv-support-not-upstream-new-files.patch +``` +4. 对于修改架构相关代码的补丁,一个补丁尽量不要包含太多文件修改,尽量拆分,可使用 split-patch 工具,一个补丁最多包括5个文件修改(暂定),如: +``` +Patch1001: 1001-add-riscv-support-not-upstream-modified-files-1.patch +Patch1002: 1002-add-riscv-support-not-upstream-modified-files-2.patch +``` +5. 对于同一个文件的不同架构补丁,原则上按架构相对稳定程度排序,优先应用架构稳定的补丁。不同软件包维护者可根据实际情况选择,但在不同文件的补丁应用中应保持一致。 +### 补丁应用顺序 +**注意** : rpm 中补丁PatchXXXX中的XXXX序号不会影响应用顺序,如下是错误的展示: +```rpm +Patch0002: patch-2.diff +Patch0001: patch-1.diff +``` +实际应用时会先打 patch-2.diff,然后打 patch-1.diff。所以 openEuler 要求所有补丁声明的顺序必须与补丁序号保持一致。正确的声明顺序是: +``` +Patch0001: patch-1.diff +Patch0002: patch-2.diff +``` +### 补丁声明顺序 +1. 所有来自同一版本 upstream 的补丁声明范围为 0001-0999 +2. 所有架构相关的补丁声明范围为 1000 - 2999 +3. 所有CVE漏洞修复及上游其他版本backport 补丁,声明范围为 3000 - 4999 +4. 所有 openEuler 特性补丁声明范围为 5000 - + +### 软件包修复CVE +CVE 类补丁声明在架构补丁之后,天然要求 openEuler 漏洞修复要考虑对所有体系架构的支持。如果需要,CVE补丁应针对 openEuler 支持的所有架构做适配刷新。这在架构补丁与CVE同时修改同一个文件时可以通过补丁冲突直观检出。但存在一种可能,CVE修复了其他所有架构的独立文件,这时 maintainer 需要联系架构补丁提交者,确认修复方案。如果特定架构的修复难度过大,影响其他架构的补丁发布节奏,可以通过 ifarch 在构建时临时规避。此时 ifarch 可以作为 CI 问题,持续提醒 maintainer 和 committer 解决改问题。长期存在此类问题的架构不适宜作为 openEuler LTS 版本正式支持对象。 + +### 软件包升级 +所有 upstream 补丁在架构声明之前,天然要求upstream开发优先与 openEuler 独有的架构支持。如升级后可以直接获取相关架构支持,那相关补丁在升级后可以直接 drop;否则架构补丁应随 upstream 升级而刷新。架构补丁的提交者对升级中的刷新工作负责,如果特定架构无法随 upstream 演进,则不适宜作为 openEuler LTS 版本的正式支持对象。 -- Gitee From 0ce1c4c01dcff1942aaf9c56356fdc050767d6eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8F=B6=E9=9D=92=E9=BE=99?= Date: Thu, 24 Aug 2023 01:31:39 +0000 Subject: [PATCH 2/5] =?UTF-8?q?rename=20oEEP/oEEP-0012=20openEuler?= =?UTF-8?q?=E8=BD=AF=E4=BB=B6=E5=8C=85=E9=9D=9Eupstream=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E5=A4=9A=E6=9E=B6=E6=9E=84.md=20to=20oEEP/oEEP-0012=20openEule?= =?UTF-8?q?r=E8=BD=AF=E4=BB=B6=E5=8C=85=E9=9D=9Eupstream=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E5=A4=9A=E6=9E=B6=E6=9E=84.md.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 叶青龙 --- ...6\214\201\345\244\232\346\236\266\346\236\204.md" | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) rename "oEEP/oEEP-0011 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" => "oEEP/oEEP-0012 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" (94%) diff --git "a/oEEP/oEEP-0011 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" "b/oEEP/oEEP-0012 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" similarity index 94% rename from "oEEP/oEEP-0011 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" rename to "oEEP/oEEP-0012 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" index 4264466..24cfc59 100644 --- "a/oEEP/oEEP-0011 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" +++ "b/oEEP/oEEP-0012 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" @@ -4,7 +4,7 @@ 摘要: 制品仓软件包的非upstream支持 作者: 叶青龙 (yeqinglong@kylinsec.com.cn) 胡欣蔚 (shinwell_hu@openeuler.sh) 状态: 初始 -编号: oEEP-0011 +编号: oEEP-0012 创建日期: 2023-08-17 修订日期: 2023-08-17 --- @@ -62,12 +62,16 @@ Patch0002: patch-2.diff ``` ### 补丁声明顺序 1. 所有来自同一版本 upstream 的补丁声明范围为 0001-0999 -2. 所有架构相关的补丁声明范围为 1000 - 2999 -3. 所有CVE漏洞修复及上游其他版本backport 补丁,声明范围为 3000 - 4999 -4. 所有 openEuler 特性补丁声明范围为 5000 - +2. 所有架构相关的补丁声明范围为 1000 - 1999 +3. 预留补丁编号范围 2000 - 2999 +4. 所有CVE漏洞修复及上游其他版本backport 补丁,声明范围为 3000 - 4999 +5. 所有 openEuler 特性补丁声明范围为 5000 - ### 软件包修复CVE CVE 类补丁声明在架构补丁之后,天然要求 openEuler 漏洞修复要考虑对所有体系架构的支持。如果需要,CVE补丁应针对 openEuler 支持的所有架构做适配刷新。这在架构补丁与CVE同时修改同一个文件时可以通过补丁冲突直观检出。但存在一种可能,CVE修复了其他所有架构的独立文件,这时 maintainer 需要联系架构补丁提交者,确认修复方案。如果特定架构的修复难度过大,影响其他架构的补丁发布节奏,可以通过 ifarch 在构建时临时规避。此时 ifarch 可以作为 CI 问题,持续提醒 maintainer 和 committer 解决改问题。长期存在此类问题的架构不适宜作为 openEuler LTS 版本正式支持对象。 ### 软件包升级 所有 upstream 补丁在架构声明之前,天然要求upstream开发优先与 openEuler 独有的架构支持。如升级后可以直接获取相关架构支持,那相关补丁在升级后可以直接 drop;否则架构补丁应随 upstream 升级而刷新。架构补丁的提交者对升级中的刷新工作负责,如果特定架构无法随 upstream 演进,则不适宜作为 openEuler LTS 版本的正式支持对象。 + +### 打包规范 +https://gitee.com/openeuler/community/blob/master/zh/contributors/packaging.md -- Gitee From 285431a4674e64103333ffc2f9b6b60b5fb1365c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8F=B6=E9=9D=92=E9=BE=99?= Date: Wed, 30 Aug 2023 03:20:30 +0000 Subject: [PATCH 3/5] =?UTF-8?q?update=20oEEP/oEEP-0012=20openEuler?= =?UTF-8?q?=E8=BD=AF=E4=BB=B6=E5=8C=85=E9=9D=9Eupstream=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E5=A4=9A=E6=9E=B6=E6=9E=84.md.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 叶青龙 --- ...\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git "a/oEEP/oEEP-0012 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" "b/oEEP/oEEP-0012 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" index 24cfc59..41f285c 100644 --- "a/oEEP/oEEP-0012 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" +++ "b/oEEP/oEEP-0012 openEuler\350\275\257\344\273\266\345\214\205\351\235\236upstream\346\224\257\346\214\201\345\244\232\346\236\266\346\236\204.md" @@ -3,7 +3,7 @@ 类别: 流程设计 摘要: 制品仓软件包的非upstream支持 作者: 叶青龙 (yeqinglong@kylinsec.com.cn) 胡欣蔚 (shinwell_hu@openeuler.sh) -状态: 初始 +状态: 初始化 编号: oEEP-0012 创建日期: 2023-08-17 修订日期: 2023-08-17 -- Gitee From 7094dfda57f4d178206290207204ab39a2d2b90a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8F=B6=E9=9D=92=E9=BE=99?= Date: Wed, 30 Aug 2023 03:35:32 +0000 Subject: [PATCH 4/5] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20oEEP?= =?UTF-8?q?/oEEP-0000=20oEEP=20=20=E7=B4=A2=E5=BC=95.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...EP-0000 oEEP \347\264\242\345\274\225.md" | 41 ------------------- 1 file changed, 41 deletions(-) delete mode 100644 "oEEP/oEEP-0000 oEEP \347\264\242\345\274\225.md" diff --git "a/oEEP/oEEP-0000 oEEP \347\264\242\345\274\225.md" "b/oEEP/oEEP-0000 oEEP \347\264\242\345\274\225.md" deleted file mode 100644 index 2e21a96..0000000 --- "a/oEEP/oEEP-0000 oEEP \347\264\242\345\274\225.md" +++ /dev/null @@ -1,41 +0,0 @@ ---- -标题: oEEP (openEuler 演进提案 Evolution Proposal) 索引 -类别: 信息整理 -摘要: 当前 oEEP 全集索引 -作者: 胡欣蔚 (shinwell_hu at openeuler.sh) -状态: 活跃 -编号: oEEP-0000 -创建日期: 2023-04-16 -修订日期: 2023-07-31 ---- - -## 索引: - -| 编号 | 类型,状态 | 标题 | 作者 | 提案日期 | -| :----: | :-----------: | :----: | :----: | :---------: | -| 0001 | P,I | [通过 oEEP 规范化社区演进的技术决策流程](oEEP-0001%20通过%20oEEP%20规范化社区演进的技术决策流程.md) | 胡欣蔚 shinwell_hu at openeuler.sh | 2023-04-13 | -| 0002 | D,I | [oEEP 格式与内容规范](oEEP-0002%20oEEP%20格式与内容规范.md) | 胡欣蔚 shinwell_hu at openeuler.sh | 2023-04-13 | -| 0003 | S,I | [LLVM平行宇宙计划--基于LLVM技术栈构建oE软件包](oEEP-0003%20LLVM平行宇宙计划--基于LLVM技术栈构建oE软件包.md) |赵川峰 cf-zhao | 2023-05-04 | -| 0004 | S,A | [dnf根据用户情况自动优化下载软件包](oEEP-0004%20dnf根据用户情况自动优化下载软件包.md) |陈曾 zengchen1024 at chenzeng2@huawei.com | 2023-06-07 | -| 0005 | P,I | [openEuler官方容器镜像发布流程](oEEP-0005%20openEuler官方容器镜像发布流程.md) | 姜逸坤 yikunkero at gmail.com, 鲁卫军 wjunlu217 at gmail.com | 2023-05-10 | -| 0006 | S,A | [openEuler内核kconfig翻新及内核包拆分](oEEP-0006%20openEuler内核kconfig翻新及内核包拆分.md) | 刘恺 kai.liu at xfusion.com | 2023-07-20 | -| 0007 | D,I | [openEuler优秀项目评选规则](oEEP-0007%20openEuler优秀项目评选规则.md) | 胡欣蔚 shinwell_hu at openeuler.sh | 2023-07-10 | -| 0008 | P,I | [openEuler智能补丁管理框架](oEEP-0008%20openEuler智能补丁管理框架.md) | 胡峰 solarhu| 2023-07-25 | -| 0009 | P,I | [openEuler LTS 版本内核 KABI 变更策略](oEEP-0009%20openEuler%20LTS%20版本内核%20KABI%20变更策略.md) | 谢秀奇 xiexiuqi at huawei.com | 2023-5-9 | -| 0010 | D,I | [openEuler服务要求参考基线](oEEP-0010%20openEuler服务要求参考基线.md) | 邓晖龙 denghuilong88 at huawei.com | 2023-8-2 | - -## oEEP 类型分类: -- D (Document, 信息整理): 信息梳理形成的文档。此类 oEPP 包含社区索引,指南,规范或其他和 openEuler 相关的信息。 -- P (Process, 流程设计) -- openEuler 社区的流程设计,包括社区治理,CI/CD,测试等相关要求。 -- S (Standard, 特性变更) -- openEuler 的代码、工具、配置变更设计,这些设计产生对开发者、系统管理员、用户可见的特性变化。 - -## oEEP 状态分类: -- I (Initial, 初始化): 当前活跃的 DRAFT,但包含的信息尚未达成共识 -- A (Accepted, 接纳): 已被 技术委员会和执行方接受,尚在落实过程中 (对于P, S) -- A (Active, 活跃): 活跃维护,有效的信息 (对于D) -- D (Deactive, 不活跃): 不活跃的 oEEP ,但后续可能重新启动 -- F (Final, 已完成): 已完成的 oEEP,不再需要跟进 (对于P, S) -- P (Provision, 基本成型): 基本形成共识,待技术委员会正式决策 -- R (Rejected, 被拒绝): 已被技术委员会正式拒绝,不接纳 -- S (Substiuted,被替代): 被后续其他的oEEP替代 -- W (Withdraw, 撤回): 被提案人撤回 -- Gitee From c0a91cebd423dc12c3aba1ec01ed453fb8d3b9f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8F=B6=E9=9D=92=E9=BE=99?= Date: Wed, 30 Aug 2023 03:50:03 +0000 Subject: [PATCH 5/5] =?UTF-8?q?add=20oEEP/=20oEEP-0000=20oEEP=20=E7=B4=A2?= =?UTF-8?q?=E5=BC=95.md.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 叶青龙 --- ...EEP-0000 oEEP \347\264\242\345\274\225.md" | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 "oEEP/ oEEP-0000 oEEP \347\264\242\345\274\225.md" diff --git "a/oEEP/ oEEP-0000 oEEP \347\264\242\345\274\225.md" "b/oEEP/ oEEP-0000 oEEP \347\264\242\345\274\225.md" new file mode 100644 index 0000000..82d5670 --- /dev/null +++ "b/oEEP/ oEEP-0000 oEEP \347\264\242\345\274\225.md" @@ -0,0 +1,43 @@ +--- +标题: oEEP (openEuler 演进提案 Evolution Proposal) 索引 +类别: 信息整理 +摘要: 当前 oEEP 全集索引 +作者: 胡欣蔚 (shinwell_hu at openeuler.sh) +状态: 活跃 +编号: oEEP-0000 +创建日期: 2023-04-16 +修订日期: 2023-07-31 +--- + +## 索引: + +| 编号 | 类型,状态 | 标题 | 作者 | 提案日期 | +| :----: | :-----------: | :----: | :----: | :---------: | +| 0001 | P,I | [通过 oEEP 规范化社区演进的技术决策流程](oEEP-0001%20通过%20oEEP%20规范化社区演进的技术决策流程.md) | 胡欣蔚 shinwell_hu at openeuler.sh | 2023-04-13 | +| 0002 | D,I | [oEEP 格式与内容规范](oEEP-0002%20oEEP%20格式与内容规范.md) | 胡欣蔚 shinwell_hu at openeuler.sh | 2023-04-13 | +| 0003 | S,I | [LLVM平行宇宙计划--基于LLVM技术栈构建oE软件包](oEEP-0003%20LLVM平行宇宙计划--基于LLVM技术栈构建oE软件包.md) |赵川峰 cf-zhao | 2023-05-04 | +| 0004 | S,A | [dnf根据用户情况自动优化下载软件包](oEEP-0004%20dnf根据用户情况自动优化下载软件包.md) |陈曾 zengchen1024 at chenzeng2@huawei.com | 2023-06-07 | +| 0005 | P,I | [openEuler官方容器镜像发布流程](oEEP-0005%20openEuler官方容器镜像发布流程.md) | 姜逸坤 yikunkero at gmail.com, 鲁卫军 wjunlu217 at gmail.com | 2023-05-10 | +| 0006 | S,A | [openEuler内核kconfig翻新及内核包拆分](oEEP-0006%20openEuler内核kconfig翻新及内核包拆分.md) | 刘恺 kai.liu at xfusion.com | 2023-07-20 | +| 0007 | D,I | [openEuler优秀项目评选规则](oEEP-0007%20openEuler优秀项目评选规则.md) | 胡欣蔚 shinwell_hu at openeuler.sh | 2023-07-10 | +| 0008 | P,I | [openEuler智能补丁管理框架](oEEP-0008%20openEuler智能补丁管理框架.md) | 胡峰 solarhu| 2023-07-25 | +| 0009 | P,I | [openEuler LTS 版本内核 KABI 变更策略](oEEP-0009%20openEuler%20LTS%20版本内核%20KABI%20变更策略.md) | 谢秀奇 xiexiuqi at huawei.com | 2023-5-9 | +| 0010 | D,I | [openEuler服务要求参考基线](oEEP-0010%20openEuler服务要求参考基线.md) | 邓晖龙 denghuilong88 at huawei.com | 2023-8-2 | +| 0011 | S,I | [openEuler多版本内核支持](oEEP-0011%20openEuler多版本内核支持.md) | 刘恺 kai.liu at xfusion.com | 2023-08-09 | +| 0012 | P,I | [openEuler多版本内核支持](oEEP-0011%20openEuler多版本内核支持.md) | 叶青龙 yeqinglong@kylinsec.com.cn,胡欣蔚 shinwell_hu at openeuler.sh | 2023-08-17 | + +## oEEP 类型分类: +- D (Document, 信息整理): 信息梳理形成的文档。此类 oEPP 包含社区索引,指南,规范或其他和 openEuler 相关的信息。 +- P (Process, 流程设计) -- openEuler 社区的流程设计,包括社区治理,CI/CD,测试等相关要求。 +- S (Standard, 特性变更) -- openEuler 的代码、工具、配置变更设计,这些设计产生对开发者、系统管理员、用户可见的特性变化。 + +## oEEP 状态分类: +- I (Initial, 初始化): 当前活跃的 DRAFT,但包含的信息尚未达成共识 +- A (Accepted, 接纳): 已被 技术委员会和执行方接受,尚在落实过程中 (对于P, S) +- A (Active, 活跃): 活跃维护,有效的信息 (对于D) +- D (Deactive, 不活跃): 不活跃的 oEEP ,但后续可能重新启动 +- F (Final, 已完成): 已完成的 oEEP,不再需要跟进 (对于P, S) +- P (Provision, 基本成型): 基本形成共识,待技术委员会正式决策 +- R (Rejected, 被拒绝): 已被技术委员会正式拒绝,不接纳 +- S (Substiuted,被替代): 被后续其他的oEEP替代 +- W (Withdraw, 撤回): 被提案人撤回 -- Gitee