È stata rilasciata la versione del web browser Firefox 101. Inoltre, è stato previsto un aggiornamento per la versione con supporto a lungo termine — 91.10.0. La versione Firefox 102 è entrata in fase di beta testing, con rilascio previsto per il 28 giugno.
Novità principali in Firefox 101:
- È stata implementata la supporto sperimentale per la terza versione del manifesto di Chrome, che definisce le funzionalità e le risorse disponibili per le estensioni scritte utilizzando l'API WebExtensions. Nella versione implementata in Firefox del manifesto di Chrome è stato aggiunto un nuovo API dichiarativo per il filtraggio dei contenuti, ma a differenza di Chrome, non è stata interrotta la supporto per la vecchia modalità di funzionamento bloccante dell'API webRequest, utile nelle estensioni per bloccare contenuti indesiderati e garantire la sicurezza. Per abilitare la supporto per la terza versione del manifesto in about:config è previsto il parametro "extensions.manifestV3.enabled".
- È stata fornita la possibilità di associare gestori a tutti i tipi MIME richiamati dopo il completamento del download dei file di quel tipo.
- È ora possibile utilizzare un numero arbitrario di microfoni durante le videoconferenze, il che consente, ad esempio, di passare facilmente da un microfono all'altro durante l'evento.
- È stata introdotta la supporto per il protocollo WebDriver BiDi, che permette di utilizzare strumenti esterni per automatizzare operazioni e controllare a distanza il browser; ad esempio, il protocollo consente di testare l'interfaccia attraverso la piattaforma Selenium. Sono supportati sia la componente server che quella client del protocollo, che consentono di inviare richieste e ricevere risposte.
- È stata aggiunta la supporto per la media query prefers-contrast, che consente ai siti di determinare le impostazioni dell'utente per la visualizzazione dei contenuti con contrasto aumentato o ridotto.
- È stato aggiunto il supporto per tre nuove dimensioni dell'area visibile (Viewport) — «small» (s), «large» (l) e «dynamic» (d), insieme alle relative unità di misura — «*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 permettono di legare le dimensioni degli elementi alla dimensione minima, massima e dinamica dell'area visibile in percentuale (la dimensione cambia in base alla visualizzazione, nascondimento e stato della barra degli strumenti).
- Alla classe HTMLInputElement è stato aggiunto il metodo showPicker(), che consente di visualizzare finestre di dialogo pronte per l'inserimento di valori predefiniti nei campi con tipi «date», «month», «week», «time», «datetime-local», «color» e «file», così come per i campi che supportano l'autocompletamento (autofill) e la selezione da un elenco (datalist). Ad esempio, è possibile visualizzare un'interfaccia sotto forma di calendario per la selezione della data o una tavolozza per l'inserimento del 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 tramite il metodo document.createElement('style'), il nuovo API fornisce mezzi per costruire stili attraverso l'oggetto CSSStyleSheet(), offrendo metodi come insertRule, deleteRule, replace e replaceSync.
- Nella console di ispezione della pagina, quando si aggiungono o rimuovono nomi di classi tramite il pulsante '.cls' nella scheda Rule View, è stata implementata l'applicazione interattiva delle raccomandazioni dal suggerimento automatico, che propone una panoramica dei nomi di classi disponibili per la pagina. Mentre si naviga nella lista, le classi selezionate vengono applicate automaticamente per una valutazione visiva delle modifiche apportate.

- Nelle impostazioni della console di ispezione è stata aggiunta una nuova opzione per disabilitare la funzione 'drag to update' nella scheda Rule View, consentendo di modificare le dimensioni di alcune proprietà CSS tramite trascinamento orizzontale del mouse.

- In Firefox per Android è stata aggiunta la supporto della funzione di ingrandimento delle aree dello schermo introdotta a partire da Android 9, che permette ad esempio di ingrandire i contenuti dei moduli web. Sono stati risolti problemi relativi alle dimensioni dei video durante la visualizzazione su YouTube o durante l'uscita dalla modalità picture-in-picture. È stato eliminato il lampeggiamento della tastiera virtuale durante la visualizzazione del menu a comparsa. È stato migliorato il funzionamento del pulsante QR code nella barra degli indirizzi.
Oltre alle novità e alle correzioni di errori, in Firefox 101 sono state risolte 30 vulnerabilità, di cui 25 classificate come critiche. 19 vulnerabilità (con i codici CVE-2022-31747 e CVE-2022-31748) sono dovute a problemi legati alla gestione della memoria, come buffer overflow e accesso a aree di memoria già liberate. Questi problemi potrebbero consentire l'esecuzione di codice malevolo aprendo pagine appositamente progettate. È stata corretta anche una problematica specifica per la piattaforma Windows che consentiva di modificare il percorso del file salvato tramite l'uso di caratteri speciali “%” per sostituire variabili nel percorso, 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 per la localizzazione su piattaforma Linux. Nella interfaccia per gli sviluppatori web, nella scheda Style Editor è stata introdotta la supporto per la filtrazione dei fogli di stile.
Fonte: opennet.ru


