Skip to content

Commit 4778d03

Browse files
autonomeddbeck
andauthored
Add Prefetch, Resource Hints and more Fetch keys (#2418)
Co-authored-by: Daniel D. Beck <[email protected]>
1 parent c5d942d commit 4778d03

17 files changed

+159
-17
lines changed

features/draft/spec/prefetch.yml

-9
This file was deleted.

features/fetch.yml

+3
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ status:
66
compute_from: api.fetch
77
compat_features:
88
- api.Headers
9+
- api.Headers.@@iterator
910
- api.Headers.Headers
1011
- api.Headers.append
1112
- api.Headers.delete
@@ -22,6 +23,7 @@ compat_features:
2223
- api.Request
2324
- api.Request.Request
2425
- api.Request.Request.cross_origin_stripped
26+
- api.Request.Request.init_keepalive_parameter
2527
- api.Request.Request.init_referrer_parameter
2628
- api.Request.Request.request_body_readablestream
2729
- api.Request.Request.response_body_readablestream
@@ -36,6 +38,7 @@ compat_features:
3638
- api.Request.credentials
3739
- api.Request.credentials.default_same-origin
3840
- api.Request.destination
41+
- api.Request.duplex
3942
- api.Request.formData
4043
- api.Request.integrity
4144
- api.Request.isHistoryNavigation

features/fetch.yml.dist

+8
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,7 @@ compat_features:
139139
# firefox_android: "44"
140140
# safari: "10.1"
141141
# safari_ios: "10.3"
142+
- api.Headers.@@iterator
142143
- api.Headers.entries
143144
- api.Headers.keys
144145
- api.Headers.values
@@ -360,6 +361,7 @@ compat_features:
360361
# firefox_android: "133"
361362
# safari: "13"
362363
# safari_ios: "13"
364+
- api.Request.Request.init_keepalive_parameter
363365
- api.Request.keepalive
364366
- api.fetch.init_keepalive_parameter
365367

@@ -451,3 +453,9 @@ compat_features:
451453
# chrome_android: "105"
452454
# edge: "105"
453455
- api.Request.Request.request_body_readablestream
456+
457+
# baseline: false
458+
# support:
459+
# chrome: "131"
460+
# edge: "131"
461+
- api.Request.duplex

features/link-rel-dns-prefetch.yml

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
name: '<link rel="dns-prefetch">'
2+
description: The `rel="dns-prefetch"` attribute for the `<link>` HTML element is a hint to the browser that the page or user is likely to request resources from another domain, so the browser should preemptively resolve DNS for the `href` value's domain.
3+
spec: https://html.spec.whatwg.org/multipage/links.html#link-type-dns-prefetch
4+
caniuse: link-rel-dns-prefetch
5+
compat_features:
6+
- html.elements.link.rel.dns-prefetch
+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Generated from: link-rel-dns-prefetch.yml
2+
# Do not edit this file by hand. Edit the source file instead!
3+
4+
status:
5+
baseline: high
6+
baseline_low_date: ≤2020-01-15
7+
baseline_high_date: ≤2022-07-15
8+
support:
9+
chrome: "46"
10+
chrome_android: "46"
11+
edge: ≤79
12+
firefox: "3"
13+
firefox_android: "4"
14+
safari: "5"
15+
safari_ios: "4.2"
16+
compat_features:
17+
- html.elements.link.rel.dns-prefetch

features/link-rel-expect.yml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
name: '<link rel="expect">'
2+
description: The `rel="expect"` attribute for the `<link>` HTML element is a hint to the browser to block rendering until the element that the `href` value references is connected to the document and fully parsed.
3+
spec: https://html.spec.whatwg.org/multipage/links.html#link-type-expect
4+
compat_features:
5+
- html.elements.link.rel.expect

features/link-rel-expect.yml.dist

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# Generated from: link-rel-expect.yml
2+
# Do not edit this file by hand. Edit the source file instead!
3+
4+
status:
5+
baseline: false
6+
support:
7+
chrome: "124"
8+
chrome_android: "124"
9+
edge: "124"
10+
compat_features:
11+
- html.elements.link.rel.expect

features/link-rel-preconnect.yml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
name: '<link rel="preconnect">'
2+
description: The `rel="preconnect"` attribute for the `<link>` HTML element is a hint to the browser that the page or user is likely to request resources from another origin, so the browser should preemptively start a connection to the `href` value's origin.
3+
spec: https://html.spec.whatwg.org/multipage/links.html#link-type-preconnect
4+
compat_features:
5+
- html.elements.link.rel.preconnect

features/link-rel-preconnect.yml.dist

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Generated from: link-rel-preconnect.yml
2+
# Do not edit this file by hand. Edit the source file instead!
3+
4+
status:
5+
baseline: high
6+
baseline_low_date: 2020-01-15
7+
baseline_high_date: 2022-07-15
8+
support:
9+
chrome: "46"
10+
chrome_android: "46"
11+
edge: "79"
12+
firefox: "39"
13+
firefox_android: "39"
14+
safari: "11.1"
15+
safari_ios: "11.3"
16+
compat_features:
17+
- html.elements.link.rel.preconnect

features/link-rel-prefetch.yml

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
name: '<link rel="prefetch">'
2+
description: The `rel="prefetch"` attribute for the `<link>` HTML element is a hint to the browser that the user is likely to navigate to a resource, so the browser should preemptively fetch and cache the resource.
3+
spec: https://html.spec.whatwg.org/multipage/links.html#link-type-prefetch
4+
caniuse: link-rel-prefetch
5+
compat_features:
6+
- api.PerformanceResourceTiming.deliveryType.navigational-prefetch
7+
- html.elements.link.rel.prefetch
8+
- http.headers.Sec-Purpose
9+
- http.headers.Sec-Purpose.prefetch

features/draft/spec/prefetch.yml.dist renamed to features/link-rel-prefetch.yml.dist

+10-8
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Generated from: prefetch.yml
1+
# Generated from: link-rel-prefetch.yml
22
# Do not edit this file by hand. Edit the source file instead!
33

44
status:
@@ -7,19 +7,21 @@ status:
77
compat_features:
88
# baseline: false
99
# support:
10-
# chrome: "110"
11-
# chrome_android: "110"
12-
# edge: "110"
13-
# firefox: "115"
14-
# firefox_android: "115"
15-
- http.headers.Sec-Purpose
10+
# chrome: "8"
11+
# chrome_android: "18"
12+
# edge: "12"
13+
# firefox: "2"
14+
# firefox_android: "4"
15+
- html.elements.link.rel.prefetch
1616

1717
# baseline: false
1818
# support:
1919
# chrome: "110"
2020
# chrome_android: "110"
2121
# edge: "110"
22-
- http.headers.Sec-Purpose.speculationrules
22+
# firefox: "115"
23+
# firefox_android: "115"
24+
- http.headers.Sec-Purpose
2325

2426
# baseline: false
2527
# support:

features/link-rel-preload.yml

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
name: '<link rel="preload">'
2+
description: The `rel="preload"` attribute for the `<link>` HTML element requests resources, such as images or style sheets, that the page needs soon, so the browser may prioritize them for loading before rendering begins.
3+
spec: https://html.spec.whatwg.org/multipage/links.html#link-type-preload
4+
caniuse: link-rel-preload
5+
status:
6+
compute_from: html.elements.link.rel.preload
7+
compat_features:
8+
- html.elements.link.rel.preload
9+
- html.elements.link.rel.preload.as-fetch
10+
- html.elements.link.rel.preload.as-font
11+
- html.elements.link.rel.preload.as-image
12+
- html.elements.link.rel.preload.as-script
13+
- html.elements.link.rel.preload.as-style
14+
- html.elements.link.rel.preload.as-track

features/link-rel-preload.yml.dist

+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# Generated from: link-rel-preload.yml
2+
# Do not edit this file by hand. Edit the source file instead!
3+
4+
status:
5+
baseline: high
6+
baseline_low_date: 2021-01-26
7+
baseline_high_date: 2023-07-26
8+
support:
9+
chrome: "50"
10+
chrome_android: "50"
11+
edge: ≤79
12+
firefox: "85"
13+
firefox_android: "85"
14+
safari: "11.1"
15+
safari_ios: "11.3"
16+
compat_features:
17+
# ⬇️ Same status as overall feature ⬇️
18+
# baseline: high
19+
# baseline_low_date: 2021-01-26
20+
# baseline_high_date: 2023-07-26
21+
# support:
22+
# chrome: "50"
23+
# chrome_android: "50"
24+
# edge: ≤79
25+
# firefox: "85"
26+
# firefox_android: "85"
27+
# safari: "11.1"
28+
# safari_ios: "11.3"
29+
- html.elements.link.rel.preload
30+
- html.elements.link.rel.preload.as-fetch
31+
- html.elements.link.rel.preload.as-font
32+
- html.elements.link.rel.preload.as-image
33+
- html.elements.link.rel.preload.as-script
34+
- html.elements.link.rel.preload.as-style
35+
36+
# baseline: false
37+
# support:
38+
# chrome: "50"
39+
# chrome_android: "50"
40+
# edge: ≤79
41+
# safari: "11.1"
42+
# safari_ios: "11.3"
43+
- html.elements.link.rel.preload.as-track

features/speculation-rules.yml

+1
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ compat_features:
2020
- html.elements.script.type.speculationrules.urls
2121
- html.elements.script.type.speculationrules.where
2222
- http.headers.Content-Security-Policy.script-src.inline-speculation-rules
23+
- http.headers.Sec-Purpose.speculationrules
2324
- http.headers.Speculation-Rules
2425
- http.headers.Supports-Loading-Mode
2526
- http.headers.Supports-Loading-Mode.credentialed-prerender

features/speculation-rules.yml.dist

+1
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ compat_features:
4545
# chrome_android: "110"
4646
# edge: "110"
4747
- http.headers.Content-Security-Policy.script-src.inline-speculation-rules
48+
- http.headers.Sec-Purpose.speculationrules
4849

4950
# baseline: false
5051
# support:

features/xhr.yml

+1
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ compat_features:
3232
- api.XMLHttpRequest.XMLHttpRequest
3333
- api.XMLHttpRequest.abort
3434
- api.XMLHttpRequest.abort_event
35+
- api.XMLHttpRequest.authorization_removed_cross_origin
3536
- api.XMLHttpRequest.error_event
3637
- api.XMLHttpRequest.getAllResponseHeaders
3738
- api.XMLHttpRequest.getAllResponseHeaders.header_names_lowercase

features/xhr.yml.dist

+8
Original file line numberDiff line numberDiff line change
@@ -450,3 +450,11 @@ compat_features:
450450
# safari: "10"
451451
# safari_ios: "10"
452452
- api.ProgressEvent.worker_support
453+
454+
# baseline: false
455+
# support:
456+
# firefox: "111"
457+
# firefox_android: "111"
458+
# safari: "16.1"
459+
# safari_ios: "16.1"
460+
- api.XMLHttpRequest.authorization_removed_cross_origin

0 commit comments

Comments
 (0)