Berkontribusi pada Bazel

Laporkan masalah Lihat sumber Malam · 7,3 · 7,2 · 7,1 · 7,0 · 6,5

Ada banyak cara untuk membantu project dan ekosistem Bazel.

Berikan masukan

Saat menggunakan Bazel, Anda mungkin menemukan hal-hal yang dapat ditingkatkan. Anda dapat membantu dengan melaporkan masalah kapan:

  • Bazel mengalami error atau Anda menemukan bug yang hanya dapat diselesaikan menggunakan bazel clean.
  • Dokumentasi tidak lengkap atau tidak jelas. Anda juga dapat melaporkan masalah dari halaman yang Anda lihat menggunakan opsi "Buat masalah" di sudut kanan atas halaman.
  • Pesan error dapat diperbaiki.

Berpartisipasi dalam komunitas

Anda dapat berinteraksi dengan komunitas Bazel dengan:

Kontribusikan kode

Bazel adalah sebuah proyek besar dan membuat perubahan pada kode sumber Bazel bisa jadi sulit.

Anda dapat berkontribusi pada ekosistem Bazel dengan:

  • Membantu pengelola aturan dengan memberikan kontribusi permintaan pull.
  • Membuat aturan baru dan menjadikannya open source.
  • Berkontribusi pada alat terkait Bazel, misalnya, alat migrasi.
  • Meningkatkan integrasi Bazel dengan IDE dan alat lain.

Sebelum membuat perubahan, buat file GitHub masalah atau kirim email ke bazel-discuss@.

Kontribusi yang paling membantu adalah memperbaiki {i>bug<i} atau menambahkan fitur (bukannya hingga gaya, pemfaktoran ulang, atau "pembersihan" {i>changelog<i}). Perubahan Anda seharusnya menyertakan pengujian dan dokumentasi, dengan mempertimbangkan kompatibilitas mundur, portabilitas, serta dampaknya pada penggunaan dan performa memori.

Untuk mempelajari cara mengirimkan perubahan, lihat proses penerimaan patch.

Deskripsi kode Bazel

Bazel memiliki codebase yang besar dengan kode di beberapa lokasi. Lihat panduan codebase untuk mengetahui detail selengkapnya.

Bazel diatur sebagai berikut:

  • Kode klien ada dalam src/main/cpp dan menyediakan antarmuka command line.
  • Buffering protokol ada di src/main/protobuf.
  • Kode server tersedia dalam bahasa src/main/java dan src/test/java.
    • Kode inti yang sebagian besar terdiri dari SkyFrame dan beberapa utilitas.
    • Aturan bawaan tersedia dalam bahasa com.google.devtools.build.lib.rules dan di dalam com.google.devtools.build.lib.bazel.rules. Anda mungkin ingin membaca tentang Tantangan Aturan Menulis terlebih dahulu.
  • Antarmuka native Java berada di src/main/native.
  • Berbagai alat untuk dukungan bahasa dijelaskan dalam daftar di mengompilasi Bazel.

Menelusuri kode sumber Bazel

Untuk menelusuri kode sumber Bazel dengan cepat, gunakan Penelusuran Kode Bazel. Anda dapat menavigasikan repositori, cabang, dan file. Anda juga bisa melihat histori, perbedaan, dan menyalahkan tidak akurat atau tidak sesuai. Untuk mempelajari lebih lanjut, lihat Panduan Pengguna Bazel Code Search.