サポートの終了と削除(Chrome 59)

ジョー・メドレー
Joe Medley

Chrome のほぼすべてのバージョンで、プロダクト、パフォーマンス、ウェブ プラットフォームの機能に関して、多数の更新と改善が行われています。この記事では、4 月 27 日時点でベータ版の Chrome 59 でのサポート終了と削除について説明します。このリストは随時変更される可能性があります。

一部の blob に対して navigator.sendBeacon() を一時的に無効にする

navigator.sendBeacon() 関数は、Chrome 39 以降で使用できます。元の実装では、関数の data 引数には、型が CORS セーフリストに登録されていない任意の blob を含めることができました。Google は、これは潜在的なセキュリティ上の脅威であると考えていますが、まだ悪用を試みた人はまだいません。この問題に対する合理的な即時修正がないため、一時的に、型が CORS セーフリストに登録されていない blob では sendBeacon() を呼び出せなくなっています。

この変更は Chrome 60 で実装されましたが、Chrome 59 に統合されています。

Chromium のバグ

改訂された仕様に含まれていない機能を WebVR から削除する

Chrome 52 で実装された WebVR の現在の実装には、最終的な仕様には含まれていないメソッドとプロパティがいくつか含まれていました。Chrome 56 以降で開始されたオリジン トライアルでは、これらの機能に対する非推奨のメッセージが追加されました。これらは現在削除中です。これには、次のようなものがあります。

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

テストの目的 | Chromestatus トラッカー | Chromium のバグ | これまでのオリジン トライアルの結果

Service Worker から FileReaderSync を削除する

Service Worker の仕様では、Service Worker がブロックされないようにするために、「Service Worker 内では、いかなる種類の同期リクエストも開始してはならない」という(非規範的な)注意事項があります。Service Worker をブロックすると、制御対象ページからのすべてのネットワーク リクエストがブロックされるためです。ただし、Service Worker では FileReaderSync などの同期 API が使用可能でした。FileReaderSync は Chrome 57 でサポートが終了しました。Chrome 59 では削除されました。

サポート終了の予告 | Chromestatus Tracker | Chromium のバグ

非標準の DeviceOrientation イベントの初期化関数を削除

ここしばらくの間、ブラウザ API では初期化関数からオブジェクト コンストラクタに移る一般的な傾向がありました。最新バージョンの DeviceOrientation Event Specification では、この傾向に沿って DeviceOrientationEventDeviceMotionEvent の両方にコンストラクタが必要です。

Chrome 59 ではこれらのコンストラクタがデフォルトで有効になっているため、従来の初期化関数である initDeviceMotionEvent()initDeviceOrientationEvent() も削除されます。Edge は初期化関数を非推奨とし、Firefox にはすでにコンストラクタが搭載されています。

削除の目的 | Chromium のバグ

マウスオーバーまたは任意のマウスオーバーのメディアクエリから「オンデマンド」値を削除

マウスオーバーまたは任意のマウスオーバーのメディアクエリの「オンデマンド」値は、約 1 年前に仕様から削除されました。そのため、これらのメディアクエリは Chrome 59 で削除されます。

削除の目的 | Chromestatus Tracker | Chromium のバグ

MediaStreamTrack.remote を削除する

Chrome 48 では、Media Capture と Streams API をサポートするため MediaStreamTrack.remote プロパティが追加されました。これは、WebRTC の MediaStreamTrack がリモートソースとローカルソースのどちらからのかを JavaScript で認識できるようにするためです。

以降、このプロパティは仕様から削除されました。Chrome 59 以降、サポートは終了しています。

Chromium のバグ

document.createEvent() を使用した ProgressEvent の作成のサポートを削除しました。

以前のバージョンの DOM 仕様では document.createEvent("ProgressEvent") の実装が必要でした。ただし、使用量は常に少なく、GeckoWebkit からすでにサポートを終了しています。イベント自体は今年 3 月に仕様から削除されました

プラットフォームと最新の仕様に合わせて、ProgressEvent を Chrome から削除しました。

Chromium のバグ

SVGTests.required の機能を削除する

SVG 仕様の最初のバージョンでは、アプリケーションで DOMImplementation.hasFeature を呼び出して、特定の SVG インターフェースがサポートされていることを確認できます。多くの SVG 要素に、同じ情報を返す requiredFeatures 属性が含まれていました。

SVG2 では、DOMImplementation.hasFeature プロパティは常に true を返します。 したがって、requiredFeatures は何も役に立たなくなります。仕様から削除されたため、Chrome 54 でサポートが終了し、削除されました。

削除の目的 | Chromestatus Tracker | Chromium のバグ