Preverjevalnik združljivosti protobuf
Primerjajte dve različici datoteke .proto in poiščite spremembe, ki porušijo sporočila, že zapisana v binarnem formatu ali kot JSON. Odstranjene številke, spremembe tipov, preimenovana polja in spremembe enum-ov so razložene ločeno.
Sprejme dve datoteki .proto, veliki do 1.000.000 znakov vsaka, z največ 200.000 žetoni, 2.000 sporočili in enum-i, 10.000 polji na sporočilo ter 32 ravnmi gnezdenih sporočil. Primerjava se izvede v opravilu v ozadju brskalnika. Prenesete lahko poročilo JSON in seznam ugotovitev CSV. Različica, s katero so bili zapisani obstoječi podatki. Spremenjeno datoteko dodajte v polje Nova shema. Do 1.000.000 znakov. Pred zagonom preglejte nastavitve.
Vaš rezultat
Preverjevalnik združljivosti protobuf
- Prilepite staro datoteko .proto v glavno polje.
- Prilepite novo različico v polje Nova shema.
- Zaženite preverjanje in preglejte ugotovitve, najprej najresnejše.
- Prenesite poročilo JSON ali seznam CSV.
Kaj lahko pričakujete
Sprejme dve datoteki .proto, veliki do 1.000.000 znakov vsaka, z največ 200.000 žetoni, 2.000 sporočili in enum-i, 10.000 polji na sporočilo ter 32 ravnmi gnezdenih sporočil. Primerjava se izvede v opravilu v ozadju brskalnika. Prenesete lahko poročilo JSON in seznam ugotovitev CSV.
Stopnje resnosti
Prelomna sprememba pomeni, da lahko stari in novi programi napačno berejo binarna sporočila: odstranjeno polje, katerega številka ni rezervirana; ponovna uporaba številke iz rezerviranega obsega; tip z drugačnim binarnim zapisom; sprememba med enkratnim in ponavljajočim se poljem; odstranjeno sporočilo ali enum; ali preštevilčena vrednost enum. Prelom združljivosti JSON pomeni, da binarni podatki še delujejo, spremeni pa se zapis JSON ali besedilni zapis, na primer ob preimenovanju polja ali vrednosti enum. Opozorila zajemajo spremembe, ki delujejo v binarnem zapisu, vendar lahko skrajšajo ali drugače razlagajo vrednosti, na primer pretvorbo int32 v int64 ali premik v skupino oneof oziroma iz nje.
Kako poteka primerjava
Sporočila in enum-i se ujemajo po imenu brez paketa, polja pa po številki v skladu s pravili vodnika za jezik protobuf o posodabljanju tipa sporočila. Primerjajo se tudi sporočila in enum-i, ugnezdeni znotraj drugih sporočil.
Kaj ni podprto
Razčlenjevalnik bere datoteke proto2 in proto3 s sporočili, enum-i, oneof, mapami, ugnezdenimi tipi, rezerviranimi številkami in imeni ter možnostmi polj. Uvozi so navedeni, niso pa razrešeni, zato se tipi iz drugih datotek primerjajo samo po imenu. Razčlenjevalnik zavrne protobuf Editions, skupine in razširitve. Storitve se preskočijo.