Bazel への貢献

問題を報告する ソースを表示 Nightly · 8.4 · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

Bazel プロジェクトとエコシステムを支援する方法は数多くあります。

フィードバックを送信

Bazel を使用していると、改善できる点が見つかることがあります。次のような場合は、問題を報告してご協力ください。

  • Bazel がクラッシュした場合、または bazel clean を使用してのみ解決できるバグが発生した場合
  • ドキュメントが不完全であるか、不明確である。ページの右上にある [問題を作成] リンクを使用して、表示しているページから問題を報告することもできます。
  • エラー メッセージを改善できる。

コミュニティに参加する

Bazel コミュニティには、次の方法で参加できます。

コードを投稿する

Bazel は大規模なプロジェクトであり、Bazel ソースコードの変更は困難な場合があります。

Bazel エコシステムには、次の方法で貢献できます。

  • pull リクエストを送信してルール メンテナーを支援します。
  • 新しいルールを作成してオープンソース化する。
  • Bazel 関連ツール(移行ツールなど)への貢献。
  • 他の IDE やツールとの Bazel 統合の改善。

変更を行う前に、GitHub の問題を作成するか、bazel-discuss@ にメールを送信してください。

最も役立つ貢献は、バグの修正や機能の追加です(スタイル、リファクタリング、クリーンアップの変更とは異なります)。変更には、下位互換性、移植性、メモリ使用量とパフォーマンスへの影響を考慮したテストとドキュメントを含める必要があります。

変更を送信する方法については、パッチの承認プロセスをご覧ください。

Bazel のコードの説明

Bazel には、複数の場所にコードがある大規模なコードベースがあります。詳しくは、コードベース ガイドをご覧ください。

Bazel は次のように構成されています。

  • クライアント コードは src/main/cpp にあり、コマンドライン インターフェースを提供します。
  • プロトコル バッファは src/main/protobuf にあります。
  • サーバーコードは src/main/javasrc/test/java にあります。
    • コアコード。主に SkyFrame といくつかのユーティリティで構成されています。
    • 組み込みルールは com.google.devtools.build.lib.rulescom.google.devtools.build.lib.bazel.rules にあります。まず、ルール作成の課題をご覧ください。
  • Java ネイティブ インターフェースは src/main/native にあります。
  • 言語サポート用のさまざまなツールについては、Bazel のコンパイル セクションのリストをご覧ください。

Bazel のソースコードを検索する

Bazel のソースコードをすばやく検索するには、Bazel コード検索を使用します。Bazel のリポジトリ、ブランチ、ファイルを操作できます。履歴、差分、blame 情報を表示することもできます。詳細については、Bazel コード検索ユーザーガイドをご覧ください。