Protobuf-yhteensopivuustarkistus
Vertaa kahta .proto-tiedoston versiota ja etsi muutokset, jotka rikkovat jo kirjoitettujen binääri- tai JSON-viestien yhteensopivuuden. Poistetut numerot, tyyppimuutokset, uudelleennimetyt kentät ja enum-muutokset selitetään erikseen.
Hyväksyy kaksi enintään 1 000 000 merkin .proto-tiedostoa, joissa on enintään 200 000 tokenia, 2 000 viestiä ja enumia, 10 000 kenttää viestiä kohti ja 32 sisäkkäisten viestien tasoa. Vertailu suoritetaan selaimessa erillisessä taustasäikeessä. Ladattavina ovat JSON-raportti ja havaintojen CSV-luettelo. Versio, jolla nykyiset tiedot kirjoitettiin. Lisää muutettu tiedosto kohtaan Uusi skeema. Enintään 1 000 000 merkkiä. Tarkista asetukset ennen suorittamista.
Tuloksesi
Protobuf-yhteensopivuustarkistus
- Liitä vanha .proto-tiedosto pääkenttään.
- Liitä uusi versio Uusi skeema -kenttään.
- Suorita tarkistus ja tarkastele havaintoja vakavimmista alkaen.
- Lataa JSON-raportti tai CSV-luettelo.
Mitä on hyvä tietää
Hyväksyy kaksi enintään 1 000 000 merkin .proto-tiedostoa, joissa on enintään 200 000 tokenia, 2 000 viestiä ja enumia, 10 000 kenttää viestiä kohti ja 32 sisäkkäisten viestien tasoa. Vertailu suoritetaan selaimessa erillisessä taustasäikeessä. Ladattavina ovat JSON-raportti ja havaintojen CSV-luettelo.
Vakavuusluokat
Yhteensopivuuden rikkoutuminen tarkoittaa, että vanhat ja uudet ohjelmat voivat tulkita binääriviestit väärin: poistettu kenttä, jonka numeroa ei ole varattu, varatulta alueelta uudelleen käytetty numero, eri binäärikoodauksen tyyppi, muutos yksittäisen ja toistuvan arvon välillä, poistettu viesti tai enum tai uudelleennumeroitu enum-arvo. JSON-yhteensopivuuden rikkoutuminen tarkoittaa, että binääritiedot toimivat yhä, mutta JSON- tai tekstimuoto muuttuu esimerkiksi kentän tai enum-arvon uudelleennimeämisen vuoksi. Varoitukset koskevat muutoksia, jotka toimivat binäärimuodossa mutta voivat katkaista arvoja tai muuttaa niiden tulkintaa, kuten int32-tyypin muuttaminen int64-tyypiksi tai siirrot oneof-ryhmään ja siitä pois.
Vertailun toimintatapa
Viestit ja enumit täsmäytetään niiden nimillä ilman pakettia ja kentät numerolla protobuf-kielioppaan viestityypin päivityssääntöjen mukaisesti. Myös muiden viestien sisään määriteltyjä viestejä ja enumeja verrataan.
Mitä ei tueta
Jäsennin lukee proto2- ja proto3-tiedostoja, joissa on viestejä, enumeja, oneof-ryhmiä, map-kenttiä, sisäkkäisiä tyyppejä, varattuja numeroita ja nimiä sekä kenttäasetuksia. Tuonnit luetellaan, mutta niitä ei ratkaista, joten muiden tiedostojen tyyppejä verrataan vain nimen perusteella. Editions, ryhmät ja laajennukset hylätään. Palvelut ohitetaan.