Descontinuações e remoções de APIs no Chrome 53

Joe Medley
Joe Medley

Em quase todas as versões do Chrome, observamos um número significativo de atualizações e melhorias no produto, no desempenho e nos recursos da plataforma da Web. Este artigo descreve as mudanças no Chrome 52, que está na versão Beta desde 9 de junho. Essa lista está sujeita a mudanças a qualquer momento.

Os códigos baseados em DHE estão sendo descontinuados

Resumo:as cifras baseadas em DHE foram removidas do Chrome 53 para computador porque não são suficientes para uso a longo prazo. Os servidores precisam usar ECDHE, se disponível, ou uma criptografia RSA simples, se não estiver.

Intent to remove | Chromestatus Tracker | Chromium Bug

No ano passado, aumentamos o tamanho mínimo do grupo TLS Diffie-Hellman do Chrome de 512 bits para 1.024 bits. No entanto, 1.024 bits não é suficiente para o longo prazo. As métricas informam que cerca de 95% das conexões DHE encontradas pelo Chrome usam o DHE de 1024 bits. Isso, combinado com a forma como o DHE é negociado no TLS, dificulta a migração para além de 1024 bits.

Embora haja uma especificação de rascunho que corrige esse problema, ela ainda é um rascunho e requer mudanças no cliente e no servidor. Enquanto isso, o ECDHE já está amplamente implementado e implantado. Os servidores precisam fazer upgrade para ECDHE, se disponível. Caso contrário, verifique se um pacote de criptografia RSA simples está ativado.

As cifras baseadas em DHE foram descontinuadas desde o Chrome 51. O suporte está sendo removido do Chrome 53 para computadores.

Aviso de descontinuação do FileError

Resumo:a interface FileError descontinuada será removida no Chrome 54. Substitua as referências a err.code por err.name e err.message.

Intent to remove | Chromestatus Tracker | Chromium Bug

A versão atual do padrão da API File não contém a interface FileError, e o suporte a ela foi descontinuado em 2013. No Chrome 53, esse aviso de descontinuação será impresso no console do DevTools:

O uso de "FileError" foi descontinuado e ele será removido na versão 54. Use os atributos "name" ou "message" do erro em vez de "code".

Isso tem efeitos diferentes em contextos diferentes.

  • FileReader.error e FileWriter.error serão objetos DOMException em vez de FileError.
  • Para chamadas FileSystem assíncronas, o ErrorCallback vai receber FileError.ErrorCode em vez de FileError.
  • Para chamadas FileSystem síncronas, o FileError.ErrorCode será gerado em vez de FileError.

Essa mudança só afeta o código que depende da comparação do código da instância de erro (e.code) diretamente com os valores de tipo enumerado FileError (FileError.NOT_FOUND_ERR etc.). O código que testa constantes codificadas (por exemplo, e.code === 1) pode falhar ao informar erros incorretos ao usuário.

Felizmente, os tipos de erro FileError, DOMError e DOMException compartilham as propriedades name e message, que fornecem nomes consistentes para casos de erro (ou seja, e.name === "NotFoundError"). O código deve usar essas propriedades, que vão funcionar em todos os navegadores e continuar funcionando depois que a própria interface FileError for removida.

A remoção de FileError é prevista para o Chrome 54.

Remover o atributo de resultados de <input type=search>

Resumo:o atributo results está sendo removido porque não faz parte de nenhum padrão e é implementado de forma inconsistente nos navegadores.

Intent to remove | Chromestatus Tracker | Chromium Bug

O valor results é implementado apenas no WebKit e se comporta de maneira muito inconsistente nos navegadores que o implementam. Por exemplo, o Chrome adiciona um ícone de lupa à caixa de entrada, enquanto no Safari para computador, ele controla quantas pesquisas anteriores são mostradas em um pop-up clicando no ícone de lupa. Como ele não faz parte de nenhum padrão, ele está sendo descontinuado.

Se você ainda precisar incluir o ícone de pesquisa no campo de entrada, será necessário adicionar um estilo personalizado ao elemento. Para fazer isso, inclua uma imagem de plano de fundo e especifique um padding à esquerda no campo de entrada.

    input[type=search] {
      background: url(some-great-icon.png) no-repeat scroll 15px 15px;
      padding-left:30px;
    }
 ```   

This attribute has been deprecated since Chrome 51.