Descontinuações e remoções no Chrome 59

Joe Medley
Joe Medley

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

Desativação temporária de navigator.sendBeacon() para alguns blobs

A função navigator.sendBeacon() está disponível desde o Chrome 39. Conforme implementado originalmente, o argumento data da função pode conter qualquer blob arbitrário cujo tipo não esteja na lista segura do CORS. Acreditamos que essa é uma possível ameaça à segurança, embora ninguém tenha tentado explorá-la. Como NÃO temos uma correção imediata razoável, temporariamente, sendBeacon() não pode mais ser invocado em blobs cujo tipo NÃO está na lista de segurança do CORS.

Embora essa mudança tenha sido implementada no Chrome 60, ela foi mesclada de volta ao Chrome 59.

Bug do Chromium

Remover recursos do WebVR que não estão na especificação revisada

A implementação atual do WebVR, originalmente implementada no Chrome 52, continha vários métodos e propriedades que não estarão na especificação final. Mensagens de descontinuação foram adicionadas para esses recursos no Origin Trial que começou no Chrome 56. Esses recursos estão sendo removidos. Veja alguns exemplos:

  • VRDisplay.getPose()
  • VRDisplay.resetPose()
  • VRDisplay.isConnected
  • VRDisplayCapabilities.hasOrientation
  • VREyeParameters.fieldOfView

Intent to Experiment | Chromestatus Tracker | Chromium Bug | Origin Trial Results so Far

O FileReaderSync foi removido dos service workers.

A especificação do service worker sempre teve a observação (não normativa) de que "qualquer tipo de solicitação síncrona não pode ser iniciado dentro de um service worker", para evitar o bloqueio do service worker, já que bloquear o service worker bloquearia todas as solicitações de rede de páginas controladas. No entanto, APIs síncronas, como FileReaderSync, ainda estavam disponíveis em service workers. FileReaderSync foi suspenso no Chrome 57. Ele será removido no Chrome 59.

Intenção de descontinuação | Rastreador do Chromestatus | Bug do Chromium

Remover funções de inicialização de eventos de DeviceOrientation fora do padrão

Há algum tempo, há uma tendência geral nas APIs do navegador de se afastar das funções de inicialização e se aproximar dos construtores de objetos. A versão mais recente da especificação de eventos de orientação do dispositivo segue essa tendência exigindo construtores para DeviceOrientationEvent e DeviceMotionEvent.

Como o Chrome ativa esses construtores por padrão no Chrome 59, as funções de inicialização legados, initDeviceMotionEvent() e initDeviceOrientationEvent(), também são removidos. O Edge desativou as funções de inicialização, e o Firefox já enviou os construtores.

Intent to remove | Bug do Chromium

O valor "on-demand" foi removido das consultas de mídia de passar o cursor/qualquer passagem do cursor

O valor "sob demanda" para consultas de mídia de passar o cursor/qualquer consulta de mídia de passar o cursor foi removido da especificação há cerca de um ano. Por isso, essas consultas de mídia foram removidas do Chrome 59.

Intent to remove | Chromestatus Tracker | Chromium Bug

Remover MediaStreamTrack.remote

No Chrome 48, a propriedade MediaStreamTrack.remote foi adicionada para oferecer suporte à API Media Capture and Streams com o objetivo de permitir que o JavaScript saiba se um MediaStreamTrack do WebRTC é de uma fonte remota ou local.

Desde então, essa propriedade foi removida da especificação. A partir do Chrome 59, ela não é mais compatível.

Bug do Chromium

A remoção do suporte para a criação de ProgressEvent com document.createEvent()

Versões anteriores da especificação DOM exigiam a implementação de document.createEvent("ProgressEvent"). No entanto, o uso sempre foi baixo, e o suporte já foi removido do Gecko e do Webkit. O evento foi removido da especificação em março deste ano.

Para se adequar à plataforma e à especificação mais recente, ProgressEvent foi removido do Chrome.

Bug do Chromium

Remover recursos SVGTests.required

Na primeira versão da especificação SVG, um aplicativo podia chamar DOMImplementation.hasFeature para verificar se uma interface SVG específica era compatível. Muitos elementos SVG tinham um atributo requiredFeatures que retornava as mesmas informações.

No SVG2, a propriedade DOMImplementation.hasFeature sempre retorna "true". Consequentemente, requiredFeatures não faz mais nada útil. Como ele foi removido da especificação, ele foi descontinuado no Chrome 54 e removido.

Intent to remove | Chromestatus Tracker | Chromium Bug