メインコンテンツまでスキップ
に最終更新

コミュニティ貢献ガイド

Apache Doris は、世界中の開発者、ユーザー、テクニカルライター、登壇者、コミュニティ運営者を歓迎します。コード開発、コンテンツ制作、コミュニティ活動を通じて貢献できます。いずれの方法もプロジェクトの成長を支え、貢献者にはオープンソースでの協働を示す公開記録が残ります。

コード開発

こんな方におすすめ:Doris の開発に直接携わりたい方。

  • バグを修正し、新機能を開発する。
  • 性能、安定性、可観測性を改善する。
  • 単体テスト、回帰テスト、統合テストを追加する。
  • ビルド、CI、リリース、開発ツール、開発ワークフローを改善する。
  • PR をレビューし、技術文書、ユーザー向けドキュメント、サンプルを追加する。

貢献がマージされると、Apache Doris Contributor になります。

ガイドを読む ->

コンテンツ制作

こんな方におすすめ:Doris のユースケースに詳しく、実践的な経験を共有したい方。

  • 技術ブログや本番環境の事例を書く。
  • 入門チュートリアルやベストプラクティスを作成する。
  • 機能、デプロイ、チューニング、トラブルシューティングに関する動画を収録する。
  • ミートアップ、ウェビナー、カンファレンスで登壇する。
  • ドキュメント、ブログ、イベント資料、動画の字幕を翻訳する。

質の高いコンテンツへの貢献には、感謝のしるしとしてコミュニティグッズが贈られます。

ガイドを読む ->

コミュニティ活動

こんな方におすすめ:ユーザーのニーズを理解し、人と協力するのが好きな方。

  • Slack、GitHub、メーリングリストで質問に答える。
  • 新しいユーザーが適切なドキュメント、サンプル、コミュニティの窓口を見つけられるよう支援する。
  • オンラインまたはオフラインのミートアップ、ワークショップ、オフィスアワー、ユーザー講演を企画する。
  • ユーザーに本番環境での実践例や移行経験の共有を呼びかける。
  • ユーザーからのフィードバックを集め、公開のコミュニティチャネルで共有する。

積極的にコミュニティへ参加した方には、感謝のしるしとしてコミュニティグッズが贈られます。

ガイドを読む ->

貢献によって得られるもの

貢献の種類、質、継続性に応じて、次のような機会が得られます。

  • Apache Doris のコミュニティチャネルで公に評価される。
  • 貢献者一覧、コミュニティからの謝辞、イベントの振り返りで紹介される。
  • Apache Doris のウェブサイト、ブログ、ソーシャルメディア、動画チャンネルでコンテンツを公開する機会が得られる。
  • コミュニティイベントで登壇する機会が得られる。
  • Maintainer、Committer、PMC メンバー、経験豊富なユーザーと話す機会が増える。
  • 一部のミートアップ、ウェビナー、カンファレンス企画、その他のコミュニティプログラムに優先的に参加できる。
  • 技術的な貢献と自身がもたらした影響を示す公開記録が残る。
  • コミュニティグッズ、記念品、特別な贈り物がもらえる。

技術的な貢献を高い水準で継続している方は、Apache のガバナンス手続きを通じてApache Doris Committer または PMC メンバーになるよう、コミュニティから招かれる場合があります。また Doris Summit では、顕著な貢献をしたユーザー、開発者、コミュニティの推進者への感謝を込めて、毎年 Outstanding Community Heroes を選出しています。

コミュニティ参加ガイド​

以下では、各分野での参加方法を説明します。

ヒント

このガイドは、コミュニティのプロセスの変化に合わせて更新される場合があります。最新情報は Apache Doris の Slack コミュニティ で確認してください。

タスクの探し方​

貢献できるタスクは次の場所で探せます。

  • Slack:質問、議論の開始、背景の確認、相談相手の探索に適しています。
  • Apache Doris GitHub Issues:バグ、機能リクエスト、改善案、未着手のタスクを探せます。
  • Apache Doris GitHub Discussions:技術的な議論、使い方の質問、設計提案に適しています。
  • ロードマップ:長期的な技術課題を探せます。通常は GitHub Issues ページのピン留めされた Issue から確認できます。
  • 既存の PR:レビュー、テスト、検証、変更を前に進めるための支援ができます。

初めて貢献する方は、ドキュメントの修正、テストの追加、簡単なバグ修正、Issue の再現、エラーメッセージの改善、サンプルの整理など、小さく範囲の明確なタスクから始められます。大きな機能や動作変更に取り組む場合は、Apache Doris の Slack の #dev チャネルで議論を始め、Core Maintainer に背景を確認してください。

コードへの貢献で求められること​

