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
vesrc/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
vecom.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.