lançamento do navegador web , além de Firefox 68.1 para a plataforma Android. Além disso, foram formadas atualizações com suporte a longo prazo e (A ramificação ESR 60.x não será mais atualizada, é recomendada a migração para a ramificação 68.x). Em breve, a ramificação do Firefox 70 passará para a fase, com lançamento previsto para 22 de outubro.
:
- O modo padrão de bloqueio de conteúdo indesejado agora inclui funções para ignorar cookies de todos os sistemas de rastreamento de movimentos e bloquear inserções de JavaScript que realizam mineração de criptomoedas. O código para mineração resulta em um aumento significativo da carga no processador do sistema do usuário e, geralmente, é inserido em sites como resultado de invasões ou utilizado em sites duvidosos como método de monetização.
Anteriormente, esses bloqueios eram ativados apenas ao selecionar o modo de bloqueio rigoroso, que agora só faz sentido ser ativado caso deseje bloquear métodos («browser fingerprinting»). O bloqueio é realizado com base em uma lista .Ao bloquear, um ícone de escudo é exibido na barra de endereços, e no menu de contexto é possível ver de quais sites os cookies utilizados para rastreamento foram bloqueados. No mesmo menu, é possível desativar seletivamente o bloqueio para sites específicos.
- Expandiu-se a capacidade de bloquear a reprodução automática de mídia. Além da função anteriormente adicionada para silenciar vídeos reproduzidos automaticamente agora é possível parar completamente a reprodução do vídeo, sem se limitar a desligar o som. Por exemplo, se antes os vídeos publicitários em sites eram exibidos, mas sem som, no novo modo, eles nem começarão a reprodução sem um clique explícito. Para ativar o modo, uma nova opção "Bloquear áudio e vídeo" foi adicionada às configurações de reprodução automática (Opções > Privacidade e Segurança > Permissões > Reprodução Automática), complementando o modo padrão "Bloquear áudio".

