Yocto:Patch Upstream Status(补丁上游状态)

1. 补丁上游状态

为了跟踪配方中应用的补丁,并最终减少需要维护的补丁数量,OpenEmbedded 构建系统要求为每个补丁提供上游状态的信息。
在补丁说明中,每个补丁都应详细描述其所解决的 bug(例如提供 bug 跟踪系统中的 URL 以及相关邮件列表归档的链接)。
此外,还应添加一个 Upstream-Status: 标签,该标签必须包含下列状态字符串之一:
  • Pending
    • 尚未做出决定,或者补丁尚未提交给上游。
    • 请记住,每个提交给上游的补丁从长远来看都能减少 OpenEmbedded 和 Yocto Project 的维护负担,因此只有在确有障碍阻止补丁提交给上游的情况下才应使用该状态;并且补丁中应包含相关原因。
  • Submitted [where]
    • 已提交给上游,正在等待审批。可选择性地附上提交的详细信息,如提交给哪位作者、邮件列表等。
  • Backport [version]
    • 已被上游接受并包含在下一个版本中,或是从更新的上游版本中回移植过来的,因为我们处于固定版本。请包含上游版本的信息(例如提交 ID 或预期的下一个版本)。
  • Denied
    • 未被上游接受,补丁中应包含拒绝的原因。
  • Inactive-Upstream [lastcommit: when (and/or) lastrelease: when]
    • 上游不再活跃。通常表示该项目已废弃,长时间内(以年为单位)没有活动。做出此判断时,建议不仅参考上次发布的时间,还要查看最近一次提交的时间,以及此后新提交的 bug 报告和合并请求是否无人响应。同时建议在补丁描述中添加任何能清楚表明上游不活跃的相关链接。
  • Inappropriate [reason]
    • 该补丁不适合提交给上游,在同一行内用方括号 [ ] 包含简短的原因说明。过去可能存在多种原因使得不提交补丁给上游,但必须考虑到每个未上游的补丁都增加了配方维护者的负担。目前,将补丁标记为不适合提交上游的唯一原因有:
      • oe specific:问题仅针对 OpenEmbedded 的构建方式或运行时配置,只有通过一个与上游无关或不适合上游提交的补丁才能解决。
      • upstream ticket :问题并非 OpenEmbedded 特有,应该在上游修复,但当前补丁形式不适合合并到上游,而且作者缺乏开发合适补丁的专业知识。此时问题应通过提交 bug 报告(附上链接)来处理。
当然,如果之后有其他人负责将该补丁提交给上游,则状态应更改为 Submitted [where],并且由负责上游提交的人在补丁中添加一行 Signed-off-by:。

1.1 示例

下面是一个已提交给上游的补丁示例:
rpm: Adjusted the foo setting in bar

[RPM Ticket #65] -- http://rpm5.org/cvs/tktview?tn=65,5

The foo setting in bar was decreased from X to X-50% in order to
ensure we don't exhaust all system memory with foobar threads.

Upstream-Status: Submitted [rpm5-devel@rpm5.org]

Signed-off-by: Joe Developer <joe.developer@example.com>
将来的更新可以根据情况将状态更改为 Backport 或 Denied。
另一个针对 OpenEmbedded 特定问题的补丁示例:
Do not treat warnings as errors

There are additional warnings found with musl which are
treated as errors and fails the build, we have more combinations
than upstream supports to handle.

Upstream-Status: Inappropriate [oe specific]
下面是一个从上游提交中回移植过来的补丁示例:
include missing sys/file.h for LOCK_EX

Upstream-Status: Backport [https://github.com/systemd/systemd/commit/ac8db36cbc26694ee94beecc8dca208ec4b5fd45]

1.2 原文链接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值