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 cleankullanılarak çözülebilecek bir hatayla karşılaşıyorsunuz. - Belgeler eksik veya net değil. Ayrıca, sayfanın sağ üst köşesindeki "Sorun oluştur" bağlantısını kullanarak da sorun bildirebilirsiniz.
- Bir hata mesajı iyileştirilebilir.
Topluluğa katılma
Bazel topluluğuyla etkileşim kurma yolları:
- Stack Overflow'da soruları yanıtlama
- Slack kullanıcılarına destek.
- Dokümanları iyileştirme veya örnekler gönderme
- Deneyiminizi veya ipuçlarınızı bloglarda veya sosyal medyada paylaşma
Kod katkısı
Bazel büyük bir proje olduğundan Bazel kaynak kodunda değişiklik yapmak zor olabilir.
Bazel ekosistemine katkı yapmanın yolları:
- Pull istekleriyle kural yöneticilerine yardımcı olma.
- Yeni kurallar oluşturup açık kaynaklı yapma.
- 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 iyi katkılar, hata düzeltir veya özellik ekler (stil, yeniden düzenleme veya "temizleme" değişikliklerinin aksine). Değişiklik, geriye dönük uyumluluk, taşınabilirlik ve bellek kullanımı ile performans etkisini göz önünde bulunduran test ve dokümantasyon içermelidir.
Değişiklik gönderme hakkında bilgi edinmek için yama kabul sürecini inceleyin.
Bazel'in kod açıklaması
Bazel'ın birçok konumda kod içeren büyük kod tabanı vardır. Ayrıntılar kod tabanı kılavuzundadır.
Bazel şöyle düzenlenmiştir:
- İstemci kodu
src/main/cppiçinde bulunur ve komut satırı arayüzünü sağlar. - Protokol arabellekleri
src/main/protobufiçindedir. - Sunucu kodu
src/main/javavesrc/test/javaiçindedir.- Çoğunlukla SkyFrame ve bazı yardımcı programlardan oluşan temel kod.
- Yerleşik kurallar
com.google.devtools.build.lib.rulesvecom.google.devtools.build.lib.bazel.rulesiçindedir. Önce, Kural Yazmanın Zorlukları hakkında bilgi edinebilirsiniz.
- Java yerel arayüzleri,
src/main/nativeiçindedir. - 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 Code Search ile Bazel kaynak kodunda hızlıca arama yapın. Bazel'in depo, dal ve dosyalarında gezinin. Geçmişi, farklılıkları ve blame bilgilerini de görüntüleyin. Daha fazla bilgi için Bazel Code Search Kullanıcı Kılavuzu'na bakın.