• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

バグの報告

提供: WordPress Codex 日本語版
2009年7月13日 (月) 18:12時点におけるNao (トーク | 投稿記録)による版 (翻訳一部追加)

移動先: 案内検索

このページ「バグの報告」は未翻訳です。和訳や日本語情報を加筆してくださる協力者を求めています

  • 最新英語版に差し替えました。
  • 翻訳済みだった部分は、コメントアウトされていた英文を最新版に差し替えただけです。履歴の差分表示か英文と見比べて、必要に応じて和訳を更新してください(言い回しの違いは直さなくて構いません)。

すべてのアプリケーションにはバグがあります。人間がコードを書く限り、ソフトウェア中のエラーがなくなることはないでしょう。エラーには些細なものあれば、重大なもあります。WordPress のようなオープンソース・プロジェクトにおいては、新しい機能を計画するのと同じように、バグを確認するためにユーザーコミュニティの参加が不可欠です。

WordPress プロジェクトでは(実際のバグであろうが、新機能の要望であろうが)どんな種類のフィードバックも報告する方法は同じです。WordPress のバグや問題点を報告する方法を知るには、以下をお読みください。また、よかったらContributing to WordPressのページもドキュメンテーションやその他の部分でプロジェクトに協力する方法も読んでみてください。

私たちはセキュリティ問題を防止するための積極的な取り組みをおこなっていますが、問題が絶対に発生しないとは考えていません。もしリリース済みバージョンの WordPress にセキュリティ上の問題を発見した場合、secrity at the WordPress.org ドメインにメールを送ってください(訳注:メールアドレスに読み替える)。できるだけ早急に対処できるよう最善を尽くします。

修正の準備を整え、脆弱性による一般ユーザーの被害を最小限に抑えるため、セキュリティ問題を公表する前にベンダー(この場合、WordPress の開発者)に告知するのは標準的な習慣です。

プラグインとテーマのバグの報告

WordPress で使っているプラグインやテーマのバグを発見した場合は、このページにある方法での報告を行わないでください。このページの説明は WordPress 本体のバグにのみ適用されるものであり、プラグインやテーマのバグに対しては適用外です。

プラグインの公式リポジトリである WordPress Plugin Repository にあるプラグインは、WordPress本体とは 別のバグ追跡システム を採用しています。このシステムの使い方については、別途に TracTickets の取扱説明書が用意されています。

公式リポジトリに属さないプラグインについては、プラグインに同梱されていたドキュメントを読んで、バグの報告先を調べてください。もし、バグ報告に関する情報が記載されていなかった場合、そのプラグインの開発者に直接連絡を取る必要があります。

バグの報告と解決の概要

WordPress のバグ報告と解決には、複数の手順があります。以下が概要となります。詳細はさらに続きを読んでください。

  1. ユーザーが(テーマやプラグインではなく)WordPress 本体のバグを発見する。
  2. それが実際にバグかどうか確認する。下記のバグを報告する前にをご覧ください。
  3. もしバグであることが確実になったら、チケットと呼ばれるバグ報告を WordPress のバグ追跡システムである Trac に送信する。下記のバグの報告をご覧ください。
  4. WordPress 開発者(この人もあなたのように、ボランティアかもしれません)がバグの存在を確認し、修正するべきと判断し、チケットにそのことを記録します。下記のTrac キーワード一覧バグの解決をご覧ください。
  5. WordPress 開発者(あなた自身ということもありえます)が、このバグを修正することにします。チケットページの最後の方にあるAccept ticket(チケットを受理)をクリックしてバグの責任を負うことを選ぶことができますが、これば必須ではありません。それからその開発者はどうやってバグを修正するかを考え、ひとつまたは複数のパッチファイルを作成し、そのファイルを Trac にアップロードします。下記のバグのパッチ作業をご覧ください。また、バグ修正に協力したいけれどどのバグを直していいか分からない場合は、以下の修正するバグを見つけるをご覧ください。
  6. WordPress 開発グループのメンバー(ボランティアも含む)がパッチをテストし、バグが修正されているか、その他の部分に悪影響がないかを確認します。結果を知らせるため、チケットにコメントやキーワードを追加します。下記のTrac キーワード一覧をご覧ください。
  7. 公式な WordPress のソースコードを編集する権限がある主要開発者(公式サイトの Lead Developers 参照)のうちの誰かが SVN リポジトリへパッチをコミットします。主要開発者は、バグやパッチが信頼のおける人によって検証された場合にこの作業を行う可能性が高いでしょう。
  8. 最後に、パッチをコミットした人がバグチケットのステータスを closed に、解決法を fixed(修正済み) に変更します。下記のバグの解決プロセスをご覧ください。

