名前¶
Mojolicious::Guides::Contributing - Contributing to Mojolicious
Mojolicious::Guides::Contributing - Mojoliciousへの貢献
説明¶
There are many ways to contribute to Mojolicious, this guide will show you a few of them.
Mojoliciousに貢献する方法はたくさんあります。 このガイドはそのうちの少しを紹介します。
バグのレポート¶
We use the GitHub issue tracker, so you'll need to create a (free) GitHub account to be able to submit issues, comments and pull requests.
私たちはGitHub issue trackerを 使っています。 イシュー、コメント、プルリクエストを提出するには、無料のGitHubのアカウントを 作成してください。
First of all, make sure you are using the latest version of Mojolicious, it is quite likely that your bug has already been fixed. If that doesn't help, take a look at the list of currently open issues, perhaps it has already been reported by someone else and you can just add a comment confirming it.
まず最初に最新のMojoliciousであることを確認してください; あなたのバグは修正されていることが多いです。 もしだめであれば、現在オープンされているイシューの一覧を見てください; だれかがすでにレポートしていれば、それに確認のコメントを追加してください。
If it hasn't been reported yet, try to prepare a test case demonstrating the bug, you are not expected to fix it yourself, but you'll have to make sure the developers can replicate your problem. Sending in your whole application generally does more harm than good, the t
directory of this distribution has many good examples for how to do it right. Writing a test is usually the hardest part of fixing a bug, so the better your test case the faster it can be fixed. ;)
もしまだレポートされていなければ、バグのテストケースを準備してください; 自分自身で修正する必要はないですが、開発者がその問題を確実に 再現できるようにしてください。 アプリケーション全体を送信するのは一般的にいってよい面よりも 悪い面のほうが多いです。 このディストリビューションのtディレクトリにはどのようにするかを知るための よいサンプルがたくさんあります。 通常はテストを書くことはバグを修正することよりも大変なことなので、 テストケースをよりよいものにすれば、修正も早くなるでしょう。
And don't forget to add a descriptive title and text, when you create a new issue. If your issue does not contain enough information or is unintelligible, it might get closed pretty quickly. But don't be disheartened, if there's new activity it will get reopened just as quickly.
新しいイシューを作成するときは説明的なタイトルとテキストを追加することも 忘れないようにしてください。 問題に十分な情報が含まれていないか、理解できない場合は、 すぐに閉じられる可能性があります。 しかし、落胆しないでください; 新しい動きがあれば、 アクティビティはすぐに再開されます。
セキュリティの問題の報告¶
Please report security issues directly to the pumpkin-holder via email, which is currently Sebastian Riedel (kraih@mojolicious.org
), and give us a few days to develop and release a proper fix.
セキュリティの問題は直接担当者のCPANのEメールアドレスにレポートしてください; 現在はSebastian Riedel (kraih@mojolicious.org
)です; 数日後には開発して、適切な修正をリリースします。
問題の解決にむけて¶
There are many ways in which you can help us resolve existing issues on the GitHub issue tracker.
GitHub issue trackerに存在する 問題を解決するのを手助けするには多くの方法があります。
Can you replicate the problem on your computer? Add a comment saying that you're seeing the same. Perhaps you can provide additional information that will make it easier for others to replicate the problem, maybe even contribute a better test case.
あなたのコンピューターは問題を再現できますか? 同じものを見た場合はコメントを追加してください。 他の人が問題を再現を容易にするために追加の情報を提供できます; よりよいテストケースに貢献できるかもしれません。
And for all code contributions we very much appreciate additional testing and code review, just add a comment to show your approval or to point out flaws that need to be addressed.
すべてのコードの貢献のために、わたしたちは追加の試験とコードのレビューを 評価します; 賛成の意を表明するためにコメントを追加したり、 取り組むべき弱い部分を指摘することができます。
ドキュメントへの貢献¶
One of the easiest ways to contribute to Mojolicious is through documentation improvements. While the Mojolicious::Guides are carefully curated by the core team, everybody with a (free) GitHub account can make changes and add new information to the Mojolicious wiki.
Mojoliciousへの貢献の簡単な方法のひとつに、 ドキュメントを改善するというものがあります。 Mojolicious::Guidesはコアチームによって注意深く書かれたものですが、 (無料の)GitHubのアカウントをもっていれば、変更したり新しい情報を Mojolicious wikiに 追加することができます。
Pull requests with additions or changes to the documentation included in the Mojolicious distribution follow the same rules as code contributions. Please don't send pull requests for overly simplistic changes, such as the addition of a comma or semicolon.
Mojoliciousディストリビューションを含むドキュメントへの 追加または変更を伴うプルリクエストは、コードコントリビューションと 同じルールに従います。 コンマまたはセミコロンの追加など、過度に単純な変更をプルリクエストで 送信しないでください。
コードへの貢献¶
All code contributions should be sent as GitHub pull requests. But please try to avoid pull requests with very simplistic changes, such as a single typo fix somewhere in the documentation or comments.
コードへの貢献はGitHub pull requests によって行ってください。 ただし、ドキュメントまたはコメントのどこかで、1つのタイプミス修正のような 非常に単純な変更を伴うプルリクエストは避けるようにしてください。
An expressive title and detailed description are invaluable during the review process, which usually ends when members of the community have voiced their opinions and the core team voted for or against a change. All code changes should emulate the style of the surrounding code, include tests that fail without them, and update relevant documentation.
意味のあるタイトルと詳細な説明はレビューのプロセスにおいては貴重です; コミュニティのメンバーが意見を言ったり、コアチームが変更に賛成したり、 反対したりするときに、終了します。 すべてのコードの変更は周囲のコードと調和させてください; それがなければ失敗するコードを含めて、 関連するドキュメントもアップデートしてください。
While the Mojolicious distribution covers a wide range of features, we are rather conservative when it comes to adding new ones. So if your contribution is not a simple bug fix, it is strongly recommended that you discuss it in advance on the mailing list or the official IRC channel #mojo
on irc.freenode.net
(chat now!), to avoid unnecessary work and to increase its chances of getting accepted.
Mojoliciousへの貢献は広い範囲の機能に及びますが、 新しい機能が追加されるときは保守的です。 もし貢献が単純なバグ修正でなければ、不要な作業を避け、 受け入れられる可能性を増やすために、 mailing listかirc.freenode.net
(chat now!)の #mojo
で先立って議論することを 強く勧めます 。
Any member of the core team can call for a vote with a GitHub comment mentioning the team @mojolicious/core
. Then there will be a review period of 14 days (or less if enough votes have been cast), after which all votes are counted and the pull request will be accepted or rejected.
コアチームのメンバーは誰でも、チーム@mojolicious/core
にメンションした GitHubのコメントで投票を求めることができます。 その後、14日間のレビュー期間があります (または 十分な票が投じられた場合はそれより少ない); その後、すべての票がカウントされ、 プルリクエストは受け入れられるか 拒否されます。
The following mission statement and rules are the foundation of all Mojo and Mojolicious development. Please make sure that your contribution aligns well with them before sending a pull request.
以下のミッションステートメントとルールは、 全てのMojoとMojoliciousの開発基盤になっています。 プルリクエストを送る前に、あなたの貢献が同じ方針であることを確かめてください。
ミッションステートメント¶
Mojo is a web development toolkit, with all the basic tools and helpers needed to write simple web applications and higher level web frameworks, such as Mojolicious.
MojoはPerlのWebフレームワークのための実行環境です; 簡単なWebアプリケーションを書いたり、 Mojoliciousのような高レベルなWebフレームワークを書くための 基本的なツールとヘルパを提供しています。
All components should be reusable in other projects, and in a UNIXish way only loosely coupled.
すべてのコンポーネントは疎結合にして他のプロジェクトや UNIX的な方法で再利用可能であるべきです。
Especially for people new to Perl it should be as easy as possible to install Mojolicious and get started. Writing web applications can be one of the most fun ways to learn a language!
特にPerlを始める人にとって、Mojoliciousのインストールとスタートは できるだけ簡単である必要があります。 Webアプリケーションを書くことは、言語を覚えるもっとも面白い方法のひとつです!
For developers of other web frameworks, it should be possible to reuse all the infrastructure and just consider the higher levels of the Mojolicious distribution an example application.
他のWebフレームワークの開発者のために、 すべてのインフラは再利用可能であるべきですし、より高レベルのMojoliciousの ディストリビューションは、サンプルアプリケーションだと考えることができます。
ルール¶
Web development should be easy and fun, this is what we optimize for.
Web開発は簡単で楽しいものにする必要があります; これは私たちが最適化していることです。
The web is a moving target, to stay relevant we have to stay in motion too.
ウェブは移動する目標であり、追いついていくために私たちもまた動き続けなければなりません。
Keep it simple, no magic unless absolutely necessary.
シンプルに保ってください; 絶対に必要とされるときを除いてマジックを使わないでください。
The installation process should be as fast and painless as possible. (Less than a minute on most common hardware is a good rule of thumb)
インストールの処理は、できるだけ速く、無痛であるべきです。 (最も一般的なハードウェアにおいて、1分以内が経験にもとづく目安です)
The addition and modification of features is decided by majority vote or the pumpkin-holder.
機能の追加と修正は、多数派の投票かパンプキングの決定によります。
Any core developer may nominate a new one, who must then be accepted by a 2/3 majority vote.
コア開発者は新しい機能を提案することができます。2/3の多数決の票が必要です。
The pumpkin-holder has veto rights and may select their successor.
パンプキングは拒否権を持ち、後継者を選択できます。
It's not a feature without a test and documentation.
機能を作るときはテストとドキュメントも作りましょう。
A feature is only needed when the majority of the user base benefits from it.
機能は多くのユーザの視点から見て利益があるときにのみ必要とされます。
Features may only be changed in a major release, to fix a serious security issue, or after being deprecated for at least 3 months.
少なくともひとつのメジャーリリースの期間の間か、 重大なセキュリティ問題の修正か、 最低3ヶ月間廃止予定の宣言をしなければ、機能は変更してはいけません。
Refactoring and deprecations should be avoided if there are no substantial benefits.
十分な利益がない限りは、機能のリファクタリングと 廃止予定(Deprecating)にすることは避けるべきです。
New features can be marked as experimental to be excluded from deprecation policies.
実験的なものとしてマークされている新しい機能は廃止のポリシーの対象外になります。
A major release is signaled by a new major version number and a unique code name based on a Unicode character.
メジャーリリースは新しいバージョン番号によって示され、 ユニコード文字をベースにした新しいユニークなコードがしるしになります。
Only add dependencies if absolutely necessary and make them optional if possible.
絶対に必要なときだけ、依存を追加してください; そして、できればそれらをオプションにしてください。
Domain specific languages should be avoided in favor of Perl-ish solutions.
Perl的な解決方法を支持するので、ドメイン固有言語は避けます。
No inline POD.
インラインPODは使用しません。
Documentation belongs to the guides, module POD is just an API reference.
ドキュメントはガイドに属し、モジュールのPODは単なるAPIリファレンスにします。
The main focus of the included documentation should be on examples, no walls of text. (An example for every one or two sentences is a good rule of thumb)
埋め込みのドキュメンテーションの主な観点は、たくさんのテキストの解説ではなく、 サンプルコードです。 (1つか2つのセンテンス毎にサンプルを記述するのが、経験則にもとづく目安です)
Everything should be ordered alphabetically if possible, or at least be consistent if not.
できればすべてはアルファベット順に並べます; 出来ない場合は 最低限一貫性を持たせます。
The master source code repository should always be kept in a stable state, use feature branches for actual development.
master ソースコードのレポジトリは常に安定状態で保たれるべきであり、 実際の開発には機能のためのブランチを使用してください。
Code has to be run through Perl::Tidy with the included .perltidyrc, and everything should look like it was written by a single person.
コードは同梱された .perltidyrcで Perl::Tidy を通してください; すべてが独りの人間によって書かれたように記述してください。
Functions and methods should be as short as possible, no spaghetti code.
スパゲッティコードにならないように、 メソッドと関数はできるだけ短くしてください。
Comments should be correctly capitalized, and funny if possible, punctuation is optional if it doesn't increase readability.
コメントは正しく先頭を大文字にして もし可能であれば ユーモアのあるものにしてください; 読みやすさを増さないのであれば、句読点は任意です。
No names outside of Mojolicious.pm
.
Mojolicious.pm
以外には名前を書かないでください。
寄付金¶
Mojolicious is open source and free to use. However, the amount of effort needed to maintain the project and develop new features for it is not sustainable without proper financial backing. You can support the ongoing development of Mojolicious through PayPal (donations@mojolicious.org
).
Mojolicious はオープンソースであり、無料で使用できます。 しかし、プロジェクトを維持し、新しい機能を開発するためのたくさんの努力は 適切な財政的支援なしで持続可能ではありません。 PayPal (donations@mojolicious.org
) を通して、 Mojoliciousの継続的な開発をサポートできます。
If you run a business and use Mojolicious in a revenue generating product, it makes business sense to support Mojolicious development. Because it ensures that the project your product relies on stays healthy and actively maintained. It can also help your exposure within the community and will make it easier to attract Mojolicious developers.
事業を営み、収益を生み出す製品でMojoliciousを使用する場合、 Mojoliciousの開発をサポートするのはビジネス上、理にかなっています。 そのことは、製品が依存するプロジェクトが健全であり、 積極的にメンテナンスされていることを保証します。 また、コミュニティ内での露出に役立ち、Mojolicious開発者を 引きつけるのがより簡単になります
Please email us (donations@mojolicious.org
) if you have any questions about becoming a sponsor.
スポンサーになることについてご質問がある場合は、 メール(donations@mojolicious.org
)でお問い合わせください。
行動規範¶
Like the technical community as a whole, the Mojolicious team and community is made up of a mixture of professionals and volunteers from all over the world, working on every aspect of the mission - including mentorship, teaching, and connecting people.
技術コミュニティ全体と同様に、L <Mojolicious>チームとコミュニティは 世界中の専門家とボランティアの両方で構成されており、 メンターシップ、教育、人をつなぐことを含む、 ミッションのあらゆる側面に取り組みます。
Diversity is one of our huge strengths, but it can also lead to communication issues and unhappiness. To that end, we have a few ground rules that we ask people to adhere to. This code applies equally to founders, mentors and those seeking help and guidance.
多様性は私たちの大きな強みの1つですが、 コミュニケーションの問題と不幸にもつながります。 そのために、従うべきいくつかの基本的なルールがあります。 この規範は、創設者、メンター、ヘルプとガイダンスを求める人に、 等しく適用されます。
This isn't an exhaustive list of things that you can't do. Rather, take it in the spirit in which it’s intended - a guide to make it easier to enrich all of us and the technical communities in which we participate.
これは、できないことを網羅したリストではありません。 むしろ、それを取り入れる 意図された精神です; 私たちと私たちが参加している技術コミュニティすべてをより豊かにするための ガイドです。
This code of conduct applies to all spaces managed by the Mojolicious project. This includes IRC, the mailing lists, the issue tracker, and any other forums created by the project team which the community uses for communication. In addition, violations of this code outside these spaces may affect a person's ability to participate within them.
この行動規範は、Mojoliciousプロジェクトが管理するすべてのスペースに適用されます。 これには、IRC、メーリングリスト、問題トラッカー、コミュニティが コミュニケーションに使用するプロジェクトチームによって作成されたフォーラム、を 含みます。 加えて、これらのスペース外でのこの規範の違反は、その人物が これらに参加する能力に影響を与えることがあります。
If you believe someone is violating the code of conduct, we ask that you report it by emailing Joel Berger (jberger@mojolicious.org
) or other members of the team.
誰かが行動規範に違反していると思われる場合は、 Joel Berger(jberger@mojolicious.org
)または他のメンバー the team にメールで報告するようお願いします。
Be friendly and patient.
(* フレンドリーで忍耐強くあります。)
Be welcoming. We strive to be a community that welcomes and supports people of all backgrounds and identities. This includes, but is not limited to members of any race, ethnicity, culture, national origin, colour, immigration status, social and economic class, educational level, sex, sexual orientation, gender identity and expression, age, size, family status, political belief, religion, and mental and physical ability.
(* 歓迎すること 私たちは、すべての背景とアイデンティティの人々を歓迎し、支援するコミュニティになるよう努めています。これには以下が含まれますが、これらに限定されません。 あらゆる人種、民族、文化、出身国、色、移民のステータス、社会的および経済的クラス、教育レベル、性別、性的指向、 性同一性と表現、年齢、規模、家族の地位、政治的信念、宗教、精神的および身体的能力。)
Be considerate. Your work will be used by other people, and you in turn will depend on the work of others. Any decision you take will affect users and colleagues, and you should take those consequences into account when making decisions. Remember that we're a world-wide community, so you might not be communicating in someone else's primary language.
(* 思いやること あなたの仕事は他の人によって使われ、あなたは一方で他の人の仕事に依存します。あなたがするあらゆる決定は、ユーザーと仲間に影響を及ぼします; そしてあなたは決定するときは、それらの結果を考慮に入れる必要があります。私たちは世界的なコミュニティであることに注意してください; それゆえ、他人の第一言語でコミュニケーションしていないかもしれません。)
Be respectful. Not all of us will agree all the time, but disagreement is no excuse for poor behavior and poor manners. We might all experience some frustration now and then, but we cannot allow that frustration to turn into a personal attack. It’s important to remember that a community where people feel uncomfortable or threatened is not a productive one. Members of the Mojolicious community should be respectful when dealing with other members as well as with people outside the Mojolicious community.
(* 敬意を払うこと全員が常に同意するわけではありませんが、意見の相違は、悪い振る舞いと悪いマナーの言い訳にはなりません。私たちはすべて時々不満を感じますが、その不満が個人攻撃に変わるのを許すことはできません 人々が不快感や脅迫を感じる場所は、生産的でないコミュニティであることを覚えておくことが重要です。Mojoliciousコミュニティ外の人々に対するのと同じように、他のメンバーを扱う場合に Mojoliciousコミュニティのメンバーは、敬意を持ち合うべきです。)
Be careful in the words that you choose. We are a community of professionals, and we conduct ourselves professionally. Be kind to others. Do not insult or put down other participants. Harassment and other exclusionary behavior aren't acceptable. This includes, but is not limited to:
(* 選択する言葉に注意してください。私たちは専門家のコミュニティです。 ですので、私たちは専門的に行動します。他人に優しくしてください。 他の参加者を侮辱したり、落としめたりしないでください。ハラスメントおよびその他の排他的振る舞いは受け入れられません。これには次のものが含まれますが、これらに限定されません。)
Violent threats or language directed against another person.
(* 他の人に対する暴力的な脅迫または言葉。)
Discriminatory jokes and language.
(* 差別的なジョークと言葉。)
Posting sexually explicit or violent material.
(* 性的に露骨または暴力的な素材の投稿。)
Posting (or threatening to post) other people's personally identifying information ("doxing").
(* 他人の個人を特定する投稿(または投稿の脅迫)情報(「ドキシング」)。)
Personal insults, especially those using racist or sexist terms.
(* 個人への侮辱、特に人種差別的または性差別的な言葉を使用するもの。)
Unwelcome sexual attention.
(* 望ましくない性的注意)
Advocating for, or encouraging, any of the above behavior.
(* 上記の行動のいずれかを提唱、または奨励する。)
Repeated harassment of others. In general, if someone asks you to stop, then stop.
(* 他人への嫌がらせを繰り返した。一般に、誰かが停止するように頼んだら、その後、停止してください。)
When we disagree, try to understand why. Disagreements, both social and technical, happen all the time and Mojolicious is no exception. It is important that we resolve disagreements and differing views constructively. Remember that we’re different. The strength of Mojolicious comes from its varied community, people from a wide range of backgrounds. Different people have different perspectives on issues. Being unable to understand why someone holds a viewpoint doesn’t mean that they’re wrong. Don’t forget that it is human to err and blaming each other doesn’t get us anywhere. Instead, focus on helping to resolve issues and learning from mistakes.
(* 意見が合わない場合は、理由を理解しようとしてください 社会的技術的双方の意見の相違は常に発生し、Mojoliciousも例外ではありません。不一致や意見の相違を建設的に解決することが重要です。 私たちは違うことを忘れないでください。 Mojoliciousの強みは、 多様なコミュニティ、幅広いバックグラウンドを持つ人々からなっています。様々な人々は問題に関してさまざまな視点を持ちます。誰かがある視点を持っている理由を理解できないことは、彼らが間違っているという意味ではありません。誤ることは人間であることを忘れないでください; そして、お互いを責めても、私たちはどこにも行きません。代わりに、問題を解決し、間違いから学ぶことに集中してください。)
フォークポリシー¶
The Mojolicious core team believes that there is a lot of value in the entire toolkit being a unified project. Forks drain resources from a project, not just mindshare but also very valuable bug reports and patches, which can have very serious security implications. Therefore we ask that you please not publically fork pieces of the Mojolicious distribution without our consent. As doing so is against our express wishes, individuals who engage in unauthorized forking may be denied from participating in community sponsored spaces.
Mojoliciousコアチームは、ツールキット全体が一つの統合された プロジェクトであることに多くの価値があると考えています。 フォークは、マインドシェアだけでなく、 深刻なセキュリティへの影響を含む 非常に貴重なバグレポートとパッチなどプロジェクトからリソースを消費します。 したがって、私たちの同意なく Mojoliciousディストリビューションの断片を、 フォークしないようにお願いします。 そうするように許可されていないフォークに従事している、 私たちの明確な願いに反している個人は、コミュニティ主催のスペースへの 参加が拒否される場合があります。
For developers considering the use of a forked module, we strongly recommend that you make yourself familiar with its history and track record. While many parts of Mojolicious have been forked in the past, very few forks have been able to keep up with Mojolicious development, and most are missing critical bug fixes.
フォークされたモジュールの使用を検討している開発者には、 その歴史と実績に精通することを強くお勧めします。 多くの Mojoliciousの一部は過去にフォークされていますが、 Mojolicious開発に遅れずについていくことができているフォークは ほとんどありません; ほとんどは、深刻なバグ修正が行われていません。
より学ぶには¶
You can continue with Mojolicious::Guides now or take a look at the Mojolicious wiki, which contains a lot more documentation and examples by many different authors.
Mojolicious::Guidesを学び続けてください; またMojolicious wikiを 見ることもできます; wikiには多くのユーザーによる多くのドキュメントやサンプルがあります。
サポート¶
If you have any questions the documentation might not yet answer, don't hesitate to ask on the mailing list or the official IRC channel #mojo
on irc.freenode.net
(chat now!).
ドキュメントに答えが見つからなくて質問があるときは、mailing listか 公式のIRCチャンネルであるirc.freenode.net
(chat now!)の#mojo
でためらわずに質問してください。