新しいコントリビューターへのアドバイス¶
新しいコントリビューターで、何をするべきかわかりませんか? 助けたいと思っているのにどこから手を付ければいいのかわかりませんか? このセクションはあなたのためにあります。
立ち上げる!
Django へのコントリビューションが初めての場合、Djangoにはじめて貢献する チュートリアルがツールとワークフローへの導入の助けとなるでしょう。
このページでは、Django へのコントリビューション方法とそのためのアプローチについて、より一般的なアドバイスをします。
パッチを書く方法の細かい参照文献を探しているなら Contributing code ドキュメントを参照してください。
最初のステップ¶
Django の開発プロセスを知るには、以下のステップから始めてください。
Triage tickets¶
If an unreviewed ticket reports a bug, try and reproduce it. If you can reproduce it and it seems valid, make a note that you confirmed the bug and accept the ticket. Make sure the ticket is filed under the correct component area. Consider writing a patch that adds a test for the bug's behavior, even if you don't fix the bug itself. See more at How can I help with development?.
Review patches of accepted tickets¶
This will help you build familiarity with the codebase and processes. Mark the appropriate flags if a patch needs docs or tests. Look through the changes a patch makes, and keep an eye out for syntax that is incompatible with older but still supported versions of Python. Run the tests and make sure they pass. Where possible and relevant, try them out on a database other than SQLite. Leave comments and feedback!
Keep old patches up-to-date¶
Oftentimes the codebase will change between a patch being submitted and the time it gets reviewed. Make sure it still applies cleanly and functions as expected. Updating a patch is both useful and important! See more on Contribution checklist.
Write some documentation¶
Django's documentation is great but it can always be improved. Did you find a typo? Do you think that something should be clarified? Go ahead and suggest a documentation patch! See also the guide on ドキュメントを書く.
注釈
reports page には多くの有用な Trac クエリへのリンクがあり、その中には上で提案したようなチケットのトリアージやパッチのレビューに有用なものも含まれています。
Sign the Contributor License Agreement¶
あなたが書いたコードは、あなたかあなたの雇用主のものです。あなたの貢献が1、2行以上のコードである場合、 CLA に署名する必要があります。より詳しい説明は Contributor License Agreement FAQ を参照してください。
ガイドライン¶
大規模なプロジェクトでの新参者は、フラストレーションを経験しがちです。ここでは、Django での作業をより便利でやりがいのあるものにするためのアドバイスをいくつか紹介します。
Pick a subject area¶
This should be something that you care about, that you are familiar with or that you want to learn about. You don't already have to be an expert on the area you want to work on; you become an expert through your ongoing contributions to the code.
Analyze tickets' context and history¶
Tracは絶対的なものではありません。文脈は言葉と同じくらい重要です。Trac を読むときは、誰がいつ言ったかを考慮する必要があります。2年前にあるアイデアが支持されたからといって、そのアイデアがまだ支持されるとは限りません。また、誰が*発言していないか*にも注意を払う必要があります。例えば、経験豊富なコントリビューターが最近議論に関わっていない場合、チケットにはDjangoに取り入れられるために必要なサポートが不足している可能性があります。
Start small¶
大きな問題よりも小さな問題の方がフィードバックを得やすいものです。 easy pickings をチェックしてみてください。
Confirm support before engaging in a big task¶
つまり、問題を修正する前にバグが本物であることを他の誰かに確認してもらうことや、実装する前に提案された機能についてコンセンサスが得られていることを確認することです。
Be bold! Leave feedback!¶
「このチケットは正しい」とか、「このパッチには作業が必要だ」とか、自分の意見を世界に発信するのは、時には怖いことかもしれませんが、プロジェクトが前進するた めの唯一の方法です。幅広い Django コミュニティの貢献は、最終的には一個人の貢献よりもずっと大きな影響力を持ちます。私たちは あなた なしではできません!
Be cautious when marking things "Ready For Check-in"¶
If you're really not certain if a ticket is ready, don't mark it as such. Leave
a comment instead, letting others know your thoughts. If you're mostly certain,
but not completely certain, you might also try asking on the
#contributing-getting-started channel in the Django Discord server to
see if someone else can confirm your suspicions.
Wait for feedback, and respond to feedback that you receive¶
1つか2つのチケットに集中し、最初から最後まで見届け、それを繰り返します。たくさんのチケットを引き受け、いくつかを道端に放置するというショットガンアプローチは、結局、良いことよりも悪いことの方が多いのです。
Be rigorous¶
When we say "PEP 8, and must have docs and tests", we mean it. If a patch doesn't have docs and tests, there had better be a good reason. Arguments like "I couldn't find any existing tests of this feature" don't carry much weight. While it may be true, that means you have the extra-important job of writing the very first tests for that feature, not that you get a pass from writing tests altogether.
Be patient¶
あなたのチケットやパッチが迅速にレビューされることは、必ずしも容易ではありません。これは個人的なことではありません。たくさんのチケットやプルリクエストがあります。
パッチを最新の状態に保つことは重要です。Trac 上でチケットをレビューし、すべてのレビューコメントに対応したら、 Needs tests, Needs documentation, Patch needs improvement フラグのチェックが外れていることを確認してください。
Django のリリースサイクルは 8 ヶ月なので、あなたのパッチがレビューされるのに十分な時間があることを覚えておいてください。
最後に、タイミングよくリマインダを送ることも有効です。ここでは contributing code FAQ を参照してください。