rilascio del browser web , e inoltre Firefox 68.1 per la piattaforma Android. Inoltre, sono stati rilasciati aggiornamenti con supporto a lungo termine e (il ramo ESR 60.x non verrà più aggiornato, si consiglia di passare al ramo 68.x). A breve, il ramo Firefox 70 passerà alla fase di rilascio, prevista per il 22 ottobre.
:
- Nella modalità di blocco predefinita del contenuto indesiderato sono state aggiunte funzionalità per ignorare i cookie di tutti i sistemi di tracciamento e per bloccare le inserzioni JavaScript che effettuano il mining di criptovalute. Il codice per il mining aumenta notevolmente il carico sulla CPU del sistema dell'utente e viene generalmente inserito nei siti a seguito di attacchi hacker o utilizzato su siti discutibili come metodo di monetizzazione.
In precedenza, questi blocchi venivano attivati solo nella modalità di blocco rigorosa, che ora ha senso attivare solo se si desidera bloccare i metodi («browser fingerprinting»). Il blocco è effettuato tramite un elenco di .Quando un sito viene bloccato, viene visualizzato un simbolo a forma di scudo nella barra degli indirizzi, e nel menu contestuale è possibile vedere quali cookie sono stati bloccati per il tracciamento. Nel medesimo menu è possibile disattivare selettivamente il blocco per siti specifici.
- Le funzionalità di blocco della riproduzione automatica dei contenuti multimediali sono state ampliate. Oltre alla funzione precedentemente aggiunta di disattivazione del suono nei video riprodotti automaticamente, è possibile fermare completamente la riproduzione video, non limitandosi a disattivare il suono. Ad esempio, se in precedenza i video pubblicitari sui siti venivano riprodotti senza audio, in questa nuova modalità non inizieranno nemmeno a essere riprodotti senza un clic esplicito. Per attivare questa modalità, è stato aggiunto un nuovo elemento "Block audio and video" nelle impostazioni di riproduzione automatica (Opzioni > Privacy e Sicurezza > Permessi > Riproduzione automatica), che completa la modalità "Block audio" impostata di default.

