È stato rilasciato il browser web , e anche della versione mobile per la piattaforma Android. Inoltre, è stato rilasciato un aggiornamento con supporto a lungo termine e . A breve, il ramo la versione di Firefox 80, il cui lancio è previsto per il 25 agosto.
:
- Nel gestore delle password è stata aggiunta la possibilità di esportare le credenziali in formato CSV (campi di testo delimitati, che possono essere importati in un foglio di calcolo). Durante l'esportazione, le password vengono salvate in chiaro nel file. In futuro, si prevede anche di implementare una funzione per importare le password da un file CSV precedentemente salvato (si presume che l'utente possa avere bisogno di eseguire il backup e il ripristino delle password salvate o di trasferire le password da un altro browser).
- impostazione per attivare l'isolamento dinamico dei cookie in base al dominio visualizzato nella barra degli indirizzi («, quando gli inserti propri e di terze parti sono determinati in base al dominio di base del sito). L'impostazione è stata proposta nel configuratore nella sezione delle impostazioni di blocco del tracciamento nel menu a discesa dei metodi di blocco dei cookie.
- Sono migliorati gli strumenti di protezione dal tracciamento, che bloccano automaticamente i cookie utilizzati da contatori di terze parti. Per i siti che effettuano tracciamento, Firefox ora svuota quotidianamente i cookie e i dati all'interno degli archivi, sulla base delle liste di sistemi di tracciamento fornite dal servizio Disconnect.me.
- È stata aggiunta una realizzazione preliminare della schermata con impostazioni sperimentali «about:preferences#experimental», che fornisce un'interfaccia per attivare funzionalità sperimentali simile a about:flags in Chrome. Per impostazione predefinita, la schermata non è ancora disponibile e richiede l'attivazione dell'impostazione «browser.preferences.experimental» in about:config. Attualmente, l'unica funzionalità sperimentale disponibile per l'attivazione è il supporto per ««.
- Per i laptop basati su chip AMD sulla piattaforma Windows 10
sistema di compositing WebRender. WebRender è scritto in Rust e consente di ottenere un significativo aumento della velocità di rendering e di ridurre il carico sulla CPU spostando sul GPU le operazioni di rendering del contenuto della pagina, realizzate tramite shader eseguiti nel GPU. In precedenza, WebRender era stato abilitato sulla piattaforma Windows 10 per GPU Intel, APU AMD Raven Ridge, AMD Evergreen e laptop con schede grafiche NVIDIA. Su Linux, WebRender è attualmente per le schede Intel e AMD solo nelle build notturne e non è supportato per le schede NVIDIA. Per forzare l'attivazione, in about:config è necessario abilitare le impostazioni «gfx.webrender.all» e «gfx.webrender.enabled» o avviare Firefox con la variabile d'ambiente MOZ_WEBRENDER=1. - Per gli utenti in Germania, è stata aggiunta una nuova sezione con articoli consigliati dal servizio Pocket nella pagina della nuova scheda, che erano precedentemente proposti agli utenti negli Stati Uniti e nel Regno Unito. La personalizzazione legata alla selezione dei contenuti viene effettuata lato client senza trasmettere informazioni sull'utente a terzi (viene caricato nel browser l'intero elenco dei link consigliati per il giorno corrente, classificato lato utente in base ai dati sulla cronologia delle visite). Per disabilitare i contenuti consigliati di Pocket, è prevista un'impostazione nel configuratore (Firefox Home Content/Recommended by Pocket) e l'opzione «browser.newtabpage.activity-stream.feeds.topsites» in about:config.
- Per i sistemi Linux con Wayland a causa di problemi di stabilità di default viene utilizzato il meccanismo DMABUF per il rendering video in texture. Per attivarlo in about:config è prevista la variabile
«widget.wayland-dmabuf-video-textures.enabled». - Nella pagina about:support è comparsa un nuovo pulsante «Clear Startup cache» per svuotare le cache che influenzano il caricamento del browser. Il pulsante può contribuire a risolvere alcuni problemi che si presentano all'avvio.
- Link con l'attributo target="_blank" nei tag <a> e <area> ora analogamente all'uso dell'attributo rel=»noopener», ovvero sono considerati come pagine non attendibili. Per le pagine aperte tramite questi link non viene impostata la proprietà Window.opener e non viene aperto l'accesso al contesto da cui è stato aperto il link.
- Per gli iframe, nell'attributo sandbox è stata implementata l'opzione «allow-top-navigation-by-user-activation», che consente la navigazione nella pagina genitore da un iframe isolato con un clic esplicito dell'utente sul link, ma vieta i reindirizzamenti automatici. L'opzione è utile per inserire banner negli iframe, consentendo di passare a pubblicità di interesse, bloccando però attività indesiderate (come reindirizzamenti automatici ad altre pagine).
- Sono stati aggiunti nuovi header HTTP (COEP) e (COOP), che consente di attivare una modalità di isolamento cross-origin per un utilizzo sicuro nella pagina di operazioni privilegiate, che possono essere utilizzate per attacchi tramite canali esterni, come Spectre.
- Supporto per l'oggetto restituito (consente di creare array nella memoria condivisa), disabilitato dopo la scoperta di attacchi di tipo Spectre. Per garantire la protezione contro Spectre, l'oggetto SharedArrayBuffer è ora disponibile solo su pagine elaborate in modalità di isolamento cross-origin. Nella modalità di isolamento cross-origin è ora anche permesso utilizzare timer di precisione non limitata con Performance.now().
Per definire tale isolamento, è necessario utilizzare gli header Cross-Origin-Embedder-Policy e Cross-Origin-Opener-Policy menzionati sopra. - È stato implementato il metodo , che restituisce la prima Promise eseguita dall'elenco.
- È stato implementato l'oggetto per definire riferimenti deboli (weak reference) agli oggetti JavaScript, che consentono di mantenere un riferimento all'oggetto senza bloccarne la rimozione da parte del garbage collector.
- Sono stati aggiunti nuovi operatori di assegnazione logica: ««, «" e "«. L'operatore «x ??= y» esegue l'assegnazione solo se «x» assume il valore null o undefined. L'operatore «x ||= y» esegue l'assegnazione solo se «x» ha valore FALSE, mentre in «x &&= y» — TRUE.
- Oggetto , utilizzato per organizzare la sincronizzazione dei lock sui primitivi, può ora essere applicato non solo alla memoria condivisa.
- Nel costruttore è stato aggiunto il supporto per le opzioni dateStyle e timeStyle.
- Nel WebAssembly è stato aggiunto il supporto (per una modellazione più efficiente delle operazioni memcpy e memmove), (Memoria condivisa e Atomics) e (externref).
- Nel debugger JavaScript stack , che consente di monitorare eventi asincroni, timeout e promise. Le catene di chiamate asincrone vengono visualizzate nel debugger insieme allo stack delle chiamate normale, e vengono anche riportate per errori nella console web e richieste nell'interfaccia di ispezione di rete.
- Nella console web è stata implementata la visualizzazione dei codici di stato 4xx/5xx sotto forma di errori, semplificando la loro individuazione nel contesto generale. Per semplificare il debug, è possibile ripetere la richiesta o visualizzare i dettagli sulla richiesta e la risposta.
- Gli errori JavaScript ora vengono visualizzati non solo nella console web, ma anche nel debugger JavaScript con l'evidenziazione della riga di codice relativa all'errore e la visualizzazione di un tooltip con ulteriori informazioni sull'errore.
- Migliorata l'affidabilità dell'apertura dei file sorgente SCSS e CSS-in-JS nell'interfaccia di ispezione. In tutti i pannelli è migliorato il processamento delle corrispondenze con il codice sorgente originale basato su source map.
- Negli strumenti per gli sviluppatori web è stata aggiunta una nuova scheda Application, che fornisce strumenti per l'ispezione e il debug di service worker e manifesti delle web app.
- Nella rete di ispezione sono state unite le schede Messages e Responses.
- Nella modalità di design reattivo (Responsive Design Mode) è stata resa possibile la simulazione di gesti di tocco con il drag & drop e lo scorrimento utilizzando il mouse, se è attivata la modalità di simulazione dei touchscreen.
- sarà l'ultima versione della serie. All'inizio di agosto è previsto il passaggio graduale degli utenti alla nuova edizione, con il nome in codice Fenix e testata con il nome Firefox Preview. Le build di Firefox 79 per Android sulla base di codice Fenix. La nuova edizione il motore GeckoView, costruito sulle tecnologie di Firefox Quantum, e un insieme di librerie , già utilizzate per costruire browser e . GeckoView è una variante del motore Gecko, presentata come una libreria separata, che può essere aggiornata indipendentemente, e Android Components include librerie con componenti standard che garantiscono il funzionamento delle schede, il completamento automatico degli input, suggerimenti di ricerca e altre funzionalità del browser. È richiesto almeno Android 5.0 (il supporto per Android 4.4.4 è stato interrotto). Per default è disabilitato l'accesso a about:config.
Oltre alle novità e alle correzioni di bug in Firefox 79 , delle quali 15 contrassegnate come critiche. 12 vulnerabilità (raccolte sotto ) causati da problemi di gestione della memoria, come overrun del buffer e accesso a aree della memoria già liberate. Questi problemi potrebbero potenzialmente consentire l'esecuzione di codice da parte di un attaccante aprendo pagine appositamente create.
Fonte: opennet.ru
