È stato rilasciato il web browser Firefox 101. Inoltre, è stato formato un aggiornamento della versione con supporto a lungo termine — 91.10.0. La versione Firefox 102 è entrata in fase di beta testing, il cui rilascio è previsto per il 28 giugno.
Novità principali in Firefox 101:
- Implementato il supporto sperimentale per la terza versione del manifesto Chrome, che definisce le capacità e le risorse disponibili per le estensioni scritte utilizzando le API WebExtensions. Nella versione del manifesto Chrome implementata in Firefox è stato aggiunto un nuovo API dichiarativo per il filtraggio dei contenuti, ma a differenza di Chrome non è stata interrotta la supporto della vecchia modalità di blocco dell'API webRequest, molto richiesta nelle estensioni per bloccare contenuti indesiderati e garantire la sicurezza. Per attivare il supporto della terza versione del manifesto in about:config è previsto il parametro "extensions.manifestV3.enabled".
- Fornita la possibilità di associare gestori a tutti i tipi MIME chiamati dopo il completamento del caricamento di file di un tipo specificato.
- Implementata la possibilità di utilizzare simultaneamente un numero arbitrario di microfoni durante le videoconferenze, il che, ad esempio, consente di passare facilmente tra i microfoni durante l'evento.
- Abilitato il supporto per il protocollo WebDriver BiDi, che consente di utilizzare strumenti esterni per l'automazione delle operazioni e il controllo remoto del browser; ad esempio, il protocollo consente di testare l'interfaccia tramite la piattaforma Selenium. Supportati sia il lato server che quello client del protocollo, che consentono di inviare richieste e ricevere risposte.
- Aggiunto il supporto per la media query prefers-contrast, che consente ai siti di determinare le impostazioni scelte dall'utente per visualizzare contenuti con contrasto elevato o ridotto.
- Aggiunto il supporto per tre nuove dimensioni dell'area visibile (Viewport) — "small" (s), "large" (l) e "dynamic" (d), così come le unità di misura correlate a queste dimensioni — "*vi" (vi, svi, lvi e dvi), "*vb" (vb, svb, lvb e dvb), "*vh" (svh, lvh, dvh), "*vw" (svw, lvw, dvw), "*vmax" (svmax, lvmax, dvmax) e "*vmin" (svmin, lvmin e dvmin). Le unità di misura proposte consentono di collegare la dimensione degli elementi alla dimensione minore, maggiore e dinamica dell'area visibile in proporzione percentuale (la dimensione cambia a seconda della visualizzazione, dell'occultamento e dello stato della barra degli strumenti).
- Nel classe HTMLInputElement è stato aggiunto il metodo showPicker(), che consente di visualizzare i dialoghi predefiniti per la compilazione di valori standard nei campi con i tipi «date», «month», «week», «time», «datetime-local», «color» e «file», nonché per i campi che supportano il completamento automatico (autofill) e le selezioni da elenco (datalist). Ad esempio, è possibile visualizzare un'interfaccia a forma di calendario per selezionare una data o una tavolozza per l'inserimento di un colore.
- È stata aggiunta un'interfaccia di programmazione che consente a un'applicazione JavaScript di creare dinamicamente fogli di stile e manipolare l'applicazione degli stili. A differenza della creazione di fogli di stile utilizzando il metodo document.createElement(‘style’), il nuovo API offre strumenti per costruire stili tramite l'oggetto CSSStyleSheet(), fornendo metodi come insertRule, deleteRule, replace e replaceSync.
- Nella console di ispezione della pagina, quando si aggiungono o si rimuovono nomi di classi tramite il pulsante «.cls» nella scheda Rule View, è stata implementata l'applicazione interattiva delle raccomandazioni dal suggerimento a discesa del completamento automatico, che offre una panoramica dei nomi di classi disponibili per la pagina. Quando ci si sposta nell'elenco, le classi selezionate vengono applicate automaticamente per una valutazione visiva delle modifiche che esse generano.

- Nelle impostazioni della console di ispezione è stata aggiunta una nuova opzione per disattivare la funzionalità «drag to update» nella scheda Rule View, che consente di modificare le dimensioni di alcune proprietà CSS mediante il trascinamento orizzontale con il mouse.

- In Firefox per Android è stata aggiunta la supporto della funzione di ingrandimento delle aree dello schermo fornita a partire da Android 9, che consente, ad esempio, di ingrandire il contenuto dei moduli web. Sono stati risolti i problemi con le dimensioni dei video durante la visione su YouTube o quando si esce dalla modalità immagine nell'immagine. È stato eliminato il lampeggiamento della tastiera virtuale durante la visualizzazione del menu a comparsa. È stata migliorata la visualizzazione del pulsante QR code nella barra degli indirizzi.
Oltre alle novità e alla correzione di errori in Firefox 101, sono state risolte 30 vulnerabilità, di cui 25 classificate come pericolose. 19 vulnerabilità (classificate come CVE-2022-31747 e CVE-2022-31748) sono dovute a problemi di gestione della memoria, come overflow di buffer e accesso a aree di memoria già liberate. Questi problemi potrebbero consentire l'esecuzione di codice dannoso aprendo pagine appositamente create. È stata anche corretta un'anomalia specifica della piattaforma Windows, che consentiva di modificare il percorso del file salvato tramite l'uso di caratteri speciali "%" per il recupero di variabili come %HOMEPATH% e %APPDATA%.
Tra le novità della versione beta di Firefox 102 spiccano il miglioramento della visualizzazione dei documenti PDF in modalità ad alto contrasto e la possibilità di utilizzare il servizio DBus Geoclue su Linux per la geolocalizzazione. Nell'interfaccia per gli sviluppatori web, nella scheda Style Editor, è stata introdotta la supporto per il filtraggio delle tabelle di stile.
Fonte: opennet.ru


