version: v2 plugins: # YEREL eklentiler kullanılır, uzak (remote:) eklentiler DEĞİL. # # buf'ın uzak eklentileri .proto tanımlarını kod üretimi için # buf.build sunucularına yükler. Bu şema projenin güvenlik sınırıdır # ve yetki modelinin tamamını tarif eder; üçüncü taraf bir servise # gönderilmesi için hiçbir gerekçe yok. # # Kurulum: # go install google.golang.org/protobuf/cmd/protoc-gen-go@v1.36.4 # go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@v1.5.1 - local: protoc-gen-go out: internal/pb opt: paths=source_relative - local: protoc-gen-go-grpc out: internal/pb opt: - paths=source_relative # require_unimplemented_servers=false — kasıtlı ve gRPC # varsayılanının TERSİ. # # Varsayılan (true) ileriye uyumluluk sağlar: sunucular # UnimplementedXxxServer yapısını gömer ve şemaya yeni bir RPC # eklendiğinde derleme kırılmaz — yeni metot sessizce # codes.Unimplemented döner. # # exec.proto bir güvenlik sınırıdır. Oraya ayrıcalıklı bir yetenek # eklenip uygulamasının unutulması, sessiz bir boşluk demektir. # false ile gömme zorunluluğu kalkar; gömmediğimiz için yeni bir RPC # DERLEMEYİ KIRAR ve bilinçli uygulamaya zorlar. # # Bedeli ileriye uyumluluğun kaybı. Kadran'da üç binary birlikte # sürümlenip `kadran bootstrap` ile birlikte kurulduğu için bu bedel # yok sayılabilir; sürüm uyumu ayrıca Protocol sabiti ile denetlenir. - require_unimplemented_servers=false