Protobuf Uyumluluk Denetleyicisi
Bir .proto dosyasının iki sürümünü karşılaştırıp wire üzerinde veya JSON olarak yazılmış iletileri bozan değişiklikleri bulun. Kaldırılan numaralar, tür değişiklikleri, yeniden adlandırılan alanlar ve enum değişikliklerinin her biri açıklanır.
Her biri en fazla 1.000.000 karakter olan iki .proto dosyası kabul eder; üst sınırlar 200.000 token, 2.000 ileti ve enum, ileti başına 10.000 alan ve iç içe iletilerde 32 düzeydir. Karşılaştırma tarayıcınızın arka plan işçisinde çalışır. JSON raporu ve bulguların CSV listesi indirilebilir. Mevcut verilerin yazıldığı sürüm. Değiştirilmiş dosyayı Yeni şema alanına koyun. En fazla 1.000.000 karakter. Çalıştırmadan önce ayarları gözden geçirin.
Sonucunuz
Protobuf Uyumluluk Denetleyicisi
- Eski .proto dosyasını ana kutuya yapıştırın.
- Yeni sürümü Yeni şema alanına yapıştırın.
- Denetimi çalıştırın ve en ciddi bulgulardan başlayarak inceleyin.
- JSON raporunu veya CSV listesini indirin.
Bilmeniz gerekenler
Her biri en fazla 1.000.000 karakter olan iki .proto dosyası kabul eder; üst sınırlar 200.000 token, 2.000 ileti ve enum, ileti başına 10.000 alan ve iç içe iletilerde 32 düzeydir. Karşılaştırma tarayıcınızın arka plan işçisinde çalışır. JSON raporu ve bulguların CSV listesi indirilebilir.
Önem dereceleri
Bozucu değişiklik, eski ve yeni programların ikili iletileri yanlış okuyabilmesi demektir: numarası rezerve edilmemiş kaldırılmış alan, rezerve edilmiş aralıktan yeniden kullanılan numara, farklı wire kodlamasına sahip tür, tekil ve yinelenen alan arasında değişiklik, kaldırılmış ileti ya da enum veya numarası değiştirilmiş enum değeri. JSON uyumluluğunu bozan değişiklikte ikili veri çalışmaya devam eder ancak JSON ya da metin biçimi, örneğin alanın veya enum değerinin adı değiştiğinde, farklılaşır. Uyarılar; int32'nin int64 olması veya oneof içine ya da dışına taşınma gibi, wire üzerinde çalışsa da değerleri kesebilen ya da farklı yorumlayabilen değişiklikleri kapsar.
Karşılaştırma biçimi
İletiler ve enum'lar paket olmadan adlarına, alanlarsa protobuf dil kılavuzunun ileti türünü güncelleme kurallarına göre numaralarına göre eşleştirilir. Başka iletilerin içine iç içe tanımlanan iletiler ve enum'lar da karşılaştırılır.
Desteklenmeyenler
Ayrıştırıcı; iletiler, enum'lar, oneof, map'ler, iç içe türler, rezerve numara ve adlar ve alan seçenekleri içeren proto2 ve proto3 dosyalarını okur. Imports listelenir ancak çözümlenmez; bu nedenle diğer dosyalardaki türler yalnızca ada göre karşılaştırılır. protobuf Editions, gruplar ve uzantılar reddedilir. Servisler atlanır.