Karma のメンテナンス

このドキュメントは、Karma の開発者向けです。プルリクエストのトリアージやマージなどの一般的なタスクについて説明します。

Karma への貢献に興味がある場合は、Karma への貢献をご覧ください。

プルリクエストや issue について話し合うために、gitter/karma-runner を使用しています。「これは重要なので、調べていただけますか...」「この issue についてどうすればいいのかわかりません...」といった内容です。

issue のトリアージ #

毎日新しい issue が発生します。緊急の issue(「Karma をインストールできない」など)を特定し、重複を閉じ、質問に回答する必要があります。

詳細は、angular/TRIAGING.md を参照してください。

issue またはプルリクエストがマイルストーンに割り当てられていない場合、トリアージされていない(トリアージが必要)とみなされます。

プルリクエストのマージ #

以下を確認してください。

  • CI ビルドが成功していること。
  • 少なくとも 1 人のオーナー(自分以外)が PR を承認していること
    • 「LGTM」などのコメントによって承認されます。
    • 単純なドキュメントの変更や typo の修正の場合は、この手順を省略しても構いません。
  • すべてのコミットが規約に従っていること。
    • これは非常に重要です。自動リリース タスクがこれに依存しているためです。
    • コミットが squash されていること。各変更は 1 つのコミットであること。
      • 例:PR に `fix(web-server): xxx` と `style(web-server): missing semicolons` の 2 つの変更が含まれている場合、2 つの別々の変更にする必要があります。
      • 例:最初のコミットが `fix(web-server): serve binary files` で、2 番目のコミットが「前のコミットで壊れた単体テストを修正」である場合、それらを 1 つのコミットに squash する必要があります。
    • プルリクエストの作成者に上記のいずれかを修正するように依頼しても構いません。

npm のリリース #

管理者権限を持つコア コラボレーター向けです。

  • 途中で切断されない、良好なネットワークに接続してください。
  • アップストリーム master と同期していることを確認してください。
  • echo $GH_TOKEN
  • npm login karmarunnerbot
    • パスワードは、承認されたリリース担当者にのみ知らされています。
  • grunt release リリースに失敗した場合は、github にプッシュされた git タグの状態を確認してください。削除する必要があるかもしれません。

オーナーシップ #

すべてのプロジェクトには、`package.json` の `owners` フィールドにリストされている 1 人以上のオーナー(または「メンテナー」)がいます。通常、オーナーはプッシュ権限を持っています。

1 つのプラグインのメンテナーであるということは、他のプラグインに貢献できないという意味ではありません。実際、複数のプロジェクトのメンテナーになることができます。重要なのは、コードベースに精通している人がいることで、それによって良い変更かどうかをより適切に判断できるようになります。

メンテナーになる #

Karma のメンテナーになることに興味がある場合は、issue のトリアージ、プルリクエストのレビューから始め、gitter/karma-runner に立ち寄ってください。あなたが貢献していることがわかれば、プッシュ権限を付与します。メンテナーであることは義務ではありません。時間があるときに手伝い、時間がないときは活動を控えめにすることができます。新しい仕事に就いて忙しくなったとしても、問題ありません。

これらはすべて単なる推奨事項であり、私たちがより効率的に作業するために役立つとわかったことです。何も確定したものではありません。このワークフローを改善する方法があると思われる場合は、karma-devs@googlegroups.com に提案を送信してください。