Chrome 129 Beta

Salvo indicação em contrário, as seguintes mudanças são válidas para a versão Beta mais recente do Chrome lançamento do canal para Android, ChromeOS, Linux, macOS e Windows. Saiba mais sobre os recursos listados aqui nos links fornecidos ou na lista em ChromeStatus.com. O Chrome 129 está na versão Beta desde 21 de agosto de 2024. Você pode baixar mais recente no Google.com para computador ou em Google Play Store no Android.

CSS

Nesta versão, adicionamos dois novos recursos CSS e atualizamos três recursos.

Funções CSS interpolate-size property e calc-size()

A propriedade CSS interpolate-size permite que uma página ative animações e transições de palavras-chave de dimensionamento intrínsecas do CSS, como auto, min-content fit-content, nos casos em que essas palavras-chave podem ser animadas.

A função CSS calc-size() é semelhante a calc(), mas também oferece suporte a operações em exatamente uma palavra-chave com dimensionamento compatível. Atualmente as palavras-chave com dimensionamento compatíveis são auto, min-content, max-content e fit-content. Outras palavras-chave sobre dimensionamento que poderão ser suportadas no futuro incluem stretch (atualmente compatível com o prefixo -webkit-fill-available) e contain Essa função é usada para representar os valores no meio do animações permitidas pela propriedade interpolate-size.

Renomeie o posicionamento âncora de CSS inset-area como position-area.

O CSSWG resolveu renomear essa propriedade de inset-area a position-area. O Chrome 129 envia position-area, o O nome inset-area será removido em uma versão futura.

Posicionamento de âncora do CSS: inset-area() descompactado

Substitui a função inset-area() por valores de área inseridos diretamente em position-try-fallbacks. Por exemplo, em vez de Uso: position-try-fallbacks:inset-area(top) position-try-fallbacks:top.

Atualizar o filtro de pano de fundo do CSS para usar o EdgeMode espelhado

A propriedade CSS backdrop-filter aplica um ou mais filtros ao pano de fundo. de um elemento. O pano de fundo é o conteúdo pintado que está por trás do elemento. Um filtro comum é um desfoque que permite que os designers construam "vidro fosco" caixa de diálogo sobreposições de vídeo, cabeçalhos de navegação translúcidos e muito mais.

Inicialmente, esse recurso era implementado da mesma forma que um desfoque normal, mas a amostragem além das bordas do elemento permitem que as cores das bordas fluam. A foi alterada para exemplos de pixels fora das bordas do pano de fundo duplicando a pixels na borda. No entanto, isso resulta em uma tremulação extrema do conteúdo, entra na borda do pano de fundo. A mudança mais recente da especificação reflete o pano de fundo ao fazer amostragem além da borda, o que permite uma introdução gradual e suave de novas cores nas extremidades, sem excesso de peso em linhas únicas de cor.

APIs Web

Suporte a blobs em canais de dados WebRTC

Implementa RTCDataChannel.send(Blob), e o evento onMessage agora pode opcionalmente receber dados do tipo Blob usando o atributo binaryType.

Além de oferecer suporte ao envio de strings e ArrayBuffers, agora você pode escolher envie um Blob, desde que o tamanho esteja abaixo do transporte SCTP maxMessageSize, conforme indicado no Especificação WebRTC.

Com o atributo binaryType definido como "blob", o atributo de dados do evento onMessage serão do tipo Blob em vez dos ArrayBuffer compatíveis no momento.

Comandos da extensão Compute Pressure WebDriver

Expõe comandos do WebDriver para criar, remover e atualizar a fonte de pressão amostras de fontes de pressão virtuais. Tais fontes de pressão que não dependem suporte a hardware ou sistema operacional e pode ser usado para testes.

Intl.DurationFormat

Fornece um método de formatação de durações, por exemplo, "1h40min30s" que oferece suporte a várias localidades.

API Private Aggregate: mesclagem de contribuições do lado do cliente

Modifica a API Private Aggregate para mesclar as contribuições do histograma com as mesmo bucket e ID de filtragem antes da incorporação na tabela payload criptografado.

A agregação particular limita o número de contribuições que em um único relatório agregável, com contribuições derrubando. Ao mesclar as contribuições sempre que possível, podemos ter utilitário adicional fora do limite. Ignorar a queda de valores excedentes contribuições, então a fusão desses tipos de contribuições não terá nenhum impacto nos resultados finais, como relatórios resumidos.

scheduler.yield()

