1

Mozilla に貢献しようとするのはこれが初めてです。いくつかの記事とドキュメント/リソースを調べて、開始するための最良の最初のステップとなるコツをつかみました. このページhttp://whatcanidoformozilla.org 1から始めて、Java から始めることにしました。

最初のいじくり回しで、私はhttps://wiki.mozilla.org/Mobile/Get_Involvedに連れて行かれ、最終的にhttps://wiki.mozilla.org/Mobile/Fennec/Android/Suggested_workflow リソースがそれを始めるための最良の方法を提案しましたいくつかの単純なバグを拾い上げて、それに対するパッチを提案することです。

そこでhttp://www.joshmatthews.net/bugsahoy/?java=1&simple=1にアクセスしたところ、この特定のバグが私の注意を引きました。バグの説明には、次のように記載されています。

PARAM_SHOW_DELETED、PARAM_LIMIT、または PARAM_PROFILE の追加など、DB 実装全体で共有する (または共有できる) メソッドがいくつかあります。

これらは現在、LocalBrowserDB、TabsAccessor、URLMetadata などに広がっています。これらをきれいにすると良いでしょう。

質問 1.バグとは何か、何をする必要があるのか​​について、さらに詳しい状況を知るにはどうすればよいですか?

今のところ、私が理解していることから、すでに 2 つのパッチが提出されているようです (ここで私の理解が間違っている場合は修正してください)。そこで、バグに関する状況を把握するために、ここに提出された最初のパッチを開いた。

少なくとも、修正が必要なコード自体が正確にどこにあるのかについて、いくつかのアイデアが得られました。そして見つけたのがここ

質問 2.修正が必要なコードを特定する方法は正しいですか?

質問 3. DBUtils.javaファイルにたどり着いた後でも、クラスが基本的に何をするか、または全体像のどこに収まるかについてのドキュメントを見つけることができませんでした。クラスが何をすべきかなど、または少なくともその周りのドキュメントをどのように把握するかについて、誰かが私を助けてくれませんか?

4

1 に答える 1

2

あなたは正しい道を進んでいます。基本的に、What Can I Do For Mozillaの Web サイトは、興味のあるプロジェクトをすばやく簡単に見つけるための方法であり、コーディングの貢献への最初のゲートウェイです。

とはいえ、最初にバグを選ぶのはうまくいきました。ただし、ご覧のとおり、バグはすでに他の誰かによって処理されていました (Assigned とマークされています)。あなたの最善の策は、取り組むべき新しい「良い最初のバグ」を見つけることです。Bug's Ahoy は、所有されていない最初のバグをいくつかしか示していないため、これは複雑な作業になる可能性があります。

Fennec チームとは、電子メールまたは IRC (応答が速い後者)で連絡を取るようにしてください。

さて、あなたの質問に答えるために、より一般的な方法で

質問 1. バグとは何か、何をする必要があるのか​​について、さらに詳しい状況を知るにはどうすればよいですか?

通常、これは Bugzilla のバグの最初のコメントに記載されています。そうでない場合は、そこにメッセージをドロップして、さらに道順を尋ねてください。通常はより適切に表示されるため、 needinfo機能を使用してバグの報告者または指導者にフラグを立てることもできます。

ご覧のとおり、誰かがコメント 1で詳細情報を求め、いくつかの新しい指示が与えられました。

一般に、バグ自体のコードを含むパッチは見つかりませんが、ファイルへのリンクや、何をどのように変更するかについてのより正確な指示が見つかる場合があります。そうでない場合は、レポーターやメンターに気軽に連絡してください。

質問 2. 修正が必要なコードを特定する方法は正しいですか?

あなたは正しい道を進んでいます。一般に、バグにファイルまたは DXR へのリンクがないが、いくつかのコードが言及されている場合は、 DXRを使用して検索できます。

質問 3. DBUtils.java ファイルにたどり着いた後でも、クラスが基本的に何をするか、または全体像のどこに収まるかについてのドキュメントを見つけることができませんでした。クラスが何をすべきかなど、または少なくともその周りのドキュメントをどのように把握するかについて、誰かが私を助けてくれませんか?

Firefox コードをナビゲートし、あまり文書化されていないクラスについての背景が必要な場合、私が通常行うことは、そのファイルの変更ログを参照し、DXR の右上のパネルにある [ログ] ボタンをクリックすることです(ファイルを表示するとき) . ファイルに影響を与えたバグのリストが表示されます。さらにコンテキストを取得するために、それを実装した元のファイルをトレースバックすることもできます。

一方、ファイル内の 1 行のコードの履歴だけに関心がある場合は、非難ツールが役に立ちます。誰が最後にその行に触れたか、変更セットと関連するバグ番号が表示されます。これは、ログを見つけることができる場所からもアクセスできます

ただし、DBUtils.java の場合、このクラスはデータベース アクセス用のいくつかのユーティリティ関数を保持しているだけのようです。

Firefox コードベース内で何かがどのように使用されているかを確認するには、引き続き DXR を使用できます。DBUtils オブジェクトの検索例を次に示します。

于 2016-10-19T09:15:20.587 に答える