バグの報告と解決の詳細

The sections below add details to some of the steps outlined above.

バグを報告する前に

WordPress のような大きなプロジェクトでは、多くのユーザがバグを報告しているため、あなたが発見したバグは既に報告されている可能性があります。このため、バグを報告する前にそれがまだバグ追跡システム内に存在しない問題であることを確認することは非常に重要です。WordPress のバグ報告にまだなじみがないようでしたら、経験がある他の開発者に話してみるのがよいでしょう。以下の手順に従ってください。

  1. 発見したバグや要望を 公開または解決されたバグのリストから探す。
    • 発見した問題が既に扱われていたら、重複してバグを報告しないでください。もし、追加情報を寄与できる場合は、既存のバグノートに追加してください。
    • 発見した問題と既に報告されている問題が、似てはいるがまったく同じではない場合、類似の問題のバグノートに追加するか、あるいは新規に提出するかは、あなたが判断して構いません。あなたの問題が新たに提出されるべきものかを判断するのは難しいかもしれませんが、既存の問題に対して、あなたが更なる情報を寄与するだけの場合、単純にその問題のバグノートに追加するのが普通です。もし、あなたの問題が十分に異なるものであったり、既に解決されたはずの問題が再発したりした場合は、新しいバグとして報告してください。
    • If your issue was recently reported and then closed, and you do not agree with the resolution, you can also reopen the ticket and add a comment as to your reasoning.
  2. To discuss a bug before reporting it in Trac (e.g. to figure out if it is really a bug in the core of WordPress and not in a plugin or theme), you can post a question on the WordPress Support Forum, discuss your issue on the #wordpress IRC channel/en, or have an email discussion on the Testers/en or Hackers/en mailing list.

バグの報告

Trac is the name of the official WordPress bug tracker. It uses the open source bug tracking software Trac which is a product from Edgewall Software. Follow these steps to create a good bug report in Trac:

  1. Read Before You Report a Bug (above), and verify that you have a new bug that is appropriate to report.
  2. Read this article on How to Report Bugs Effectively, and the Trac Ticket documentation.
  3. Log into WordPress Trac using your support forum username and password. If you don't have an account at the support forums, register so that you can login to Trac. This is essential for communication about your bug, since the developers may need more information (and you cannot create a ticket without logging in).
  4. Click New Ticket in Trac to reach the bug reporting page.
  5. チケット新規作成ページで以下の情報を記入する。
    Short Summary(概要)
    概要はチケットのタイトルになり、検索結果に表示されることになるので、短くかつ説明的で正確になものにしましょう。
    Full Description(説明)
    バグまたは新機能要望の完全な説明を記入しましょう。問題の説明、同様の問題を再現するための手順、(もしあれば)実際のバグが見られる URL など、そして、この問題を修正する価値がある理由を含めてください。また、OS、サーバーの種類、PHP・MySQL・WordPress のバージョンなどあなたの環境についても説明しましょう。説明が良いものであればあるほど、バグがすばやく解決される可能性が高くなるでしょう。
    Ticket Properties(チケットの属性)
    Priority(優先度)
    You will need to decide on a priority for the issue -- this is how urgent the bug is. Unless it is a critical bug, this is best left to the default as developers will usually rank the bug's priority.
    Component(コンポーネント)
    Select the component of WordPress where the bug was found
    Severity(重大度)
    The significance of the issue. Select a severity based on how critical you consider the issue to be. If in doubt, leave this option as Normal.
    Assign to(担当者)
    If you know of the developer who is responsible for the code that the bug is in, place their Trac username here. You can also take responsibility for the bug yourself, by putting your own Trac user name here. This is optional and could speed up developer attention to the bug.
    Milestone(マイルストーン)
    By what version this issue should be resolved, at the latest. Do not change this. This is an option that WordPress developers will set.
    Version(バージョン)
    The version of WordPress where the bug was found. You can find the version number of WordPress in the footer of the admin panel.
    Keywords(キーワード)
    Keywords that will make it easier for developers to find the bug, and identify the areas it affects. An example might be 'posting' for a bug involving the posting mechanism in WordPress. Also, there are some standard keywords used to flag your bug's status (see Trac Keywords below).
    CC
    Who bug information and updates should be sent to. If you want to be kept informed, enter your own Trac user name here. You will then be notified by email any time a change is made to this report, or a note to the bug is added. Don't ignore these emails; any time a change is made, be sure to check the report for updates. Developers may need further information from you, and this is their only way of getting in contact with you. Note: you need to go to the Trac Settings page to set your email address. Putting it into your Support Forum profile will not get it into Trac for purposes of CC messages. Note: If you are the bug's reporter, you will already get messages (if your email is known), so no need for CC.
  6. Click Submit Ticket (after previewing it). Then pat yourself on the back.

