È stata rilasciata la versione 90 del browser web Firefox. Inoltre, è stato creato un aggiornamento per la branch a lungo termine 78.12.0. La branch Firefox 91 sarà presto trasferita in fase di beta testing, con il rilascio previsto per il 10 agosto.
Novità principali:
- Nella sezione delle impostazioni "Privacy e sicurezza" sono state aggiunte ulteriori opzioni per la modalità "Solo HTTPS", che, se attivata, reindirizza automaticamente tutte le richieste non crittografate alle versioni protette delle pagine ("http://" viene sostituito con "https://"). È stata proposta un'interfaccia per la gestione di un elenco di eccezioni, per i siti da cui è mantenuta la possibilità di utilizzare "http://" senza forzata sostituzione su "https://".

- È stata migliorata l'implementazione del meccanismo SmartBlock, progettato per risolvere i problemi sui siti che si verificano a causa del blocco degli script esterni in modalità di navigazione privata o con l'attivazione del blocco avanzato dei contenuti indesiderati (strict). SmartBlock sostituisce automaticamente gli script di tracciamento con dei placeholder che garantiscono un caricamento corretto del sito. I placeholder sono stati preparati per alcuni script di tracciamento degli utenti popolari, inseriti nella lista Disconnect. Nella nuova versione è stata inclusa la blocco adattivo dei widget di Facebook, collocati su siti di terze parti: di default gli script sono bloccati, ma il blocco viene disattivato se l'utente ha effettuato l'accesso al proprio account Facebook.
- È stata rimossa l'implementazione integrata del protocollo FTP. Quando si tenta di aprire collegamenti con l'identificativo del protocollo "ftp://", il browser tenterà ora di avviare un'applicazione esterna, analogamente a come vengono avviati i gestori "irc://" e "tg://". La ragione per cui il supporto FTP è stato interrotto è l'insicurezza di questo protocollo rispetto alla modifica e all'intercettazione del traffico in transito durante attacchi MITM. Secondo gli sviluppatori di Firefox, non ci sono motivi attuali per utilizzare FTP invece di HTTPS per il caricamento delle risorse. Inoltre, il codice di supporto FTP in Firefox è molto obsoleto, crea problemi di manutenzione e ha una storia di scoperta di numerose vulnerabilità nel passato.
- Salvando una pagina in formato PDF (opzione "Stampa in PDF"), si garantisce che i collegamenti ipertestuali funzionanti vengano mantenuti nel documento.
- Il pulsante «Apri immagine in una nuova scheda» nel menu contestuale è stato modificato per aprire l'immagine in una scheda in background (precedentemente dopo un clic si passava subito a una nuova scheda con l'immagine, mentre ora rimane attiva la vecchia scheda).
- È stato fatto un lavoro per migliorare le prestazioni del rendering software nel sistema di compositing WebRender, che utilizza shader per eseguire operazioni di rendering degli elementi della pagina. Per la maggior parte dei sistemi con schede grafiche obsolete o driver grafici problematici, è stata attivata la modalità di rendering software nel sistema di compositing WebRender (gfx.webrender.software=true in about:config).
- Nelle build per la piattaforma Windows è stata garantita l'applicazione degli aggiornamenti in background, anche quando Firefox non è in esecuzione.
- È stata implementata la possibilità di utilizzare certificati client per l'autenticazione, memorizzati in token hardware o nell'archivio certificati del sistema operativo.
- È stato implementato il supporto per un gruppo di intestazioni HTTP Fetch Metadata (Sec-Fetch-Dest, Sec-Fetch-Mode, Sec-Fetch-Site e Sec-Fetch-User), che consentono di inviare metadati aggiuntivi sulla natura della richiesta (richiesta cross-site, richiesta tramite tag img, richiesta avviata senza azioni dell'utente, ecc.) al fine di adottare misure per proteggere da alcuni tipi di attacchi. Ad esempio, è poco probabile che un link a un gestore per il trasferimento di denaro venga stabilito tramite un tag img, pertanto tali richieste possono essere bloccate senza inviarle all'applicazione. server In JavaScript è stato implementato il supporto per la marcatura dei metodi e dei campi di una classe come privati, dopo di che l'accesso a essi sarà consentito solo all'interno della classe. Per la marcatura, è necessario indicare davanti al nome il simbolo «#»: class ClassWithPrivateField { #privateField; static #PRIVATE_STATIC_FIELD; #privateMethod() { return ‘hello world’; } }
- Nel costruttore Intl.DateTimeFormat è stata aggiunta la proprietà dayPeriod, che consente di visualizzare un'indicazione approssimativa del tempo della giornata (mattina, sera, pomeriggio, notte).
- In JavaScript, negli oggetti Array, String e TypedArray è stato implementato il metodo at(), che consente di utilizzare l'indicizzazione relativa (la posizione relativa è usata come indice dell'array), incluso l'uso di valori negativi rispetto alla fine (ad esempio, «arr.at(-1)» restituirà l'ultimo elemento dell'array).
- In JavaScript, negli oggetti Array, String e TypedArray è stato implementato il metodo at(), che consente di utilizzare l'indicizzazione relativa (la posizione relativa è usata come indice dell'array), incluso l'uso di valori negativi rispetto alla fine (ad esempio, «arr.at(-1)» restituirà l'ultimo elemento dell'array).
- È stato aggiunto il supporto per le proprietà obsolete di WheelEvent — WheelEvent.wheelDelta, WheelEvent.wheelDeltaX e WheelEvent.wheelDeltaY, che permetterà di ripristinare la compatibilità con alcune pagine precedenti, persa dopo il recente rifacimento di WheelEvent.
- Nell'API Canvas, nell'interfaccia CanvasRenderingContext2D, è stato implementato il metodo createConicGradient(), che consente di creare gradienti formati attorno a un punto con coordinate specificate (in aggiunta ai già disponibili gradienti lineari e radial).
- È stato aggiunto il supporto per lo schema URI del protocollo 'matrix', che può essere utilizzato nei gestori di Navigator.registerProtocolHandler() e protocol_handlers.
- Negli strumenti per gli sviluppatori web nella scheda per il monitoraggio delle risposte di rete server (Risposta) è stata implementata l'anteprima dei font caricati.

Fonte: opennet.ru


