Bazel'a katkıda bulunma

Sorun bildirin Kaynağı göster

Bazel projesine ve ekosistemine birçok şekilde yardımcı olabilirsiniz.

Geri bildirim gönderme

Bazel'i kullanırken iyileştirebileceğiniz noktalar bulabilirsiniz. Şu durumlarda sorunları bildirerek yardımcı olabilirsiniz:

  • Bazel kilitlenir veya yalnızca bazel clean kullanılarak giderilebilen bir hatayla karşılaşırsanız.
  • Dokümanlar eksik veya net değil. Görüntülediğiniz sayfadaki sorunları, sayfanın sağ üst köşesindeki "Sorun oluştur" bağlantısını kullanarak da bildirebilirsiniz.
  • Bir hata mesajı iyileştirilebilir.

Topluluğa katılın

Bazel topluluğuyla şu şekilde etkileşim kurabilirsiniz:

  • Stack Overflow'da soru yanıtlama.
  • Slack'te diğer kullanıcılara yardımcı olma.
  • Dokümanları iyileştirme veya katkıda bulunan örnekler.
  • Deneyiminizi veya ipuçlarınızı bir blogda veya sosyal medyada paylaşmak.

Kodla katkıda bulun

Bazel büyük bir projedir ve Bazel kaynak kodunda değişiklik yapmak zor olabilir.

Bazel ekosistemine aşağıdakileri yaparak katkıda bulunabilirsiniz:

  • Çekme isteklerine katkıda bulunarak kural sorumlularına yardımcı olma.
  • Yeni kurallar oluşturma ve bunları açık kaynaklı hale getirme.
  • Taşıma araçları gibi Bazel ile ilgili araçlara katkıda bulunma.
  • Bazel entegrasyonunu diğer IDE'ler ve araçlarla geliştirme.

Değişiklik yapmadan önce bir GitHub sorunu oluşturun veya bazel-discuss@ adresine e-posta gönderin.

En faydalı katkılar hataları düzeltir veya özellik ekler (stille ilgili, yeniden düzenleme veya "temizlik" değişikliklerinin aksine). Yaptığınız değişiklik; geriye dönük uyumluluk, taşınabilirlik ve bellek kullanımı ile performans üzerindeki etkiyi göz önünde bulundurarak testler ve belgeler içermelidir.

Değişikliğin nasıl gönderileceği hakkında bilgi edinmek için yama kabul sürecini inceleyin.

Bazel'in kod açıklaması

Bazel, birden fazla konumda kod içeren geniş bir kod tabanına sahiptir. Daha ayrıntılı bilgi için kod tabanı kılavuzuna bakın.

Bazel aşağıdaki gibi düzenlenmiştir:

  • İstemci kodu src/main/cpp dilindedir ve komut satırı arayüzünü sağlar.
  • Protokol arabellekleri src/main/protobuf içinde.
  • Sunucu kodu src/main/java ve src/test/java dillerindedir.
    • Çoğunlukla SkyFrame ve bazı yardımcı programlardan oluşan çekirdek kod.
    • Yerleşik kurallar com.google.devtools.build.lib.rules ve com.google.devtools.build.lib.bazel.rules bölümlerindedir. Öncelikle Yazma Kurallarının Zorlukları hakkında bilgi edinebilirsiniz.
  • Java yerel arayüzleri src/main/native dilindedir.
  • Dil desteği için çeşitli araçlar Bazel derleme bölümündeki listede açıklanmıştır.

Bazel'in kaynak kodunu arama

Bazel'in kaynak kodunda hızlı bir şekilde arama yapmak için Bazel Code Search'ü kullanın. Bazel'in depolarında, dallarında ve dosyalarında gezinebilirsiniz. Ayrıca geçmişi, farkları ve suçlanan bilgileri de görüntüleyebilirsiniz. Daha fazla bilgi edinmek için Bazel Code Search Kullanıcı Kılavuzu'na bakın.