Protobufi ühilduvuse kontrollija
Võrrelge .proto faili kaht versiooni ja leidke muudatused, mis rikuvad juba binaarvormingus või JSON-ina kirjutatud sõnumeid. Eemaldatud numbrid, tüübimuutused, ümbernimetatud väljad ja loenditüüpide muutused selgitatakse eraldi.
Võtab vastu kaks .proto faili, kumbki kuni 1 000 000 märki, kuni 200 000 tokeni, 2 000 sõnumi ja loenditüübi, 10 000 väljaga sõnumi kohta ning 32 pesastatud sõnumitasemega. Võrdlus toimub teie brauseri taustatöötajas. Alla saab laadida JSON-aruande ja leidude CSV-loendi. Versioon, millega olemasolevad andmed kirjutati. Pange muudetud fail väljale Uus skeem. Kuni 1 000 000 tähemärki. Vaadake seaded enne käivitamist üle.
Sinu tulemus
Protobufi ühilduvuse kontrollija
- Kleepige vana .proto fail põhiväljale.
- Kleepige uus versioon väljale Uus skeem.
- Käivitage kontroll ja vaadake leiud üle, alustades kõige tõsisematest.
- Laadige alla JSON-aruanne või CSV-loend.
Mida tasub teada
Võtab vastu kaks .proto faili, kumbki kuni 1 000 000 märki, kuni 200 000 tokeni, 2 000 sõnumi ja loenditüübi, 10 000 väljaga sõnumi kohta ning 32 pesastatud sõnumitasemega. Võrdlus toimub teie brauseri taustatöötajas. Alla saab laadida JSON-aruande ja leidude CSV-loendi.
Tõsidusastmed
Ühilduvuse katkemine tähendab, et vanad ja uued programmid võivad binaarsõnumeid valesti lugeda: eemaldatud väli reserveerimata numbriga, reserveeritud vahemikust taaskasutatud number, teistsuguse binaarkodeeringuga tüüp, muutus üksikväärtuselise ja korduva vahel, eemaldatud sõnum või loenditüüp või ümbernummerdatud loendiväärtus. JSON-ühilduvuse katkemisel töötab binaarandmestik endiselt, kuid JSON- või tekstivorming muutub, näiteks välja või loendiväärtuse ümbernimetamisel. Hoiatused hõlmavad binaarvormingus toimivaid muutusi, mis võivad väärtusi kärpida või teisiti tõlgendada, näiteks int32 muutmine int64-ks või oneof-rühma ja sealt välja viimine.
Võrdlemise viis
Sõnumid ja loenditüübid sobitatakse paketinimeta nime ning väljad numbri järgi, järgides protobufi keelejuhendi sõnumitüübi uuendamise reegleid. Võrreldakse ka teiste sõnumite sisse pesastatud sõnumeid ja loenditüüpe.
Mida ei toetata
Parser loeb proto2 ja proto3 faile, mis sisaldavad sõnumeid, loenditüüpe, oneof-rühmi, map-välju, pesastatud tüüpe, reserveeritud numbreid ja nimesid ning väljasuvandeid. Impordid loetletakse, kuid neid ei lahendata, seega võrreldakse teiste failide tüüpe ainult nime järgi. Editions, groups ja extensions lükatakse tagasi. Teenused jäetakse vahele.