Deprecations and removals in Chrome 63

Joe Medley
Joe Medley

In nearly every version of Chrome, we see a significant number of updates and improvements to the product, its performance, and also capabilities of the Web Platform. This article describes some of the deprecations and removals in Chrome 63, which is in beta as of October 26. Visit the deprecations and removals page for more deprecations and removals from this and previous versions of Chrome. This list is subject to change at any time.

Interface properties with a Promise type no longer throw exceptions

Interface properties and functions that return a promise have been inconsistent about whether error conditions throw exceptions or reject, which would invoke a promise's catch() block. The current version of the IDL spec calls for all promise-returning properties and functions to reject rather than throw an exception.

For example, previously, a call to MediaKeySession.closed would throw a TypeError for illegal invocation if called at the wrong time. With this change such calls must now implement a catch() block.

This change brings Chrome inline with the specification. This change has already been made for functions.

Chromestatus Tracker | Chromium Bug

Remove getMatchedCSSRules()

The getMatchedCSSRules() method is a webkit-only API to get a list of all the style rules applied to a particular element. Webkit has an open bug to remove it. For these reasons it is removed from Chrome in version 63. Developers who need this functionality can look at this Stackoverflow post

Intent to Remove | Chromestatus Tracker | Chromium Bug

Remove RTCRtcpMuxPolicy of "negotiate"

The rtcpMuxPolicy is used by Chrome to specify its preferred policy regarding use of RTP/RTCP multiplexing. In Chrome 57, we changed the default rtcpMuxPolicy to "require" and deprecated "negotiate" for following reasons:

  • Non-muxed RTCP uses extra network resources.
  • Removing "negotiate" will make the API surface simpler, since an "RtpSender"/"RtpReceiver" will then only ever have a single transport.

In Chrome 63, "negotiate" is removed.

Intent to Deprecate | Chromium Bug