La modalità può essere selezionata in base ai singoli siti tramite il menu contestuale, visibile facendo clic sul pulsante «(i)» nella barra degli indirizzi.
- Per gli utenti negli Stati Uniti e nelle versioni "en-US", è stata modificata la disposizione dei riquadri della homepage visualizzati all'apertura di una nuova scheda, e è stato aggiunto il contenuto extra raccomandato dal servizio Pocket. È cambiata la dimensione dei riquadri e il numero di raccomandazioni, con nuove sezioni tematiche proposte (Salute, Scienza, Tecnologia e Intrattenimento);
- Disabilitata di default la possibilità di riprodurre contenuti Flash tramite il plugin Adobe Flash. Delle impostazioni del plugin Adobe Flash Player è stata rimossa l'opzione per l'attivazione permanente di Flash ed è rimasta solo la possibilità di disattivare Flash e attivarlo per siti specifici (attivazione con un click esplicito) senza memorizzare la modalità selezionata. Nelle versioni ESR di Firefox il supporto per Flash rimarrà attivo fino alla fine del 2020;
- di default l'elaborazione dei file e , che consente all'utente di ridefinire lo stile dei siti web o dell'interfaccia di Firefox. Come motivo della disabilitazione predefinita è indicato il lavoro per ridurre il tempo di avvio del browser. La modifica del comportamento tramite userContent.css e userChrome.css viene effettuata molto raramente dagli utenti, e il caricamento dei dati CSS consuma risorse aggiuntive (l'ottimizzazione elimina accessi superflui al disco). Per ripristinare l'elaborazione di userChrome.css e userContent.css in about:config è stata aggiunta l'impostazione "toolkit.legacyUserProfileCustomizations.stylesheets", che verrà attivata automaticamente per gli utenti che già utilizzano userChrome.css o userContent.css;
- Per WebRTC è stata implementata la possibilità di elaborare canali utilizzando diversi codec video, semplificando così la creazione di servizi di videoconferenza in cui i partecipanti possono utilizzare diversi software client;
- Per l'architettura ARM64 è stato implementato il supporto per la compilazione JIT nel motore JavaScript;
- Dai identificatori del browser (navigator.userAgent, navigator.platform e navigator.oscpu) è stata esclusa l'informazione sull'uso della versione a 32 bit di Firefox in un sistema operativo a 64 bit (in precedenza richiesta per Flash, ma lasciava un ulteriore vettore per l'identificazione nascosta dell'utente);
- È stata aggiunta la funzione di visione video in modalità «picture-in-picture», che consente di distaccare il video in una finestra galleggiante che rimane visibile mentre si naviga nel browser. Per visualizzare in questa modalità è necessario fare clic sull'avviso pop-up o nel menu contestuale visualizzato facendo clic con il tasto destro del mouse sul video e selezionare «Picture in picture» (in YouTube, che utilizza il proprio gestore del menu contestuale, è necessario fare doppio clic con il tasto destro del mouse o cliccare tenendo premuto il tasto Shift). Il supporto per questa modalità può essere attivato in about:config mediante l'opzione «media.videocontrols.picture-in-picture.enabled»;
- implementazione di un generatore di password («signon.generation.available» in about:config), che consente di visualizzare un suggerimento con una password affidabile generata automaticamente durante la compilazione di moduli di registrazione;
- Nel gestore delle password possibilità di gestire gli account nel contesto del dominio di primo livello, consentendo di proporre una password salvata per tutti i sottodomini. Ad esempio, la password salvata per login.example.com ora sarà proposta per il completamento automatico nei moduli del sito www.example.com;
- dei processi-gestori, che forniscono al sistema operativo informazioni sui processi con priorità più alta. Ad esempio, al processo di gestione dei contenuti, che gestisce la scheda attiva, verrà assegnata una priorità più alta (più risorse CPU) rispetto al processo associato alle schede in background (se non è in riproduzione video o audio). Questa modifica è attualmente attiva per impostazione predefinita solo per la piattaforma Windows, mentre per gli altri sistemi è necessaria l'attivazione dell'opzione dom.ipc.processPriorityManager.enabled in about-config;
- Attivato API , consentendo di creare estensioni in stile Greasemonkey utilizzando la tecnologia WebExtensions per eseguire script utente nel contesto delle pagine web. Ad esempio, collegando script è possibile modificare l'aspetto e il comportamento delle pagine visualizzate. Questo API è già integrato in Firefox, ma finora era necessario abilitare l'impostazione "extensions.webextensions.userScripts.enabled" in about:config. A differenza delle estensioni esistenti con funzionalità simili che utilizzano la chiamata tabs.executeScript, il nuovo API consente di isolare gli script in ambienti sandbox separati, risolvendo problemi di prestazioni e offrendo la possibilità di gestire diverse fasi di caricamento delle pagine.
- La proprietà navigator.mediaDevices è ora disponibile solo quando la pagina viene aperta in un contesto sicuro (Secure Context), cioè quando è aperta tramite HTTPS, localhost o da un file locale;
- Aggiunti i CSS-proprietà e , che consentono di gestire la visualizzazione dei contenuti che escono dai limiti dei blocchi e degli elementi inline (tagliare la parte finale o mostrare una barra di scorrimento). Le proprietà sono implementate tramite la conversione automatica in overflow-x e overflow-y a seconda della modalità di output del contenuto (dall'alto verso il basso o per righe).
- Per la proprietà CSS è supportato il valore break-spaces;
- È stata implementata la proprietà CSS , che indica che l'elemento e il suo contenuto sono separati dal resto dell'albero DOM;
- È stata aggiunta la proprietà CSS , che consente di determinare se il testo può essere selezionato dall'utente;
- È stata aggiunta la possibilità di stabilire regole @supports per i selettori (
formato "@supports selector(selector-to-test){…}\ - È stata aggiunta la supporto per per le istanze delle classi JavaScript, che consentono di specificare proprietà predefinite, inizializzate al di fuori del costruttore. A breve, è attesa anche la supporto per i campi privati, non visibili all'esterno della classe;
class Product {
name;
tax = 0.2; /*campo pubblico*/
#basePrice = 0; /*приватное поле*/
price;constructor(name, basePrice) {
this.name = name;
this.basePrice = basePrice;
this.price = (basePrice * (1 + this.tax)).toFixed(2);
}
} - È stato aggiunto l'API , che consente di collegare un gestore a cui verranno inviati avvisi riguardo il cambio di dimensione degli elementi specificati nella pagina. La principale differenza tra la nuova API e window.onresize e CSS Media Queries è che è possibile individuare il cambiamento di un elemento specifico nella pagina, anziché dell'intera area visibile, il che consente di reagire cambiando solo quell'elemento senza modificare l'intero contenuto visibile;
- Aggiunta l'API Microtasks, presentata da un metodo , che consente di pianificare, a basso livello, la chiamata di un callback della funzione, aggiungendola alla coda delle microattività;
- Aggiunti nuovi metodi , , , DOMMatrix.fromMatrix(), ;
- Nei header HTTP Access-Control-Expose-Headers, Access-Control-Allow-Methods e Access-Control-Allow-Headers è stata aggiunta la possibilità di specificare la maschera «*» per le richieste senza credenziali;
- Nella console web è stata implementata la raggruppamento degli avvisi sulle attività legate al monitoraggio dei movimenti dell'utente;
- Nella scheda di ispezione dell'attività di rete è stata aggiunta una sezione informativa dettagliata sulle ragioni del blocco delle risorse (CSP, contenuti misti, ecc.), oltre a una colonna facoltativa con l'URL completo;
- Risolto l'avvio del debugger JavaScript. Nella interfaccia about:debugging sono state trasferite le funzionalità di debug remoto. Implementato il supporto per il debug passo-passo delle funzioni asincrone (Async). nuova classe di punti di interruzione, che possono essere collegati all'insorgere di eventi associati al mouse, al touchscreen, all'animazione, al DOM, alle media queries,
worker e così via. - Negli strumenti per sviluppatori è stata aggiunta un'interfaccia per auditare la rappresentazione della pagina, utilizzando del contenuto (ad esempio, visualizzando il testo dall'attributo «alt
invece delle immagini); - Su sistemi macOS con più schede grafiche installate, è stato garantito un passaggio più aggressivo al GPU a risparmio energetico dopo la fine dell'elaborazione del contenuto WebGL. È stata anche aggiunta una protezione contro il passaggio dal GPU a risparmio energetico a quello potente per le chiamate WebGL una tantum. Nelle versioni per macOS è stato implementato anche il monitoraggio del progresso di caricamento dei file tramite l'interfaccia standard del Finder. È iniziata la creazione di versioni di installazione di Firefox nel formato PKG;
- Per Windows 10 con gli aggiornamenti recenti (1903+) è stata aggiunta la supporto per l'estensione Web Authentication HmacSecret tramite Windows Hello per l'autenticazione su siti web senza inserire una password, utilizzando l'impronta digitale, il riconoscimento facciale o un token USB;
- la formazione di nuove versioni di Firefox per Android, ora noto con il nome in codice Fenix, è un nuovo browser per dispositivi mobili che utilizza il motore GeckoView e un insieme di librerie Mozilla Android Components. Correzioni per Firefox per Android saranno rilasciate nel corso dell'anno nell'ambito del ramo ESR di Firefox 68, ad esempio, è già stata rilasciata . Per scaricare il nuovo browser, è necessario utilizzare le versioni di prova
.
Oltre alle novità e alle correzioni di errori in Firefox 69 sono state risolte , di cui solo una (CVE-2019-11751) come critica. Questo problema è specifico per la piattaforma Windows e permette di scrivere un file arbitrario nel sistema quando il browser viene avviato da un'altra applicazione (ad esempio, aprendo un link da un programma di messaggistica si può formare un link in modo tale che l'avvio del browser porti alla creazione di un file di avvio nella cartella ‘Startup’). Il numero di vulnerabilità critiche è diminuito poiché i problemi di memoria, come i buffer overflow e l'accesso a aree di memoria già liberate, ora sono contrassegnati come pericolosi ma non critici. Nella nuova versione sono stati risolti 13 di questi problemi, che potrebbero potenzialmente portare all'esecuzione di codice malevolo aprendo pagine appositamente create.
Fonte: opennet.ru