Fornece um método para atribuir controle ao navegador, que pode ser usado para e dividir tarefas longas. Aguardando a promessa retornada por scheduler.yield() causas a tarefa atual, continuando em uma nova tarefa do navegador. Isso pode ser usado para e melhorar os problemas de capacidade de resposta causados por tarefas longas. As continuação são priorizadas para mitigar os problemas de desempenho das alternativas atuais.

API Web Authentication: métodos de serialização JSON

Os métodos PublicKeyCredential.toJSON() da WebAuthn, parseCreationOptionsFromJSON(), e parseRequestOptionsFromJSON() permitem que os desenvolvedores serializem um WebAuthn resposta em um objeto JSON ou desserializar um objeto de solicitação WebAuthn de seu Representação JSON.

Compatibilidade com o alcance estendido da WebGPU (HDR, na sigla em inglês)

Adiciona parâmetros do mapeamento de tons à configuração de tela da WebGPU e adiciona opções de standard (o comportamento atual de restrição de conteúdo ao SDR) do intervalo da tela) como padrão, e extended (não impondo essa restrição) como um novo comportamento. Isso permite que o conteúdo da WebGPU use a faixa completa de uma tela.

Testes de origem em andamento

No Chrome 129, é possível ativar os seguintes novos testes de origem.

Interface FileSystemObserver

O FileSystemObserver interface notifica sites sobre alterações no arquivo sistema. Os sites observam alterações nos arquivos e diretórios na rede local dispositivo (conforme especificado nos WICG/file-system-access) ou no sistema de arquivos do bucket (conforme especificado em fs.spec.whatwg.org), e são notificado sobre informações básicas de mudança, como o tipo de alteração.

Registre-se no teste de origem do FileSystemObserver.

Descontinuações e remoções

Esta versão do Chrome apresenta as descontinuações e remoções listadas abaixo. Visite ChromeStatus.com para listas de descontinuações planejadas, descontinuações atuais e remoções anteriores.

Esta versão do Chrome descontinua um recurso.

Suspender o uso do 0.0.0.0 para acesso à rede privada

O Chrome vai bloquear o acesso ao endereço IP 0.0.0.0 antes da rede privada Acesso (PNA, na sigla em inglês) em andamento.

O Chrome vai descontinuar o acesso direto a endpoints de rede privada de apps públicos sites como parte Especificação da PNA. Os serviços que detectam no localhost (127.0.0.0/8) são considerados particulares de acordo com à especificação. A proteção PNA do Chrome pode ser ignorada usando o IP o endereço 0.0.0.0 para acessar serviços que detectam no localhost no macOS e Linux.

Isso também pode ser usado em ataques de revinculação do DNS direcionados a um aplicativo da Web. no localhost.

Esta versão do Chrome remove três recursos.

Remover o argumento includeShadowRoots no DOMParser

O argumento includeShadowRoots era um argumento nunca padronizado para o função DOMParser.parseFromString(), que estava lá para permitir a imperativa análise de conteúdo HTML que contém shadow DOM declarativo. Isto foi enviado no Chrome 90 como parte do envio inicial do shadow DOM declarativo.

Agora que uma versão padronizada deste recurso está disponível com o Os métodos setHTMLUnsafe() e parseHTMLUnsafe(), os métodos não padrão O argumento includeShadowRoots será removido. O código deve ser atualizado como da seguinte forma:

Em vez de:

((new DOMParser()).parseFromString(html,'text/html',{includeShadowRoots: true});

Usar:

Document.parseHTMLUnsafe(html);

Remover a serialização declarativa do shadow DOM não padrão

A implementação do protótipo do shadow DOM declarativo continha um método chamado getInnerHTML() é usado para serializar árvores do DOM que contêm raízes paralelas. Essa parte do protótipo não foi padronizado com o restante do shadow DOM declarativo, e, em vez disso, uma substituição foi projetada: getHTML().

Portanto, o método getInnerHTML() antigo está sendo removido do Chrome. Você deve usar getHTML() como um que, em breve, terá interoperabilidade entre vários navegadores.

Remover PointerEvent.getCoalescedEvents() de contextos não seguros

O grupo de trabalho de eventos de ponteiro fez PointerEvent.getCoalescedEvents() restrita a contextos seguros há mais de quatro anos, o que removeu a API dos contextos inseguros. Originalmente, o Chrome enviou o comportamento antigo e não o seguiu a mudança da especificação imediatamente por questões de compatibilidade.

Ele está sendo removido de contextos não seguros porque o uso do Chrome não é seguro contextos acabaram sendo muito baixos.