From Fedora Project Wiki
(sync en)
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
'''作者:''' [[TomCallaway|  Tom 'spot' Callaway]] 及其他<BR>
'''版本号''' 0.06<BR>
'''初始版本:''' 2007-03-12<BR>
'''最后修订:''' 2010-11-13<BR>
{{autolang}}
{{autolang}}


{{Anchor|ReviewProcess}}
{{Anchor|ReviewProcess}}
== 审核目的 ==
== 审核目的 ==


Fedora 项目添加一个新的软件包之前该软件包必须接受来自官方的审核。审核的目的在于确保这个软件包符合 Fedora 项目的基本质量要求。审核通过并不意味着这个软件包非常好,但是能保证它本身符合我们对它的最低质量要求。
为了向 Fedora 项目添加一个新的软件包,该软件包必须接受来自官方的审核。审核的目的在于确保这个软件包符合 Fedora 项目的基本质量要求。审核通过并不意味着这个软件包非常好,但是能保证它本身符合我们对它的最低质量要求。


审核适用于提交新软件包,和[[Package_Renaming_Process#Re-review_required|软件包更名]],曾经被废弃的旧软件包想要重新回归软件仓库,和从早期 Fedora Core 软件源合并。
审核适用于提交的新软件包,和[[Package_Renaming_Process#Re-review_required|软件包更名]],以及曾经被废弃的旧软件包想要重新回归软件仓库,和从早期 Fedora Core 软件源合并的软件包。


{{Anchor|ReviewPurpose}}
注意,一些新软件包可能不需要进行审核。有关条件列表,请参阅[[Packaging:ReviewGuidelines#Package_Review_Process]]。如果软件包已豁免,则贡献者可以直接跳至步骤 8:在软件包数据库中提交 [[PackageDB_admin_requests|请求]]。但是请注意,为了完成审核过程,仍然需要提交一个 bugzilla 票据;为此,请使用[[rhbug:1376885|这个 bug]],并按照其中的说明操作。


== 审核流程 ==
== 审核流程 ==


审核过程有两种角色,一种是贡献人员一种是审核者。本文档将会详细说明这两者。
审核过程有两种角色,贡献人员 和 审核者。本文档将会详细说明这两者。


=== 贡献人员 ===
=== 贡献人员 ===
Line 23: Line 19:
贡献人员就是想要提交新软件包的人,又可以称之为提交者。如果想要成为一名贡献人员,您必须按照 [[Join the package collection maintainers/zh-cn|成为 Fedora 软件包仓库维护人员]] 的步骤来做。
贡献人员就是想要提交新软件包的人,又可以称之为提交者。如果想要成为一名贡献人员,您必须按照 [[Join the package collection maintainers/zh-cn|成为 Fedora 软件包仓库维护人员]] 的步骤来做。


作为一名贡献人员,您需要做好一个符合 [[Packaging:NamingGuidelines|软件包命名规定]] 和 [[Packaging:Guidelines|打包规定]] 的软件包。有许多软件无法进入 Fedora,因此您需要查看 [[Forbidden items|禁止的项目]]。
作为一名贡献人员,您需要做好一个符合 [[Packaging:NamingGuidelines|软件包命名规定]] 和 [[Packaging:Guidelines|打包规定]] 的软件包。有许多软件无法进入 Fedora,因此您需要检查软件包,确保其不包含 [[Forbidden items|禁止的项目]]。


如果您对您的 spec 文件很满意,那么可以开始审核流程,步骤如下:
如果您对您的 spec 文件很满意,那么可以开始审核流程,步骤如下:


<ol>
<ol>
<li> 在互联网上放置好您的 spec 文件和 SRPM。
<li> 上传您的 spec 文件和 SRPM 包,确保其可以被直接下载(建议为 HTTP(s),请不要使用需注册下载的网盘或指定下载方法的页面)。如果您没有地方上传您的 spec 和 SRPM,请使用 Copr: [https://copr.fedorainfracloud.org/]。
<li> [https://bugzilla.redhat.com/bugzilla/enter_bug.cgi?product=Fedora&format=fedora-review 这里] 提交审核请求支持单。[[:Image:PackageReviewProcess_review.png|截图见右]]。  
<li> 填写并提交一个 [https://bugzilla.redhat.com/bugzilla/enter_bug.cgi?product=Fedora&format=fedora-review 审核请求支持单][[:Image:PackageReviewProcess_review.png|截图见右]]。
[[Image:PackageReviewProcess_review.png|right|x400px]]
[[Image:PackageReviewProcess_review.png|right|x400px]]
<li> 如果您尚未在 Fedora 中维护任何软件包,这时候您需要标记 bug 的 Blocks 为 FE-NEEDSPONSOR(177841)。详情请阅读 [[How to get sponsored into the packager group]]。
<li> 如果您尚未在 Fedora 中维护任何软件包,您需要标记您的审核请求的 Blocks 为 FE-NEEDSPONSOR(177841)并由您的保证人提供保证。详情请阅读 [[How to get sponsored into the packager group]]。
<li> 等待某人审核您的软件包。At this point in the process, the '''fedora-review flag''' is blank, meaning that no reviewer is assigned.
<li> 等待某人审核您的软件包。在此过程中,'''fedora-review flag''' 标志是空白的,这意味着未分配审阅者。
  {{admon/tip|Review Swaps| If nobody comments on your review request, you might want to mail to a mailing list (for example, {{fplist|devel}}) asking for a "review swap".  This is an offer to do a review of someone else's package in exchange for them reviewing your package.  This is usually one-for-one, or can be some other private arrangement depending on the difficulty of the respective packages. }}
  {{admon/tip|Review Swaps| 如果没有人对您的审核请求发表评论,您可能需要向 maillist 发送一个(例如{{fplist|devel}})要求 “审核互换” 的提议。这个提议,以审查别人的包,换取他们审查你的包。这通常是一对一的,或者在私下沟通安排,这取决于软件的打包难度。}}
<li> There may be comments from people that are not formally reviewing the package, they may add NotReady to the Whiteboard field, indication that the review request is not yet ready, because of some issues they report. After you have addressed them, please post the URLs to the updated SPEC and SRPM file and remove it from the Whiteboard.  It is expected that you will respond to commentary, including updating your submission to address it; if you do not, your ticket will be closed.
<li> 可能有来自非正式审查人的意见,他们可以将 NotReady 添加到 Whiteboard 字段,来指示审查请求尚未准备好。解决报告的问题后,请发布更新的 SPEC SRPM 文件 URL,并将 NotReady 从白板中删除。您需要对评论做出回应,包括更新您的提交内容以解决问题;如果您没有,您的审查请求将被关闭。
<li> A reviewer takes on the task of reviewing your package. They will set the '''fedora-review flag''' to '''?'''
<li> 审核者负责审核您的包。他们会将 '''fedora-review flag''' 设为 '''?'''
<li> The reviewer will review your package. You should fix any blockers that the reviewer identifies. Once the reviewer is happy with the package, the '''fedora-review''' flag will be set to '''+''', indicating that the package has passed review.
<li> 审核人员将会审查您的包。您应该修复审核人标出的任何不规范的部分。一旦审核者对包满意,'''fedora-review''' 标志将被设为 '''+''',表示包已通过审核。
<li> At this point, you need to make an [[package SCM admin requests|SCM admin request]] for your newly approved package.
<li> 此时,您需要为新批准的包创建 [[PackageDB_admin_requests|SCM admin request]]。如果您没有获得保证,将无法完成此步骤。
<li> When this is complete, you can [[Using git FAQ for package maintainers#How_do_I_import_a_SRPM_package.3F|import your package]] into the SCM.
<li> 当此过程完毕时,您可以 [[Join_the_package_collection_maintainers#Import.2C_commit.2C_and_build_your_package|导入您的包]] 至 SCM。
<li> Checkout the package using "fedpkg clone <package-name>" do a final check of spec file tags, etc.
<li> 使用 "fedpkg clone <package-name>" 命令签出打包脚本,进行最终检查。
<li> 使用 "fedpkg build" 命令请求构建。
<li> 使用 "fedpkg build" 命令请求构建。
<li> 为其它分支重复之前的操作。
<li> 为其它分支重复之前的操作。
<li> 请求为所有分支的更新,如果需要,请使用 "fedpkg update" 或其它 [[Bodhi]] 允许的方式。
<li> 请求为所有分支的更新,如果需要,请使用 "fedpkg update" 或其它 [[Bodhi]] 允许的方式。
<li> 如果可能,添加您的软件包至 [[Upstream_release_monitoring|Upstream Release Monitoring]]。
<li> 如果可能,添加您的软件包至 [[Upstream_release_monitoring|Upstream Release Monitoring]]。
<li> 您还要保证审核支持单最终被关闭。我们欢迎您自行关闭,或者如果您对某个 Fedora 版本构建,请您让 Bodhi 最终来关闭支持单。请注意关闭支持单的理由为 '''NEXTRELEASE'''
<li> 您还要保证审核支持单最终被关闭。在为请求的分支构建成功后,您可以自行关闭审核;或者如果您为某个 Fedora 版本构建了一个包,您可以要求 Bodhi 在完成构建后最终来关闭支持单。如果您自己关闭支持单,请使用 '''NEXTRELEASE''' 作为理由。
</ol>
</ol>


后期的软件包变动不再需要执行该流程。
后期的软件包变动不再需要执行该审核流程,并且不应在 Bodhi 中创建的后续更新中引用审核凭证。


=== 审核者 ===
=== 审核者 ===


审核者就是审核软件包的人。
审核者就是审核软件包的人。
{{admon/note|fedora-review 工具|
{{admon/note|fedora-review 工具|
fedora-review 是一个十分有用的自动化审核工具。只需要 <code>yum install fedora-review</code> 然后阅读 man 手册来了解用法即可。注意,这并不意味着全部,您仍然需要透彻了解[[Packaging:Guidelines|打包规定]]。}}
fedora-review 是一个十分有用的自动化审核工具。只需要 <code>dnf install fedora-review</code> 然后阅读 man 手册了解用法即可。注意,这并不意味着全部,您仍然需要透彻了解[[Packaging:Guidelines|打包规定]]。}}
{{admon/note|除了审核者的意见|软件包审核请求允许他人留下意见或其它内容。特别是有已经熟知 [[Packaging:Guidelines|打包规定]] 的人正在寻求审核帮助的时候会留下请求的意见。}}


审核者应该是 [https://admin.fedoraproject.org/accounts/group/members/packager/* packager 组] 的组员。唯一例外是如果这个审核请求是某人的第一个软件包的话,那么审核者必须是该人的 [https://admin.fedoraproject.org/accounts/group/members/packager/*/sponsor 担保人]。了解某位贡献人员是否是被担保身份,请自行查阅 [https://admin.fedoraproject.org/accounts/group/members/packager/* packager 组]。
{{admon/note|其他人的意见|
软件包审核请求也鼓励其他人发表评论或其它内容。特别是有已经熟知 [[Packaging:Guidelines|打包规定]] 的人正在寻求审核帮助的时候会留下相关请求的建议。}}
 
审核者应该是 [https://admin.fedoraproject.org/accounts/group/members/packager/* packager 组] 的成员。(如果贡献者还没有被担保,审查仍然可以继续完成,但他们需要找到担保人为其进行担保。)唯一例外是如果这个审核请求是某人的第一个软件包的话,那么审核者必须是该人的 [https://admin.fedoraproject.org/accounts/group/members/packager/*/sponsor 担保人]。了解某位贡献人员是否是担保人,请查阅 [https://admin.fedoraproject.org/accounts/group/members/packager/* packager 组]。


<ol>
<ol>
<li> 搜索一个需要审核者的审核请求:http://fedoraproject.org/PackageReviewStatus/ ('''fedora-review 标识''' 为空的 bug 被分配给(assigned)nobody@fedoraproject.org)  
<li> 搜索一个需要审核者的审核请求:http://fedoraproject.org/PackageReviewStatus/ ('''fedora-review 标识''' 为空,或 bug 被分配给 nobody@fedoraproject.org)  
<li> 如果您在开始正式审核之前发现有问题需要解决,请在请求留下意见并且设置白板为 NotReady 状态。这会帮助其他可用的审核者注意到该审核正处于未准备好状态。
<li> 如果您在开始正式审核之前发现有问题需要解决,请留下问题的评论并设置 Whiteboard 为 NotReady 状态。这会提醒其他审核者,该审核正处于未准备好的状态。
<li> 如果开始正式审核,请设置 '''fedora-review''' 标识为 '''?''' 并分配该请求为您本人。
<li> 如果您想要开始正式审核,请设置 '''fedora-review''' 标识为 '''?''' 并分配该请求为您本人。
{{admon/note|退出审核|如果您因为某些原因需要退出审核,请重置 <code>fedora-review</code> 标识为空 '''并且''' 重新分配为默认的组件属主,即 '''nobody@fedoraproject.org'''}}
{{admon/note|退出审核|如果您因为某些原因需要退出审核,请重置 <code>fedora-review</code> 标识为空 '''并且''' 重新分配 bug 的默认属主,即 '''nobody@fedoraproject.org'''}}
<li> 审核过程 ...
<li> 审核过程 ...
  <ul>
  <ul>
   <li> 检查 [[Packaging:ReviewGuidelines|审核规定]] 中列出的 MUST 条目。
   <li> 检查 [[Packaging:ReviewGuidelines|审核规定]] 中列出的 MUST 条目。
   <li> 检查 [[Packaging:ReviewGuidelines|审核规定]] 中列出的 SHOULD 条目。
   <li> 检查 [[Packaging:ReviewGuidelines|审核规定]] 中列出的 SHOULD 条目。
   <li>[https://fedorahosted.org/FedoraReview/ FedoraReview] 工具(也就是 fedora-review 软件包)可以帮助您自动完成该过程。
   <li> [https://fedorahosted.org/FedoraReview/ FedoraReview] 工具 (fedora-review 软件包) 可以帮助您自动完成该过程。
  </ul>
  </ul>
</li>
</li>
<li> 请在每个审核中包含您的意见,为更好阅读,请您留下文字最好不要带附件。
<li> 请在每个审核中包含您的意见,为更好阅读,请您留下文字最好不要带附件。
<li> 审核结果:
<li> 审核结果:
  <ul>  
  <ul>
   <li> '''ACCEPT''' - 如果您认为该软件包很好,请设置'''fedora-review''' 标识为 '''+'''  
   <li> '''ACCEPT''' - 如果您认为该软件包很好,请设置 '''fedora-review''' 标识为 '''+'''
{{admon/question|Time to sponsor?|If the Reviewer is also acting as Sponsor for the Contributor, then this is the time to sponsor the Contributor in the [https://admin.fedoraproject.org/accounts/ account system]}}
{{admon/question|Time to sponsor?|如果审核者想要成为贡献者的赞助者,则可以在 [https://admin.fedoraproject.org/accounts/ 账户系统] 中赞助贡献者}}
   <li> '''FAIL, LEGAL''' - 如果该软件包存在法律风险(已知的内容或版权问题,侵害,商标纠纷),请关闭该审核请求并设置为 WONTFIX,且您需要留下意见(比如我们不发行 mp3 组件等等)。您还需要设置 '''fedora-review''' 标识为 '''-''',并设置审核 block FE-Legal。
   <li> '''FAIL, LEGAL''' - 如果该软件包存在法律风险 (已知的内容或版权问题,侵害,商标纠纷),请关闭该审核请求并设置为 WONTFIX,并留下您的意见 (比如我们不发行 mp3 组件等等)。您还需要设置 '''fedora-review''' 标识为 '''-''',并设置审核 block FE-Legal。
   <li> '''FAIL, OTHER''' - 如果该软件包存在其它问题,且此时并无简单的解决方案,则请您关闭该审核为 WONTFIX 并留下适当的意见(比如我们不发行涉黄内容,或者是,嗨,这不是一个 spec 文件。更生动一点,嗨,这不是麦当劳的菜单么之类的内容)。设置 '''fedora-review''' 标识为 '''-'''。
   <li> '''FAIL, OTHER''' - 如果该软件包存在其它问题,且此时并无简单的解决方案,则请您关闭该审核为 WONTFIX 并留下适当的意见 (比如我们不发行涉黄内容,或者是,嗨,这不是一个 spec 文件。更生动一点,嗨,这不是麦当劳的菜单么之类的内容)。设置 '''fedora-review''' 标识为 '''-'''。
   <li> '''NEEDSWORK''' - Anything that isn't explicitly failed should be left open while the submitter and reviewer work together to fix any potential issues. Mark the bug as NEEDINFO while waiting for the reviewer to respond to improvement requests; this makes it easier for reviewers to find open reviews which require their input.
   <li> '''NEEDSWORK''' - 该审核请求需要进一步的完善,提交者和审核者需要协同工作以解决任何潜在的问题。将错误标记为 NEEDINFO,同时等待审核者对问题发表改进建议。
  </ul>
  </ul>
<li> 一旦一个软件包被标记为 '''fedora-review +''' (或 '''-'''),那么审核者的工作就已完成。不过您还是可以帮助新手直到他们的软件包成功进入 Fedora。
<li> 一旦一个软件包被标记为 '''fedora-review +''' (或 '''-'''),那么审核者的工作就已完成。您可以继续帮助新手完成 import/build/update 过程,直到他们的软件包成功进入 Fedora,并确保贡献者关闭包审查请求。
</ol>
</ol>


Line 89: Line 88:
|fedora-review||?||正在审核
|fedora-review||?||正在审核
|-
|-
|fedora-review||-||由于法律或其它信息,审核失败
|fedora-review||-||由于法律或其它问题,审核失败
|-
|-
|fedora-review||+||审核通过
|fedora-review||+||审核通过
Line 95: Line 94:


== 特殊的 blocker 支持单 ==
== 特殊的 blocker 支持单 ==
少量支持单会在 "Blocks" 处有记录以表明特殊的状态:
少量支持单会设置 "Blocks" 字段,以表明特殊的状态:
{| border="1"
{| border="1"
|-
|-
Line 105: Line 104:
|}
|}


== 白板(Whiteboard) ==
== 白板 (Whiteboard) ==
To save time for reviewers, the page at http://fedoraproject.org/PackageReviewStatus/NEW.html will hide certain tickets which are not reviewable.  The Whiteboard field can be used to mark a ticket with various additional bits of status which will cause it to be hidden or displayed differently.
为了节省审核者的时间,http://fedoraproject.org/PackageReviewStatus/NEW.html 将自动隐藏不适合审核的请求。Whiteboard 字段被用于标记请求的各种状态,并根据状态显示或隐藏请求。


{| border="1"
{| border="1"
Line 114: Line 113:
|BuildFails||软件包无法被构建。
|BuildFails||软件包无法被构建。
|-
|-
|AwaitingSubmitter||审核卡住了,需要提交人更多信息。
|AwaitingSubmitter||审核停止,需要提交人提供更多信息。
|-
|-
|Trivial||软件包比较琐碎。请见下。
|Trivial||软件包比较容易审查。请见下文。
|}
|}


"Trivial" 状态打算表明该软件包,as an aid to new reviewers, are especially uncomplicated and easy to review.  A ticket should not be marked as being trivial unless:
"Trivial" 状态表明包不复杂,容易审查。包审查请求不应被标记为 trivial,除非符合以下情况:
* The package is known to build and a link to a scratch build is included.
* 该软件包可以正常构建,并包括一个临时构建的链接。
* The ticket explains any rpmlint output which is present.
* 包请求没有任何 rpmlint 错误输出。
* The spec contains nothing which is unnecessary in modern Fedora (such as BuildRoot:, a %clean section or %defattr).
* Spec 不包含现代 Fedora 中不必要的内容(例如 BuildRoot:%clean,或 %defattr)。
* The spec is free from excessive or complicated macro usage.
* Spec 未使用过多或复杂的宏。
* The spec uses only the least complicated scriptlets which are taken directly from the [[Packaging:ScriptletSnippets]] page.
* Spec 仅使用直接从 [[Packaging:Scriptlets]] 页面获取的简单脚本。
* The package contains no daemons.
* 软件包不包含守护程序。
* The package is not especially security sensitive.
* 软件包对安全的影响不是特别大。
* The code has undergone a thorough inspection for licensing issues.  Anomalies which would be found by licensecheck should be explained.
* 代码已经对许可问题进行了彻底检查。应解释许可证检查发现的异常问题。
In short, this should be reserved only for those tickets which should be easily approachable by someone doing their first package review.
 
简而言之,这种状态应该只用于标记那些非常容易审查的软件包请求,以使第一次审查包的审查者快速熟悉审查流程。


== 跟踪进度 ==
== 跟踪进度 ==


[http://fedoraproject.org/PackageReviewStatus 软件包审核进度查询工具] 提供多个与审核相关的报告和简单的审核搜索功能,比如软件包名,维护人,提交人等等。
[http://fedoraproject.org/PackageReviewStatus 软件包审核进度查询工具] 提供多个与审核相关的报告和简单的审核搜索功能,比如软件包名,维护人,提交人等等。
== 著作权 ==
该文档最初由 [TomCallaway|Tom 'spot' Callaway]] 于 2007 年创作,并已被许多其他贡献者修改。


[[Category:Package Maintainers]]
[[Category:Package Maintainers]]

Latest revision as of 08:35, 11 February 2017

审核目的

为了向 Fedora 项目添加一个新的软件包,该软件包必须接受来自官方的审核。审核的目的在于确保这个软件包符合 Fedora 项目的基本质量要求。审核通过并不意味着这个软件包非常好,但是能保证它本身符合我们对它的最低质量要求。

审核适用于提交的新软件包,和软件包更名,以及曾经被废弃的旧软件包想要重新回归软件仓库,和从早期 Fedora Core 软件源合并的软件包。

注意,一些新软件包可能不需要进行审核。有关条件列表,请参阅Packaging:ReviewGuidelines#Package_Review_Process。如果软件包已豁免,则贡献者可以直接跳至步骤 8:在软件包数据库中提交 请求。但是请注意,为了完成审核过程,仍然需要提交一个 bugzilla 票据;为此,请使用这个 bug,并按照其中的说明操作。

审核流程

审核过程有两种角色,贡献人员 和 审核者。本文档将会详细说明这两者。

贡献人员

贡献人员就是想要提交新软件包的人,又可以称之为提交者。如果想要成为一名贡献人员,您必须按照 成为 Fedora 软件包仓库维护人员 的步骤来做。

作为一名贡献人员,您需要做好一个符合 软件包命名规定打包规定 的软件包。有许多软件无法进入 Fedora,因此您需要检查软件包,确保其不包含 禁止的项目

如果您对您的 spec 文件很满意,那么可以开始审核流程,步骤如下:

  1. 上传您的 spec 文件和 SRPM 包,确保其可以被直接下载(建议为 HTTP(s),请不要使用需注册下载的网盘或指定下载方法的页面)。如果您没有地方上传您的 spec 和 SRPM,请使用 Copr: [1]
  2. 填写并提交一个 审核请求支持单截图见右
    File:PackageReviewProcess review.png
  3. 如果您尚未在 Fedora 中维护任何软件包,您需要标记您的审核请求的 Blocks 为 FE-NEEDSPONSOR(177841)并由您的保证人提供保证。详情请阅读 How to get sponsored into the packager group
  4. 等待某人审核您的软件包。在此过程中,fedora-review flag 标志是空白的,这意味着未分配审阅者。
    Review Swaps
    如果没有人对您的审核请求发表评论,您可能需要向 maillist 发送一个(例如devel)要求 “审核互换” 的提议。这个提议,以审查别人的包,换取他们审查你的包。这通常是一对一的,或者在私下沟通安排,这取决于软件的打包难度。
  5. 可能有来自非正式审查人的意见,他们可以将 NotReady 添加到 Whiteboard 字段,来指示审查请求尚未准备好。解决报告的问题后,请发布更新的 SPEC 和 SRPM 文件 URL,并将 NotReady 从白板中删除。您需要对评论做出回应,包括更新您的提交内容以解决问题;如果您没有,您的审查请求将被关闭。
  6. 审核者负责审核您的包。他们会将 fedora-review flag 设为 ?
  7. 审核人员将会审查您的包。您应该修复审核人标出的任何不规范的部分。一旦审核者对包满意,fedora-review 标志将被设为 +,表示包已通过审核。
  8. 此时,您需要为新批准的包创建 SCM admin request。如果您没有获得保证,将无法完成此步骤。
  9. 当此过程完毕时,您可以 导入您的包 至 SCM。
  10. 使用 "fedpkg clone <package-name>" 命令签出打包脚本,进行最终检查。
  11. 使用 "fedpkg build" 命令请求构建。
  12. 为其它分支重复之前的操作。
  13. 请求为所有分支的更新,如果需要,请使用 "fedpkg update" 或其它 Bodhi 允许的方式。
  14. 如果可能,添加您的软件包至 Upstream Release Monitoring
  15. 您还要保证审核支持单最终被关闭。在为请求的分支构建成功后,您可以自行关闭审核;或者如果您为某个 Fedora 版本构建了一个包,您可以要求 Bodhi 在完成构建后最终来关闭支持单。如果您自己关闭支持单,请使用 NEXTRELEASE 作为理由。

后期的软件包变动不再需要执行该审核流程,并且不应在 Bodhi 中创建的后续更新中引用审核凭证。

审核者

审核者就是审核软件包的人。

fedora-review 工具
fedora-review 是一个十分有用的自动化审核工具。只需要 dnf install fedora-review 然后阅读 man 手册了解用法即可。注意,这并不意味着全部,您仍然需要透彻了解打包规定
其他人的意见
软件包审核请求也鼓励其他人发表评论或其它内容。特别是有已经熟知 打包规定 的人正在寻求审核帮助的时候会留下相关请求的建议。

审核者应该是 packager 组 的成员。(如果贡献者还没有被担保,审查仍然可以继续完成,但他们需要找到担保人为其进行担保。)唯一例外是如果这个审核请求是某人的第一个软件包的话,那么审核者必须是该人的 担保人。了解某位贡献人员是否是担保人,请查阅 packager 组

  1. 搜索一个需要审核者的审核请求:http://fedoraproject.org/PackageReviewStatus/ (fedora-review 标识 为空,或 bug 被分配给 nobody@fedoraproject.org)
  2. 如果您在开始正式审核之前发现有问题需要解决,请留下问题的评论并设置 Whiteboard 为 NotReady 状态。这会提醒其他审核者,该审核正处于未准备好的状态。
  3. 如果您想要开始正式审核,请设置 fedora-review 标识为 ? 并分配该请求为您本人。
    退出审核
    如果您因为某些原因需要退出审核,请重置 fedora-review 标识为空 并且 重新分配 bug 的默认属主,即 nobody@fedoraproject.org
  4. 审核过程 ...
    • 检查 审核规定 中列出的 MUST 条目。
    • 检查 审核规定 中列出的 SHOULD 条目。
    • FedoraReview 工具 (即 fedora-review 软件包) 可以帮助您自动完成该过程。
  5. 请在每个审核中包含您的意见,为更好阅读,请您留下文字最好不要带附件。
  6. 审核结果:
    • ACCEPT - 如果您认为该软件包很好,请设置 fedora-review 标识为 +
      Time to sponsor?
      如果审核者想要成为贡献者的赞助者,则可以在 账户系统 中赞助贡献者
    • FAIL, LEGAL - 如果该软件包存在法律风险 (已知的内容或版权问题,侵害,商标纠纷),请关闭该审核请求并设置为 WONTFIX,并留下您的意见 (比如我们不发行 mp3 组件等等)。您还需要设置 fedora-review 标识为 -,并设置审核 block FE-Legal。
    • FAIL, OTHER - 如果该软件包存在其它问题,且此时并无简单的解决方案,则请您关闭该审核为 WONTFIX 并留下适当的意见 (比如我们不发行涉黄内容,或者是,嗨,这不是一个 spec 文件。更生动一点,嗨,这不是麦当劳的菜单么之类的内容)。设置 fedora-review 标识为 -
    • NEEDSWORK - 该审核请求需要进一步的完善,提交者和审核者需要协同工作以解决任何潜在的问题。将错误标记为 NEEDINFO,同时等待审核者对问题发表改进建议。
  7. 一旦一个软件包被标记为 fedora-review + (或 -),那么审核者的工作就已完成。您可以继续帮助新手完成 import/build/update 过程,直到他们的软件包成功进入 Fedora,并确保贡献者关闭包审查请求。

fedora-review 标识定义

fedora-review (BLANK) 需要审核
fedora-review ? 正在审核
fedora-review - 由于法律或其它问题,审核失败
fedora-review + 审核通过

特殊的 blocker 支持单

少量支持单会设置 "Blocks" 字段,以表明特殊的状态:

FE-NEEDSPONSOR 审核提交人需要保证人。注意审核过程只能有一位担保人。
FE-DEADREVIEW 由于提交者自行离开本次审核被关闭。用户可以在这里面找到一些有用的信息。
FE-Legal 该软件包被社区法律团队认定存在法律风险。

白板 (Whiteboard)

为了节省审核者的时间,http://fedoraproject.org/PackageReviewStatus/NEW.html 将自动隐藏不适合审核的请求。Whiteboard 字段被用于标记请求的各种状态,并根据状态显示或隐藏请求。

NotReady 软件包尚未开始审核。您可以新建一个审核支持单标记其为 NotReady,并继续协助直到可以被审核者审核。
BuildFails 软件包无法被构建。
AwaitingSubmitter 审核停止,需要提交人提供更多信息。
Trivial 软件包比较容易审查。请见下文。

"Trivial" 状态表明包不复杂,容易审查。包审查请求不应被标记为 trivial,除非符合以下情况:

  • 该软件包可以正常构建,并包括一个临时构建的链接。
  • 包请求没有任何 rpmlint 错误输出。
  • Spec 不包含现代 Fedora 中不必要的内容(例如 BuildRoot:,%clean,或 %defattr)。
  • Spec 未使用过多或复杂的宏。
  • Spec 仅使用直接从 Packaging:Scriptlets 页面获取的简单脚本。
  • 软件包不包含守护程序。
  • 软件包对安全的影响不是特别大。
  • 代码已经对许可问题进行了彻底检查。应解释许可证检查发现的异常问题。

简而言之,这种状态应该只用于标记那些非常容易审查的软件包请求,以使第一次审查包的审查者快速熟悉审查流程。

跟踪进度

软件包审核进度查询工具 提供多个与审核相关的报告和简单的审核搜索功能,比如软件包名,维护人,提交人等等。

著作权

该文档最初由 [TomCallaway|Tom 'spot' Callaway]] 于 2007 年创作,并已被许多其他贡献者修改。