修正するバグを見つける

If you want to fix bugs in the core parts of WordPress, but don't know which ones to fix, here are some suggestions on how to find bugs to fix:

バグのパッチ作業

If you are familiar with PHP and MySQL, and would like to help in the development of WordPress, then you are encouraged to patch WordPress bugs. Here are the steps to follow:

  1. Read Finding Bugs to Fix (above), and find a bug to fix in Trac.
  2. Connect to the WordPress Subversion (SVN) Repository using the username and password you acquired when registering. Read Using Subversion/en if you are unfamiliar with SVN. All patches should be submitted against the latest code in the SVN repository.
  3. Figure out how to fix the bug, by modifying WordPress core files. You may want to discuss your proposed solution on the wp-hackers mailing list/en before finalizing it.
  4. Test your fix, verifying that the bug has been fixed, and that nothing else in WordPress is broken in the process.
  5. Create a patch file (or files) containing your fix. This is basically a diff of the fixed file(s) and the originals from SVN. See How to Patch WordPress by Owen Winkler for detailed instructions. There are also instructions for Linux/Mac command-line users in Mark Jaquith's Toolbox and Windows Tortoise SVN users in Westi's Blog.
  6. Upload it to the ticket using the Trac Attach file button, and add has-patch to the keywords. If the patch needs testing, you might also put needs-testing, or one of the other Trac keywords; see Trac Keywords (below) for more information.

Trac キーワード

There are a number of keywords with defined meaning used in Trac that are commonly used; some are also searched for by Trac Reports.

reporter-feedback(要報告者フィードバック)
A response is needed from the reporter. Further investigation is unlikely without a response to the questions from someone experiencing the problem.
has-patch(パッチあり)
A solution to the ticket has been attached, and it is ready for review and/or committing.
needs-testing(要テスト)
Someone needs to test the solution.
2nd-opinion(要意見)
Another person is needed to express an opinion about the problem or the solution.
dev-feedback(要開発者フィードバック)
A response is wanted from a developer (not commonly used)
tested(テスト済み)
The patch has been tested. When adding this tag please comment with the patch filename that was tested, how the patch was tested, and which version of WordPress was used (including the SVN revision number, if it is not an officially released version).
commit(コミット可)
The patch has been reviewed and tested by a trusted member of the development community; therefore the patch is ready to be added to the WordPress core files.
needs-patch(要パッチ)
The ticket has been reviewed, found to be desirable to solve, and marked as especially needing a patch, or the submitted patch doesn't work and needs to be redone.
needs-unit-tests(要ユニットテスト)
The ticket has been reviewed, found to be desirable to solve and we would like some unit tests written to test the functionality and any patch that may exist before committing a change as the risk of causing other issues is high.
needs-doc(要ドキュメンテーション)
Inline documentation for the code is needed. These are either place holder tickets for individual files or tickets with patches for new functions which need documenting before they are committed.

バグの解決プロセス

A ticket in Trac starts its life in the open status, and (hopefully) is eventually closed. When a ticket is closed, it is marked with one of the following status designations:

  • If your bug has been reported elsewhere, it will likely be closed with duplicate.
  • If the bug has already been fixed in the latest subversion code (which is probably not what you're running unless you have a local test blog), then it will be closed with fixed.
  • If it is decided that your bug isn't in fact a bug, but is the intended behaviour, it will be closed with invalid.
  • If no-one else can replicate the symptoms you describe, it will be closed with worksforme.
  • If your bug is a feature request that the developers don't want in the core, it will be marked as wontfix.

Please verify that your bug doesn't fall into one of these categories before submission.

  • バグの処理には協力が必要な場合があります。問題を解決するために開発者を補助をする心づもりをしておいてください。
  • 報告した問題が "Not a bug(バグではない)" や "Won't fix(修正しない)" という解決方法に落ち着いたとしても、気を悪くしないでください。あなたにとってバグと思われることは、そういう「機能」かもしれないということは十分あり得ます。これらの解決方法は単に「現在は修正するつもりはない」ということですので、将来優先的に直される可能性もあります。
  • WordPress の開発へのご協力ありがとうございます!

最新英語版: WordPress Codex » Reporting Bugs最新版との差分