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. Esta lista está sujeita a alterações 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 detectadas pelo Chrome usam o DHE de 1024 bits. Isso, aliado à forma como o DHE é negociado no TLS, dificulta a transição para 1024 bits.

Embora exista uma especificação de rascunho que corrige esse problema, ela ainda é um rascunho e requer alterações do cliente e do servidor. Enquanto isso, o ECDHE já está amplamente implementado. 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

Texto longo, leia o resumo:a remoção da interface descontinuada FileError é esperada 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 'nome' ou 'mensagem' do erro em vez de 'código'.

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 síncronas FileSystem, 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 do FileError está 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 só é implementado no webkit e se comporta de maneira altamente inconsistente naqueles que o fazem. Por exemplo, o Chrome adiciona um ícone de lupa à caixa de entrada. Já no Safari para computador, ele controla quantas pesquisas anteriores são exibidas em um pop-up exibido ao clicar 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.