From 8c885d72a0b30545b8b30ac2f8b39d1d643b4657 Mon Sep 17 00:00:00 2001 From: foolip <498917+foolip@users.noreply.github.com> Date: Thu, 10 Apr 2025 09:22:20 +0000 Subject: [PATCH] Update draft features --- features/draft/spec/html.yml | 5 +- features/draft/spec/html.yml.dist | 15 ++ features/draft/spec/mst-content-hint.yml | 4 +- features/draft/spec/mst-content-hint.yml.dist | 24 ++- features/draft/spec/observable.yml | 35 +++++ features/draft/spec/observable.yml.dist | 40 +++++ features/draft/spec/permissions-policy-1.yml | 4 +- .../draft/spec/permissions-policy-1.yml.dist | 16 +- features/draft/spec/selectors-4.yml | 146 ++++++++++++++++++ features/draft/spec/selectors-4.yml.dist | 18 +++ 10 files changed, 297 insertions(+), 10 deletions(-) create mode 100644 features/draft/spec/observable.yml create mode 100644 features/draft/spec/observable.yml.dist create mode 100644 features/draft/spec/selectors-4.yml create mode 100644 features/draft/spec/selectors-4.yml.dist diff --git a/features/draft/spec/html.yml b/features/draft/spec/html.yml index 9620e120a1c..d3a7bca595e 100644 --- a/features/draft/spec/html.yml +++ b/features/draft/spec/html.yml @@ -1,9 +1,10 @@ -draft_date: 2025-04-09 +draft_date: 2025-04-10 name: HTML description: TODO spec: https://html.spec.whatwg.org/multipage/ compat_features: - api.CanvasRenderingContext2D.lang + - api.CustomElementRegistry.define.connectedMoveCallback_lifecycle_callback - api.Document.featurePolicy - api.ElementInternals.shadowRoot - api.ErrorEvent @@ -98,6 +99,8 @@ compat_features: - api.reportError - api.setInterval.supports_parameters_for_callback - api.setTimeout.supports_parameters_for_callback + - css.selectors.hover.a_elements + - css.selectors.hover.all_elements - html.elements.dialog.closedby - html.elements.form.autocomplete.new-password - html.elements.form.autocomplete.one-time-code diff --git a/features/draft/spec/html.yml.dist b/features/draft/spec/html.yml.dist index 07256ea5525..a66cf513083 100644 --- a/features/draft/spec/html.yml.dist +++ b/features/draft/spec/html.yml.dist @@ -47,6 +47,20 @@ compat_features: # safari_ios: "1" - api.HTMLElement.load_event + # baseline: high + # baseline_low_date: 2015-07-29 + # baseline_high_date: 2018-01-29 + # support: + # chrome: "1" + # chrome_android: "18" + # edge: "12" + # firefox: "1" + # firefox_android: "4" + # safari: "2" + # safari_ios: "1" + - css.selectors.hover.a_elements + - css.selectors.hover.all_elements + # baseline: high # baseline_low_date: 2015-07-29 # baseline_high_date: 2018-01-29 @@ -953,6 +967,7 @@ compat_features: # chrome: "133" # chrome_android: "133" # edge: "133" + - api.CustomElementRegistry.define.connectedMoveCallback_lifecycle_callback - html.elements.script.type.importmap.multiple_import_maps # baseline: false diff --git a/features/draft/spec/mst-content-hint.yml b/features/draft/spec/mst-content-hint.yml index 40f6752588b..0f2aaba4990 100644 --- a/features/draft/spec/mst-content-hint.yml +++ b/features/draft/spec/mst-content-hint.yml @@ -1,6 +1,8 @@ -draft_date: 2024-09-09 +draft_date: 2025-04-10 name: MediaStreamTrack Content Hints description: TODO spec: https://w3c.github.io/mst-content-hint/ compat_features: - api.MediaStreamTrack.contentHint + - api.RTCRtpSender.getParameters.return_object_property_degradationPreference + - api.RTCRtpSender.setParameters.parameters_degradationPreference_parameter diff --git a/features/draft/spec/mst-content-hint.yml.dist b/features/draft/spec/mst-content-hint.yml.dist index 351335c8968..084ad28e9cf 100644 --- a/features/draft/spec/mst-content-hint.yml.dist +++ b/features/draft/spec/mst-content-hint.yml.dist @@ -4,10 +4,28 @@ status: baseline: false support: - chrome: "70" - chrome_android: "70" - edge: "79" + chrome: "83" + chrome_android: "83" + edge: "83" 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 + # support: + # chrome: "83" + # chrome_android: "83" + # edge: "83" + # safari: "12.1" + # safari_ios: "12.2" + - api.RTCRtpSender.getParameters.return_object_property_degradationPreference + - api.RTCRtpSender.setParameters.parameters_degradationPreference_parameter diff --git a/features/draft/spec/observable.yml b/features/draft/spec/observable.yml new file mode 100644 index 00000000000..2dbf30d03e6 --- /dev/null +++ b/features/draft/spec/observable.yml @@ -0,0 +1,35 @@ +draft_date: 2025-04-10 +name: Observable +description: TODO +spec: https://wicg.github.io/observable/ +compat_features: + - api.EventTarget.when + - api.Observable + - api.Observable.Observable + - api.Observable.catch + - api.Observable.drop + - api.Observable.every + - api.Observable.filter + - api.Observable.finally + - api.Observable.find + - api.Observable.first + - api.Observable.flatMap + - api.Observable.forEach + - api.Observable.from_static + - api.Observable.inspect + - api.Observable.last + - api.Observable.map + - api.Observable.reduce + - api.Observable.some + - api.Observable.subscribe + - api.Observable.switchMap + - api.Observable.take + - api.Observable.takeUntil + - api.Observable.toArray + - api.Subscriber + - api.Subscriber.active + - api.Subscriber.addTeardown + - api.Subscriber.complete + - api.Subscriber.error + - api.Subscriber.next + - api.Subscriber.signal diff --git a/features/draft/spec/observable.yml.dist b/features/draft/spec/observable.yml.dist new file mode 100644 index 00000000000..907804ed6c4 --- /dev/null +++ b/features/draft/spec/observable.yml.dist @@ -0,0 +1,40 @@ +# Generated from: observable.yml +# Do not edit this file by hand. Edit the source file instead! + +status: + baseline: false + support: + chrome: "135" + chrome_android: "135" + edge: "135" +compat_features: + - api.EventTarget.when + - api.Observable + - api.Observable.Observable + - api.Observable.catch + - api.Observable.drop + - api.Observable.every + - api.Observable.filter + - api.Observable.finally + - api.Observable.find + - api.Observable.first + - api.Observable.flatMap + - api.Observable.forEach + - api.Observable.from_static + - api.Observable.inspect + - api.Observable.last + - api.Observable.map + - api.Observable.reduce + - api.Observable.some + - api.Observable.subscribe + - api.Observable.switchMap + - api.Observable.take + - api.Observable.takeUntil + - api.Observable.toArray + - api.Subscriber + - api.Subscriber.active + - api.Subscriber.addTeardown + - api.Subscriber.complete + - api.Subscriber.error + - api.Subscriber.next + - api.Subscriber.signal diff --git a/features/draft/spec/permissions-policy-1.yml b/features/draft/spec/permissions-policy-1.yml index aeec1890a02..af810afdf3f 100644 --- a/features/draft/spec/permissions-policy-1.yml +++ b/features/draft/spec/permissions-policy-1.yml @@ -1,7 +1,9 @@ -draft_date: 2024-10-21 +draft_date: 2025-04-10 name: Permissions Policy description: TODO spec: https://w3c.github.io/webappsec-permissions-policy/ compat_features: - http.headers.Permissions-Policy + - http.headers.Permissions-Policy.deferred-fetch + - http.headers.Permissions-Policy.deferred-fetch-minimal - http.headers.Permissions-Policy.wildcards diff --git a/features/draft/spec/permissions-policy-1.yml.dist b/features/draft/spec/permissions-policy-1.yml.dist index 2d516e83f2e..dbb389b5e09 100644 --- a/features/draft/spec/permissions-policy-1.yml.dist +++ b/features/draft/spec/permissions-policy-1.yml.dist @@ -4,9 +4,9 @@ status: baseline: false support: - chrome: "108" - chrome_android: "108" - edge: "108" + chrome: "135" + chrome_android: "135" + edge: "135" compat_features: # baseline: false # support: @@ -15,10 +15,18 @@ compat_features: # edge: "88" - http.headers.Permissions-Policy - # ⬇️ Same status as overall feature ⬇️ # baseline: false # support: # chrome: "108" # chrome_android: "108" # edge: "108" - http.headers.Permissions-Policy.wildcards + + # ⬇️ Same status as overall feature ⬇️ + # baseline: false + # support: + # chrome: "135" + # chrome_android: "135" + # edge: "135" + - http.headers.Permissions-Policy.deferred-fetch + - http.headers.Permissions-Policy.deferred-fetch-minimal diff --git a/features/draft/spec/selectors-4.yml b/features/draft/spec/selectors-4.yml new file mode 100644 index 00000000000..cd9c63f9930 --- /dev/null +++ b/features/draft/spec/selectors-4.yml @@ -0,0 +1,146 @@ +draft_date: 2025-04-10 +name: Selectors Level 4 +description: TODO +spec: https://drafts.csswg.org/selectors-4/ +compat_features: + - css.selectors.hover.a_elements + - css.selectors.hover.all_elements + +# The following features in the spec are already part of web-features: +# - User action pseudo-classes: +# - css.selectors.active +# - css.selectors.active.non_a_elements +# - css.selectors.focus +# - css.selectors.hover +# - Link selectors: +# - css.selectors.any-link +# - css.selectors.any-link.not_match_link +# - css.selectors.link +# - css.selectors.link.not_match_link +# - css.selectors.visited +# - css.selectors.visited.not_match_link +# - css.selectors.visited.privacy_measures +# - Selectors (core): +# - css.selectors.attribute +# - css.selectors.child +# - css.selectors.class +# - css.selectors.descendant +# - css.selectors.id +# - css.selectors.list +# - css.selectors.next-sibling +# - css.selectors.subsequent-sibling +# - css.selectors.type +# - css.selectors.type.namespaces +# - css.selectors.universal +# - css.selectors.universal.namespaces +# - Case-insensitive attribute selector: +# - css.selectors.attribute.case_insensitive_modifier +# - Case-sensitive attribute selector: +# - css.selectors.attribute.case_sensitive_modifier +# - :autofill: +# - css.selectors.autofill +# - Media element pseudo-classes: +# - css.selectors.buffering +# - css.selectors.muted +# - css.selectors.paused +# - css.selectors.playing +# - css.selectors.seeking +# - css.selectors.stalled +# - css.selectors.volume-locked +# - Input selectors: +# - css.selectors.checked +# - css.selectors.disabled +# - css.selectors.enabled +# - Open and closed selectors: +# - css.selectors.closed +# - css.selectors.open +# - :default: +# - css.selectors.default +# - Autonomous custom elements: +# - css.selectors.defined +# - :dir(): +# - css.selectors.dir +# - :empty: +# - css.selectors.empty +# - css.selectors.empty.matches_whitespace +# - :nth-child(): +# - css.selectors.first-child +# - css.selectors.first-child.no_parent_required +# - css.selectors.last-child +# - css.selectors.last-child.no_parent_required +# - css.selectors.nth-child +# - css.selectors.nth-child.no_parent_required +# - css.selectors.nth-last-child +# - css.selectors.nth-last-child.no_parent_required +# - css.selectors.only-child +# - css.selectors.only-child.no_parent_required +# - :nth-of-type() pseudo-classes: +# - css.selectors.first-of-type +# - css.selectors.last-of-type +# - css.selectors.nth-last-of-type +# - css.selectors.nth-of-type +# - css.selectors.only-of-type +# - :focus-visible: +# - css.selectors.focus-visible +# - :focus-within: +# - css.selectors.focus-within +# - Fullscreen API: +# - css.selectors.fullscreen +# - css.selectors.fullscreen.all_elements +# - Time-relative pseudo-selectors: +# - css.selectors.future +# - css.selectors.past +# - :has(): +# - css.selectors.has +# - Form validity pseudo-classes: +# - css.selectors.in-range +# - css.selectors.invalid +# - css.selectors.invalid.form +# - css.selectors.optional +# - css.selectors.out-of-range +# - css.selectors.required +# - css.selectors.valid +# - css.selectors.valid.form +# - :indeterminate: +# - css.selectors.indeterminate +# - css.selectors.indeterminate.checkbox +# - css.selectors.indeterminate.progress +# - css.selectors.indeterminate.radio +# - :is(): +# - css.selectors.is +# - css.selectors.is.forgiving_selector_list +# - :lang(): +# - css.selectors.lang +# - css.selectors.lang.argument_list +# - css.selectors.lang.wildcards +# - :modal: +# - css.selectors.modal +# - :not(): +# - css.selectors.not +# - css.selectors.not.selector_list +# - :nth-child() of : +# - css.selectors.nth-child.of_syntax +# - css.selectors.nth-last-child.of_syntax +# - Picture-in-picture (video): +# - css.selectors.picture-in-picture +# - :placeholder-shown: +# - css.selectors.placeholder-shown +# - css.selectors.placeholder-shown.non_text_types +# - Popover: +# - css.selectors.popover-open +# - :read-only and :read-write: +# - css.selectors.read-only +# - css.selectors.read-write +# - :root: +# - css.selectors.root +# - :scope (pseudo-class): +# - css.selectors.scope +# - css.selectors.scope.dom_api +# - :target: +# - css.selectors.target +# - :user-valid and :user-invalid: +# - css.selectors.user-invalid +# - css.selectors.user-valid +# - :where(): +# - css.selectors.where +# - css.selectors.where.forgiving_selector_list diff --git a/features/draft/spec/selectors-4.yml.dist b/features/draft/spec/selectors-4.yml.dist new file mode 100644 index 00000000000..858e69f01ab --- /dev/null +++ b/features/draft/spec/selectors-4.yml.dist @@ -0,0 +1,18 @@ +# Generated from: selectors-4.yml +# Do not edit this file by hand. Edit the source file instead! + +status: + baseline: high + baseline_low_date: 2015-07-29 + baseline_high_date: 2018-01-29 + support: + chrome: "1" + chrome_android: "18" + edge: "12" + firefox: "1" + firefox_android: "4" + safari: "2" + safari_ios: "1" +compat_features: + - css.selectors.hover.a_elements + - css.selectors.hover.all_elements