O modo pode ser selecionado em relação a sites específicos através do menu de contexto ao clicar no botão "(i)" na barra de endereços.
- Para usuários dos EUA e compilações "en-US", foi alterada a disposição dos blocos na página inicial exibida ao abrir uma nova guia, além de ter sido adicionado o fornecimento de conteúdo adicional recomendado pelo serviço Pocket. O tamanho dos blocos foi modificado e o número de recomendações ajustado, além de terem sido sugeridas novas seções temáticas (Saúde, Ciência, Tecnologia e Entretenimento);
- A reprodução de conteúdo Flash está desativada por padrão através do plugin Adobe Flash. Nas configurações do plugin Adobe Flash Player, a opção para ativar o Flash permanentemente foi removida, restando apenas as opções de desabilitar o Flash e ativá-lo individualmente para sites específicos (ativação com um clique explícito) sem salvar o modo selecionado. No ramo ESR do Firefox, o suporte ao Flash será mantido até o final de 2020;
- por padrão, o processamento de arquivos e , permitindo que o usuário personalize a aparência de sites ou da interface do Firefox. A razão para a desativação padrão é a otimização do tempo de inicialização do navegador. A modificação do comportamento através de userContent.css e userChrome.css é feita raramente pelos usuários, e o carregamento de dados CSS consome recursos adicionais (a otimização elimina acessos desnecessários ao disco). Para reverter o processamento de userChrome.css e userContent.css, foi adicionada uma configuração "toolkit.legacyUserProfileCustomizations.stylesheets" em about:config, que será ativada automaticamente para usuários que já utilizam userChrome.css ou userContent.css;
- Para o WebRTC, foi implementado o suporte ao processamento de canais usando diferentes codecs de vídeo, tornando mais fácil a criação de serviços de videoconferência, em que os participantes podem utilizar diferentes softwares clientes;
- Para a arquitetura ARM64, foi implementado suporte à compilação JIT no motor JavaScript;
- As informações sobre o uso da versão de 32 bits do Firefox em um sistema operacional de 64 bits foram removidas dos identificadores do navegador (navigator.userAgent, navigator.platform e navigator.oscpu) (anteriormente necessário para Flash, mas que deixava um vetor adicional para a identificação oculta do usuário);
- Foi adicionada a função de reprodução de vídeo no modo "imagem em imagem" (Picture-in-Picture), permitindo destacar o vídeo em uma janela flutuante que permanece visível enquanto se navega no navegador. Para visualizar neste modo, é necessário clicar na dica de ferramenta ou no menu de contexto, exibido ao clicar com o botão direito do mouse no vídeo, e selecionar "Picture in picture" (no YouTube, que substitui seu manipulador de menu de contexto, deve-se clicar duas vezes com o botão direito do mouse ou clicar enquanto mantém pressionada a tecla Shift). O suporte para esse modo pode ser ativado em about:config através da opção "media.videocontrols.picture-in-picture.enabled";
- implementação do gerador de senhas ("signon.generation.available" no about:config), que permite mostrar uma dica com uma senha gerada automaticamente e segura ao preencher formulários de registro;
- No gerenciador de senhas a capacidade de processar contas no contexto de domínio de primeiro nível, permitindo sugerir uma única senha armazenada para todos os subdomínios. Por exemplo, a senha armazenada para login.example.com agora será sugerida para preenchimento automático nos formulários do site www.example.com;
- de processos manipuladores que passar ao sistema operacional informações sobre os processos mais prioritários. Por exemplo, um processo de manipulação de conteúdo, que processa a guia ativa, receberá uma prioridade maior (mais recursos de CPU serão alocados) do que um processo relacionado a guias em segundo plano (se não houver vídeo e áudio sendo reproduzidos). A alteração atualmente está ativada por padrão apenas para a plataforma Windows; para os outros sistemas, é necessária a ativação da opção dom.ipc.processPriorityManager.enabled em about-config;
- Ativado API , permitindo criar, com base na tecnologia WebExtensions, complementos no estilo Greasemonkey para executar scripts do usuário no contexto de páginas da web. Por exemplo, por meio da conexão de scripts, é possível alterar a aparência e o comportamento das páginas visualizadas. Essa API já está incluída no Firefox, mas até agora era necessário ativar a configuração “extensions.webextensions.userScripts.enabled” em about:config. Ao contrário dos complementos existentes com funcionalidade semelhante, que usam a chamada tabs.executeScript, a nova API permite isolar scripts em ambientes sandbox separados, resolve problemas de desempenho e permite manipular diferentes etapas do carregamento de páginas.
- A propriedade navigator.mediaDevices agora está disponível apenas ao abrir a página em um contexto seguro (Secure Context), ou seja, ao abrir via HTTPS, através de localhost ou de um arquivo local;
- Foi adicionado propriedades CSS e , permitindo controlar a exibição de conteúdo que excede os limites de blocos e elementos inline (cortar a ponta ou exibir uma barra de rolagem). As propriedades são implementadas por meio da conversão automática em overflow-x e overflow-y, dependendo do modo de saída do conteúdo (de cima para baixo ou linha a linha).
- Para a propriedade CSS foi adicionada a suporte ao valor break-spaces;
- Foi implementada a propriedade CSS , indicando que o elemento e seu conteúdo estão isolados do restante da árvore DOM;
- Adicionada a propriedade CSS , permitindo definir se o texto pode ser selecionado pelo usuário;
- Adicionada a possibilidade de definir regras @supports para seletores (
formato “@supports selector(selector-to-test){…}”), que pode ser aplicado para aplicar CSS de forma seletiva apenas na presença ou ausência de suporte a um determinado seletor no navegador; - Suporte adicionado para instâncias de classes JavaScript, que permitem especificar propriedades previamente definidas, inicializadas fora do construtor. Em breve, também se espera suporte a campos privados, não visíveis fora da classe;
class Product {
name;
tax = 0.2; /*campo público*/
#basePrice = 0; /*приватное поле*/
price;constructor(name, basePrice) {
this.name = name;
this.basePrice = basePrice;
this.price = (basePrice * (1 + this.tax)).toFixed(2);
}
} - Um API foi adicionado , permitindo conectar um manipulador que receberá notificações sobre mudanças no tamanho dos elementos especificados na página. A principal diferença da nova API em relação ao window.onresize e às CSS Media Queries é que é possível identificar a mudança de um elemento específico na página, em vez de toda a área visível, permitindo uma reação apenas a esse elemento, sem alterar todo o conteúdo visível;
- Foi adicionada a API Microtasks, apresentada por um método , que permite agendar a chamada de uma função de callback em um nível baixo, adicionando-a à fila de microtarefas;
- Novos métodos foram adicionados , , , DOMMatrix.fromMatrix(), ;
- Nos cabeçalhos HTTP Access-Control-Expose-Headers, Access-Control-Allow-Methods e Access-Control-Allow-Headers, foi adicionada a possibilidade de especificar uma máscara '*' para requisições sem credenciais;
- No console da web, foi implementada a agrupamento de alertas relativos à atividade de rastreamento de movimentações do usuário;
- No painel de inspeção de atividade de rede, foram adicionadas informações detalhadas sobre as razões para o bloqueio de recursos (CSP, conteúdo misto, etc.), além de uma coluna opcional com o URL completo;
- O inicializador do depurador JavaScript foi acelerado. As funções de depuração remota foram transferidas para a interface about:debugging. O suporte à depuração passo a passo de funções assíncronas (Async) foi implementado. nova classe de pontos de interrupção que podem ser vinculados à ocorrência de eventos relacionados ao mouse, à tela sensível ao toque, animações, DOM, consultas de mídia,
workers, etc. - Nas ferramentas para desenvolvedores, foi adicionada uma interface para auditar a apresentação da página, utilizando do conteúdo (por exemplo, exibindo texto do atributo 'alt
em vez de imagens); - Em sistemas macOS com várias placas gráficas instaladas, foi garantida uma comutação mais agressiva para uma GPU energeticamente eficiente após a conclusão do processamento de conteúdo WebGL. Também foi adicionada proteção contra a mudança de uma GPU energeticamente eficiente para uma GPU poderosa em chamadas únicas de WebGL. Nas compilações para macOS, também foi implementada a exibição do progresso de upload de arquivos através da interface padrão do Finder. O início da formação de pacotes de instalação do Firefox no formato PKG foi iniciado;
- Para o Windows 10 com as últimas atualizações (1903+), foi adicionada a suporte para a extensão Web Authentication HmacSecret através do Windows Hello para autenticação em sites sem a inserção de senha, utilizando impressão digital, reconhecimento facial ou token USB.
- formação de novos lançamentos do Firefox para Android, anteriormente conhecido pelo codinome Fenix, agora um novo navegador para dispositivos móveis, que utiliza o motor GeckoView e o conjunto de bibliotecas Mozilla Android Components. Correções para o Firefox para Android serão lançadas ao longo do ano sob a versão ESR do Firefox 68, por exemplo, uma versão já foi formada . Para baixar o novo navegador, devem ser usadas as compilações de teste.
.
Além das novidades e correções de bugs no Firefox 69, foram resolvidas , das quais apenas uma (CVE-2019-11751) como crítica. Este problema é específico da plataforma Windows e permite gravar um arquivo arbitrário no sistema ao iniciar o navegador a partir de outro aplicativo (por exemplo, ao abrir um link de um programa de mensagens, pode-se formatar o link de tal maneira que a abertura do navegador resulta na criação de um arquivo de inicialização no diretório ‘Startup’). A redução no número de vulnerabilidades críticas deve-se ao fato de que problemas relacionados à memória, como estouros de buffer e acessos a áreas de memória já liberadas, agora são marcados como perigosos, mas não críticos. No novo lançamento, foram resolvidos 13 desses problemas que podem potencialmente levar à execução de código malicioso ao abrir páginas formatadas de maneira específica.
Fonte: opennet.ru

