Chrome versione 77

Google ha rilasciato una nuova versione del browser Internet Chrome. Allo stesso tempo è disponibile una nuova versione del progetto open source Chromium, le basi di Chrome. La prossima uscita è prevista per il 22 ottobre.

Nella nuova versione:

  • La marcatura separata dei siti con certificati di livello EV (Extended Validation) è stata interrotta. Le informazioni sull'uso dei certificati EV vengono ora visualizzate solo nel menu a discesa mostrato quando si fa clic sull'icona della connessione sicura. Il nome dell'azienda verificata dall'ente di certificazione, a cui è collegato il certificato EV, non verrà più visualizzato nella barra degli indirizzi;
  • Maggiore isolamento dei gestori del sito. Aggiunta protezione per i dati intersito, come cookie e risorse HTTP, ricevuti da siti di terze parti controllati dagli aggressori. L'isolamento funziona anche se un utente malintenzionato scopre un errore nel processo di rendering e tenta di eseguire il codice nel suo contesto;
  • Aggiunta una nuova pagina di benvenuto ai nuovi utenti (chrome://welcome/), che viene visualizzata al posto dell'interfaccia standard per l'apertura di una nuova scheda dopo il primo avvio di Chrome. La pagina ti consente di aggiungere ai segnalibri i servizi Google più diffusi (GMail, YouTube, Maps, News e Translate), allegare scorciatoie alla pagina Nuova scheda, connetterti a un account Google per abilitare Chrome Sync e impostare Chrome come chiamata predefinita sul sistema .
  • Il nuovo menu della scheda, visualizzato nell'angolo in alto a destra, ora ha la possibilità di caricare un'immagine di sfondo, nonché opzioni per selezionare un tema e impostare un blocco con scorciatoie per la navigazione rapida (siti visitati più frequentemente, selezione manuale dell'utente e nascondere i blocchi con scorciatoie). Le impostazioni sono attualmente posizionate come sperimentali e richiedono l'attivazione tramite i flag “chrome://flags/#ntp-customization-menu-v2” e “chrome://flags/#chrome-colors-custom-color-picker”;
  • È stata fornita l'animazione dell'icona del sito nell'intestazione della scheda, segnalando che la pagina è in fase di caricamento;
    Aggiunto il flag "--guest", che consente di avviare Chrome da riga di comando in modalità accesso ospite (senza connettersi a un account Google, senza registrare l'attività del browser su disco e senza salvare la sessione);
  • La pulizia dei flag in chrome://flags, iniziata nell'ultima versione, continua. Invece dei flag, ora è consigliabile utilizzare set di regole per configurare il comportamento del browser;
  • Un pulsante "Invia ai tuoi dispositivi" è stato aggiunto al menu contestuale della pagina, della scheda e della barra degli indirizzi, consentendoti di inviare un collegamento a un altro dispositivo utilizzando Chrome Sync. Dopo aver selezionato un dispositivo di destinazione associato allo stesso account e inviato il collegamento, sul dispositivo di destinazione verrà visualizzata una notifica per aprire il collegamento;
  • Nella versione Android, la pagina con l'elenco dei file scaricati è stata completamente ridisegnata, in cui al posto di un menu a tendina con sezioni di contenuti sono stati aggiunti pulsanti per filtrare l'elenco generale per tipo di contenuto e miniature delle immagini scaricate vengono ora visualizzati su tutta la larghezza dello schermo;
  • Sono state aggiunte nuove metriche per valutare la velocità di caricamento e rendering dei contenuti nel browser, consentendo allo sviluppatore web di determinare la velocità con cui il contenuto principale della pagina diventa disponibile all'utente. Gli strumenti di controllo del rendering offerti in precedenza consentivano di giudicare solo il fatto che il rendering fosse iniziato, ma non la disponibilità della pagina nel suo insieme. Chrome 77 offre una nuova API Largest Contentful Paint, che consente di conoscere il tempo di rendering di elementi di grandi dimensioni (visibili all'utente) nell'area visibile, come immagini, video, elementi di blocco e sfondi di pagina;
  • Aggiunta l'API PerformanceEventTiming, che fornisce informazioni sul ritardo prima della prima interazione dell'utente (ad esempio, pressione di un tasto sulla tastiera o sul mouse, clic o spostamento del puntatore). La nuova API è un sottoinsieme dell'API EventTiming che fornisce informazioni aggiuntive per misurare e ottimizzare la reattività dell'interfaccia;
  • Aggiunte nuove funzionalità per i moduli che semplificano l'utilizzo dei controlli dei moduli non standard (campi di input non standard, pulsanti, ecc.). Il nuovo evento "formdata" rende possibile utilizzare gestori JavaScript per aggiungere dati al modulo quando viene inviato, senza dover memorizzare i dati in elementi di input nascosti.
    La seconda nuova funzionalità è il supporto per la creazione di elementi personalizzati associati a un modulo che agiscono come controlli del modulo integrati, comprese funzionalità come l'abilitazione della convalida dell'input e l'attivazione dei dati da inviare al server. È stata introdotta una proprietà formAssociated per contrassegnare un elemento come componente dell'interfaccia del modulo ed è stata aggiunta una chiamata attachInternals() per accedere a metodi di controllo del modulo aggiuntivi come setFormValue() e setValidity();
  • Nella modalità Origin Trials (funzionalità sperimentali che richiedono un'attivazione separata), è stata aggiunta una nuova API Contact Picker, che consente all'utente di selezionare voci dalla rubrica e trasferire alcuni dettagli su di essi al sito. Al momento della richiesta, viene determinato un elenco di proprietà che devono essere ottenute (ad esempio nome completo, e-mail, numero di telefono). Queste proprietà vengono visualizzate chiaramente all'utente, che prende la decisione finale se trasferire o meno i dati. L'API può essere utilizzata, ad esempio, in un client di posta web per selezionare i destinatari di una lettera inviata, in un'applicazione web con la funzione VoIP per avviare una chiamata a un numero specifico o in un social network per cercare amici già registrati .
    La prova di origine implica la possibilità di lavorare con l'API specificata da applicazioni scaricate da localhost o 127.0.0.1, o dopo la registrazione e la ricezione di un token speciale valido per un tempo limitato per un sito specifico;
  • Per i form è stato implementato l'attributo “enterkeyhint” che permette di definire il comportamento quando si preme il tasto Invio sulla tastiera virtuale. L'attributo può assumere i valori enter, done, go, next, previous, search e send;
  • Aggiunta una regola del dominio dei documenti che controlla l'accesso alla proprietà "document.domain". Per impostazione predefinita, l'accesso è consentito, ma se viene negato, un tentativo di modificare il valore di “document.domain” risulterà in un errore;
  • Una chiamata LayoutShift è stata aggiunta all'API Performance per tenere traccia delle modifiche nella posizione degli elementi DOM sullo schermo.
    La dimensione dell'header HTTP “Referer” è limitata a 4 KB; se viene superato questo valore il contenuto viene troncato al nome a dominio;
  • L'argomento URL nella funzione RegisterProtocolHandler() è limitato all'utilizzo solo degli schemi http:// e https:// e ora non consente gli schemi "data:" e "blob:";
  • Aggiunto il supporto per la formattazione di unità, valute, notazioni scientifiche e compatte al metodo Intl.NumberFormat (ad esempio, "Intl.NumberFormat('en', {style: 'unit', unit: 'meter-per-second'}") ;
  • Aggiunte nuove proprietà CSS overscroll-behavior-inline e overscroll-behavior-block per controllare il comportamento di scorrimento quando viene raggiunto il limite logico dell'area di scorrimento;
  • La proprietà CSS white-space ora supporta il valore break-spaces;
  • I Service Worker hanno aggiunto il supporto per l'autenticazione HTTP Basic e la visualizzazione di una finestra di dialogo standard per l'immissione dei parametri di accesso;
  • La Web MIDI API ora può essere utilizzata solo nel contesto di una connessione sicura (https, file locale o localhost);
  • L'API WebVR 1.1 è stata dichiarata obsoleta, sostituita dalla WebXR Device API, che consente l'accesso a componenti per la creazione di realtà virtuale e aumentata e unifica il lavoro con varie classi di dispositivi, dai caschi fissi per realtà virtuale alle soluzioni basate su dispositivi mobili.
    Negli strumenti per sviluppatori è stata aggiunta la possibilità di copiare le proprietà CSS di un nodo DOM negli appunti tramite il menu contestuale, richiamato facendo clic con il tasto destro su un nodo nell'albero DOM. È stata aggiunta un'interfaccia (Mostra aree di rendering/spostamento layout) per tenere traccia degli spostamenti di layout dovuti alla mancanza di segnaposto per pubblicità e immagini (quando si carica l'immagine successiva, il testo viene spostato verso il basso durante la visualizzazione). Il dashboard di controllo è stato aggiornato alla versione Lighthouse 5.1. Abilitato il passaggio automatico al tema scuro DevTools quando si utilizza un tema scuro nel sistema operativo. Nella modalità di ispezione della rete è stato aggiunto un flag per caricare una risorsa dalla cache di prelettura. Aggiunto supporto per la visualizzazione di messaggi push e notifiche nel pannello Applicazione. Nella console web, durante l'anteprima degli oggetti, ora vengono visualizzati i campi privati ​​delle classi;
  • Nel motore JavaScript V8 è stata ottimizzata la memorizzazione delle statistiche sui tipi di operandi utilizzati nelle diverse operazioni (consente di ottimizzare l'esecuzione di queste operazioni tenendo conto di tipologie specifiche). Per ridurre il consumo di memoria, i vettori type-aware vengono ora inseriti in memoria solo dopo che è stata eseguita una certa quantità di bytecode, eliminando la necessità di ottimizzazioni per funzioni con durata breve. Questa modifica permette di risparmiare l'1-2% di memoria nella versione per sistemi desktop e il 5-6% per dispositivi mobili;
  • Scalabilità migliorata della compilazione in background di WebAssembly: maggiore è il numero di core del processore nel sistema, maggiore sarà il vantaggio derivante dalle ottimizzazioni aggiuntive. Ad esempio, su una macchina Xeon a 24 core, il tempo di compilazione per l'app demo Epic ZenGarden è stato dimezzato;

Oltre alle innovazioni e alle correzioni di bug, la nuova versione elimina 52 vulnerabilità. Molte delle vulnerabilità sono state identificate come risultato di test automatizzati utilizzando gli strumenti AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer e AFL. Un problema (CVE-2019-5870) è contrassegnato come critico, ovvero consente di aggirare tutti i livelli di protezione del browser ed eseguire codice sul sistema al di fuori dell'ambiente sandbox. I dettagli sulla vulnerabilità critica non sono ancora stati resi noti; si sa solo che può portare all'accesso ad un'area di memoria già liberata nel codice di elaborazione dati multimediale. Nell'ambito del programma di pagamento di premi in denaro per la scoperta di vulnerabilità per la versione attuale, Google ha pagato 38 premi del valore di 33500 dollari (un premio da 7500 dollari, quattro premi da 3000 dollari, tre premi da 2000 dollari, quattro premi da 1000 dollari e otto premi da 500 dollari). L'entità delle 18 ricompense non è stata ancora determinata.

Fonte: linux.org.ru

Aggiungi un commento