diff --git a/features/clear-site-data.yml.dist b/features/clear-site-data.yml.dist index a73a590e70a..ac01a6a2c57 100644 --- a/features/clear-site-data.yml.dist +++ b/features/clear-site-data.yml.dist @@ -41,11 +41,14 @@ compat_features: # safari_ios: "17" - http.headers.Clear-Site-Data.wildcard - # baseline: false + # baseline: low + # baseline_low_date: 2025-04-29 # support: # chrome: "65" # chrome_android: "65" # edge: ≤79 + # firefox: "138" + # firefox_android: "138" # safari: "17" # safari_ios: "17" - http.headers.Clear-Site-Data.cache diff --git a/features/customizable-select.yml.dist b/features/customizable-select.yml.dist index c84998d8d0e..3134f721b0a 100644 --- a/features/customizable-select.yml.dist +++ b/features/customizable-select.yml.dist @@ -8,8 +8,20 @@ status: chrome_android: "134" edge: "134" compat_features: - - css.properties.appearance.base-select + # baseline: false + # support: + # chrome: "133" + # chrome_android: "133" + # edge: "133" - css.selectors.checkmark - - css.selectors.picker - css.selectors.picker-icon + + # ⬇️ Same status as overall feature ⬇️ + # baseline: false + # support: + # chrome: "134" + # chrome_android: "134" + # edge: "134" + - css.properties.appearance.base-select + - css.selectors.picker - html.elements.selectedcontent diff --git a/features/draft/spec/css-color-hdr-1.yml.dist b/features/draft/spec/css-color-hdr-1.yml.dist index d265008de13..4024795053b 100644 --- a/features/draft/spec/css-color-hdr-1.yml.dist +++ b/features/draft/spec/css-color-hdr-1.yml.dist @@ -3,7 +3,10 @@ status: baseline: false - support: {} + support: + chrome: "136" + chrome_android: "136" + edge: "136" compat_features: - css.properties.dynamic-range-limit - css.properties.dynamic-range-limit.constrained diff --git a/features/draft/spec/fedcm-1.yml.dist b/features/draft/spec/fedcm-1.yml.dist index 4d7e6d3a235..e730f370556 100644 --- a/features/draft/spec/fedcm-1.yml.dist +++ b/features/draft/spec/fedcm-1.yml.dist @@ -3,7 +3,10 @@ status: baseline: false - support: {} + support: + chrome: "136" + chrome_android: "136" + edge: "136" compat_features: # baseline: false # support: @@ -45,5 +48,8 @@ compat_features: # ⬇️ Same status as overall feature ⬇️ # baseline: false - # support: {} + # support: + # chrome: "136" + # chrome_android: "136" + # edge: "136" - api.IdentityCredential.configURL diff --git a/features/draft/spec/html.yml.dist b/features/draft/spec/html.yml.dist index c6131cb923c..04f0f0a2fc1 100644 --- a/features/draft/spec/html.yml.dist +++ b/features/draft/spec/html.yml.dist @@ -678,6 +678,18 @@ compat_features: # safari_ios: "16" - api.HTMLBaseElement.href.forbid_special_characters + # baseline: low + # baseline_low_date: 2025-04-29 + # support: + # chrome: "127" + # chrome_android: "127" + # edge: "127" + # firefox: "138" + # firefox_android: "138" + # safari: "18" + # safari_ios: "18" + - html.elements.script.type.importmap.integrity + # baseline: false # support: # chrome: "4" @@ -762,6 +774,16 @@ compat_features: - api.HTMLVideoElement.playsInline - html.elements.video.playsinline + # baseline: false + # support: + # chrome: "90" + # chrome_android: "90" + # edge: "90" + # firefox: "138" + # firefox_android: "138" + - api.Window.originAgentCluster + - http.headers.Origin-Agent-Cluster + # baseline: false # support: # chrome: "92" @@ -790,15 +812,6 @@ compat_features: # firefox_android: "123" - http.status.103.preload - # baseline: false - # support: - # chrome: "127" - # chrome_android: "127" - # edge: "127" - # safari: "18" - # safari_ios: "18" - - html.elements.script.type.importmap.integrity - # baseline: false # support: # chrome: "131" @@ -808,6 +821,15 @@ compat_features: # safari_ios: "18.4" - http.headers.Cross-Origin-Opener-Policy.noopener-allow-popups + # baseline: false + # support: + # chrome: "133" + # chrome_android: "133" + # edge: "133" + # safari: "18.4" + # safari_ios: "18.4" + - html.elements.script.type.importmap.multiple_import_maps + # baseline: false # support: # chrome: "96" @@ -856,14 +878,6 @@ compat_features: - http.headers.Permissions-Policy.autoplay - http.headers.Permissions-Policy.cross-origin-isolated - # baseline: false - # support: - # chrome: "90" - # chrome_android: "90" - # edge: "90" - - api.Window.originAgentCluster - - http.headers.Origin-Agent-Cluster - # baseline: false # support: # chrome: "99" @@ -901,7 +915,6 @@ compat_features: # chrome_android: "133" # edge: "133" - api.CustomElementRegistry.define.connectedMoveCallback_lifecycle_callback - - html.elements.script.type.importmap.multiple_import_maps # baseline: false # support: @@ -912,6 +925,14 @@ compat_features: - api.OffscreenCanvasRenderingContext2D.getContextAttributes - html.elements.dialog.closedby + # baseline: false + # support: + # chrome: "136" + # chrome_android: "136" + # edge: "136" + - api.CanvasRenderingContext2D.lang + - api.OffscreenCanvasRenderingContext2D.lang + # baseline: false # support: # safari: "9" @@ -947,10 +968,8 @@ compat_features: # ⬇️ Same status as overall feature ⬇️ # baseline: false # support: {} - - api.CanvasRenderingContext2D.lang - api.HTMLButtonElement.command.request-close - api.Navigator.authentication - - api.OffscreenCanvasRenderingContext2D.lang - html.elements.hr.hr_in_select - html.elements.input.alpha - html.elements.input.colorspace diff --git a/features/draft/spec/login-status.yml.dist b/features/draft/spec/login-status.yml.dist index 70e20cec891..86635a44fed 100644 --- a/features/draft/spec/login-status.yml.dist +++ b/features/draft/spec/login-status.yml.dist @@ -7,6 +7,8 @@ status: chrome: "120" chrome_android: "120" edge: "120" + firefox: "138" + firefox_android: "138" compat_features: - api.Navigator.login - api.NavigatorLogin diff --git a/features/draft/spec/mediacapture-surface-control.yml.dist b/features/draft/spec/mediacapture-surface-control.yml.dist index 14e9fce1576..2b4d060fb78 100644 --- a/features/draft/spec/mediacapture-surface-control.yml.dist +++ b/features/draft/spec/mediacapture-surface-control.yml.dist @@ -3,7 +3,9 @@ status: baseline: false - support: {} + support: + chrome: "136" + edge: "136" compat_features: - api.CaptureController.decreaseZoomLevel - api.CaptureController.forwardWheel diff --git a/features/draft/spec/mst-content-hint.yml.dist b/features/draft/spec/mst-content-hint.yml.dist index 084ad28e9cf..4569cc2ba2c 100644 --- a/features/draft/spec/mst-content-hint.yml.dist +++ b/features/draft/spec/mst-content-hint.yml.dist @@ -10,22 +10,24 @@ status: safari: "12.1" safari_ios: "12.2" compat_features: - # baseline: false - # support: - # chrome: "70" - # chrome_android: "70" - # edge: "79" - # safari: "12.1" - # safari_ios: "12.2" - - api.MediaStreamTrack.contentHint - - # ⬇️ Same status as overall feature ⬇️ - # baseline: false + # baseline: low + # baseline_low_date: 2025-04-29 # support: # chrome: "83" # chrome_android: "83" # edge: "83" + # firefox: "138" + # firefox_android: "138" # safari: "12.1" # safari_ios: "12.2" - api.RTCRtpSender.getParameters.return_object_property_degradationPreference - api.RTCRtpSender.setParameters.parameters_degradationPreference_parameter + + # baseline: false + # support: + # chrome: "70" + # chrome_android: "70" + # edge: "79" + # safari: "12.1" + # safari_ios: "12.2" + - api.MediaStreamTrack.contentHint diff --git a/features/draft/spec/prefetch.yml.dist b/features/draft/spec/prefetch.yml.dist index 08381d41366..2570e826ce2 100644 --- a/features/draft/spec/prefetch.yml.dist +++ b/features/draft/spec/prefetch.yml.dist @@ -3,6 +3,9 @@ status: baseline: false - support: {} + support: + chrome: "136" + chrome_android: "136" + edge: "136" compat_features: - http.headers.Sec-Speculation-Tags diff --git a/features/draft/spec/speculation-rules.yml.dist b/features/draft/spec/speculation-rules.yml.dist index d3ae64b1c30..cd8cb931410 100644 --- a/features/draft/spec/speculation-rules.yml.dist +++ b/features/draft/spec/speculation-rules.yml.dist @@ -3,6 +3,9 @@ status: baseline: false - support: {} + support: + chrome: "136" + chrome_android: "136" + edge: "136" compat_features: - html.elements.script.type.speculationrules.tag diff --git a/features/draft/spec/webaudio-1-1.yml.dist b/features/draft/spec/webaudio-1-1.yml.dist index edc98dc4c97..38562ff3a92 100644 --- a/features/draft/spec/webaudio-1-1.yml.dist +++ b/features/draft/spec/webaudio-1-1.yml.dist @@ -3,7 +3,9 @@ status: baseline: false - support: {} + support: + firefox: "138" + firefox_android: "138" compat_features: - api.AudioWorklet.port - api.AudioWorkletGlobalScope.port diff --git a/features/draft/spec/webgpu.yml.dist b/features/draft/spec/webgpu.yml.dist index d01af9356dc..5cf9c3975be 100644 --- a/features/draft/spec/webgpu.yml.dist +++ b/features/draft/spec/webgpu.yml.dist @@ -3,7 +3,10 @@ status: baseline: false - support: {} + support: + chrome: "136" + chrome_android: "136" + edge: "136" compat_features: # baseline: false # support: @@ -21,5 +24,8 @@ compat_features: # ⬇️ Same status as overall feature ⬇️ # baseline: false - # support: {} + # support: + # chrome: "136" + # chrome_android: "136" + # edge: "136" - api.GPUAdapterInfo.isFallbackAdapter diff --git a/features/grid-animation.yml.dist b/features/grid-animation.yml.dist index a1ba0511b88..d57d1be838c 100644 --- a/features/grid-animation.yml.dist +++ b/features/grid-animation.yml.dist @@ -2,8 +2,9 @@ # Do not edit this file by hand. Edit the source file instead! status: - baseline: low + baseline: high baseline_low_date: 2022-10-27 + baseline_high_date: 2025-04-27 support: chrome: "107" chrome_android: "107" diff --git a/features/is-error.yml.dist b/features/is-error.yml.dist index f9aa6b2425b..156978a2810 100644 --- a/features/is-error.yml.dist +++ b/features/is-error.yml.dist @@ -7,5 +7,7 @@ status: chrome: "134" chrome_android: "134" edge: "134" + firefox: "138" + firefox_android: "138" compat_features: - javascript.builtins.Error.isError diff --git a/features/js-modules.yml.dist b/features/js-modules.yml.dist index c5d70f0d34d..0e158e28cb8 100644 --- a/features/js-modules.yml.dist +++ b/features/js-modules.yml.dist @@ -121,11 +121,14 @@ compat_features: # safari_ios: "15" - api.Worklet.ecmascript_modules - # baseline: false + # baseline: low + # baseline_low_date: 2025-04-29 # support: # chrome: "123" # chrome_android: "123" # edge: "123" + # firefox: "138" + # firefox_android: "138" # safari: "17.2" # safari_ios: "17.2" - javascript.statements.import.import_attributes diff --git a/features/json-modules.yml.dist b/features/json-modules.yml.dist index db05af85667..e1f36174aeb 100644 --- a/features/json-modules.yml.dist +++ b/features/json-modules.yml.dist @@ -10,6 +10,18 @@ status: safari: "17.2" safari_ios: "17.2" compat_features: + # baseline: low + # baseline_low_date: 2025-04-29 + # support: + # chrome: "123" + # chrome_android: "123" + # edge: "123" + # firefox: "138" + # firefox_android: "138" + # safari: "17.2" + # safari_ios: "17.2" + - javascript.statements.import.import_attributes.type_json + # baseline: false # support: # chrome: "91" @@ -18,13 +30,3 @@ compat_features: # safari: "15" # safari_ios: "15" - javascript.grammar.trailing_commas.trailing_commas_in_dynamic_import - - # ⬇️ Same status as overall feature ⬇️ - # baseline: false - # support: - # chrome: "123" - # chrome_android: "123" - # edge: "123" - # safari: "17.2" - # safari_ios: "17.2" - - javascript.statements.import.import_attributes.type_json diff --git a/features/masks.yml.dist b/features/masks.yml.dist index 7be8ea67b42..a18e2107b0d 100644 --- a/features/masks.yml.dist +++ b/features/masks.yml.dist @@ -43,18 +43,6 @@ compat_features: - css.properties.mask-repeat - css.properties.mask-size - # baseline: false - # support: - # chrome: "120" - # chrome_android: "120" - # edge: "120" - # safari: "15.4" - # safari_ios: "15.4" - - css.properties.mask-clip.border - - css.properties.mask-clip.content - - css.properties.mask-clip.padding - - css.properties.mask-clip.text - # baseline: false # support: # chrome: "120" @@ -70,6 +58,10 @@ compat_features: # support: # safari: "15.4" # safari_ios: "15.4" + - css.properties.mask-clip.border + - css.properties.mask-clip.content + - css.properties.mask-clip.padding + - css.properties.mask-clip.text - css.properties.mask-origin.border - css.properties.mask-origin.content - css.properties.mask-origin.padding diff --git a/features/notifications.yml.dist b/features/notifications.yml.dist index f3da97d29d3..a1e2b888a97 100644 --- a/features/notifications.yml.dist +++ b/features/notifications.yml.dist @@ -200,6 +200,14 @@ compat_features: # firefox_android: "41" - api.Notification.worker_support + # baseline: false + # support: + # chrome: "48" + # edge: "18" + # firefox: "138" + # firefox_android: "138" + - api.Notification.maxActions_static + # baseline: false # support: # chrome: "62" @@ -262,12 +270,6 @@ compat_features: # edge: "17" - api.Notification.requireInteraction - # baseline: false - # support: - # chrome: "48" - # edge: "18" - - api.Notification.maxActions_static - # baseline: false # support: # chrome: "50" diff --git a/features/print-color-adjust.yml.dist b/features/print-color-adjust.yml.dist index 3d5eee9320e..2c2c8f2bd49 100644 --- a/features/print-color-adjust.yml.dist +++ b/features/print-color-adjust.yml.dist @@ -4,6 +4,8 @@ status: baseline: false support: + chrome: "136" + chrome_android: "136" firefox: "97" firefox_android: "97" safari: "15.4" diff --git a/features/regexp-escape.yml.dist b/features/regexp-escape.yml.dist index 03e035dfab6..699fd3549a4 100644 --- a/features/regexp-escape.yml.dist +++ b/features/regexp-escape.yml.dist @@ -2,8 +2,12 @@ # Do not edit this file by hand. Edit the source file instead! status: - baseline: false + baseline: low + baseline_low_date: 2025-05-01 support: + chrome: "136" + chrome_android: "136" + edge: "136" firefox: "134" firefox_android: "134" safari: "18.2" diff --git a/features/svg.yml.dist b/features/svg.yml.dist index 7cfd53426ac..1489d8e02d9 100644 --- a/features/svg.yml.dist +++ b/features/svg.yml.dist @@ -1761,6 +1761,32 @@ compat_features: # safari_ios: "18.4" - api.SVGImageElement.decode + # baseline: low + # baseline_low_date: 2025-05-01 + # support: + # chrome: "136" + # chrome_android: "136" + # edge: "136" + # firefox: "61" + # firefox_android: "61" + # safari: "14" + # safari_ios: "14" + - api.SVGAElement.rel + - api.SVGAElement.relList + + # baseline: low + # baseline_low_date: 2025-05-01 + # support: + # chrome: "136" + # chrome_android: "136" + # edge: "136" + # firefox: "69" + # firefox_android: "79" + # safari: "12" + # safari_ios: "12" + - api.SVGGeometryElement.isPointInFill.point_parameter_DOMPoint + - api.SVGGeometryElement.isPointInStroke.point_parameter_DOMPoint + # baseline: false # support: # chrome: "1" @@ -1846,19 +1872,8 @@ compat_features: # firefox_android: "61" # safari: "14" # safari_ios: "14" - - api.SVGAElement.rel - - api.SVGAElement.relList - svg.elements.a.rel - # baseline: false - # support: - # firefox: "69" - # firefox_android: "79" - # safari: "12" - # safari_ios: "12" - - api.SVGGeometryElement.isPointInFill.point_parameter_DOMPoint - - api.SVGGeometryElement.isPointInStroke.point_parameter_DOMPoint - # baseline: false # support: # chrome: "51" diff --git a/features/top-level-await.yml b/features/top-level-await.yml index b7eac83e0f9..1a45e5f349f 100644 --- a/features/top-level-await.yml +++ b/features/top-level-await.yml @@ -2,5 +2,11 @@ name: Top-level await description: The `await` keyword, when used at the top level of a module (outside of an async function), delays parent module execution until after a promise fulfills. spec: https://tc39.es/ecma262/multipage/ecmascript-language-functions-and-classes.html#sec-async-function-definitions group: javascript +# TODO: https://github.com/web-platform-dx/web-features/issues/1971 +# Status changed: https://github.com/web-platform-dx/web-features/pull/2921/ +# 2025-05-02 — high → false — In Safari, simultaneous imports of a module with a top-level await fails with a ReferenceError. +# References: +# - https://github.com/mdn/browser-compat-data/pull/26510 +# - https://bugs.webkit.org/show_bug.cgi?id=242740 compat_features: - javascript.operators.await.top_level diff --git a/features/top-level-await.yml.dist b/features/top-level-await.yml.dist index c39a7403a97..ee810bfe7b3 100644 --- a/features/top-level-await.yml.dist +++ b/features/top-level-await.yml.dist @@ -2,16 +2,12 @@ # Do not edit this file by hand. Edit the source file instead! status: - baseline: high - baseline_low_date: 2021-09-20 - baseline_high_date: 2024-03-20 + baseline: false support: chrome: "89" chrome_android: "89" edge: "89" firefox: "89" firefox_android: "89" - safari: "15" - safari_ios: "15" compat_features: - javascript.operators.await.top_level diff --git a/features/webrtc.yml.dist b/features/webrtc.yml.dist index 7bae9903990..02cc7980f5e 100644 --- a/features/webrtc.yml.dist +++ b/features/webrtc.yml.dist @@ -1028,6 +1028,18 @@ compat_features: # safari_ios: "11" - api.RTCDataChannel.binaryType.blob_value + # baseline: low + # baseline_low_date: 2025-04-29 + # support: + # chrome: "61" + # chrome_android: "61" + # edge: "79" + # firefox: "138" + # firefox_android: "138" + # safari: "12.1" + # safari_ios: "12.2" + - api.RTCCertificate.getFingerprints + # baseline: false # support: # chrome: "74" @@ -1065,15 +1077,6 @@ compat_features: # safari_ios: "11" - api.RTCPeerConnection.RTCPeerConnection.configuration_iceCandidatePoolSize_parameter - # baseline: false - # support: - # chrome: "61" - # chrome_android: "61" - # edge: "79" - # safari: "12.1" - # safari_ios: "12.2" - - api.RTCCertificate.getFingerprints - # baseline: false # support: # chrome: "69" diff --git a/package-lock.json b/package-lock.json index 8b1f14e20dc..3d53e2c1952 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,7 +13,7 @@ "devDependencies": { "@eslint/js": "^9.25.1", "@js-temporal/polyfill": "^0.5.1", - "@mdn/browser-compat-data": "^6.0.9", + "@mdn/browser-compat-data": "^6.0.11", "@types/caniuse-lite": "^1.0.4", "@types/diff": "^7.0.2", "@types/node": "^20.17.32", @@ -807,9 +807,9 @@ } }, "node_modules/@mdn/browser-compat-data": { - "version": "6.0.9", - "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-6.0.9.tgz", - "integrity": "sha512-IA/ER+n8ugvJakp4WRdTXVSvtU+QJEQbfdgLVbLcL6AaFDOeuAXUR1AzS7YsgZ7AZsfUVfYLhXJX8ubGJQ+SFA==", + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-6.0.11.tgz", + "integrity": "sha512-vcLCW2dvKfHGV4t/lkocstKvu15hfaMaAEaGTzL4wZ6ZWmI2aHbrFcO/LkK34jkFPjKXm3GHLm5h35u5WD4d9w==", "license": "CC0-1.0" }, "node_modules/@nodelib/fs.scandir": { diff --git a/package.json b/package.json index 4920ba0aaf8..336670b9896 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "devDependencies": { "@eslint/js": "^9.25.1", "@js-temporal/polyfill": "^0.5.1", - "@mdn/browser-compat-data": "^6.0.9", + "@mdn/browser-compat-data": "^6.0.11", "@types/caniuse-lite": "^1.0.4", "@types/diff": "^7.0.2", "@types/node": "^20.17.32",