Karl Dubost, Chris Peterson a Ali Beyad upozornili na blogu Mozilla Hacks na blížící se potenciální problém. Během několika měsíců se totiž číslo verze webových prohlížečů Chrome a Firefox přehoupne přes stovku, což může na některých webech způsobit problémy. Poslední stabilní verze Chrome má nyní číslo 98, v případě Firefoxu je aktuální verze s číslem 97.
Varování je určeno především vývojářům webových stránek, které nesprávným způsobem zpracovávají číslo verze prohlížeče z řetězce user-agent. Tento řetězec identifikuje webový prohlížeč, jeho verzi, operační systém a podporované technologie. Například aktuální Chrome odesílá informaci: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.82 Safari/537.36.
Tříciferné číslo verze může být problém
V srpnu 2021 zahájila Mozilla experiment s cílem zjistit, zda tříciferné číslo verze Firefoxu nezpůsobí problémy s webovými stránkami. Brzy následoval Google s podobným experimentem pro Chrome 100. V obou případech se ukázalo, že některé weby při analýze řetězce user-agent obsahujícího třímístné číslo nefungovaly správně.
Od té doby Mozilla sleduje na webech chyby způsobené změnou verze na číslo 100. Problémy zjistila například na stránkách HBO Go, Bethesda, Yahoo, Slack a dále na webech vytvořených nástrojem pro tvorbu webových stránek Duda. Nejčastěji se jednalo o potíže, kdy web uváděl, že prohlížeč není podporován, až po problémy s uživatelským rozhraním, které ovlivňovaly fungování stránek.
„Bez jednotné specifikace, kterou by bylo možné dodržovat, mají různé prohlížeče různé formáty pro řetězec user-agent. Je možné, že některé parsovací knihovny mohou mít pevně zakódované předpoklady nebo chyby, které neberou v úvahu třímístná hlavní čísla verzí,“ vysvětluje Mozilla v příspěvku na blogu.
Vývojáři připravili nouzové řešení
Naštěstí nic nebývá tak horké, jak se to uvaří – vývojáři mnoha používaných knihoven vylepšili logiku parsování již před několika lety, když webové prohlížeče přešly na dvoumístná čísla verzí. Proto lze očekávat, že přechod na tříciferná čísla způsobí výrazně méně problémů.
Vydání Google Chrome 100 je plánováno na 29. března tohoto roku, Mozilla Firefox 100 má následovat 3. května. Pokud se vyskytnou problémy, které Mozilla nebo Google nedokážou odstranit před vydáním, mají vývojáři připraven záložní plán, který zajistí, že funkce stránek nebude ovlivněna – prohlížeče prostě budou těmto webům předkládat číslo verze 99.
Magazín Engadget přirovnává celou situaci k problému Y2K, jež se týkal možných chyb souvisejících s formátováním a ukládáním kalendářních dat pro data v roce 2000 a po něm. Mnoho programů v té době totiž reprezentovalo čtyřmístné letopočty pouze posledními dvěma číslicemi, takže rok 2000 byl nerozeznatelný od roku 1900.