Rimozioni e ritiri di API in Chrome 53

Joe Medley
Joe Medley

In quasi tutte le versioni di Chrome, notiamo un numero significativo di aggiornamenti e miglioramenti al prodotto, alle sue prestazioni e anche alle funzionalità della piattaforma web. Questo articolo descrive le modifiche apportate a Chrome 52, che è in versione beta dal 9 giugno. Questo elenco è soggetto a modifiche in qualsiasi momento.

Ritiro graduale degli algoritmi di crittografia basati su DHE

TL;DR: le crittografie basate su DHE vengono rimosse in Chrome 53 per computer perché non sono sufficienti per l'utilizzo a lungo termine. I server devono utilizzare ECDHE, se disponibile, o una crittografia RSA semplice, se non è disponibile.

Intento di rimozione | Tracker di Chromestatus | Bug di Chromium

L'anno scorso abbiamo aumentato la dimensione minima del gruppo Diffie-Hellman TLS da 512 bit a 1024 bit; tuttavia, 1024 bit non è sufficiente per il lungo periodo. Le metriche indicano che circa il 95% delle connessioni DHE rilevate da Chrome utilizza DHE a 1024 bit. Questo, combinato con il modo in cui il DHE viene negoziato in TLS, rende difficile passare oltre i 1024 bit.

Sebbene esista una bozza di specifica che risolva questo problema, si tratta ancora di una bozza e richiede modifiche sia al client sia al server. Nel frattempo, ECDHE è già ampiamente implementato e dispiegato. È necessario eseguire l'upgrade dei server a ECDHE, se disponibile. In caso contrario, assicurati che sia attiva una suite di crittografia RSA senza crittografia.

Le crittografie basate su DHE sono state ritirate a partire da Chrome 51. Il supporto verrà rimosso dalle versioni desktop in Chrome 53.

Avviso di ritiro di FileError

TL;DR: la rimozione dell'interfaccia FileError deprecata è prevista in Chrome 54. Sostituisci i riferimenti a err.code con err.name e err.message.

Intento di rimozione | Tracker di Chromestatus | Bug di Chromium

La versione corrente dello standard File API non contiene l'interfaccia FileError e il relativo supporto è stato ritirato nel 2013. In Chrome 53, questo avviso di ritiro verrà stampato nella console di DevTools:

"FileError" è deprecato e verrà rimosso nella versione 54. Utilizza gli attributi "name" o "message" dell'errore anziché "codice".

Ciò ha effetti diversi a seconda dei contesti.

  • FileReader.error e FileWriter.error saranno oggetti DOMException anziché FileError.
  • Per le chiamate FileSystem asincrone, a ErrorCallback verrà passato FileError.ErrorCode anziché FileError.
  • Per le chiamate FileSystem sincrone verrà generato FileError.ErrorCode anziché FileError.

Questa modifica interessa solo il codice che si basa sul confronto tra il codice dell'istanza di errore (e.code) direttamente con i valori enum di FileError (FileError.NOT_FOUND_ERR e così via). Il codice che esegue test in base a costanti hardcoded (ad esempio e.code === 1) potrebbe non riuscire a segnalare errori errati all'utente.

Fortunatamente, i tipi di errori FileError, DOMError e DOMException condividono tutti le proprietà name e message, che assegnano nomi coerenti ai casi di errore (in altre parole, e.name === "NotFoundError"). Il codice dovrebbe utilizzare queste proprietà, che funzioneranno su tutti i browser e continueranno a funzionare una volta rimossa l'interfaccia FileError stessa.

La rimozione di FileError è prevista per Chrome 54.

Rimuovi l'attributo results per <input type=search>

TL;DR: l'attributo results viene rimosso perché non fa parte di alcuno standard ed è implementato in modo incoerente nei vari browser.

Intento di rimozione | Tracker di Chromestatus | Bug di Chromium

Il valore results viene implementato solo in webkit e si comporta in modo molto incoerente su quelli che lo fanno. Ad esempio, Chrome aggiunge un'icona a forma di lente d'ingrandimento alla casella di immissione, mentre sul desktop Safari controlla il numero di ricerche precedenti che vengono mostrate in un popup mostrato facendo clic sull'icona della lente d'ingrandimento. Poiché non fa parte di alcuno standard, è in fase di ritiro.

Se devi comunque includere l'icona di ricerca nel campo di immissione, dovrai aggiungere alcuni stili personalizzati all'elemento. A tale scopo, puoi includere un'immagine di sfondo e specificare un'area di a capo a sinistra nel campo di immissione.

    input[type=search] {
      background: url(some-great-icon.png) no-repeat scroll 15px 15px;
      padding-left:30px;
    }
 ```   

This attribute has been deprecated since Chrome 51.