Package Review Process/zh-cn

From FedoraProject

< Package Review Process(Difference between revisions)
Jump to: navigation, search
(Reviewer)
Line 4: Line 4:
 
'''最后修订:''' 2010-11-13<BR>
 
'''最后修订:''' 2010-11-13<BR>
  
{{autolang|base=yes}}
+
{{autolang}}
  
 
{{Anchor|ReviewProcess}}
 
{{Anchor|ReviewProcess}}
Line 11: Line 11:
 
给 Fedora 项目添加一个新的软件包之前该软件包必须接受来自官方的审核。审核的目的在于确保这个软件包符合 Fedora 项目的基本质量要求。审核通过并不意味着这个软件包非常好,但是能保证它本身符合我们对它的最低质量要求。
 
给 Fedora 项目添加一个新的软件包之前该软件包必须接受来自官方的审核。审核的目的在于确保这个软件包符合 Fedora 项目的基本质量要求。审核通过并不意味着这个软件包非常好,但是能保证它本身符合我们对它的最低质量要求。
  
Reviews are currently done for totally new packages, [[Package_Renaming_Process#Re-review_required|package renames]], old packages that were once depreciated returning to the collection, and packages merged from the old Fedora Core repository.
+
审核适用于提交新软件包,和[[Package_Renaming_Process#Re-review_required|软件包更名]],曾经被废弃的旧软件包想要重新回归软件仓库,和从早期 Fedora Core 软件源合并。
  
 
{{Anchor|ReviewPurpose}}
 
{{Anchor|ReviewPurpose}}
  
== Review Process ==
+
== 审核流程 ==
  
There are two roles in the review process, that of the contributor and that of the reviewer. In this document, we'll present both perspectives.
+
审核过程有两种角色,一种是贡献人员一种是审核者。本文档将会详细说明这两者。
  
=== Contributor ===
+
=== 贡献人员 ===
  
A Contributor is defined as someone who wants to submit (and maintain) a new package in Fedora.  To become a contributor, you must follow the detailed instructions to [[Join the package collection maintainers]].
+
贡献人员就是想要提交新软件包的人,又可以称之为提交者。如果想要成为一名贡献人员,您必须按照 [[Join the package collection maintainers/zh-cn|成为 Fedora 软件包仓库维护人员]] 的步骤来做。
  
As a Contributor, you should have already made a package which adheres to the [[Packaging:NamingGuidelines| Package Naming Guidelines]] and [[Packaging:Guidelines| Packaging Guidelines]]. There are also some packages that cannot be included in Fedora, to check if your package applies, check if it contains any [[Forbidden items]].
+
作为一名贡献人员,您需要做好一个符合 [[Packaging:NamingGuidelines|软件包命名规定]] [[Packaging:Guidelines|打包规定]] 的软件包。有许多软件无法进入 Fedora,因此您需要查看 [[Forbidden items|禁止的项目]]
  
When you're happy with your spec file, you should then submit that SRPM to a package review.
+
如果您对您的 spec 文件很满意,那么可以开始审核流程,步骤如下:
Currently, this is done by following these steps:
+
  
 
<ol>
 
<ol>
<li> Put your spec file and SRPM somewhere on the Internet.
+
<li> 在互联网上放置好您的 spec 文件和 SRPM。
<li> Fill out a [https://bugzilla.redhat.com/bugzilla/enter_bug.cgi?product=Fedora&format=fedora-review request for review in bugzilla].  For guidance, a [[:Image:PackageReviewProcess_review.png|screenshot of a sample bugzilla request is available for review]].
+
<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> If you do not have any package already in Fedora, this means you need a sponsor and to add FE-NEEDSPONSOR to the bugs being blocked by your review request. For more information read the [[How to get sponsored into the packager group]] wiki page.
 
<li> If you do not have any package already in Fedora, this means you need a sponsor and to add FE-NEEDSPONSOR to the bugs being blocked by your review request. For more information read the [[How to get sponsored into the packager group]] wiki page.
Line 41: Line 40:
 
<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> 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> Checkout the package using "fedpkg clone <package-name>" do a final check of spec file tags, etc.
 
<li> Checkout the package using "fedpkg clone <package-name>" do a final check of spec file tags, etc.
<li> Request a build by running "fedpkg build".
+
<li> 使用 "fedpkg build" 命令请求构建。
<li> Repeat the process for other branches you may have requested.
+
<li> 为其它分支重复之前的操作。
 
<li> Request updates for Fedora release branches, if necessary, using "fedpkg update" or another Bodhi interface as detailed in [[Bodhi]].
 
<li> Request updates for Fedora release branches, if necessary, using "fedpkg update" or another Bodhi interface as detailed in [[Bodhi]].
<li> You should make sure the review ticket is closed.  You are welcome to close it once the package has been built on the requested branches, or if you built for one of the Fedora release branches you can ask Bodhi to close the ticket for you when it completes the process.  If you close the ticket yourself, use '''NEXTRELEASE''' as the resolution.
+
<li> 您还要保证审核支持单最终被关闭。我们欢迎您自行关闭,或者如果您对某个 Fedora 版本构建,请您让 Bodhi 最终来关闭支持单。请注意关闭支持单的理由为 '''NEXTRELEASE'''
 
</ol>
 
</ol>
  
You do not need to go through the review process again for subsequent package changes.
+
后期的软件包变动不再需要执行该流程。
  
 
=== 审核者 ===
 
=== 审核者 ===
Line 53: Line 52:
 
审核者就是审核软件包的人。
 
审核者就是审核软件包的人。
  
{{admon/note|除了审核者的评论|软件包审核请求允许他人留下评论或其它内容。特别是有已经熟知 [[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 组]。
 
审核者应该是 [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 组]。
Line 59: Line 58:
 
<ol>
 
<ol>
 
<li> 搜索一个需要审核者的审核请求:http://fedoraproject.org/PackageReviewStatus/ ('''fedora-review 标识''' 为空的 bug 被分配给(assigned)nobody@fedoraproject.org)  
 
<li> 搜索一个需要审核者的审核请求:http://fedoraproject.org/PackageReviewStatus/ ('''fedora-review 标识''' 为空的 bug 被分配给(assigned)nobody@fedoraproject.org)  
<li> 如果您在开始正式审核之前发现有问题需要解决,请在请求留下评论并且白板为 NotReady 状态。这会帮助其他可用的审核者注意到该审核正处于未准备好状态。
+
<li> 如果您在开始正式审核之前发现有问题需要解决,请在请求留下意见并且设置白板为 NotReady 状态。这会帮助其他可用的审核者注意到该审核正处于未准备好状态。
 
<li> 如果开始正式审核,请设置 '''fedora-review''' 标识为 '''?''' 并分配该请求为您本人。
 
<li> 如果开始正式审核,请设置 '''fedora-review''' 标识为 '''?''' 并分配该请求为您本人。
 
{{admon/note|退出审核|如果您因为某些原因需要退出审核,请重置 <code>fedora-review</code> 标识为空 '''并且''' 重新分配为默认的组件属主,即 '''nobody@fedoraproject.org'''}}
 
{{admon/note|退出审核|如果您因为某些原因需要退出审核,请重置 <code>fedora-review</code> 标识为空 '''并且''' 重新分配为默认的组件属主,即 '''nobody@fedoraproject.org'''}}
Line 65: Line 64:
 
  <ul>
 
  <ul>
 
   <li> 检查 [[Packaging:ReviewGuidelines|审核规定]] 中列出的 MUST 条目。
 
   <li> 检查 [[Packaging:ReviewGuidelines|审核规定]] 中列出的 MUST 条目。
   <li> Go through the SHOULD items in [[Packaging:ReviewGuidelines| Review Guidelines]] .
+
   <li> 检查 [[Packaging:ReviewGuidelines|审核规定]] 中列出的 SHOULD 条目。
   <li>The [https://fedorahosted.org/FedoraReview/ FedoraReview] tool (packaged as fedora-review) can help to automate this process.
+
   <li>[https://fedorahosted.org/FedoraReview/ FedoraReview] 工具(也就是 fedora-review 软件包)可以帮助您自动完成该过程。
 
  </ul>
 
  </ul>
 
</li>
 
</li>
<li> Include the text of your review in a comment in the ticket.  For easy readability, simply use a regular comment instead of an attachment.
+
<li> 请在每个审核中包含您的意见,为更好阅读,请您留下文字最好不要带附件。
<li> Take one of the following actions:
+
<li> 审核结果:
 
  <ul>  
 
  <ul>  
   <li> '''ACCEPT''' - If the package is good, set the '''fedora-review''' flag to '''+'''  
+
   <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?|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]}}
   <li> '''FAIL, LEGAL''' - If the package is legally risky for whatever reason (known patent or copyright infringement, trademark concerns) close the bug WONTFIX and leave an appropriate comment (i.e. we don't ship mp3, so stop submitting it). Set the '''fedora-review''' flag to '''-''', and have the review ticket block FE-Legal.
+
   <li> '''FAIL, LEGAL''' - 如果该软件包存在法律风险(已知的内容或版权问题,侵害,商标纠纷),请关闭该审核请求并设置为 WONTFIX,且您需要留下意见(比如我们不发行 mp3 组件等等)。您还需要设置 '''fedora-review''' 标识为 '''-''',并设置审核 block FE-Legal。
   <li> '''FAIL, OTHER''' - If the package is just way off or unsuitable for some other reason, and there is no simple fix, then close the bug WONTFIX and leave an appropriate comment (i.e. we don't package pornography for redistribution, sorry. Or, this isn't a specfile, it's a McDonald's menu, sorry.) Set the '''fedora-review''' flag to '''-'''.
+
   <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''' - 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.
 
  </ul>
 
  </ul>
<li> Once a package is flagged as '''fedora-review +''' (or '''-'''), the Reviewer's job is done although they may be called upon to assist the Contributor with the import/build/update process and to sure that the Contributor closes the ticket out when the process is complete.
+
<li> 一旦一个软件包被标记为 '''fedora-review +''' ('''-'''),那么审核者的工作就已完成。不过您还是可以帮助新手直到他们的软件包成功进入 Fedora。
 
</ol>
 
</ol>
  
Line 93: Line 92:
 
|}
 
|}
  
== Special blocker tickets ==
+
== 特殊的 blocker 支持单 ==
There are a few tickets which can be placed in the "Blocks" field to indicate specific ticket statuses:
+
少量支持单会在 "Blocks" 处有记录以表明特殊耳朵状态:
 
{| border="1"
 
{| border="1"
 
|-
 
|-
|FE-NEEDSPONSOR||The submitter requires a sponsor; the review should only be done by a sponsor.
+
|FE-NEEDSPONSOR||审核提交人需要保证人。注意审核过程只能有一位担保人。
 
|-
 
|-
|FE-DEADREVIEW||The review has been closed out because the submitter has left; users looking for packages to submit may find some possibilities in these dead tickets.
+
|FE-DEADREVIEW||由于提交者自行离开本次审核被关闭。用户可以在这里面找到一些有用的信息。
 
|-
 
|-
|FE-Legal||The package is currently awaiting review by the legal team.
+
|FE-Legal||该软件包被社区法律团队认定存在法律风险。
 
|}
 
|}
  
== The 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.
 
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.
  
 
{| border="1"
 
{| border="1"
 
|-
 
|-
|NotReady||The package is not yet ready for review.  It is possible to open a review ticket, mark it as NotReady, and continue to work on it until it's ready to be seen by a reviewer.
+
|NotReady||软件包尚未开始审核。您可以新建一个审核支持单标记其为 NotReady,并继续协助直到可以被审核者审核。
 
|-
 
|-
|BuildFails||The package fails to build.
+
|BuildFails||软件包无法被构建。
 
|-
 
|-
|AwaitingSubmitter||The package review is stalled and cannot proceed without input from the submitter.
+
|AwaitingSubmitter||审核卡住了,需要提交人更多信息。
 
|-
 
|-
|Trivial||The package is trivial to review.  See below.
+
|Trivial||软件包比较琐碎。请见下。
 
|}
 
|}
  
The "Trivial" status is intended to indicate packages which, as an aid to new reviewers, are especially uncomplicated and easy to review.  A ticket should not be marked as being trivial unless:
+
"Trivial" 状态打算表明该软件包,as an aid to new reviewers, are especially uncomplicated and easy to review.  A ticket should not be marked as being trivial unless:
 
* The package is known to build and a link to a scratch build is included.
 
* The package is known to build and a link to a scratch build is included.
 
* The ticket explains any rpmlint output which is present.
 
* The ticket explains any rpmlint output which is present.

Revision as of 01:17, 23 February 2013

作者: Tom 'spot' Callaway 及其他
版本号 0.06
初始版本: 2007-03-12
最后修订: 2010-11-13

Contents

审核目的

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

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

审核流程

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

贡献人员

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

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

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

  1. 在互联网上放置好您的 spec 文件和 SRPM。
  2. 这里 提交审核请求支持单。截图见右
    PackageReviewProcess review.png
  3. If you do not have any package already in Fedora, this means you need a sponsor and to add FE-NEEDSPONSOR to the bugs being blocked by your review request. For more information read the How to get sponsored into the packager group wiki page.
  4. Wait for someone to review your package! At this point in the process, the fedora-review flag is blank, meaning that no reviewer is assigned.
    Idea.png
    Review Swaps
    If nobody comments on your review request, you might want to mail to a mailing list (for example, 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.
  5. 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.
  6. A reviewer takes on the task of reviewing your package. They will set the fedora-review flag to ?
  7. 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.
  8. At this point, you need to make an SCM admin request for your newly approved package.
  9. When this is complete, you can import your package into the SCM.
  10. Checkout the package using "fedpkg clone <package-name>" do a final check of spec file tags, etc.
  11. 使用 "fedpkg build" 命令请求构建。
  12. 为其它分支重复之前的操作。
  13. Request updates for Fedora release branches, if necessary, using "fedpkg update" or another Bodhi interface as detailed in Bodhi.
  14. 您还要保证审核支持单最终被关闭。我们欢迎您自行关闭,或者如果您对某个 Fedora 版本构建,请您让 Bodhi 最终来关闭支持单。请注意关闭支持单的理由为 NEXTRELEASE

后期的软件包变动不再需要执行该流程。

审核者

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

Note.png
除了审核者的意见
软件包审核请求允许他人留下意见或其它内容。特别是有已经熟知 打包规定 的人正在寻求审核帮助的时候会留下请求的意见。

审核者应该是 packager 组 的组员。唯一例外是如果这个审核请求是某人的第一个软件包的话,保证人 身份。了解某位贡献人员是否是被保证身份,请自行查阅 packager 组

  1. 搜索一个需要审核者的审核请求:http://fedoraproject.org/PackageReviewStatus/ (fedora-review 标识 为空的 bug 被分配给(assigned)nobody@fedoraproject.org)
  2. 如果您在开始正式审核之前发现有问题需要解决,请在请求留下意见并且设置白板为 NotReady 状态。这会帮助其他可用的审核者注意到该审核正处于未准备好状态。
  3. 如果开始正式审核,请设置 fedora-review 标识为 ? 并分配该请求为您本人。
    Note.png
    退出审核
    如果您因为某些原因需要退出审核,请重置 fedora-review 标识为空 并且 重新分配为默认的组件属主,即 nobody@fedoraproject.org
  4. 审核过程 ...
    • 检查 审核规定 中列出的 MUST 条目。
    • 检查 审核规定 中列出的 SHOULD 条目。
    • FedoraReview 工具(也就是 fedora-review 软件包)可以帮助您自动完成该过程。
  5. 请在每个审核中包含您的意见,为更好阅读,请您留下文字最好不要带附件。
  6. 审核结果:
    • ACCEPT - 如果您认为该软件包很好,请设置fedora-review 标识为 +
      Questionmark.png
      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 account system
    • FAIL, LEGAL - 如果该软件包存在法律风险(已知的内容或版权问题,侵害,商标纠纷),请关闭该审核请求并设置为 WONTFIX,且您需要留下意见(比如我们不发行 mp3 组件等等)。您还需要设置 fedora-review 标识为 -,并设置审核 block FE-Legal。
    • FAIL, OTHER - 如果该软件包存在其它问题,且此时并无简单的解决方案,则请您关闭该审核为 WONTFIX 并留下适当的意见(比如我们不发行涉黄内容,或者是,嗨,这不是一个 spec 文件。更生动一点,嗨,这不是麦当劳的菜单么之类的内容)。设置 fedora-review 标识为 -
    • 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.
  7. 一旦一个软件包被标记为 fedora-review + (或 -),那么审核者的工作就已完成。不过您还是可以帮助新手直到他们的软件包成功进入 Fedora。

fedora-review 标识定义

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

特殊的 blocker 支持单

少量支持单会在 "Blocks" 处有记录以表明特殊耳朵状态:

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

白板(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.

NotReady 软件包尚未开始审核。您可以新建一个审核支持单标记其为 NotReady,并继续协助直到可以被审核者审核。
BuildFails 软件包无法被构建。
AwaitingSubmitter 审核卡住了,需要提交人更多信息。
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:

  • The package is known to build and a link to a scratch build is included.
  • The ticket explains any rpmlint output which is present.
  • The spec contains nothing which is unnecessary in modern Fedora (such as BuildRoot:, a %clean section or %defattr).
  • The spec is free from excessive or complicated macro usage.
  • The spec uses only the least complicated scriptlets which are taken directly from the Packaging:ScriptletSnippets page.
  • 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.

跟踪进度

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