Chrome 100 renderà malfunzionanti alcuni siti web: Google al lavoro sul fix
La prima versione di Google Chrome fece la sua prima pubblica apparizione il 2 settembre 2008, inizialmente solo su Window. Oggigiorno è il browser più utilizzato al mondo e dopo circa 13 anni di onorato servizio si appresta a raggiungere la sua centesima versione. Sembra però che il rilascio farà sì che alcuni siti Web non funzionino più, e Google ha iniziato a studiare e testare diverse soluzioni.
Il problema è legato allo User Agent. Ma cos’è lo User Agent? In generale, se un sito web ha bisogno di sapere quale browser l’utente sta utilizzando e quanto esso sia aggiornato, viene controllato il cosiddetto User Agent. Questo è un frammento di testo, una stringa, che il tuo browser allega ad ogni richiesta che effettua, permettendo al sito di conoscere il browser in uso.
L’User Agent rilasiato da Chrome è qualcosa simile a: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36.
Cosa c’entra l’User Agent e la nuova versione di Google Chorme?
Verso la fine dell’User Agent salta all’occhio qualcosa di facilmente riconoscibile, e cioè “Chrome/96.0.4664.45”. Questa parte della stringa fornisce il numero di versione specifico del browser. Normalmente però, ciò che interessa maggiormente alle piattaforme web è conscere il numero di versione principale, che nell’esempio è “96”, che è ciò che generalmente rappresenta l’inserimento di nuove feature e quindi al sito web stesso interessa sapere se il browser in uso supporta una specifica feature che vuole utilizzare o meno.
Secondo Chromium Bug Tracker, i siti Web noti per essere interessati sono principalmente quelli sviluppati con Duda, un kit di web design. Questi siti Web utilizzano tutti lo stesso codice per verificare quale versione di Chrome si sta utilizzando. In particolare, alcuni sviluppatori hanno scelto di leggere solo le prime due cifre dopo “Chrome/” in modo statico invece di leggere fino al punto. Ciò significa che “Chrome/99” sarebbe 10 e “Chrome/100” sarebbe “10”.
Ma non si tratta solo di abilitare qualche feature o meno. Infatti, Duda blocca automaticamente qualsiasi versione di Chrome inferiore alla versione 40, che è stata rilasciata nel lontano 2015. Ciò significa che ogni versione del browser successiva a Chrome 99 verrebbe percepita come versione 10 e quindi bloccata.
Come farà Google Chrome a risolvere questo problema?
Una delle proposte è quella di fissare la prima cifra a 99 e incrementare la seconda serie di cifre. Quindi, invece di includere qualcosa come “Chrome/100.0.1234.56”, includerebbe “Chrome/99.100.1234.56”.
A tal fine, è stato aggiunto un nuovo flag a chrome://flags che consentirà agli sviluppatori web di verificare se vari siti sarebbero interessati o meno da questa modifica della posizione del numero di versione principale di Chrome. Il flag è descritto come: “blocca la versione principale di Chrome nella stringa User-Agent su 99 e forza il numero della versione principale nella posizione della versione secondaria. Questo flag è un piano di backup per interruzioni impreviste dell’M100.”.
Tuttavia, come il flag stesso nota, questa soluzione è considerata un “piano di backup”. La soluzione attuale prevede che Google contatti i singoli sviluppatori in merito al problema imminente con Chrome 100. Finora, l’azienda ha effettivamente avuto un po’ di fortuna con questo sforzo, riuscendo a contattare qualche sviluppatore e risolvere individualmente il problema.