Bazel'a katkıda bulunma

Sorun bildir Kaynağı görüntüle Nightly · 8.4 · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

Bazel projesine ve ekosistemine yardımcı olmanın birçok yolu vardır.

Geri bildirim sağlama

Bazel'i kullanırken iyileştirilebilecek noktalarla karşılaşabilirsiniz. Aşağıdaki durumlarda sorunları bildirerek yardımcı olabilirsiniz:

  • Bazel kilitleniyor veya yalnızca bazel clean kullanılarak çözülebilecek bir hatayla karşılaşıyorsunuz.
  • Belgeler eksik veya net değil. Ayrıca, görüntülediğiniz sayfada sağ üst köşedeki "Sorun oluştur" bağlantısını kullanarak da sorun bildirebilirsiniz.
  • Bir hata mesajı iyileştirilebilir.

Topluluğa katılın

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

  • Stack Overflow'da soruları yanıtlama
  • Slack'te diğer kullanıcılara yardımcı olma
  • Dokümanları iyileştirme veya örnekler gönderme
  • Örneğin, deneyiminizi veya ipuçlarınızı bir blogda ya da sosyal medyada paylaşma

Kod katkısında bulunma

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

Aşağıdaki yöntemlerle Bazel ekosistemine katkıda bulunabilirsiniz:

  • Pull istekleri göndererek kuralları koruyanlara yardımcı olma
  • Yeni kurallar oluşturup bunları açık kaynaklı hale getirme
  • Bazel ile ilgili araçlara (ör. taşıma araçları) katkıda bulunma
  • Bazel'in diğer IDE'ler ve araçlarla entegrasyonunu iyileştirme.

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

En faydalı katkılar, hataları düzeltir veya özellikler ekler (stil, yeniden düzenleme veya "temizleme" değişikliklerinin aksine). Değişikliğinizde, geriye dönük uyumluluk, taşınabilirlik, bellek kullanımı ve performans üzerindeki etki göz önünde bulundurularak testler ve dokümanlar yer almalıdır.

Değişiklik gönderme hakkında bilgi edinmek için yama kabul sürecine bakın.

Bazel'in kod açıklaması

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

Bazel şu şekilde düzenlenir:

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

Bazel'in kaynak kodunda arama yapma

Bazel'in kaynak kodunda hızlıca arama yapmak için Bazel Kod Arama'yı kullanın. Bazel'in depolarında, dallarında ve dosyalarında gezinebilirsiniz. Ayrıca geçmişi, farklılıkları ve yazar bilgilerini de görüntüleyebilirsiniz. Daha fazla bilgi için Bazel Code Search Kullanıcı Kılavuzu'na bakın.