Primary eng emails
Summary
Temporarily remove the 'audio' and 'video' link rel=preload 'as' types.
Motivation
Issues raised and discussed in
https://crbug.com/735014 and
https://crbug.com/896279 have shown that in practice requests that make use of range or other custom headers do not typically attach to the same resource contained within the preload cache. This affects both audio and video elements along with their corresponding preload types.
Explain why this feature should be removed.
The current behaviour is misleading for developers given that indications are the resource is preloaded and yet the audio/video element typically will re-fetch the resource. This can cause unintended behaviour and potentially even double downloads. These types of requests and their interaction with the preload cache need to be spec'd properly in terms of the Fetch. The issues are tracked as follows:
In order to mitigate the current cache behaviour and send a clear signal to developers about how their page will behave we can remove the audio and video "as" declarations from the link rel=preload implementation until the Fetch spec issue is resolved and implemented.
Interoperability and Compatibility Risk
There is interop concern in that other implementors do support the audio/video types for the as attribute of link rel=preload. However since the current implementation causes these preloaded resources to not be reliably consumed and may only result in an extra download there looks to be a bigger compat issue exposing these types. Given this feature is a perf/optimization one it shouldn't result in site breakage as the audio/video elements would play regardless of the preload happening or not.
Alternative implementation suggestion for web developers
While these types are removed the preload attributes on the audio/video media elements may be suitable to workaround this.
Entry on the feature dashboard
This is a small temporary change that fits under the existing preload feature. It is a subset of the possible types.