コードを提出する前に、次のことを行うようにしてください。

  • apache/doris リポジトリをフォークし、最新の main ブランチから別のブランチを作成する。
  • 各 PR を明確な一つの問題に絞る。関連のない変更を一つの PR に混ぜない。
  • 目的、範囲、検証内容が分かる PR のタイトルと説明を書く。
  • 関連する Issue、Discussion、メーリングリストのスレッドをリンクする。
  • 必要な単体テスト、回帰テスト、または手動での検証手順を追加する。
  • ユーザー向けの動作、設定、SQL の意味、エラーメッセージ、互換性に影響する変更では、ドキュメントを更新する。
  • 互換性、性能、安定性、動作に関するリスクを PR の説明に明記する。

一般に、良い PR には次の内容が含まれます。

  • 背景:なぜ変更が必要なのか。
  • 方針:何を、なぜ変更したのか。
  • テスト:実行したテストや検証手順と、その結果。
  • リスク:互換性、性能、安定性、ユーザー向けの動作に影響するかどうか。
  • ドキュメント:更新が必要かどうか、必要な場合はどこを更新したか。

コミュニティは、コーディング、デバッグ、レビューの補助に AI を使うことを認めています。ただし、貢献者は次のルールに従う必要があります。

  • 開発、デバッグ、レビューには十分な能力のあるモデルを使用する。重要な変更を、品質の低い生成コードに頼って行わない。
  • 提出するコードには自分で責任を持つ。コミュニティは、人間の責任者がいない AI 生成コードを受け付けません。

標準的なマージの流れ​

コードの変更は通常、次の手順で進みます。

  1. 貢献者が Pull Request を作成する。
  2. Committer またはそれ以上の権限を持つ人が CI と AI Review を起動する。支援が必要な場合は Slack の #dev チャネルで相談できます。
  3. 貢献者が CI やレビューで報告されたビルド、テスト、フォーマットの問題を修正する。AI からのフィードバックもレビューの一部です。有用な提案を取り入れ、当てはまらない提案については PR で理由を説明します。
  4. 必要に応じて、貢献者が最新の main ブランチ上にリベースし、競合を解決する。
  5. 必須の CI チェックがすべて成功する。
  6. Reviewer が PR を承認する。
  7. Committer がマージする。

PR をマージするには、必須の CI チェックが成功している必要があります。必須ではないチェックはマージを妨げません。

レビューを進める方法​

貢献者は Reviewer を待つだけでなく、自分の PR を積極的に前に進めてください。Apache Doris の貢献ガイドでも、貢献者が自分の PR の Moderator として、提出からマージまで進めることを推奨しています。

推奨される方法:

  • PR の説明に、Reviewer が判断するための十分な背景を書く。
  • Slack の #dev チャネルで PR のリンクを共有し、レビューを依頼する。
  • レビューコメントには速やかに返信する。
  • 指摘に対応した後は、解決済みとしてマークする。
  • コメントに同意しない場合は、技術的な理由を示す。
  • 競合が長引かないよう、定期的にリベースする。
  • PR の進行が止まった場合は、PR 上で関連する Reviewer に丁寧に確認する。
  • 誰にレビューを依頼すればよいか分からない場合は、適切なモジュール担当者を探せるよう Slack で相談する。

適切な Reviewer を探す方法:

  • 同じモジュールで最近マージされた PR を見る。
  • 関連ファイルのコミット履歴を確認する。
  • 利用できる場合は、GitHub が提案する Reviewer や CODEOWNERS を確認する。
  • Slack で適切な Reviewer を探す支援を求める。ただし、重要な技術的結論は GitHub またはメーリングリストでも共有する。

コミュニティの行動規範​

すべての貢献者は、次の原則に従ってください。

  • 他者を尊重し、専門的で、友好的かつ建設的なコミュニケーションを心がける。
  • 重要な技術的議論やコミュニティの決定は、可能な限り公開チャネルで行う。
  • コード、ドキュメント、コンテンツのレビューを受け入れる姿勢を持つ。
  • レビューのフィードバックに同意しない場合は、技術的な理由を明確に説明する。
  • 公開の場で議論すべきコミュニティの決定を、非公開で行わない。
  • オリジナルのコンテンツを提出する。引用または参照した資料は、出典を明記する。
  • 誇張された、検証できない、または誤解を招く性能やビジネス上の主張を避ける。
  • コードを変更する際は、可能な限りテストを追加する。
  • ユーザーから見える動作に影響する変更では、ドキュメントを更新する。
  • ユーザーの個人情報、顧客の機密情報、企業の秘密情報を漏らさない。
  • セキュリティ上の問題は責任ある開示の手順に従って扱う。問題が対処される前に、公開チャネルで詳細を公表しない。
  • Apache コミュニティの価値観と ASF の行動規範を尊重する。

貢献者はオープンソースコミュニティのメンバーとして参加します。活動の中で企業を代表する場合は、必要に応じてそのことを明らかにしてください。貢献は、貢献そのものを重視する Apache の公開性と透明性のある進め方に従う必要があります。