O lançamento do navegador web Firefox 101 foi concluído. Além disso, uma atualização da ramificação de suporte a longo prazo foi formada — 91.10.0. A ramificação do Firefox 102 entrou em fase de beta-teste, com lançamento previsto para 28 de junho.
Principais novidades do Firefox 101:
- Implementado suporte experimental à terceira versão do manifesto do Chrome, que define as capacidades e recursos disponíveis para extensões desenvolvidas usando a API WebExtensions. Na versão do manifesto do Chrome implementada no Firefox, foi adicionado um novo API declarativa de filtragem de conteúdo, mas, ao contrário do Chrome, o suporte ao antigo modo bloqueador da API webRequest, necessário para extensões que bloqueiam conteúdo indesejado e garantem segurança, não foi interrompido. Para habilitar o suporte à terceira versão do manifesto em about:config, existe o parâmetro "extensions.manifestV3.enabled."
- Foi adicionada a capacidade de vincular manipuladores a todos os tipos de MIME, disparados após a conclusão do download de arquivos do tipo especificado.
- Possibilitada a utilização simultânea de um número arbitrário de microfones durante videoconferências, o que, por exemplo, permite alternar facilmente entre microfones durante o evento.
- Suporte ao protocolo WebDriver BiDi foi incluído, permitindo o uso de ferramentas externas para automação e controle remoto do navegador, como, por exemplo, o protocolo que permite testar a interface usando a plataforma Selenium. Ambas as partes do protocolo, servidor e cliente, são suportadas, permitindo enviar requisições e receber respostas.
- Adicionado suporte à consulta de mídia prefers-contrast, que permite que sites determinem as configurações de exibição de conteúdo com contraste aumentado ou diminuído definidas pelo usuário.
- Suporte a três novos tamanhos de área visível (Viewport) foi adicionado — "small" (s), "large" (l) e "dynamic" (d), assim como as unidades de medida relacionadas a esses tamanhos — "*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). As unidades de medida propostas permitem vincular a dimensão dos elementos ao menor, maior e dinâmico tamanho da área visível em proporção percentual (tamanho muda conforme a exibição, ocultação e estado da barra de ferramentas).
- Foi adicionado ao HTMLInputElement o método showPicker(), que permite exibir diálogos prontos para preencher valores típicos em campos <input> com os tipos 'date', 'month', 'week', 'time', 'datetime-local', 'color' e 'file', além de campos que suportam preenchimento automático (autofill) e seleção de lista (datalist). Por exemplo, é possível mostrar uma interface em forma de calendário para a seleção de datas ou uma paleta para a entrada de cor.
- Foi adicionado uma interface de programação que permite a aplicativos JavaScript criar dinamicamente folhas de estilo e manipular a aplicação de estilos. Diferente da criação de folhas de estilo através do método document.createElement('style'), a nova API fornece recursos para construir estilos através do objeto CSSStyleSheet(), oferecendo métodos como insertRule, deleteRule, replace e replaceSync.
- Na painel de inspeção de página, ao adicionar ou remover nomes de classes através do botão '.cls' na aba Rule View, foi implementada a aplicação interativa de recomendações da sugestão de autocompletar, que oferece uma visão geral dos nomes de classes disponíveis para a página. À medida que se navega pela lista, as classes selecionadas são aplicadas automaticamente para uma avaliação visual das mudanças que elas provocam.

- Nas configurações do painel de inspeção, foi adicionada uma nova opção para desativar a função 'drag to update' na aba Rule View, que permite alterar o tamanho de algumas propriedades CSS arrastando o mouse horizontalmente.

- O Firefox para Android agora suporta a funcionalidade de ampliação de áreas da tela disponível a partir do Android 9, permitindo, por exemplo, aumentar o conteúdo de formulários web. Problemas com o tamanho do vídeo ao assistir YouTube ou ao sair do modo picture-in-picture foram resolvidos. Eliminação de cintilações do teclado virtual ao exibir menus suspensos. A exibição do botão QR code na barra de endereço foi aprimorada.
Além das inovações e correções de bugs, o Firefox 101 resolveu 30 vulnerabilidades, das quais 25 são consideradas críticas. 19 vulnerabilidades (listadas sob CVE-2022-31747 e CVE-2022-31748) foram causadas por problemas de gerenciamento de memória, como estouros de buffer e acessos a áreas de memória já liberadas. Potencialmente, esses problemas podem levar à execução de código malicioso ao abrir páginas especialmente formatadas. Também foi resolvido um problema específico da plataforma Windows que permitia alterar o caminho para o arquivo salvo usando caracteres especiais '%' para substituição em variáveis de caminho, como %HOMEPATH% e %APPDATA%.
Entre as mudanças na versão beta do Firefox 102, destacam-se a melhoria na visualização de documentos PDF em modo de alto contraste e a possibilidade de usar o serviço DBus Geoclue na plataforma Linux para determinar a localização. Na interface para desenvolvedores web, na aba Style Editor, foi adicionada a opção de filtragem de folhas de estilo.
Fonte: opennet.ru


