TOML validētājs
Validējiet TOML failus, piemēram, Cargo.toml, pyproject.toml vai Hugo un Netlify iestatījumus, pirms to dēļ neizdodas būvējums. Validētājs parsē ievadi atbilstoši TOML specifikācijai un ziņo par pirmo kļūdu, norādot tās rindu, kolonnu un parsētāja skaidrojumu, tostarp par dublētām atslēgām, atkārtoti definētām tabulām un neiespējamiem datumiem. Derīgajiem failiem tiek parādīts tabulu un atslēgu skaits, kā arī augstākā līmeņa atslēgas, lai struktūru varētu ātri pārbaudīt.
Bieži uzdotie jautājumi
Ko pārbauda TOML validētājs?
Tas parsē atslēgas, virknes, skaitļus, Būla vērtības, datumus un laikus, masīvus, iekļautās tabulas, tabulas un tabulu masīvus tieši tā, kā tos definē TOML specifikācija. Par kļūdu tiek ziņota jebkura novirze, piemēram, trūkstoša vērtība, virkne bez pēdiņām vai nederīga atkāpšanās secība. Derīgajiem failiem tiek parādīts īss to struktūras kopsavilkums.
Kāda informācija ir iekļauta kļūdas paziņojumā?
Katrā kļūdas paziņojumā ir norādīta rinda un kolonna, kur parsēšana tika pārtraukta, kā arī parsētāja sniegtā informācija, piemēram, nederīgs datums vai mēģinājums atkārtoti definēt jau definētu tabulu vai vērtību. Rindu un kolonnu skaitīšana sākas ar 1. Tiek parādīta tikai pirmā kļūda, jo vēlākās kļūdas bieži rodas tās dēļ.
Kāpēc tiek ziņots, ka atslēga vai tabula ir definēta atkārtoti?
TOML neatļauj tabulā vienu un to pašu atslēgu izmantot divreiz, un tabulas galvene, piemēram, [server], drīkst parādīties tikai vienreiz. Arī punktotas atslēgas, piemēram, server.port, definēšana pēc [server] tabulas, kurā jau iestatīts port, tiek uzskatīta par atkārtotu definēšanu. Lai to novērstu, apvienojiet ierakstus vienuviet.
Kā tiek skaitītas tabulas un atslēgas?
Tabulu skaitā ietilpst visas tabulas zem saknes, arī iekļautās tabulas un katrs tabulu masīva ieraksts. Atslēgu skaitā ietilpst visas atslēgas, kurām ir vērtība, kas nav tabula vai tabulu masīvs, tāpēc virkņu saraksts tiek skaitīts kā viena atslēga. Augstākā līmeņa atslēgās tiek uzskaitīti nosaukumi saknes līmenī — ne vairāk kā 50.
Vai datumi un laiki tiek pārbaudīti?
Jā. Tiek validēti datumi un laiki ar laika nobīdi, lokālie datumi un laiki, kā arī lokālie datumi un lokālie laiki, tostarp neiespējamas vērtības, piemēram, 13. mēnesis vai 25. stunda. Citā formātā rakstīts datums, piemēram, 05/27/1979, nav derīgs TOML datums, un tas jāievieto pēdiņās kā virkne.
Kādas virknes un atkāpšanās secības ir atļautas?
Pamata virknes dubultpēdiņās atbalsta tādas atkāpšanās secības kā \n, \t, \" un \uXXXX, savukārt burtiskās virknes vienpēdiņās saglabā katru rakstzīmi tieši tā, kā tā ierakstīta. Abiem virkņu veidiem ir arī vairākrindu formas ar trim pēdiņām. Nezināma atkāpšanās secība vai nenoslēgta virkne tiek norādīta kopā ar tās atrašanās vietu.
Vai tiek pieņemti ļoti lieli veseli skaitļi?
Jā. Tiek pieņemti veseli skaitļi līdz TOML specifikācijas 64 bitu ierobežojumam, piemēram, 9223372036854775807. Kļūdas ir veseli skaitļi ārpus šī diapazona, sākuma nulles un pasvītrojumi, kas neatrodas starp cipariem.
Vai baitu secības marķieris vai Windows rindu beigas rada problēmas?
Nē. UTF-8 baitu secības marķieris sākumā tiek ignorēts, un tiek pieņemtas gan LF, gan CRLF rindu beigas. Par kļūdām tiek ziņots, ja virknēs ir neekranētas vadības rakstzīmes.
Vai tiek pārbaudīta atslēgu nozīme, kā to darītu Cargo vai Poetry?
Nē, validētājs pārbauda tikai TOML sintaksi un struktūru. Fails var būt derīgs TOML formātā, bet tajā joprojām var būt atslēga, ko Cargo vai Python būvēšanas aizmugursistēma nesaprot. Izmantojiet šo rīku, lai izslēgtu sintakses problēmas, pirms pārbaudāt konkrēto rīku iestatījumus.
Cik liela var būt ievade, un vai to var konvertēt?
Ievadē var būt līdz 5 MiB, bet ligzdotu masīvu un iekļauto tabulu dziļums var sasniegt 64 līmeņus. Lai derīgu TOML pārveidotu par JSON, YAML vai citu formātu, izmantojiet datu formāta pārveidotāju.